Real time data acquisition

6 次查看(过去 30 天)
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.

采纳的回答

Andrey Kiselnikov
Andrey Kiselnikov 2019-2-11
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 个评论
Aloka Perera
Aloka Perera 2019-2-11
programming on Arduino.it is difficult to obtain samples at 5k and perform serial communication simultaneously
Andrey Kiselnikov
Andrey Kiselnikov 2019-2-12
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.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Modeling 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by