Data acquisition from Arduino Uno and realtime plotting

7 次查看(过去 30 天)
Hi guys, I have an Arduino Uno board and I want to aquire a signal values from a potentiometer and plot it in realtime, I've found a code to do it as you can se below:
arduino;
line(nan, nan, 'color','blue');
i=0;
while 1
pot = readVoltage(arduino,'A1');
x=get(line, 'xData');
y=get(line, 'yData');
x=[x i];
y=[y pot];
set(line, 'xData', x, 'yData', y);
i=i+0.001;
pause (1);
end
The problem is that is gives some several errors when I run the program such as: "Failed to open serial port COM3 to communicate with Arduino board Uno. Make sure there is no other MATLAB arduino object for this board. For troubleshooting, see Arduino Hardware Troubleshooting."
"Invalid pin format. Pin number must be a scalar integer."
I hope someone can help me

采纳的回答

Menghan
Menghan 2018-6-8
编辑:Hans Scharler 2018-6-12
arduino function creates a connection to the board each time you call it and only one connection to the board can exist at one time. You should change the code to something like this,
a = arduino;
line(nan,nan,...
...
while 1
pot = readVoltage(a, 'A1');
...
...
end

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 MATLAB Support Package for Arduino Hardware 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by