私はArduino Unoボードの温度センサーからデータを取り込み、データをグラフにプロットしながらリアルタイムでセンサーの変更をモニターするようにしています。これは最終的には異なるセンサーで実装されます。これは概念証明です。私は現在、私の二つの問題を悩まれている:シリアルポートからのデータの読み取りとリアルタイムでのプロット
1)私は大量のデータを監視する数秒後にデータ・ポイント1000倍の私の現在のコードが行うことができない(第2)
2)を収集する必要がありますノイズがシステム
がここにここに私のMATLABコード
SerialPort = 'com6';
s = serial(SerialPort, 'BaudRate', 250000, 'DataBits', 8);
fopen(s);
voltage = 0;
t = 0;
y = 1;
voltage = fscanf(s);
VoltageValue(y,1)=str2double(voltage);
h = animatedline(t,VoltageValue(y,1));
xlim([0 1000]);
ylim([100 200]);
tic
while t <= 1000
voltage = fscanf(s);
VoltageValue(y,1)=str2double(voltage);
addpoints(h, t, VoltageValue(y,1));
t= t+1;
y= y+1;
drawnow
end
toc
fclose(s);
delete(s);
clear s;
は私のArduinoのコード
です入りint tmppin = 0;
void setup() {
// put your setup code here, to run once:
Serial.begin(250000);
pinMode(tmppin, INPUT);
}
void loop() {
// put your main code here, to run repeatedly:
int tempreading = analogRead(tmppin);
Serial.println(tempreading);
}
シリアルから1秒間に1000データは取得されません。 100Hzでもそれを伸ばしている。また、ADCは1000Hzを行うことができないので、二重にねじ込まれています;) – dandavis