Real time data acquisition
3 views (last 30 days)
Show older comments
Aloka Perera
on 11 Feb 2019
Commented: Andrey Kiselnikov
on 12 Feb 2019
Im trying to acquire EMG signals real time using Arduino support package in simulink. I'm using analog Input block for data acquire. But I dont get data at the rate I wanted it to be. for example, for 1k sampling frequency I dont get expexted samples. futhur more, when the filters also added to the block, this becomes more slower and loss huge amount of data.Is there a way to make this process faster, so that i can obtain expected samples.
0 Comments
Accepted Answer
Andrey Kiselnikov
on 11 Feb 2019
I tried to do exactly the same thing. This hardware stack is not able to provide the required sampling frequency. This issue related to some features of Arduino programming through MATLAB/Simulink. There is only one way to solve your task on this hardware - write code for Arduino manually and acquire data to MATLAB through the serial connection. And you should use DUE - one of the most powerful boards in Arduino family.
p.s. I migrated to Raspberry PI platform for this task.
4 Comments
Andrey Kiselnikov
on 12 Feb 2019
I tested DUE. I added the digital output pin in the capturing loop and measured time of each operation: analog capture, serial sending, sliding window average filtering - yes, with the good realization it allows to reduce serial data stream and increase the total data capture frequency. So my result was around 2.5 kHz.
More Answers (0)
See Also
Categories
Find more on 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!