实验三无限冲激响应(doc X页)
实验三 无限冲激响应(IIR)数字滤波器的设计 1(目的要求
熟悉用双线性变换法设计IIR数字滤波器的原理与方法;掌握数字滤波器的计算机仿真方法。
2(方法原理
参考《数字信号处理》教材的无限冲激响应(IIR)数字滤波器一章。
3(主要实验仪器及材料
微型计算机、Matlab6.5教学版、TC编程环境。
4(掌握要点
掌握用Matlab软件或C语言设计
流程
快递问题件怎么处理流程河南自建厂房流程下载关于规范招聘需求审批流程制作流程表下载邮件下载流程设计
,重点是画出序列变换前后的图形。
5(实验内容
(1)用双线性变换法设计巴特沃斯和切比雪夫IIR数字滤波器。
(2)绘出数字滤波器在频率区间的幅频响应特性曲线;
(3)对结果进行分析;
(4)完成实验报告。
注:
目前,设计IIR数字滤波器的通用方法是先设计相应的低通滤波器,然后再通过双线性变换法和频率变换得到所需要的数字滤波器。模拟滤波器从功能上分有低通、高通、带通及带阻四种,从类型上分有巴特沃兹(Butterworth)滤波器、切比雪夫(Chebyshev)I型滤波器、切比雪夫II型滤波器、椭圆(Elliptic)滤波器以及贝塞尔(Bessel)滤波器等。
下面给出与IIR数字滤波器设计有关的MATLAB文件。
1( buttord.m
用来确定数字低通或模拟低通滤波器的阶次,其调用格式分别是
(1)[N,Wn]=buttord(Wp,Ws,Rp,Rs)
(2)[N,Wn]=buttord(Wp,Ws,Rp,Rs,‘s’)
格式(1)对应数字滤波器,式中Wp,Ws分别上通带和阻带的截止频率,实际上它们是归一化频率,其值在0~1之间,1对应抽样频率的一半。对低通和高通滤波器,Wp,Ws
1,2都是标量,对带通和带阻滤波器,Wp,Ws都是的向量。Rp,Rs分别是通带和阻带的衰
减,单位为dB。N是求出的相应低通滤波器的阶次,Wn是求出的3dB频率,它和Wp稍
有不同。
格式(2)对应模拟滤波器,式中各个变量的含义与格式(1)相同,但Wp,Ws及Wn
的单位为rad/s,因此,它们实际上是频率。
2( buttap.m
用来设计模拟低通原型滤波器,其调用格式是 Gp()
[z,p,k]=buttap(N)
N是欲设计的低通原型滤波器的阶次,z、p和k分别是设计出的的极点、零点及Gp()
增益。
3( lp2lp.m
4( lp2hp.m
5( lp2bp.m
6( lp2bs.m
以上4个文件用来将模拟低通原型滤波器分别转换为低通、高通、带通、及带阻Gp()滤波器。其调用格式分别是
例 一个数字系统的抽样频率,试设计一个为此系统使用的带通数字滤F,2000Hzs
,,波器,希望采用巴特沃兹滤波器。要求:(1)通带范围为300~400Hz,在带边频率Hzdbp
处的衰减不大于3dB。(2)在200Hz以下和500Hz以上衰减不小于18dB。
解:程序清单如下。
clear all;
fp=[300 400];fs=[200 500];
rp=3;rs=18;
Fs=2000;
wp=fp*2*pi/Fs;
ws=fs*2*pi/Fs;
%Firstly to finish frequency prewarping;
wap=2*Fs*tan(wp./2)
was=2*Fs*tan(ws./2);
[n,wn]=buttord(wap,was,rp,rs,'s');
%Note:'s'!
[z,p,k]=buttap(n);
[bp,ap]=zp2tf(z,p,k)
%
bw=wap(2)-wap(1)
w0=sqrt(wap(1)*wap(2))
[bs,as]=lp2bp(bp,ap,w0,bw)
%
[h1,w1]=freqs(bp,ap);
figure(1)
plot(w1,abs(h1));grid;
ylabel('lowpass G(p)')
%
w2=[0:Fs/2-1]*2*pi;
h2=freqs(bs,as,w2);
%Note:z=(2/Ts)(z-1)/(z+1); [bz1,az1]=bilinear(bs,as,Fs) [h3,w3]=freqz(bz1,az1,1000,Fs); figure(2)
plot(w2/2/pi,20*log10(abs(h2)),w3,20*log10(abs(h3)));grid;
ylabel('Bandpass AF and DF') xlabel('Hz')