File Exchange

image thumbnail

Arduino Serial Data Acquisition

version 1.3.0.2 (522 KB) by

Use serial communication to monitor live data from Arduino in MATLAB/Simulink

244 Downloads

Updated

View License

Do you want to monitor live data from Arduino® in MATLAB® and Simulink®?
-You can do so easily with Simulink External Mode if you use Arduino Mega 2560 and Arduino Due (and Arduino Uno if you have R2016b or later). https://www.mathworks.com/help/supportpkg/arduino/ug/tune-and-monitor-model-running-on-arduino-mega-2560-hardware.html
What if you use Arduino Uno?
-This File Exchange download will help you do exactly that.

This submission contains three files:
-serialRunOnArduino.slx: Download this model onto your Arduino board so that it sends data to serial port
-serialRunOnPC.slx: Run this model locally on your PC to collect and plot serial data in Simulink
-readArduinoSerial.m: Run this script to read and plot serial data in MATLAB

Comments and Ratings (26)

Nice Submission, now no need of logging data via SD card shield.

Jacky Chan

Hi, I want to output the data from IMU. However, as you know, there are several types of data generating from the IMU, what should I do if I want to specially output a type of data, let's say acceleration. Thank you very much.

Talha Yousuf

Ahh...... Thanks it worked..... really thanks GOD bless you

Question: In order to run this Math Arduino DAQ, do I need always MathLab running under Windows and Arduino connect it to Lap Top or PC? If the answer is YES, LOL. We need some small foot print DAQ for embedded applications...

Excelent!

NguyenTung

work with lenardo. Thanks

cris ponce

Gracias!!

cvrousseau

Thanks!

Mahmoud Sayed

Works perfectly

sahab farjad

hi, at first thanks for your tutorial, it works, but with no results! I'm using GP2D120 IR-range-finder sensor and i don't know to connect the output signal sensor to witch pin in Arduino board.
thanks again for share this tutorial.

when i try to run the serialRunOnArduino via run on Target Hardware on my Arduino Uno, i get
"Call to the function 'getTflTableList' failed."
I am using R2012b

Ankitkumar

Cristiano

I use R2015b and yun Arduino and the sample does not work out. Just out symbols like . It will be some limitation of Arduino Yun? The R2015b is the one that support ...

OK, now I understand that it is because uint8 can represent a maximum value of 2^8 = 256, hence the 1/4 gain block in the Simulink model. It has nothing to do with sample time.

My sensor output is in the range of 600-850 but the values read in are sample time dependent - when I used the default one (0.02s) the output was extraordinarily high (1e30 etc.) and when I used a sample time of 1s the output was lower (about 80). Any suggestions for getting the exact value in Simulink?

Great...!!! works

Thanks a lot

DHRUPAL SHAH

kaveh dehno

Hi,

It works on my Leonardo, but gives me none sense data. I'm able to get the right data from Arduino serial monitor as well as the Mac Terminal.

Thanks
kaveh

Graham Lee

Worked with my UNO, and has an easy-to-follow setup guide. Great work, thanks!

Rosco

Rosco (view profile)

Very helpful - got me up and running immediately. Thanks for sharing.

Starhowl

It was only thanks to this submission that I understood data transmission on Arduino!

hello,
When trying this on the arduino uno, I get the following error when I try to run on target hardware: CRL: “None” cannot be found in the registry.

Nishant

The program shows 'catch err' error on line number 9.That's the only error that comes up.Please help me fix this.Thank you.

Updates

1.3.0.2

Minor link update in description. No change in file.

1.3.0.1

Updated license

1.3

Minor trademark adjustment.

MATLAB Release
MATLAB 8.3 (R2014a)

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video