还剩2页未读,继续阅读
文本内容:
实验三数字滤波器的设计IIR
一、实验目的
1.理解滤波器参数的意义;
2.掌握脉冲响应不变法和双线性变换法设计IIR数字滤波器的方法;
3.掌握利用Matlab设计其它各型IIR数字滤波器的方法;
4.掌握分析滤波器是否达到性能指标的方法
二、实验原理利用脉冲响应不变法,直接根据归一化的巴特沃斯低通模拟滤波器系统函数”p得到IIR数字低通滤波器方法是儿+43A3Mp叼,=〃为数字滤波器的通带截止数字频率,4为Hp部分分式分解的系数,Pk为Hp的单阶极点,,为采样间隔,4〃为归一化3dB通带频率,Q〃为通带截止频率双线性变换法设计IIR数字滤波器时,模拟频率和数字频率之间不再是线性变换关系,而是非线性变换关系2()Q=—tan69/2双线性变换法设计nR巴特沃斯滤波器的步骤如下1将已知的数字频率指标及从变换为模拟滤波器的频率指标注意:如不是由归一化模拟低通滤波器用双线性变换法设计IIR数字滤波器时,常数2/八不能省略(〃)()=tan0/2,Q=tan69/2s s衰减特性指标及,不变;2再按设计模拟低通滤波器的方法求得归一化模拟滤波器的系统函数Hp;()()z=H s11-Z3通过如下的变量代换得到数字滤波器的系统函数〃z1+2设计其它各型IIR数字滤波器的理论方法在这里不再给出,读者可参看有关内容在Matlab中,设计滤波器的过程很简单,只要加上一些控制字符即可控制字符省略或为“low”表示设计低通滤波器,控制字符为“high”表示设计高通滤波器,控制字符为“band”表示设计带通滤波器,控制字符为“stop”表示设计带阻滤波器
三、实验内容
1.滤波器的指标要求在本实验中要设计四个IIR数字滤波器
①利用脉冲响应不变法设计Butterworth数字低通滤波器,要求满足,;co=
0.2%,q=
0.6%A2dB,A15dBn n
②利用双线性变换法设计Butterworth数字滤波器,要求满足口〃=
0.2勿
①、=
0.6»,;426/5,A15dB
③设计Butterworth高通数字滤波器,3dB数字截止频率为0=
0.5勿%/,阻带下边频例=035mad,阻带衰减人248dB;JO
④现有一以抽样频率为1000Hz抽样后得到的数字信号,已知受到了频率为50Hz的噪声的干扰,现要设计一滤波器滤除该噪声,要求3dB的通带边频为45Hz和55Hz,阻带的下边频为49Hz,阻带的上边频为51Hz,阻带衰减不小于13dB
2.滤波器的设计
①理解滤波器性能指标的含义;
②调用buttord和butter函数设计各滤波器
3.分析处理结果
四、实验步骤
1.复习并理解利用脉冲响应不变法和双线性变换法设计IIR数字滤波器的方法;
2.编写Matlab程序设计相应的数字滤波器(参看例题中的程序);
3.调试程序,排除程序中的错误;
4.分析程序运行结果,检验是否达到设计指标要求
五、实验报告要求
1.阐明实验的目的、原理和内容;
2.打印主要程序并粘贴在实验报告中;
3.打印实验结果并粘贴在实验报告中;
4.针对实验结果加以分析和总结
六、思考题
1.这四个滤波器均能由脉冲响应不变法来设计吗?均能由双线性变换法来设计吗?
2.第一和第二个滤波器指标相同,设计结果是否相同?为什么?
3.第
一、
二、三个滤波器没有指定采样率,不同采样率对设计结果会有影响吗?附例题例1试用脉冲响应不变法设计一巴特沃斯低通数字滤波器,通带截止频率=
0.2万,阻带下限频率吗=
0.4»,通带最大衰减3〃为3dB,阻带最小衰减A为20dB,给定Ts=O.OOko解利用Matlab自带的函数buttord和butter来实现模拟滤波器的设计,利用impinvar函数来实现用脉冲响应不变法将模拟滤波器转换为数字滤波器,程序如下Ts=
0.001;Ap=3;As=20;OmegaP=
0.2*pi/Ts;OmegaS=
0.4*pi/Ts;%模拟通带、阻带截止频率[n,Wn]二buttordOmegaP,OmegaS,Ap,As,s;%确定最小阶数n和反归一化截止频率Wnfprintf滤波器的阶数N=%.0f\n;n;[b,a]=buttern,Wn;s;%b、a分别为模拟滤波器的分子、分母按降幕排列的多项式系数[bz,az]=impinvarb,a』/Ts;%脉冲响应不变法得到数字滤波器的分子分母系数dispC分子系数5;%下面是显示分子、分母多项式系数fprintfC%.4e,,bz;fprintf,\n,;dispC分母系数a;fprintf%.4e\az;fprintf\n,;omega=[0:
0.01:pi];%确定坐标轴范围h=freqzbz,az,omega;%得到模拟滤波器的单位冲激响应系数Ampli=20*log IOabsh/absh⑴;%求衰减的分贝subplot2』,l;plotomega/pi,Ampli,k;;%显示滤波器的幅度响应xlabelC数字频率八pi;ylabel,幅度/dB;grid;subplot2,l,2;theta=phasezbz,az,omega;%滤波器的相位响应及坐标值plotomega/pi,theta*360/2*pi,k;%显示滤波器的相位响应xlabelC数字频率八piylabel相位/度上grid;例2试用双线性变换法设计一巴特沃斯低通数字滤波器,通带截止频率
①〃=
0.2%,阻带下限频率吗=
0.4%,通带最大衰减源为3dB,阻带最小衰减久为20dB,给定T=s O.OOko解利用Matlab自带的函数buttord和butter来直接用双线性变换法来设计IIR数字滤波器,程序如下Ap=3;As=20;OmegaP=
0.2*pi;%数字通带截止频率OmegaS=
0.4*pi;%数字阻带截止频率[n,Wn]=buttordOmegaP/pi,OmegaS/pi,Ap,As;%确定最小阶数n和反归一化截止频率Wnfprintf滤波器的阶数N=%.0An;n;[bz,az]=buttern,Wn;%bz az分别为数字滤波器的分子、分母按降幕排列的多项式系数dispC分子系数b;%下面是显示分子、分母多项式系数fprintf%.4e,,bz;fprintf1\n,;dispC分母系数a;fprintf%.4e\az;fprintf\n;omega=|0:
0.01:pi];%确定坐标轴范围h二freqzbz,az,omega;%得到滤波器的单位冲激响应系数Ampli=20*log10absh;%求衰减的分贝subplot2,1』;plotomega/pi,Ampli,k;;%显示滤波器的幅度响应xlabelC数字频率ApiylabelC幅度/dBgrid;subpkt2,l,2;theta=phasezbz,az,omega;%滤波器的相位响应及坐标值plotomega/pi,theta*360/2*pi,k;%显示滤波器的相位响应xlabel(数字频率八pi);ylabel(相位/度);grid;例3试设计一数字高通滤波器,要求通带下限频率=
0.8万,阻带上限频率co,=.44万,通带衰减不大于3dB,阻带衰减不小于20dBo解设计满足上述指标的巴特沃斯高通滤波器的程序如下Ap=3;As=20;OmegaP=
0.8*pi;OmegaS=
0.44*pi;%通带、阻带截止频率[n,Wn|二buttordOmegaP/pi,OmegaS/pi,Ap,As;%确定最小阶数n和反归一化截止频率WnfprintfC滤波器的阶数N=%.0i\n;n;[bz,az]=buttern,Wn high;%加上字符字gh,表示是设计高通滤波器dispC分子系数b;%下面是显示分子、分母多项式系数fprintf%.4e\bz;fprintf,\n,;dispC分母系数a;fprintf%.4e\az;fprintf\n,;0mega=[0:
0.01:pi];%确定坐标轴范围frcqzbz,az,Omega;%直接绘出滤波器的幅度特性和相位特性例4现有一以抽样频率为1000Hz抽样后得到的数字信号,已知受到了频率为100Hz的噪声的干扰,现要设计一滤波器滤除该噪声,要求3dB的通带边频为95Hz和105Hz,阻带的下边频为99Hz,阻带的上边频为101Hz,阻带衰减不小于13dB解所给频率指标为模拟频率,首先要将其转换为数字频率设计满足上述指标的巴特沃斯带阻滤波器的程序如下Ap=3;As=13;fs=1000;%采样频率fpl=95;fph=105;%通带模拟截止频率fsl=99;fsh=101;%阻带模拟截止频率OmegaPl=2*pi*fpl/fs/pi;%归一化通带数字截止频率OmegaPh=2*pi*fph/fs/pi;%归一化通带数字截止频率OmegaSl=2*pi*fsl/fs/pi;%归一化阻带数字截止频率OmegaSh=2*pi*fsh/fs/pi;%归一化阻带数字截止频率[n,Wn]=buttord[OmegaPl OmegaPh],[OmegaSl OmegaSh],Ap,As;%确定阶数n和归一化截止频率WnfprintfC滤波器的阶数N=%.0i\n;n;吃皿]=111比「11”11,^;%加上字符‘51€^表示是设计带阻滤波器dispC分子系数b;%下面是显示分子、分母多项式系数fprintf%.4e;bz;fprintf\n;disp分母系数a1;fprintf%.4e;az;fprintf\n;[h,f]=freqzbz,az,l024;whole fs;%得到数字滤波器的单位冲激响应系数Ampli=20*log10absh;%求衰减的分贝subplot2,l』;plotfl:512,Amplil:512,k;%显示滤波器的幅度响应xlabel濒率/Hz;ylabel幅度/dB;grid;subplot2,l,2;[theta,fx]=phasezbz,az』024,whole,fs;%滤波器的相位响应及坐标值plotfxl:512,thetal:512*360/2*pi,k;%显示滤波器的相位响应xlabel频率/Hz;ylabel相位/度;grid;。