Matlab only receives 1 arduino data

조회 수: 2 (최근 30일)
Erwin Avendaño
Erwin Avendaño 2019년 12월 2일
댓글: Walter Roberson 2025년 2월 4일
I want to graph some data that comes from arduino to matlab but, I only graph 1 data from the series of data that I have, why? thank you very much for reading me
<<<<<<<<<<<<<<<<<<CODE>>>>>>>>>>>>>>>>>>>>>>>>>><<
function Matlab_Arduino
close all;
clc;
y=zeros(1,1000); %Vector donde se guardaran los datos
%Inicializo el puerto serial que utilizare
delete(instrfind({'Port'},{'COM13'}));
puerto_serial=serial('COM13');
puerto_serial.BaudRate=9600;
warning('off','MATLAB:serial:fscanf:unsuccessfulRead');
%Abro el puerto serial
fopen(puerto_serial);
figure('Name','Serial communication: Matlab + Arduino')
title('SERIAL COMMUNICATION MATLAB+ARDUINO');
xlabel('time');
ylabel('aceleration');
grid on;
hold on;
%graph
ylim([0 100]);
xlim([0 100]);
aceleracion=fscanf(puerto_serial,'%d');
plot(aceleration,'X-r');
fclose(puerto_serial);
delete(puerto_serial);
clear all;
end

채택된 답변

Walter Roberson
Walter Roberson 2019년 12월 2일
By default, fscanf() only reads until the first terminator. When data is sent from arduino serial port, it is most common to send only one data point per packet.
You will need to loop reading data and adding it to the graph. I recommend that you look at animatedline()
  댓글 수: 1
Erwin Avendaño
Erwin Avendaño 2019년 12월 2일
I guess to go through the reading data with animatedline can I not?

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Oscar
Oscar 2025년 2월 4일
편집: Oscar 2025년 2월 4일
Use readline instead of fscanf command
  댓글 수: 3
Oscar
Oscar 2025년 2월 4일
But so far it's easier., thanks for your comment.
Walter Roberson
Walter Roberson 2025년 2월 4일
If you construct a serial() object, then readline() applied to the serial() object is simply not defined.
serial() objects are not recommended, having been functionally replaced by serialport() objects. readline() is defined for serialport() objects.

댓글을 달려면 로그인하십시오.

카테고리

Help CenterFile Exchange에서 MATLAB 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