常见的几种数字滤波算法及特点

常见的⼏种数字滤波算法及特点
⼀、均值滤波
均值滤波即对多个采样值进⾏求和、取平均,是消除随机误差最常⽤的⽅法,主要分为以下⼏种:
1. 算术平均滤波
原理: 在采样周期T内,对测量信号y连续进⾏m次采样,并把m个采样值相加取算术平均值作为本次的有效采样值。即:
Y = (y1+y2+y3+···+ym) / m ;
其中采样次数m的值决定了信号的平滑度和灵敏度。提⾼m的值可以改善平滑度,但系统灵敏度随之降低。因此,采样次数m 取值随被控对象的不同⽽不同。⼀般情况下,流量信号可取10左右,压⼒信号可取4左右,⽽温度、成分等缓慢变化信号可取2甚⾄不进⾏算术平均。在编程时m⼀般取2、4、8等(2的整数幂),以便⽤移位来代替除法运算求得平均值。
特点: 采样的平滑度与灵敏度之间存在⽭盾(采样次数少则平滑性差,次数多则灵敏度下降);且⽆法消除偶然的⼲扰脉冲,只是将均值作为了结果,测量精度有所降低。
2. 去极值平均滤波
原理: 去极值平均滤波与算术平均滤波原理相似,只是在算术平均滤波的基础上,先将m个数据中的最⼤值与最⼩值剔除,再计算余下的m-2个数据的算术平均值。即:
Y = [ (y1+y2+y3+···+ym) - ymax - ymin ] / (m-2) ;
相应地,在编程时m⼀般取4、6、10等(2的整数幂+2),以便⽤移位来代替除法运算求得平均值。其中剔除最值常⽤的排序⽅法是冒泡排序或选择排序。
特点: 采样的平滑度与灵敏度之间存在⽭盾(采样次数少则平滑性差,次数多则灵敏度下降)。
3. 加权平均滤波
原理: 对每次的采样值以不同的权系数(越新鲜的采样值权重越⼤)相加,m⼀般取到4即可,即:
Y = (C1·y1+C2·y2+C3·y3+···+Cm·ym) ;
-3t-2t-t-3t-2t-t
例如m=4时,权系数可以取:C1=e/R, C2=e/R, C3=e/R, C4=1/R,其中R=e+e+e+1;
特点: 可以协调系统平滑性与灵敏度之间的⽭盾,在不降低平滑性的前提下提⾼灵敏度,更适⽤于纯滞后较⼤的对象。
4. 滑动平均滤波
原理: 滑动平均滤波是在每个采样周期只采样⼀次,将这⼀次的采样值和过去的若⼲采样值⼀起求平均,所得结果为有效采样值。
不妨以取m个采样值求滑动平均为例,利⽤循环队列的结构⽅式来暂存数据,每新采集⼀个数据便并⼊该队列的队尾,同时“挤”掉队⾸的⼀个数据,这样在队列中能够始终保持有m个不断更新的数列。
特点: 当系统的采样速度较慢或采样信号变化较快时,能够保证系统的实时性。
⼆、中值滤波
原理: 将信号y进⾏连续采样,把所得到的m个采样值按⼤⼩进⾏排序,取中值作为本次采样的有效采样值。(当m为奇数时取中间数,当m为偶数时取中间两数的均值;⼀般m取3~5次即可)。
特点: 对于 缓慢变化过程中的偶然因素所引起的波动 或 采样器不稳定造成的误差所引起的脉动⼲扰 ⽐较有效;但由于采样点的限制,应⽤范围不宽,不适⽤于快速变化过程(如流量)的信号采样。
三、限幅滤波
经验说明,⽣产过程中许多物理量变化需要⼀定时间,因此相邻两次采样值之间的变化幅度应在⼀定限度内,即 |Y n - Y n-1| ≤ ΔY。
原理: 限幅滤波就是通过⽐较两次相邻采样值差的绝对值和最⼤允差ΔY(取决于采样周期和信号变化率),从⽽得到有效采样值。
即:当 |Y n - Y n-1| ≤ ΔY 时,表明本次采样真实,取本次采样值为有效采样值;当 |Y n - Y n-1| > ΔY时,表明本次采样不真实,取前1次采样值为有效采样值。简易理解如下:
Y = Y n, (| Y n - Y n-1 | ≤ ΔY)------差距合理,此次测量有效
Y = Y n-1,(| Y n - Y n-1 | > ΔY)----差距过⼤,此次测量不作数
特点: 限幅滤波对随机⼲扰或因采样器不稳定引起的失真有良好的滤波效果。主要⽤于变化⽐较缓慢的参数,如温度、物理位置等测量系统。具体应⽤时,关键的问题是最⼤允差ΔY的选取,ΔY太⼤,各种⼲扰信号“乘虚⽽⼊”,使系统误差增⼤;ΔY太⼩,⼜会使某些有⽤信号被“拒之门外”,使采样效率变低。因此,门限值ΔY的选取⾮常重要,通常可根据经验数据获得,必要时也可由实验得出。
四、限速滤波
原理: 把当前采样值Y n与前两次采样值Y n-1、Y n-2进⾏⽐较,取差值的绝对值ΔY作为⽐较依据,分别得到有效采样值Y,即:
Y=Y n-1,( | Y n-1-Y n-2 | ≤ ΔY )-----仅前两次的差值<ΔY,取前1次的采样值
Y=Y n, ( | Y n-1-Y n-2 | > ΔY 且 | Y n-Y n-1 | ≤ ΔY )----仅当后两次差值<ΔY时,取本次
Y=(Y n+ Y n-1)/2------前、后两次差值均>ΔY,即当 |Y n-1-Y n-2|>ΔY 且 | Y n-Y n-1|>ΔY时,取该两次均值
特点: 保证了采样的实时性和连续性;但ΔY的确定不够灵活,必须根据现场的情况不断更换新值,且不能反映当采样点数N>3时各采样值受⼲扰的情况。
五、惯性滤波
原理: 惯性滤波(⼜称⼀阶滞后滤波)是模仿硬件RC低通滤波器的数字实现。
常⽤的RC滤波器的传递函数是:Y(s) / X(s) = 1 / (1+Tf·s) ------①
式①中,Tf是滤波器的滤波时间常数,其⼤⼩关系到滤波效果。⼀般来说,Tf越⼤,滤波器的截⽌频
率(滤出的⼲扰频率)越低,滤出的电压波纹较⼩,但输出滞后较⼤。由于时间常数⼤以及⾼精度的RC电路不易制作,所以硬件RC不可能对极低频率的信号进⾏滤波。为此可以模仿硬件RC滤波器的特性参数,⽤软件做成低通滤波器,从⽽实现⼀阶惯性的数字滤波。
将①式写成差分⽅程形式:Tf · [y(k) - y(k-1)] / T + y(k) = x(k) ------②
将②式整理后,得到:y(k)= T/(T+Tf)·x(k) + Tf/(T+Tf)· y(k-1) ------③
令 α =T/(T+Tf),亦即:y(k) = α·x(k) + (1-α)·y(k-1) ------④
式③中,x(k)为第k次采样的滤波输⼊值,即第k次采样值;y(k-1)为第k-1次采样的滤波输出值;y(k)为第k次采样的滤波输出值;α即
T/(T+Tf)为滤波系数;Tf为滤波环节的时间常数;T为采样周期。⼀般当T远⼩于Tf即α远⼩于1时,本次的有效采样值(滤波输出值)主要取决于上次的有效采样值(滤波输出值),⽽本次的采样值(滤波输⼊值)仅起到⼀点修正作⽤。假定采样周期T⾜够⼩,则有
α ≈ T/Tf ,滤波算法的截⽌频率为:f = 1/(2·Π·RC) = α/(2·Π·T) ----⑤
式④中,f 为截⽌频率,Π为圆周率,RC为电路分析中常见的的阻容参数,T为采样周期。当采样周期 T⼀定时,滤波系数 α 越⼩,数字滤波器的截⽌频率 f 就越低。
特点: 模拟了具有惯性的RC滤波器,对频率较低随机变化的信号滤波效果很好;但不能滤除⾼于1/2采样频率的⼲扰信号。
六、复合滤波
为了进⼀步提⾼滤波效果,有时可以把2种或2种以上不同功能的数字滤波器组合起来,组成复合数字滤波器,或称多级数字滤波器。
例如防脉冲⼲扰平均值滤波就是⼀种应⽤实例,由于这种滤波⽅法兼顾了中值滤波和算术平均值滤波的优点,所以⽆论对缓慢变化的信号,还是对快速变化的信号,都能获得较好的滤波效果。
再如对⾼频和低频部分都需要滤波的信号,就可以⽤复合滤波;也可采⽤双重滤波的⽅法,即把采样值经过低通滤波后,再经过⼀次⾼通滤波。这样,结果更接近理想值,这实际上相当于多级RC滤波器。
附、常⽤的排序⽅法
1. 冒泡排序法
2. 选择排序法

本文发布于:2024-09-25 16:38:37,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/95426.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:采样   滤波   信号   变化   平均值   次数   结果   测量
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议