在串口上获取新旧数据 – Arduino uno,nodejs,socket.io和传感器

我已经附加了一个传感器到arduino,我试图把这些数据使用一个串口进入Nodejs。 我将用它来制作图表。

从串口推送的数据,在terminal上打印时看起来像这样:

1,2 1,2 1,3 1,2 1,3 1,4 1,2 1,3 1,4 1,5 

正如你可以看到所有以前的数据再次推动:/我不想要的

预期产出

 1,2 1,3 1,4 1,5 1,6 

格式在这里: <value 1> , <value 2>

稍后我将分解这些传入的数据,并将其推送为2个不同的数据集,以便得到如下graphics:

http://www.chartjs.org/samples/latest/charts/line/multi-axis.html

代码 – nodejs

 var SerialPort = require("serialport"); var serialport = new SerialPort("COM4"); var received = ""; serialport.on('open', function(){ console.log('Serial Port Opend'); serialport.on('data', function(data){ received += data.toString(); console.log("incoming data: " + received); nsp.emit('live-data', received); }); }); 

来自arduino的串行输出代码

 void serialOutput(){ // Decide How To Output Serial. switch(outputType){ case PROCESSING_VISUALIZER: sendDataToSerial('S', Signal); // goes to sendDataToSerial function break; case SERIAL_PLOTTER: // open the Arduino Serial Plotter to visualize these data Serial.print(BPM); Serial.print(","); Serial.println(Signal); break; default: break; } }