概述
所谓数字滤波,就是通过一定的计算或判断程序减少干扰在有用信号中的比重。故实质上它是一种程序滤波。
所谓数字滤波,就是通过一定的计算或判断程序减少干扰在有用信号中的比重。故实质上它是一种程序滤波。
(1) 数字滤波是用程序实现的,不需要增加硬设备,所以可靠性高,稳定性好;
(2) 数字滤波可以对频率很低(如0.01HZ)的信号实现滤波,克服了模拟滤波器的缺陷。
(3) 数字滤波器可以根据信号的不同,采用不同的滤波方法或滤波参数,具有灵活、方便、功能强的特点。
常用的数字滤波算法:算术平均值法、中位值滤波法、限幅滤波法、惯性滤波法。
1. 算术平均值法
算术平均值法是对输入的N个采样数据xi(i=1~N),寻找这样一个y,使y与各采样值间的偏差的平方和为最小,使
由一元函数求极值原理可得:
特点:
(1)N值决定了信号平滑度和灵敏度。随着N的增大,平滑度提高,灵敏度降低。应该视具体情况选择N,以便得到满意的滤波效果。
(2)对每次采样值给出相同的加权系数,即1/N。在不同采样时刻采集数据受到同样重视。实际上某些场合需要增加新采样值在平均值中的比重,可采用加权平均值滤波法。滤波公式为:Y=R0Y0+ R1Y1+ R2Y2+…+ RmYm。
(3)平均值滤波法一般适用于具有周期性干扰噪声的信号,但对偶然出现的脉冲干扰信号,滤波效果尚不理想。
2. 中位值滤波法
中位值滤波法的原理是对被测参数连续采样m次(m≥3)且是奇数,并按大小顺序排列;再取中间值作为本次采样的有效数据。
特点:
中位值滤波法对脉冲干扰信号等偶然因素引发的干扰有良好的滤波效果。如对温度、液位等变化缓慢的被测参数采用此法会收到良好的滤波效果;对流量、速度等快速变化的参数一般不宜采用中位值滤波法。
中位值滤波法和平均值滤波法结合起来使用,滤波效果会更好。即在每个采样周期,先用中位值滤波法得到m个滤波值,再对这m个滤波值进行算术平均,得到可用的被测参数。也称为“中位值+平均值” 滤波法。
3.限幅滤波法
由于大的随机干扰或采样器的不稳定,使得采样数据偏离实际值太远,为此采用上、下限限幅,即:
当y(n)≥yH时,则取y(n)=yH(上限值);
当y(n)≤yL时,则取y(n)=yL(下限值);
当yL<y(n)<yH时,则取y(n)。
而且采用限速(亦称限制变化率),即
当|y(n)-y(n-1)|≤Δy0时,则取y(n);
当|y(n)-y(n-1)|>Δy0时,则取y(n)=y(n-1)。
其中Δy0为两次相邻采样值之差的可能最大变化量。Δy0值的选取,取决于采样周期T及被测参数y应有的正常变化率。
因此,一定要按照实际情况来确定Δy0、yH及yL,否则,非但达不到滤波效果,反而会降低控制品质。
4.惯性滤波法
RC滤波器的传递函数是
其中Tf=RC,它的滤波效果取决于滤波时间常数Tf。
因此,RC滤波器不可能对极低频率的信号进行滤波。为此,人们模仿上式做成一阶惯性滤波器亦称低通滤波器。
离散化后
差分方程
整理
其中:α称为滤波系数,且0<α<1,Ts为采样周期,Tf为滤波器时间常数。
根据惯性滤波器的频率特性,若滤波系数α越大,则带宽越窄,滤波频率也越低。因此,需要根据实际情况,适当选取α值,使得被测参数既不出现明显的纹波,反应又不太迟缓。
另外,下面几篇很好的博客介绍的实际代码也写的挺好,重要的是多在实际应用中灵活运用。
https://blog.csdn.net/m0_37655357/article/details/71404872
https://blog.csdn.net/fandq1223/article/details/72730672
这一篇讲了一些理论
https://blog.csdn.net/clover13/article/details/79492271
https://wenku.baidu.com/view/e7c4fdcf112de2bd960590c69ec3d5bbfc0ada44.html?from=search
最后
以上就是还单身秀发为你收集整理的数字滤波技术总结的全部内容,希望文章能够帮你解决数字滤波技术总结所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复