1、数字信号处理实验报告实验名称:双线性变换法 IIR 数字滤波器设计学号: 姓名: 评语: 成绩: 实验目的1、掌握用双线性变换法设计低通 IIR 数字滤波器的基本原理和算法。2、掌握用双线性变换法设计高通和带通 IIR 数字滤波器的基本原理和算法。3、进一步了解数字滤波器和模拟滤波器的频率响应特性。实验原理与计算方法1、双线性变换法设计 IIR 低通数字滤波器的基本原理和算法双线性变换法设计数字滤波器,采用了二次映射的方法,就是先将整个 s 平面压缩到 s1 平面的一个 的横形条带范围内,然后再将这个条带映射到 z 平面上,就能建立 s 平面到 z 平面Tj的一一对应关系。对于低通数字滤波器,
2、映射关系为(1)zTzs12其中 T 为抽样周期。用双线性变换法设计低通 IIR 数字滤波器的基本步骤,首先根据设计要求确定相应的模拟滤波器的传递函数 ,再应用(1)式得数字滤波器的传递函数)(sHa )(zH(2)zTsaz12)(通常可以给定的参数为:低通数字滤波器通带边界频率 、阻带边界频率pf21和对应的通带衰减函数 、阻带衰减函数 。s 1 平面中的模拟角频率 与数字角频率ssf21p1的关系为线性关系 ,在计算模拟滤波器的阶数 N、极点 si 和传递函数 之前,应作1 )(sHa预畸变处理(3)2tan2tanTfT模拟滤波器的阶数 N、极点 si 和传递函数 的计算方法与冲激响应
3、不变法相同,可以采用)(sHaButterworth 逼近或 Chebyshev 逼近。2、双线性变换法设计 IIR 高通、带通、带阻数字滤波器的基本原理和算法由于双线性变换法获得的数字滤波器频率响应特性中不会出现混叠现象,因此可以适用于高通、带通和带阻滤波器的设计。IIR 数字滤波器的设计通常要借助于模拟低通滤波器的设计,由原型低通滤波器到其他形式(高通、带通、带阻)IIR 数字滤波器的频带变换有模拟频带变换法和数字频带变换法。(1)模拟频带变换法首先将给定的对数字滤波器(DF)的技术要求转换为一个低通模拟滤波器 (AF)的技术要求,根据这种要求用某种逼近设计出原型的低通模拟滤波器(LP A
4、F),计算出模拟滤波器的阶数 N、极点 si和传递函数 ,再按照双线性变换的变换关系,将模拟滤波器的传递函数 转换为数字滤)(sHa )(sHa波器的传递函数 。z表 8-1 中列出了将给定的对数字滤波器(DF)的技术要求直接转换为对一个低通模拟滤波器(AF)的技术要求的频率预畸变校正关系和转换公式。表 8-1 双线性变换和频率预校正的计算公式变换类型 变换关系 频率预校正 备 注低通变换 zs12tanT高通变换 zs12tan1tsps带通变换 201coszssspincoi0带阻变换 20coszsspcoi02Tf2其中,T 为抽样周期, f 为模拟频率中心频率 210sini)(c
5、os其中, 分别为数字带2,通滤波器通带的上下边界角频率,或数字带阻滤波器阻带的上下边界角频率。例:数字高通滤波器的设计首先将给定的数字高通滤波器的技术指标根据公式转换为模拟低通滤波器的技术指标,利用cheb1ord(Wp,Ws,ap,as,s)函数求出 chebyshev 模拟低通滤波器的阶数 N,再利用 cheb1ap(N,ap)函数求出模拟低通滤波器系统函数 的零极点,zp2tf(z,p,k)函数将零极点转换为系统函数系数;然)(sHa后利用 lp2hp 由模拟低通滤波器的系统函数得到模拟带通滤波器的系统函数,bilinear 函数则用于实现双线性变换法由模拟带通滤波器系统函数 计算数字
6、数字带通滤波器系统函数 的系数。)(sa )(zH(2)数字频带变换法首先将给定的对数字滤波器(DF)的技术要求转换为一个低通模拟滤波器 (AF)的技术要求,用双线性变换法将原型的低通模拟滤波器(LP AF)映射为低通数字滤波器,再将数字低通滤波器根据相应的变换公式经频带变换到各型数字滤波器。例:数字高通滤波器的设计函数bhp,ahp=zmapping(blp,alp,Nz,Dz)用来实现从数字低通滤波器得到数字高通滤波器的有理函数。%数字滤波器技术指标wp=0.2*pi;ws=0.3*pi;Rp=1;As=15;%对应的模拟滤波器技术指标T=1;Fs=1/T;Wp=(2/T)*tan(wp/
7、2); =(2/T)*tan(ws/2);cs,cd=afd_chb1(Wp,Ws,Rp,As); %Chebyshev 模拟滤波器 blp,alp=bilinear(cs,cd,Fs) %双线性变换wphp=0.6*pi; %数字高通滤波器截止频率%低通高通频带变换alpha=-(cos(wplp+wphp)/2)/(cos(wplp+wphp)/2)Nz=-alpha,1;Dz=1,alpha; bhp,ahp=zmapping(blp,alp,Nz,Dz) %数字高通滤波器的系统函数系数(3)IIR 数字滤波器的设计可利用 MATLAB 提供的函数直接设计相应的数字滤波器。函数 butt
8、ord 和 cheb1ord 用来根据给定的技术指标求出滤波器的阶数 N 和边界频率 wn,butter和 cheby1 则根据阶数和边界频率设计相应的数字滤波器。输入的参数不同则所设计的滤波器类型不同。N,wn=buttord(wp,ws,Rp,As);N,wn=cheb1ord(wp,ws,Rp,As);b,a=butter(N,wn); b,a=cheby1(N,Rp,wp);实验内容及结果(1)Chebyshev IIR 数字带通滤波器满足如下技术指标低阻带边界频率 ,高阻带边界频率 ,阻带衰减函数Hz10sf Hz601sf dB18s低通带边界频率 ,高通带边界频率 ,通带波动2p
9、 42p 2抽样频率 ,记录所得的模拟滤波器的阶数 N,画出模拟滤波器和数字滤波器的频率f响应的幅频和相频特性曲线。N =2实验代码:fs1=100;fs2=600;fp1=200;fp2=400;fsa=2000;As=18;Rp=2;T=1./fsa; %对应的模拟滤波器技数值w1=2.*pi.*(fp1./fsa); %Chebyshev模拟滤波器w2=2.*pi.*(fp2./fsa);wp1=2*pi*fp1*T;wp2=2*pi*fp2*T;ws2=2.*pi.*(fs2./fsa);cosw0=(sin(w1+w2)./(sin(w2)+sin(w1);w0=acos(cosw0
10、);bw=wp2-wp1;Wp=(cosw0-cos(w2)./sin(w2);Ws=(cosw0-cos(ws2)./sin(ws2);N,omgn=cheb1ord(Wp,Ws,Rp,As,s); %返回模拟低通滤波器阶数N和边界频率nz,p,k=cheb1ap(N,Rp); %得系统函数零极点blp,alp=zp2tf(z,p,k); %由零极点得系数bhp,ahp=lp2bp(blp,alp,w0,bw); %模拟低通到模拟带通bdf,adf=bilinear(bhp,ahp,1); %双线性变换将模拟带通滤波器转换成数字带通滤波器BPA,wa=freqs(bhp,alp,fsa);B
11、PD,wd=freqz(bdf,adf,fsa);subplot(2,2,1);plot(abs(BPA);title(模拟带阻滤波器幅频特性 );subplot(2,2,2);plot(angle(BPA);title(模拟带阻滤波器相频特性 );subplot(2,2,3);plot(abs(BPD);title(数字带阻滤波器幅频特性 );subplot(2,2,4);plot(angle(BPD);title(数字带阻滤波器相频特性 )实验截图:(2)Chebyshev IIR 数字带阻滤波器满足如下技术指标低阻带边界频率 ,高阻带边界频率 ,阻带衰减函数Hz10sf Hz201sf
12、dB20s低通带边界频率 ,高通带边界频率 ,通带波动5p 3p 3抽样频率 ,记录所得的模拟滤波器的阶数 N,画出模拟滤波器和数字滤波器的频率kf响应的幅频和相频特性曲线。N =2实验代码:fs1=1000;fs2=2000;fp1=500;fp2=3000;fsa=10000;As=18;Rp=2;T=1./fsa; %对应的模拟滤波器计数值w1=2.*pi.*(fp1./fsa); %Chebyshev模拟滤波器w2=2.*pi.*(fp2./fsa);wp1=2*pi*fp1*T;wp2=2*pi*fp2*T;ws2=2.*pi.*(fs2./fsa);cosw0=(sin(w1+w2
13、)./(sin(w2)+sin(w1);w0=acos(cosw0);bw=wp2-wp1;Wp=(cosw0-cos(w2)./sin(w2);Ws=(cosw0-cos(ws2)./sin(ws2);N,omgn=cheb1ord(Wp,Ws,Rp,As,s); %返回模拟低通滤波器阶数N和边界频率n z,p,k=cheb1ap(N,Rp); %得系统函数零极点blp,alp=zp2tf(z,p,k); %由零极点得系数bhp,ahp=lp2bs(blp,alp,w0,bw); %模拟低通到模拟带通bdf,adf=bilinear(bhp,ahp,1); %双线性变换将模拟带通滤波器转换成数字带通滤波器BPA,wa=freqs(bhp,alp,fsa);BPD,wd=freqz(bdf,adf,fsa);subplot(2,2,1);plot(abs(BPA);title(模拟带阻滤波器幅频特性 );subplot(2,2,2);plot(angle(BPA);title(模拟带阻滤波器相频特性 );subplot(2,2,3);plot(abs(BPD);title(数字带阻滤波器幅频特性 );subplot(2,2,4);plot(angle(BPD);title(数字带阻滤波器相频特性 )实验截图: