How to save voltage data as a array in Matlab, using a Arduino MEGA 2560 board?

6 ビュー (過去 30 日間)
Hello everyone
I appreciate if you can help me with this issue.
I'm working with Arduino MEGA 2560 and I'm using the followings commands:
clc
clear all
a = arduino;
data = readVoltage(a,'A9');
So far, there is no problem (I'm using the analogic input A9). But I need some help with, How can I get an array with the measurement of the reading voltage in Matlab, without using Simulink and Arduino software, only Matlab?
I'm using a battery of 1.7 volts approx. as an example, next I need to apply this commands to a motor servo DC (Analogic Control System ACS-1000 from K and H fabricants.
I'm looking forward for your comments and help.
Thanks very much in advance.

採用された回答

Madhu Govindarajan
Madhu Govindarajan 2019 年 1 月 15 日
Let's say you know how long of a vector you need, then use indexing.
Example -
for i = 1:100
data(i) = readVoltage(a,'A9');
pause(0.1);
end
Note the pause just pauses MATLAB and you might notice that the whole thing takes more than 10 seconds.
If you want to collect data till you press a pushbutton on the Arduino.
buttonPressed = false;
data = readVoltage(a,'A9');
while ~buttonPressed
data(end+1) = readVoltage(a,'A9');
buttonPressed = readDigitalPin(a,'D13'); % Here it is assumed that you have a push button connected to Pin 13.
pause(0.1);
end
  3 件のコメント
Madhu Govindarajan
Madhu Govindarajan 2019 年 1 月 16 日
for loops are generally used when you know you have to loop through and repeat an activity a fixed number of times. In this case, repeat and create a vector of size 100. It could be used for anything.
The pause is to just ensure that you are not reading too quickly, you can do without it too.
While loops are used when you want something to repeat as long as a condition is true. So without the pushbutton you will have to come up with someother way to break your condition and make it false. Depends on how you set up your problem.
This page might help understand about different loops - https://www.mathworks.com/help/matlab/matlab_prog/loop-control-statements.html
Jonathan Bijman
Jonathan Bijman 2019 年 1 月 16 日
Thank you very much. You really help me.
Thanks again!

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMATLAB 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