APP下载

IIR数字滤波器的设计与实现

2016-04-17张海蓉

贵州师范学院学报 2016年12期
关键词:阻带低通滤波器脉冲响应

张海蓉

(贵州师范学院,贵州 贵阳 550018)

IIR数字滤波器的设计与实现

张海蓉

(贵州师范学院,贵州 贵阳 550018)

数字滤波是数字信号处理的关键内容,可分为IIR和FIR两大类。对于IIR数字滤波器的设计,需要借助模拟原型滤波器,再将模拟滤波器转化为数字滤波器,文中采用的设计方法是脉冲响应不变法、双线性变换法。根据IIR滤波器的特点,在MATLAB坏境下分别用双线性变换法和脉冲响应不变法设计IIR低通数字滤波器,并比较两种方法的优缺点。

IIR滤波器;MATLAB;数字滤波器;双线性;脉冲响应

引言

数字滤波在诸多方面都涉及到,譬如通信、图像编码、语音编码、雷达等领域中都有广泛的应用。现今,它的应用取得了令人瞩目的进展和成就。当然,相信它的未来也前途无量。

在文中用到的MATLAB是一种应用于科学计算领域的数学软件,它主要包括数值计算和符号计算功能、绘图功能编程功能以及应用工具箱的扩张功能。MATLAB推出的工具箱使各个领域的研究人员可以直观方便地进行科学研究、工程应用,其中的信号处理、图像处理、小波等工具箱为数字滤波研究的蓬勃发展提供了有力的工具。数字滤波器与模拟滤波器比较,它具有精度高、稳定、体积小、重量轻、灵活、不要求阻抗匹配和能实现模拟滤波器无法进行的特殊滤波等优势[1]。本文主要介绍无限冲激响应数字滤波器(IIR)的设计原理、方法、步骤以及在MATLAB中的实现。

1 IIR数字滤波器的设计与基本结构

1.1 数字滤波器的定义及结构原理

数字滤波器利用离散时间系统对数字信号中时域离散、幅度量化的信号进行滤波就是数字滤波器的构成,具有完成信号滤波处理的功能,数字滤波器具备精度高、可靠性好、便于集成等优点[2]。数字滤波器可分为有限冲激响应(FIR)数字滤波器和无限冲激响应(IIR)数字滤波器[3]。IIR滤波器运算结构通常由延时、乘以系数和相加等基本运算组成,可以组合成直接型、正准型、级联型、并联型四种结构形式,都具有反馈回路。由于运算中的舍入处理,使误差不断累积,有时会产生微弱的寄生振荡。

1.2 IIR滤波器的设计

滤波器就是依照所给定的指标来确定系数和阶数。得到模拟滤波器指标是数字滤波器指标的转换的,实现的主要方法有有两种,一种是双线性变换法,另一种是脉冲响应不变法,如图3所示。

图1 IIR数字滤波器的设计过程

1.3 IIR滤波器实现的基本结构

(1)IIR滤波器的直接型结构,如图2所示:

图2 直接型

优点:简单、直观,所用的延时器数量少,可以节省存储单元或者寄存器。

缺点:作用于所用极点的重要因素就是改变某一个系数{ak},同样作用于所用的零点的关键因素就是改变某一个系数{bk},更甚者有限字长的效应更易出现对外界事物反应很快的现象,针对这种结构,也轻易出现产生较大误差和状况的不稳固。大体上不汲取直接型结构,而是采取级联型、并联型等其他型的出现在三阶以上的数字滤波器上。

(2)IIR滤波器的级联型结构,如图3所示:

图3 级联结构

优点:第一是所有系数变更仅作用子系统的零点和极点,易于获取滤波器的零点和极点,对频率特性也容易调改。第二是需要的存储单元不用很多,在硬件实现过程中,用二阶进行时分复用比直接型低对有限字长的影响。

缺点:当用二进制表示零、极点时,须采用有限位字长,对于各种不同实现方案,所带来的误差是有差别的,故需要优化各二阶级联的次序和极点,而且还不能直接调整零点。

