欢迎来到天天文库
浏览记录
ID:35956042
大小:42.92 KB
页数:3页
时间:2019-04-28
《程序判断滤波算法——嵌入式常用算法》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、....程序判断滤波算法——嵌入式常用算法最近计划设计一些数据采集终端,主要用来模拟分布式数据采集与控制功能。由于自己的预算有限,因此,大部分功能实现均采用软件来实现,少部分必要功能由硬件实现。虽然牺牲了一些CPU处理时间,但是本身数据采集终端的功能单一,CPU也就完全能够胜任。这里就包括了温度采样功能里的滤波。我们知道在普通环境下,外界的温度在短时间内是不会发生骤变的,因此,如果我们传感器采集的数据在短时间间隔变化较大,则有理由认为该数据为非法数据,应该被丢弃。说得专业一点就是:如果相邻两次采样值之间的变
2、化未超过预定的范围,说明该采样值未明显干扰,可以采信。基于这个原理,某些牛人就设计了“程序判断滤波”方法,也称“限幅滤波”。#defineDX15Int32UhistoryInt32UProgFilter(){Int32Utemp;temp=SampleADC();if(((temp-history)>DX)
3、
4、((history-temp)>DX)){temp=history;}history=temp;returntemp;}----....从源代码上我们可以轻松看到,对于采集出来的数据进行一次与上一次
5、结果的比较判断,如果数据在限幅之内,则将数据保留。这时,我们忽略了一个情况,就是“如果数据限幅之外呢?这次数据就不要了吗?还是如何处理呢?”在限幅之外时,如果数据正处于明显变化的阶段,两次采样数据也有明显的差别,这时没有有效数据而使用上一次数据来替代就有些不足,也会带来较大的误差了。如果我们这里采用合理的变化量预测,使用一个合理的数据来替代目前被干扰的,则会使误差减小。----....对于可怜的MCU计算能力来,使用线性预测的方式,我想,是最好的策略了。当然,使用线性预测的算法将全再后面的帖子中详细阐述。欢
6、迎关注本次系列帖子。----
此文档下载收益归作者所有