Ionic应用程序通过蓝牙Ardoino传感器测量体重。那很好。但是当我显示测量值时,它非常不稳定。
现在我已经做到了:
我得到来自data
的值,然后在array_data
中推入20个值。
然后,我计算该数组的平均值。 但是如果我在设置this.measure之后清理阵列。它也非常不稳定,如果我接受200个值,它也不会改变任何东西。
这是我从data
获得的数据。在这些值中,我想计算出每10或20个值的平均值,以使这些值最终变得更加稳定。
每秒钟我得到10或20重量值。
代码:
this.smartBox.connect().then(box => {
box.subscribe(data => {
for (let i = 1; i <= 20; i++) {
this.data_array.push(data * 1);
console.log(i);
}
console.log(this.data_array.length);
let sum = this.data_array.reduce((previous, current) => current += previous);
let avg = sum.toFixed(0) / this.data_array.length;
this.measure = Math.round(avg);
this.applicationRef.tick();
this.data_array = [];
});
loader.dismissAll();
}, e => {
loader.dismissAll();
});
我希望有人可以帮助我。