How to continously read data from force sensor connected with Arduino
26 views (last 30 days)
Show older comments
Hello, everyone
I want to continously read data from a 'flexi force' sensor from arduino to Matlab, and i use the matlab script below to import data:
clc;
clear all;
close all;
a=arduino;
V=zeros(1000,1);
for i=1:1000
V(i)=readVoltage(a,'A0');
end
Here i used a for loop to load data from aduino, is this the only way to import data? The data transfering speed was too low by using this method. Is there any other method to read data from aduino to matlab.
Many thanks for you help!
Thomas
1 Comment
Steven Evangelos
on 26 Aug 2021
Hi Thomas,
try this...
%%
a = arduino;
%%
flexi_count = 0;
flexi_array = [ ];
while flexi_count < 100;
flexi_count = flexi_count + 1;
flexi_volt = readVoltage(a, 'A0');
flexi_array = [flexi_array; [flexi_count, flexi_volt]];
show_me_voltage = [flexi_volt];
disp(show_me_voltage);
if flexi_count == 100;
disp("This is the end of the Flexi_Force_Sensor Loop");
end
flexi_array;
flexi_table = array2table(flexi_array, 'VariableNames', {'Time (0.1s)', 'Flexi_Force_Voltage'});
* Remove " ; " as desired to see flexi_array as an array, or flexi_table as a table with column names *
Accepted Answer
Kenny Shu
on 10 Apr 2019
Reading sensor values with this approach may be limited to the speed of the software for-loop. Consider reading and storing sensor values using an Arduino Sketch. Then, upon request, bring all of the values into MATLAB at once using serial read/write.
More Answers (0)
See Also
Categories
Find more on MATLAB Support Package for Arduino Hardware in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!