IIR滤波器零相位数字滤波器设计及其应用

时间:2010-08-12来源:网络

  对比图3和图4所示波形可以看出,差分滤波后,信号变得“光滑”了许多,原来的“毛刺”被滤掉了。但同时也可以看出差分滤波方法存在两个问题:一是滤波后的信号相对与原信号而言,发生了相移;二是滤波后的信号在起始部分,波形畸变较为严重。在信号处理中,如果对信号的相位有特殊的要求,相移问题需要引起高度的注意。而起始部分的畸变是由于叠代过程中,没有考虑滤波器的初始条件,刚开始点数少,没能用到滤波器全部系数的缘故。大多情况下,这种畸变可以接受,但当数据较短,而滤波器的阶数又较高时,这种畸变会带来较大的负面影响。

  如果输入信号为一单位脉冲信号,即

  x(n)=1,n=1

  0,n≠1

  那么,滤波器的输出为其脉冲响应。本文所用200阶FIR低通数字滤波器的脉冲响应如图5所示。

  图5滤波器的脉冲响应3零相位数字滤波算法及其实现

  3.1零相位数字滤波的算法

  为了克服差分数字滤波中存在的上述两个问题,可以采用一种零相位滤波的方法,该方法的基本思路是:先确定出滤波器的初始条件,然后将原序列的首尾进行扩展,把扩展后序列通过滤波器,将所得结果反转后再次通过滤波器,最后将所得结果再反转,并去掉首尾的扩展部分,即可得到零相位滤波后的输出序列[3]。本文采用四次差分滤波方式给出一种便于实现的详细算法,假设输入信号为x(n),n=0,1,…,P。

  (1) 编写差分滤波函数DiffFilter(b,a,x),调用参数如前所述。

  (2) 对于IIR滤波器通常有M=N,求滤波器的初始条件e(q),q=0,1,…,N-1,这里记E=[e(0),e(1),…,e(N-1)]T,则有

  E=1+a(1)1-1…0

  a(2)01…0

  MMMOM

  a(N)00…-11× b(1)-b(0)a(0)

  b(2)-b(0)a(1)

  M

  b(Nn)-b(0)a(N)(3)

1 2 3 4 5

关键词: 虚拟仪器 信号处理 零相位 数字滤波

加入微信
获取电子行业最新资讯
搜索微信公众号:EEPW

或用微信扫描左侧二维码

相关文章

查看电脑版