多语言展示
当前在线:1605今日阅读:27今日分享:41

IIR滤波器的设计MATLAB 数字信号处理

实验六 IIR滤波器的设计一、实验目的:在理论学习的基础上,掌握不同IIR滤波器的性质、特点,并通过实验学习如何设计各种常用的IIR滤波器,以便在实际工作中能根据具体情况使用IIR滤波器。二、实验要求:1、执行例6-1,分析不同滤波器的特点和结果。2、课本P170例5-83、课本P 173二(7)三、实验内容:1、例6-1用冲击响应不变法和双线形变换法设计Butterworth低通数字滤波器,要求通带频率为0≤w≤0.2pi,通带波纹小于1dB,阻带在0.3pi≤w≤pi内,幅度衰减大于15dB,采样周期Ts=0.01s。2、课本P170例5-8用冲击响应不变法设计数字低通滤波器,要求通带和阻带具有单调下降特性。指标参数要求为:通带截止频率为200Hz,通带的最大衰减为δ1=0.8;阻带截止频率为300Hz,阻带最小衰减δ2=20 dB ,采样时间间隔T=1ms。(1)应用MATLAB函数设计该滤波器,并观察滤波器的幅频特性曲线。(2)若输入信号为x(t)=2sin400pi*t+sin700pi*t+w(t),w(t)为随机信号,应用该滤波器对信号进行滤波器变换。3、课本P 173二(7)设计一个数字高通滤波器,要求通带截止频率为wp=0.6pi,且通带衰减不大于3dB ,阻带起始频率ws=0.4pi,且阻带衰减不小于14dB,采样频率10kHz。应用巴特沃思滤波器设计。四、实验结果与分析Ⅰ例题6-1实验程序:clcclearclose all;wp=0.2*pi;ws=0.3*pi;rp=1;rs=15;Ts=0.01;Fs=1/Ts;Wp=wp/Ts;Ws=ws/Ts;[N,Wn]=buttord(Wp,Ws,rp,rs,'s');[z,p,k]=buttap(N);[Bap,Aap]=zp2tf(z,p,k);[b,a]=lp2lp(Bap,Aap,Wn);[bz,az]=impinvar(b,a,Fs);figure;[H,W]=freqz(bz,az);plot(W*pi/10,20*log10(abs(H)));grid;xlabel('频率/Hz');ylabel('幅值');title('冲激响应不变法')Wp=(2/Ts)*tan(wp/2);Ws=(2/Ts)*tan(ws/2);[N,Wn]=buttord(Wp,Ws,rp,rs,'s');[Z,P,K]=buttap(N);[Bap,Aap]=zp2tf(Z,P,K);[b,a]=lp2lp(Bap,Aap,Wn);[bz,az]=bilinear(b,a,Fs);figure(2);[H,W]=freqz(bz,az);hold on;plot(W*pi/10,20*log10(abs(H)),'m');grid;xlabel('频率/Hz');ylabel('幅值');title('双线性变换法')wp=0.2;ws=0.3;rp=1;rs=15;[N,Wn]=buttord(wp,ws,rp,rs);[b,a]=butter(N,Wn);figure(3);[H,W]=freqz(b,a);hold on;plot(W*pi/10,20*log10(abs(H)),'k');grid;xlabel('频率/Hz');ylabel('幅值');title('完全设计函数')实验结果:Ⅱ例题5-8实验程序:fp=200;Ap=0.8;fr=300;Ar=20;T=0.001;fs=1/T;Wp=2*pi*fp;Wr=2*pi*fr;[N,Wn]=buttord(Wp,Wr,Ap,Ar,'s');[b,a]=butter(N,Wn,'s');[bz,az]=impinvar(b,a,fs);figure(1);[H,W]=freqz(bz,az);holdon;plot(W*fs/(2*pi),abs(H),'m');grid;xlabel('ƵÂÊ/Hz');ylabel('ÔöÒæ');title('µÍͨÂ˲¨Æ÷ƵÂÊÌØÐÔÇúÏß');n=0:199;t=n*T;x=2*sin(400*pi*t)+sin(700*pi*t);y=filter(bz,az,x);figure(2);subplot(211);plot(n,x,'r');xlabel('t');ylabel('x(t)');title('Ô­ÐźÅx(t)');subplot(212);plot(n,y,'r');xlabel('t');ylabel('y(t)');title('Â˲¨ºóÐźÅy(t)');实验目的:Ⅲ课后题7实验程序:wp=0.6*pi;ws=0.3*pi;rp=3;rs=14;Ts=0.0001;Fs=1/Ts;Wp=wp/Ts;Ws=ws/Ts;[N,Wn]=buttord(Wp,Ws,rp,rs,'s');[z,p,k]=buttap(N);[Bap,Aap]=zp2tf(z,p,k);[b,a]=lp2hp(Bap,Aap,Wn);[bz,az]=bilinear(b,a,Fs);figure;[H,W]=freqz(bz,az);plot(W*Fs/(2*pi),abs(H));grid;xlabel('ƵÂÊ/Hz');ylabel('·ùÖµ');title('Êý×Ö¸ßͨÂ˲¨Æ÷');实验结果:五、实验总结:学会了Matlab IIR滤波器的设计,掌握了不同IIR滤波器的性质、特点,并通过实验学会了如何设计各种常用的IIR滤波器,以便在实际工作中能根据具体情况使用IIR滤波器。做实验时需要仔细认真!
推荐信息