数据采集偶尔有突变值,问如何去野值
时间:10-02
整理:3721RD
点击:
正在做一个温度采存的,就是串口以一定频率读取温度传感器发送过来的数据,然后处理数据计算出温度,然后用图形显示并存储.txt文档。但是发现偶尔会来个很夸张的突变值,因为正常的温度肯定是个大惯性量,短时间不会变化太大,所以想做个滤波的去除这样的野值。具体的就是比较这次计算出的温度值与上次计算的温度值,如果差值的绝对值小于1°,就保留这次的值并写入波形和文档;如果差值的绝对值大于1说明有突变,就舍弃这次的值而用上次的值替代。不知道各位有何高见,请指导一下,谢谢!
写程序就是不断发现bug,解决bug,然后发现新bug……
或者谁遇到过这样的情况吗?这样的突变值可能是怎么来的?
多次采样,去掉最大值,最小值,然后平均,为啥不让回复呢
关键是我不断采集不断显示的,采集一个数据就要实时显示出来,怎么采集完了再去极值求平均?还有你说“为啥不让回复”啥意思?
关键是我不断采集不断显示的,采集一个数据就要实时显示出来,怎么采集完了再去极值求平均?还有你说“为啥不让回复”啥意思?
输入了前面的话,点回复没反映,就输入了个“为啥不让回复”。那用你的那种方法也可以。
到底该如何实现?感觉挺简单的,但是放在郑国光循环里面又不容易实现了
能实现while循环达到条件终止本次循环直接进行下次循环吗?
解决了吗 可以试试粗大误差剔除的办法
小编问题解决了吗,我也遇到同样的问题
自己做了滤波。关键我这个是温度数据,是大惯性量,短时间温度变化不会太大,所以可以利用这个判断是否有野值。其他的不一定适用。