How to continuously real-time plotting graph from arduino to matlab (10k Variable Resistor)

9 visualizzazioni (ultimi 30 giorni)
Hello and good day to all the experts and visitors of Mat-Lab, I am a mechatronic student and now facing problem trying to interface matlab and arduino..
I am trying to real-time plotting graph from arduino to matlab with (10k variable resistor), but the graph will stop plotting after reach the Maximun X-axis (I set 0-1000).
Can it continuously real-time plotting the graph non stop? full of appreciation or teaching me to solve it.
the code is shown below:
a = arduino('COM3');
interv = 1000;
passo = 1;
t=1;
x=0;
while(t<interv)
b=a.analogRead(0);
x=[x,b];
plot(x);
axis([0,interv,0,1024]);
grid
t=t+passo;
drawnow;
end

Risposte (6)

David Sanchez
David Sanchez il 13 Ago 2013
You just have to change the axis when the highest value is reached:
axis([interv,2*interv,0,1024]); % adapt values to your needs
  1 Commento
Charles Lim
Charles Lim il 16 Ago 2013
Very Thank you for replied
I set interv = 1000
after I change this code
the x-axis started from 1000 to 2000
how do I start from 0 - 1000 after the highest value is reached auto start from 1000 - 2000 , continuously non stop ?

Accedi per commentare.


anand
anand il 22 Dic 2016
just make use of while(1) after a = arduino and at the last make use of a end function this solves your problem

Sanjay Raam
Sanjay Raam il 9 Feb 2014
Modificato: Sanjay Raam il 9 Feb 2014
you need not set axis between 0to1024
instead give the following statement
axes auto;
by the way, thanks for your program... it was useful for me to learn!!

khoulod ghanem
khoulod ghanem il 28 Set 2015
I am trying to plot current-voltage curve from Arduino to Matlab , can you help me to start ??

ravi kumar
ravi kumar il 2 Feb 2017
This did not work for me. I tried this one: Real Time Analog Voltage in Matlab using Arduino it uses line function. anybody knows how to scroll the time line?
  1 Commento
prasad noolu
prasad noolu il 17 Ago 2017
Modificato: prasad noolu il 17 Ago 2017
try this code: clear all
a = arduino
x = 0;
for k = 1:1000
b = readVoltage(a, 'A0');
x = [x, b];
plot (x);
grid;
drawnow;
end

Accedi per commentare.


Madhu Govindarajan
Madhu Govindarajan il 17 Ott 2017
Checkout this video - https://www.mathworks.com/videos/plotting-live-data-of-a-temperature-sensor-using-arduino-and-matlab-121317.html?s_tid=srchtitle
HTH, Madhu

Categorie

Scopri di più su MATLAB Support Package for Arduino Hardware in Help Center e File Exchange

Tag

Community Treasure Hunt

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

Start Hunting!

Translated by