Real Time data from matlab to arduino
3 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Gabriel Enzo
le 17 Juin 2022
Commenté : Gabriel Enzo
le 22 Juin 2022
hello, i have a some project eeg, and i was sending real time data in matlab and i want to send that to arduino uno, maybe somebody help me, thanks
2 commentaires
Walter Roberson
le 17 Juin 2022
How are you getting the eeg data into the MATLAB host?
Could you confirm that you want to send the raw eeg data to the arduino, without analyzing it (for example to send motor commands to the arduino)?
What data rate do you need, and what latency is acceptable?
Réponse acceptée
Walter Roberson
le 19 Juin 2022
If you look at https://github.com/labstreaminglayer/liblsl-Matlab/blob/master/examples/ReceiveData.m
where it has
while true
% get data from the inlet
[vec,ts] = inlet.pull_sample();
% and display it
fprintf('%.2f\t',vec);
fprintf('%.5f\n',ts);
end
you would change the fprintf() calls to
msg = compose('%.2f\n%.5f', vec, ts); %adjust this format as needed
writeline(s, msg);
where
s = serialport('COM3'); %where COM3 is the location of the serial port connected to the arduino
You would be expected to have a program running on the arduino that reads from the serial port and reads two items, the first being vec and the second being ts, and does something appropriate with the readings.
If you are planning to run a motor, then typically instead of sending the raw eeg data, you would analyze the data at the MATLAB level and then send commands to the arduino.
Alternately, if you can use a Due or Mega, then https://www.starcat.io/ makes an EEG shield that can directly receive Lab Streaming Layer on the Due or Mega, without going through MATLAB.
2 commentaires
Plus de réponses (0)
Voir également
Catégories
En savoir plus sur EEG/MEG/ECoG dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!