(3)IIR滤波器的并联型结构,如图4所示:

图4 并联结构

优点:运算的速度快、每个基本节的偏差彼此不受影响,所以不仅拥有较小的误差,还可调整极点的所在位置,其次传输准确的零点。

缺点:由于在子系统中的零点不是整个体系的零点,所以不能和级联型一样直接调动滤波器零点的所在位置。

2 IIR滤波器的实现与仿真

2.1 脉冲响应不变法设计

(1)基本原理

脉冲响应不变法是一种将模拟滤波器转换成数字滤波器的基本方法。它通过对模拟滤波器的单位冲击响应h(t)等间隔抽样来获得对应数字滤波器的单位脉冲响应h[k],即

h[k]=h(t)|t=kT=h(kT)

(1)

在上述式子中,T作为抽样间隔。若是知晓滤波器中模拟的系统函数H(s),那就可以转换成数字的系统函数H(z),转换步骤如5所示。

即先对H(s)进行Laplace逆变换获得h(t)之后,再对h(t)等间隔抽样得到h[k],最后计算h[k]的z变换得到H(z)。

图5 利用脉冲响应不变法将H(s)变换为H(z)

(2)设计方法

脉冲响应不变法常用的数字指标有{Ωp}、Ap、{Ωs}、As,设计的步骤如下:

①模拟滤波器的技术指标的被转换是建立在数字滤波器的技术指标的基础上。利用数字和模拟两者频率的间关系

(2)

然后将{Ωk}数字滤波器的频率指标转换为{ωk}模拟滤波器的频率指标。

②在模拟和数字滤波器的衰减响应的坐标变换中,纵坐标衰减幅度没有影响,无需变换,所以只需变换横坐标的频率轴,转换后模拟滤波器的阻带衰减As和通带衰减Ap与数字滤波器相同。

③依照模拟滤波器的技术要求,设计其H(s)即系统函数,然后利用H(s)求解数字滤波器的系统函数H(z),并对所设计的数字滤波器的技术指标进行检验是否满足要求[4]。

利用脉冲响应不变法及BW型低通滤波器设计一个数字低通滤波器满足下列要求的,Ωp=0.2πrad,Ωs=0.6πrad,Ap=2dB,As=25dB

其转换关系如下:

[numa,dena]=butter(N,wc,'s');%确定BW AF

[numd,dend]=impinvar(numa,dena,Fs);%确定DF

其运行结果是Ap=1.0032dB,As=32.2549 dB。显然,阻带衰减不满足设计要求,其原因是巴特沃斯型模拟滤波器不是带限的,脉冲响应不变法所设计的数字滤波器存在频谱混叠。其增益图如图6所示。

图6 数字滤波器的增益响应

图6是所设计的低通滤波器的增益响应,阻带衰减不满足所求要求时,其原因是原滤波器不是带限的,被脉冲响应不变法所设计的数字滤波器呈现出频谱混叠现象。又由于T的选择对最终的设计结果没有影响,所以不能通过减小T来减少频谱混叠,有效的方法是待设计的阻带最小衰减As。

2.2 双线性不变法设计

(1)变换原理

双线性变换法的基本原理是:把s域Ω值从0到±∞的分布压缩至0到±π之间,这样变换到z域就不会出现周期重复,就可以单值映射。

也就是说,不是直接从s域到z域,而是先将非带限的H(s)映射为带限的H(s’),在模拟滤波器H(s)变换为数字滤波器H(z)的时候,再将s’映射到z域通过脉冲响应不变法的方法,即H(s)—H(s’)—H(z)。

(2)设计步骤

①将数字和模拟滤波器的频率指标相互转换,即{Ωk}转为{ωk}。

②设计通带截频{ωp}通带衰减Ap、阻带衰减As、阻带截频{ωs}的模拟滤波器其中变换公式:

(3)

然而通带最大衰减Ap和阻带最小衰减As不变。

