一阶低通滤波的算法及推导
来源:网络整理 网络用户发布,如有版权联系网管删除 2018-07-21
一阶滤波,又叫一阶惯性滤波,或一阶低通滤波。是使用软件编程实现普通硬件RC低通滤波器的功能。
算法公式为:
其中a为滤波系数,a越小则上次输出值的权重越高。
下面我们从电路开始推导它的由来:
如a图,可知
这按照编程量化的思想,我们将输出uo 改为,输入ui改为
,而这里
则相当于
在
时间的变化,于是新公式可以改写为:
整理可得:
这里令,则公式可化简为:
------------------------------------------
应用例程很好写:
//为加快程序处理速度,假定基数为100 //a=0~100
#define a 50
char value;
char filter_6()
{
char new_value;
new_value=get_data();
return(100-a)*value+a*new_value;
}
一阶低通滤波算法对周期性干扰具有良好的抑制作用,适用于波动频繁的参数滤波,其不足之处是带来了相位滞后,灵敏度低。滞后的程度取决于a值的大小。同时,它不能滤除频率高于采样频率1/2(奈奎斯特频率)的干扰信号,对于高于奈奎斯特频率的干扰信号,应该采用模拟滤波器。
查看评论 回复
"一阶低通滤波的算法及推导"的相关文章
- 上一篇:单片机的存储器 寄存器概述
- 下一篇:PIC单片机1X4独立键盘C语言程序