APP下载

基于MATLAB的IIR数字滤波器设计

2011-04-16赵蕾

电脑与电信 2011年4期
关键词:沃斯工具箱巴特

赵蕾

(华中师范大学,湖北武汉430079)

1.引言

在现代通信系统中,信号中经常混有各种复杂成分,所以很多信号的处理和分析都是基于滤波器而进行的。但是传统的数字滤波器设计过程复杂、滤波特性调整困难,利用MATALB信号处理工具箱(signal processing toolbox)可以快速有效地实现由软件组成的常规数字滤波器的设计、分析和仿真,极大地减轻了工作量,有利于滤波器设计的最优化。

2.IIR数字滤波器的设计方法

2.1 脉冲响应不变法设计IIR滤波器

脉冲响应不变法就是要求数字滤波器的脉冲响应序列h(n)与模拟滤波器的脉冲响应ha(t)的采样值相等。根据模拟信号的拉普拉斯变换与离散序列的Z变换之间的关系,我们知道:

将Ha(s)映射为H(z),即得到数字滤波器的系统函数H(z):

2.2 双线性变换法设计IIR数字滤波器

脉冲响应不变法的主要缺点是会产生频谱混叠现象,为了克服这一缺点,可以采用双线性变换法,将整个频率轴上的频率范围压缩到s1平面上的-π/T~π/T之间,再用z=eS1T转换到z平面上。

这里用正切变换实现频率压缩:

最终得到的转换关系为:

3.IIR数字巴特沃斯滤波器的MATALB实现

3.1 MATALB信号工具箱函数简介

MATALB信号工具箱提供了几个直接设计IIR数字滤波器的函数,直接调用这些函数就可以很方便地对滤波器进行设计。用MATALB工具箱函数设计数字巴特沃斯滤波器的函数如下:

(1)求最小阶数N和3dB截止频率的函数buttord

[N,wc]=buttord(wp,ws,Rp,As),此处wp,ws分别为数字滤波器的通带边界和阻带边界频率的归一化值。Rp和As分别指通带最大衰减和阻带最小衰减(dB)。

(2)计算系统函数分子和分母多项式系数向量B和A的函数butter

[B,A]=butter(N,wc,’ftype’),计算N阶巴特沃斯数字滤波器系统函数分子和分母多项式系数向量B和A,参数ftype用来区分滤波器的类型。

(3)求模拟滤波器Ha(s)的频率响应函数freqs

[H,w]=freqs(B,A,w),计算M个频率点上的频率响应。频响存于H向量中,M个频率存放在向量w中。

(4)脉冲响应不变法的转换函数impinvar和双线性变换法的转换函数bilinear

[Bz,Az]=impinvar(B,A,Fs)和[Bz,Az]=bilinear(B,A,Fs),分别实现用脉冲响应不变法和双线性变换法将分子和分母多项式的系数向量为B和A的模拟滤波器的系统函数Ha(s)转换成数字滤波器的系统函数H(z)。

3.2 MATALB程序设计法示例

例1:设采样频率=4 kHz,分别用脉冲响应不变法和双线性变换法设计一个三阶巴特沃斯低通滤波器,其3dB边界频率为1000Hz。

设计过程如下:

图1给出了这两种设计方法得到的频响,虚线为脉冲响应法得到的结果,实线为双线性变换法的结果。

例2:设计一个巴特沃斯低通滤波器,性能指标如下:通带截止频率6 KHz;通带最大衰减ap=3dB;阻带最小衰减as=25 dB;阻带截止频率12 kHz。假设输入该滤波器的信号为混合信号,低频信号f=5 kHz,高频信号f=20 kHz,取样间隔T=0.025 us,要求从输入信号中滤除掉高频信号,仅留下低频信号。

设计过程如下:

其幅频和相频响应如图2所示,输入信号及滤波器的输出信号如图3所示。

3.3 利用FDATool界面设计示例

以3.2例2中滤波器的性能指标为例设计IIR数字巴特沃斯低通滤波器,过程如下:在命令窗运行FDATool,启动FDATool。界面如图4所示。

在Filter Type中选择lowpass(低通滤波器),在Design Method中选择IIR Butterworth(IIR巴特沃斯滤波器),在Filter Order中选择Minimum order(满足要求的最小滤波器阶数),在Options选择passband,在Filter Specifications和Magnitude Specifications中制定设计指标(Fs=40 kHz,Fpass=6 kHz,Fstop=12 kHz,Apass=3dB,Astop=25dB)。指定所有的设计指标后,单击FDATool最下面的Design Filter按钮即可完成滤波器的设计。

通过FDATool的工具条查看设计的滤波器的幅频响应、相频响应等。由此可见,利用FDATool工具设计更为简洁,不仅节省大量时间,还保证了准确性。

4.结论

采用MATLAB设计数字滤波器,使原来非常繁琐复杂的程序设计变成了简单的函数调用,为滤波器的设计和实现开辟了广阔的天地。MATLAB信号处理工具箱为滤波器设计及分析提供了非常优秀的辅助设计工具,在设计数字滤波器时,善于应用MATLAB进行辅助设计,能够大大提高设计效率。

[1]高西全,丁玉美.数字信号处理[M].西安:西安电子科技大学出版社,2008

[2]陈怀琛,吴大正,高西全.MATLAB及在电子信息课程中的应用[M].北京:电子工业出版社,2006.

猜你喜欢

沃斯工具箱巴特
安迪·高兹沃斯——塑造自然的艺术家
会“叫”的工具箱和工具
基于MATLAB优化工具箱优化西洋参总皂苷提取工艺
量一量你的热爱
巴特王国的故事 第四章 糟糕,假戏做歪了
机械加工机床工具箱的优化设计
雨天
叶尼塞碑铭威巴特第九碑浅释
晨练的男人
爸爸的工具箱