您好,欢迎访问三七文档
当前位置:首页 > 临时分类 > 实验四-IIR数字滤波器的设计-数字信号处理-DSP
第二次实验1.实验目的:(1)掌握双线形变换法及脉冲响应不变法设计IIR数字滤波器的具体设计方法及其原理,熟悉用双线形变换法及脉冲响应不变法设计低通,高通和带通IIR数字滤波器的计算机编程。(2)观察双线形变换法及脉冲响应不变法设计的滤波器的频域特性,了解双线形变换法及脉冲响应不变法的特点。(3)熟悉巴特沃思滤波器,切比雪夫滤波器和椭圆滤波器的频率特性。2.实验原理:(1)实验中有关变量的定义:fc通带边界频率,fr阻带边界频率,tao通带波动,at最小阻带衰减,fs采样频率,t采样周期。(2)设计一个数字滤波器一般包括以下两步:a.按照任务要求,确定滤波器性能指标b.用一个因果稳定的离散时不变系统的系统函数去逼近这一性能要求(3)数字滤波器的实现:对于IIR滤波器,其逼近问题就是寻找滤波器的各项系数,使其系统函数逼近一个所要求的特性。先设计一个合适的模拟滤波器,然后变换成满足约定指标的数字滤波器。用双线形变换法设计IIR数字滤波器的过程:a.将设计性能指标中的关键频率点进行“预畸”b.利用“预畸”得到的频率点设计一个模拟滤波器。c.双线形变换,确定系统函数3.实验内容:(1)fc=0.3kHz,δ=0.8dB,fr=0.2kHz,At=20dB,T=1ms;设计一切比雪夫高通滤波器,观察其通带损耗和阻带衰减是否满足要求。程序:clc;clear;figure(2);wc=2*1000*tan(2*pi*300/(2*1000));wr=2*1000*tan(2*pi*200/(2*1000));[N,wn]=cheb1ord(wc,wr,0.8,20,'s');[B,A]=cheby1(N,0.8,wn,'high','s');[num,den]=bilinear(B,A,1000);[h,w]=freqz(num,den);f=w/pi*500;plot(f,20*log10(abs(h)));axis([0,500,-80,10]);gridon;xlabel('频率/Hz');ylabel('幅度/dB');图形为:由图易得,该滤波器完全满足要求。δ趋近于0,f=200Hz时,幅度约为-30dB,满足At=20dB的要求。(2)fc=0.2kHz,δ=1dB,fr=0.3kHz,At=25dB,T=1ms;分别用脉冲响应不变法及双线形变换法设计一巴特沃思数字低通滤波器,观察所设计数字滤波器的幅频特性曲线,记录带宽和衰减量,检查是否满足要求。比较这两种方法的优缺点。程序为:clc;clear;fs=1000;wp=2*pi*200;ws=2*pi*300[n,wn]=buttord(wp,ws,1,25,'s');[B1,A1]=butter(n,wn,'s');[b1,a1]=impinvar(B1,A1,fs);[B2,A2]=butter(n,2000*tan(pi/5),'s');[b2,a2]=bilinear(B2,A2,fs);[h1,w1]=freqz(b1,a1,100,'whole');c1=20*log10(abs(h1)+0.0001);[h2,w2]=freqz(b2,a2,100,'whole');c2=20*log10(abs(h2)+0.0001);plot(w1(1:50),c1(1:50),'-.');gridon;holdon;plot(w2(1:50),c2(1:50),'-');gridon;图形为:图中实线为双曲不变法,虚线为脉冲响应不变法由图可以看出,利用脉冲响应不变法得到的滤波器在高频部分(阻带)衰减特性不好;而双线性变换法将模拟频率的无穷大映射到数字频率的pi,这样使得其对应的滤波器在高频部分衰减很快。(3)利用双线性变换法分别设计满足下列指标的巴特沃思滤波器,切比雪夫滤波器和椭圆滤波器,并作图验证设计结果:fc=1.2kHz,δ=0.5dB,fr=2kHz,At=40dB,fs=8kHz。程序:clc;clear;fs=8000;wp=2*pi*1200;ws=2*pi*2000[n,wn]=buttord(wp,ws,0.5,40,'s');[B1,A1]=butter(n,wn,'s');[b1,a1]=impinvar(B1,A1,fs);[B2,A2]=butter(n,16000*tan(pi*0.3),'s');[b2,a2]=bilinear(B2,A2,fs);wp=1200/(fs/2);ws=2000/(fs/2);[n,wn]=ellipord(wp,ws,0.5,40);[b3,a3]=ellip(n,0.5,40,wn);[h1,w1]=freqz(b1,a1,100,'whole');c1=20*log10(abs(h1)+0.0001);[h2,w2]=freqz(b2,a2,100,'whole');c2=20*log10(abs(h2)+0.0001);[h3,w3]=freqz(b3,a3,100,'whole');c3=20*log10(abs(h3)+0.0001);plot(w1(1:50),c1(1:50),'-.');gridon;holdon;plot(w2(1:50),c2(1:50),'-');gridon;holdon;plot(w3(1:50),c3(1:50),'--');图形为:虚线为椭圆不变法,点划线为脉冲响应不变法,实线为双曲不变法由图可以看出,满足设计要求。(4)分别用脉冲响应不变法及双线形变换法设计一巴特沃思数字带通滤波器,已知fs=3kHz,其等效的模拟滤波器指标为δ3kHz,2kHzf=3kHz,At=5dB,f=6kHz,At=20dB,f=1.5kHz。程序:fs=30000;tao=3;f1=2000;f2=3000;at1=5;f3=6000;f4=1500;at2=20;w11=2*fs*tan(pi*f1/fs);w12=2*fs*tan(pi*f2/fs);w13=2*fs*tan(pi*f3/fs);w14=2*fs*tan(pi*f4/fs);[n,wn]=buttord([w11w12],[w14,w13],5,20,'s');[B,A]=butter(n,wn,'s');[num,den]=bilinear(B,A,fs);[h,w]=freqz(num,den);f=w/(pi*2)*fs;subplot(2,1,1);plot(f,20*log10(abs(h)));grid;axis([0,15000,-100,0]);title('双线性变换法');w1=2*pi*f1;w2=2*pi*f2;w3=2*pi*f3;w4=2*pi*f4;[n,wn]=buttord([w11w12],[w14,w13],5,20,'s');[B,A]=butter(n,wn,'s');[num1,den1]=impinvar(B,A,fs);[h1,w1]=freqz(num1,den1);f=w1/(pi*2)*fs;subplot(2,1,2),plot(f,20*log10(abs(h1)));title('脉冲响应不变法');grid;axis([0,15000,-100,0]);图形为:由上图可以看出,用脉冲响应不变法由于滤波器的混叠作用在过度带和阻带都衰减的较双线性变换法慢。(5)利用双线性变换法设计满足下列指标的切比雪夫型数字带阻滤波器,并作图验证设计结果:当1kHz=f=2kHz时,At=18dB;当f=500Hz以及f=3kHz时,δ=3dB;采样频率fs=10kHz。程序:f3=1000;f4=2000;ar=18;tao=3;f1=500;f2=3000;fs=10000;fp1=pi*f1/fs;fp2=pi*f2/fs;fc1=pi*f3/fs;fc2=pi*f4/fs;w1=[2*fs*tan(fp1)2*fs*tan(fp2)];w2=[2*fs*tan(fc1)2*fs*tan(fc2)];[n,wn]=cheb1ord(w1,w2,tao,ar,'s');[B,A]=cheby1(n,tao,wn,'stop','s');[num,den]=bilinear(B,A,fs);[h,w]=freqz(num,den);plot(w*fs/(2*pi),20*log10(abs(h)));grid;图形为:由上图可以看出,设计满足要求。4.思考题:(1)双线性变换法中模拟频率和数字频率的关系是非线性的,在实验中你注意到这种非线性关系了吗?从哪几种数字滤波器的幅频特性曲线中可以观察到这种非线性关系?答:观察到了。从(2)、(4)的图中可以看出,双线性变换把模拟频率的无穷大映射到数字频率的pi处,从而使得双线性变换法得到的滤波器较之脉冲响应不变法得到的滤波器在高频部分要陡峭些。(2)能否利用公式H(z)=H(s)|s=1/T*lnz完成脉冲响应不变法的数字滤波器设计?为什么?答:不能。因为s=1/T*lnz只反映了s和z的幅度关系(s=σ+jΩ,z=rejw),所以s=1/T*lnz不能将s平面映射到z平面上去,也就不能完成脉冲响应不变法的数字滤波器设计。
本文标题:实验四-IIR数字滤波器的设计-数字信号处理-DSP
链接地址:https://www.777doc.com/doc-2913090 .html