matlab数字滤波器设计程序Word下载.docx
《matlab数字滤波器设计程序Word下载.docx》由会员分享,可在线阅读,更多相关《matlab数字滤波器设计程序Word下载.docx(6页珍藏版)》请在冰豆网上搜索。
ws=40*2*pi;
>
[n,wn]=buttord(wp,ws,rp,rs,'
s'
);
[z,p,k]=buttap(n);
[num,den]=zp2tf(z,p,k);
[num1,den1]=impinvar(num,den);
Warning:
Theoutputisnotcorrect/robust.
CoeffsofB(s)/A(s)arereal,butB(z)/A(z)hasxxplexcoeffs.
Probablecauseisrootingofhigh-orderrepeatedpolesinA(s).>
Inimpinvarat124
[num2,den2]=bilinear(num,den,100);
[h,w]=freqz(num1,den1);
[h1,w1]=freqz(num2,den2);
subplot(1,2,1);
plot(w*fs/(2*pi),abs(h));
subplot(1,2,2);
plot(w1*fs/(2*pi),abs(h1));
figure
(1);
zplane(num1,den1);
zplane(num2,den2);
%要求设计一chebyshev1低通数字滤波器,wp=30hz,ws=40hz,rp=,rs=40,fs=100hz.>
[n,wn]=cheb1ord(wp,ws,rp,rs,'
[z,p,k]=cheb1ap(n,rp);
[num1,den1]=impinvar(num,den);
subplot(1,2,1);
plot(w*fs/(2*pi),abs(h));
subplot(1,2,2);
plot(w1*fs/(2*pi),abs(h1));
figure
(2);
subplot(1,2,1);
zplane(num1,den1);
zplane(num2,den2);
%要求设计一chebyshev2低通数字滤波器,wp=30hz,ws=40hz,rp=,rs=40,fs=100hz.wp=30;
wp=30*2*pi;
[n,wn]=cheb2ord(wp,ws,rp,rs,'
[z,p,k]=cheb2ap(n,rs);
[num,den]=zp2tf(z,p,k);
Rp,rs增大,chebyshev2的幅频响应图会好wp=500;
ws=600;
rp=1;
rs=60;
fs=1000;
wp=500*2*pi;
ws=600*2*pi;
不明白的是双线性变换法得倒的滤波器没有冲激不变法的好。
[n,wn]=ellipord(wp,ws,rp,rs,'
[z,p,k]=ellipap(n,rp,rs);
Butterworth带通
wp1=10;
wp2=20;
ws1=5;
ws2=25;
rs=50;
wp1=10*2*pi;
wp2=20*2*pi;
ws1=5*2*pi;
ws2=25*2*pi;
wp=[wp1,wp2];
ws=[ws1,ws2];
bw=wn
(2)-wn
(1);
wo=sqrt(wn
(1)*wn
(2));
[a,b,c,d]=zp2ss(z,p,k);
[a1,b1,c1,d1]=lp2bp(a,b,c,d,wo,bw);
[num,den]=ss2tf(a1,b1,c1,d1);
[h3,w3]=freqs(num,den);
figure(4);
plot(w3/(2*pi),abs(h3));
title(‘模拟滤波器的幅频特性’);
figure(5);
plot(w3/(2*pi),angle(h3));
title(‘模拟滤波器的相频特性’);
figure(6);
zplane(num,den);
title(‘模拟滤波器的零极点图’);
[num1,den1]=impinvar(num,den,fs);
[h2,w2]=freqz(num1,den1);
[num2,den2]=bilinear(num,den,fs);
figure
(1);
plot(w2*fs/(2*pi),abs(h2));
title(‘冲击不变法数字滤波器的幅频特性’);
title(‘双线性法数字滤波器的幅频特性’);
title(‘冲击不变法数字滤波器的零极点图’);
title(‘双线性法数字滤波器的零极点图’);
figure(3);
plot(w2*fs/(2*pi),angle(h2));
title(‘冲击不变法数字滤波器的相频特性’);
plot(w1*fs/(2*pi),angle(h1));
title(‘双线性法数字滤波器的相频特性’);
Chebshev1通带
[num1,den1]=impinvar(num,den,fs);
Chebshev2通带
[n,wn]=cheb2ord(wp,ws,rp,rs,'
椭圆通带
[n,wn]=ellipord(wp,ws,rp,rs,'