③利用双线性不变法将模拟和数字滤波器系统函数进行转换,即把H(s)通过相应的公式转为H(z)。公式为:

(4)

转换方法程序如下:

[N,Wc]=cheb1ord(Omgp,Omgs,Ap,As,'s')%计算阶数N和截止频率ωc,[b,a]=cheby1(N,Ap,Wc,'s');%求模拟滤波器系数b和a,再由[bd,ad]=bilinear(b,a,0.5);%用双线性变换法求数字滤波器系数bd,ad例:用双线性变换法设计IIR切比雪夫低通数字滤波器,wp=0.2πrad,ws=0.6πrad,Ap=3dB,As=40dB。

运行结果:

Omgp=0.3249

Omgs=1.3764

N=3

wo=0.3249

b=0 0 0 0.0086

a=1.0000 0.1941 0.0980 0.0086

图7 双线性变换法设计低通滤波器的分析

优点:由于z平面和s平面间的单一数值映射的关系,双线性变换法不但能满足对调换关系的两点要求之外,而且还战胜多值映射的关系,还可以消除频率带来的混叠,避免频率失真现象[5]。

缺点:频域的变换是非线性的,在高频处有较大的失真,适用于低频和中频。

3 结论

采用脉冲响应不变法从时域上来设计IIR滤波器,美中不足的一定是由于频率响应致使周期延拓而造成不可避免的混叠失真,因此这种方法只适合用来设计带限的滤波器,如衰减特性很好和带通滤波器的低通滤波器,高于频率的折叠部分衰减越大,就会使失真情况减小,混叠效应越小。若从频域出发的话,采取双线性变换法。它是从s平面和z平面是一对一的关系,但克服了混叠的现象,成为这种方法的最大优点。

[1]王靖,李永全.数字椭圆滤波器的Matlab设计与实现[J].现代电子技术,2007(6):4-5+8.

[2]袁炜.数字滤波器算法研究及其在DSP系统中的实现[D].武汉理工大学,2007

[3]辛修芳.数字滤波器在车辆电容称重装置中的应用[J].佳木斯大学学报:自然科学版,2012(3):376-378.

[4]王淑娇.数字滤波器的设计与参数选择[J].科技资讯,2011(35):32.

[5]封向东,李兴源.递归数字滤波器的设计和实现[J].成都科技大学学报,1995(6):84-92.

[责任编辑:袁向芬]

Design and implementation of IIR digital filter

ZHANG Hai-rong

(Guizhou Education University, Guiyang, Guizhou, 550018)

The digital filter are the important content digital signal processing,which may be divided into IIR and the FIR.To design the IIR digital filter , we need the help of analog prototype filter, and then transform analog filter into digital filter.In the paper we use the design of the pulse response invariable method and the bilinear method.Based on the IIR filter characteristic, we use the bilinearity method of transformation and respuesta invariable under the MATLAB bad boundary to design IIR,and compare the advantages and disadvantages of both.

Bigital filter IIR; MATLAB; Bigital filter; Bilinearity; Impulse response

2016-11-29

张海蓉(1983-),女,陕西泾阳人,硕士,贵州师范学院讲师,研究方向:信号与信息处理、智能控制系统、嵌入式系统。

TN911.72

A

1674-7798(2016)12-0008-04

猜你喜欢

阻带低通滤波器脉冲响应
基于重复脉冲响应的发电机转子绕组匝间短路检测技术的研究与应用
一种低损耗高抑制的声表面波滤波器
切比雪夫Ⅱ型模拟高通滤波器的设计及实现*
基于瞬时无功理论的谐波检测中低通滤波器的改进
一种改进的最大信杂比MTD滤波器设计算法
二维周期介质阻带分析与应用研究
基于脉冲响应的厅堂音质评价研究
非等纹响应低通滤波器研究
玻璃气体放电管与陶瓷气体放电管的纳秒脉冲响应特性比较
一种基于互补环缝谐振器抑制SSN的新方法