一、实验目的
1、掌握IIR数字滤波器的设计原理、设计方法和设计步骤;
2、能根据给定的滤波器指标进行滤波器设计;
3、掌握数字巴特沃斯滤波器的设计原理和步骤;
4、加深对冲激响应不变法和双线性变换法设计IIR数字滤波器的了解,掌握MATLAB
函数实现冲激响应变换的方法。
二、实验环境
计算机,Matlab软件
三、实验原理
设计IIR滤波器时,首先根据模拟滤波器的指标设计出相应的模拟滤波器H a(s),然后
将设计好的模拟滤波器H a(s)转换成满足给定技术指标的数字滤波器H(z)。典型的模拟滤波
器有巴特沃斯(Butterworth)滤波器、切比雪夫(Chebyshev)滤波器。
2、实验用MATLAB语言工具函数简介
在MA TLAB的数字信号处理工具箱中提供了相应的设计函数,常用的有:
1)Butterworth模拟/数字滤波器设计
调用格式1:[N,Wn]=buttord(Wp,Ws,Rp,Rs,’s’)输入参数:Wp通带截止频率,Ws阻带截
止频率,Rp通带最大衰减,Rs阻带最小衰减;输出参数:N符合要求的滤波器最小阶数,
Wn为Butterworth滤波器固有频率(3dB)。调用格式2:[b,a]=butter(n,wn,'ftype',’s’) [b,a]=butter(n,wn,'ftype')说明:N和Wn分别为滤波器的阶数和3dB截止频率。利用此
函数可以获得滤波器系统函数的分子多项式(b)和分母多项式(a)的系数。选项中加入‘S’
用于设计各种模拟Butterworth滤波器;不加设计各种数字Butterworth滤波器。Ftype为
缺省,设计低通滤波器。Ftype=hign,设计高通滤波器。Ftype=stop,设计带阻滤波器。
调用格式3:[z,p,k]=buttap(N):设计一个N阶的归一化的巴特沃斯原型低通模拟滤波器,
返回滤波器的零点、极点和增益,此时z为空。
2)chebyshevI、chebyshevII型模拟/数字滤波器设计
调用格式:[b,a]= cheby1(n,Rp,wn,'ftype',) [b,a]= cheby2(n,Rs,wn,'ftype')
3、模拟域的频率变换法
1、lp2lp低通到低通模拟滤波器变换。
2、lp2hp低通到高通模拟滤波器变换。
3、lp2bp
低通到带通模拟滤波器变换。4、lp2bs低通到带阻模拟滤波器变换。
4、脉冲响应不变法和双线性变换法
1)冲激响应不变法
一般来说,在要求时域冲激响应能模仿模拟滤波器的场合,一般使用冲激响应不变法。
2)双线性变换法
双线性变换——将s域映射到z域。与冲激响应不变法比较,双线性变换的主要优点是
靠频率的非线性关系得到S平面与Z平面的单值一一对应关系,整个值对应于单位圆一周。