三轴加速度曲线
我在processing中,通过串口读数据,画图,得出来的结果是这样。这是为什么么?代码是:
RawX = Sensor_X;
RawY = Sensor_Y; // place the new raw datapoint at the end of the array
RawZ = Sensor_Z;
zoom = scaleBar.getPos(); // get current waveform scale value
offset = map(zoom,0.5,1,300,0); // calculate the offset needed at this scale
for (int i = 0; i < RawX.length-1; i++) { // move the pulse waveform by
RawX = RawX; // shifting all raw datapoints one pixel left
float dummy = RawX * zoom + offset; // adjust the raw data to the selected scale
ScaledX = constrain(int(dummy),44,556); // transfer the raw data array to the scaled array
}
for (int i = 0; i < RawY.length-1; i++) { // move the pulse waveform by
RawY = RawY; // shifting all raw datapoints one pixel left
float dummy = RawY * zoom + offset; // adjust the raw data to the selected scale
ScaledY = constrain(int(dummy),44,556); // transfer the raw data array to the scaled array
}
for (int i = 0; i < RawZ.length-1; i++) { // move the pulse waveform by
RawZ = RawZ; // shifting all raw datapoints one pixel left
float dummy = RawZ * zoom + offset; // adjust the raw data to the selected scale
ScaledZ = constrain(int(dummy),44,556); // transfer the raw data array to the scaled array
}
//stroke(250,0,0); // red is a good color for the pulse waveform
noFill();
beginShape(); // using beginShape() renders fast
for (int x = 1; x < RawX.length-1;x++) {
stroke(255,0,0);
vertex(x+10, ScaledX);
}
endShape();
beginShape(); // using beginShape() renders fast
for (int x = 1; x < RawY.length-1;x++) {
stroke(0,255,0);
vertex(x+10, ScaledY);
}
endShape();
beginShape(); // using beginShape() renders fast
for (int x = 1; x < RawZ.length-1;x++) {
stroke(0,0,255);
vertex(x+10, ScaledZ);
}
endShape();
页:
[1]