前言
在嵌入式开发程序中涉及数据采样如传感器采样,AD采样等如果直接读取信号后,将信号值直接参与后续逻辑处理,若程序无软件滤波,会导致静态或者动态采样时:
1、信号曲线相对没有那么平滑。
2、同时可能存在脉冲干扰导致逻辑判断错误。
在信号处理系统中,输入信号通常含有各种噪声和干扰。为对信号进行准确的测量和控制,必须削弱或滤除被测信号中的噪声和干扰。因此在工程应用需要使用软件滤波,软件滤波也称数字滤波,是通过一定的算法削弱噪声的影响。在实际的开发过程中使用了滑动窗口滤波算法来对传感器的数据采样进行滤波处理。
一、图解滑动窗口滤波器的原理
滑动窗口滤波是一种时间域滤波方法,通过对一定数量的连续数据点进行统计处理,来平滑原始信号,减少随机噪声的影响。它的实现简单、计算量小,非常适合资源有限的单片机应用。
1.基本原理
滑动窗口滤波的核心思想是维护一个固定大小的数据窗口,每当有新的数据到来时,移除最旧的数据点,并将新数据点加入窗口中,然后对窗口内的数据进行处理(如求平均)以得到滤波后的输出。
数学表达
设窗口大小为 ,第
时刻的