您的当前位置:首页正文

IIR数字滤波器设计matlab代码(可打印修改)

2021-08-02 来源:易榕旅网
大连理工大学实验报告学院(系): 电子信息与电气工程学部 专业: 电子信息工程 班级: 姓 名: 学号: 组: 实验台: 成绩: 实验时间: 实验室: 大黑楼C221 指导教师签字: 实验名称实验三 IIR数字滤波器设计1、实验目的和要求(1)掌握双线性变换法设计IIR数字滤波器。(2)掌握脉冲响应不变法设计IIR数字滤波器。2、实验原理和内容1. 巴特沃思低通滤波器巴特沃思低通滤波器幅度平方函数定义为式中N为正整数,代表滤波器的阶次,c称为截止频率。当c时,有 即 |Ha(jΩ)|=211c122N Ha(jc)2120lgHa(j0)3dBHa(jc)所以又称c为巴特沃思低通滤波器的3分贝带宽。巴特沃思低通滤波器的幅度特性如图所示。图1 巴特沃思低通滤波器的幅度特性2. 切贝雪夫低通滤波器切贝雪夫I型滤波器的幅度平方函数为Ha(j)21212CNc 其中,ε是表示通带波纹大小的一个参数,ε越大,波纹也越大。为对c的归一化频率,cc为截止频率,CN(x)是N阶切贝雪夫多项式。切贝雪夫I型低通滤波器的幅度特性如图所示 图2 切贝雪夫I型低通滤波器的幅度特性三、主要仪器设备Matlab四、实验内容及结果1. 用双线性变换法设计一个巴特沃斯IIR低通数字滤波器。设计指标时,最大衰减小于2dB ;在阻带内参数为:在通带内频率低于0.4*pi [0.6*pi, pi] 频率区间上,最小衰减大于15dB 。要求: •(1)用buttord,buttap,zp2tf,lp2lp,bilinear等指令实现 •(2)用buttord,butter指令实现 •并分别绘制两种设计方法的频响曲线

(1)双线形变换法设计巴特沃斯IIR低通数字滤波器,代码如下:

clcclearwp = 0.4*pi;ws = 0.6*pi;rp = 2;rs = 15;

Ts = 0.0001; Fs = 1/Ts; wp = 2/Ts*tan(wp/2);ws = 2/Ts*tan(ws/2);

[N,wc]=buttord(wp,ws,rp,rs,'s');[z,p,k]=buttap(N);[b,a]=zp2tf(z,p,k);[B,A]=lp2lp(b,a,wc);[Bz,Az]=bilinear(B,A,Fs);w=0:0.001:pi;

[H,w1]=freqz(Bz,Az,w);H=20*log10(abs(H));plot(w/pi,H);grid on;

title('双线形变换法设计巴特沃斯IIR低通数字滤波器');xlabel('频率/pi');ylabel('幅度/dB');

%采样频率

低低低低低低低低低低低低IIR低低低低低低低500-50-100低低/dB-150-200-250-30000.10.20.30.40.5低低/pi0.60.70.80.91(2)直接法设计巴特沃斯IIR低通数字滤波器,代码如下::clcclearwp=0.4;ws=0.6;rp=2;rs=15;[N,wc]=buttord(wp,ws,rp,rs);[Bz,Az]=butter(N,wc);w=0:0.001:pi;[H,w1]=freqz(Bz,Az,w);H=20*log10(abs(H));plot(w/pi,H);grid on;title('直接法设计巴特沃斯IIR低通数字滤波器');xlabel('频率/pi');ylabel('幅度/dB');低低低低低低低低低IIR低低低低低低低500-50-100低低/dB-150-200-250-30000.10.20.30.40.5低低/pi0.60.70.80.91(3)设计一个巴特沃兹低通滤波器,给定技术指标是fp100Hzfst300Hzp3dBs20dB,抽样频率为Fs1000Hz。代码如下:clcclearfp=100;fs=300;Fs=1000;af = 3;as = 20;wp = 2*fp/Fs;ws = 2*fs/Fs;[n, Wn]=buttord(wp,ws,af,as);[b, a]=butter(n, Wn);figure(1)freqz(b,a,512,1);title('巴特沃斯IIR低通数字滤波器');低低低低IIR低低低低低低低0Magnitude (dB)-50-100-15000.050.10.150.20.250.3Frequency (Hz)0.350.40.450.50Phase (degrees)-50-100-150-20000.050.10.150.20.250.3Frequency (Hz)0.350.40.450.5五、实验体会 本次实验中用了双线性变换法、冲击响应不变法及直接设计法设计了IIR滤波器。通过本次实验,我更直观的看到了滤波器的特性,对理论有了更深刻的认识。Matlab是一个十分强大的工具,有很多很好用的函数,比起人工计算设计滤波器来简单了很多很多,很直观也很实用。

因篇幅问题不能全部显示,请点此查看更多更全内容