资源描述
______________________________________________________________________________________________________________
实验三 IIR数字滤波器的设计
通信四班 朱方方 0806020233
(1),,,,;设计一切比雪夫高通滤波器,观察其通带损耗和阻带衰减是否满足要求。
解:
程序:
精品资料
clear;
fc=300;fr=200;fs=1000;rp=0.8;rs=20;
wc=2*fs*tan(2*pi*fc/(2*fs));
wt=2*fs*tan(2*pi*fr/(2*fs));
[N,wn]=cheb1ord(wc,wt,rp,rs,'s');
[B,A]=cheby1(N,rp,wn,'high','s');
[bz,az]=bilinear(B,A,fs);
[h,w]=freqz(bz,az);
f=w*fs/(2*pi);
plot(f,20*log10(abs(h)));
axis([0,fs/2,-80,10]);
grid;
xlabel('频率/Hz');
ylabel('幅度/dB');
分析:f=200Hz时阻带衰减大于30dB,通过修改axis([0,fs/2,-80,10])为axis([200,fs/2,-1,1])
发现通带波动rs满足<0.8。
bz =[0.0262 -0.1047 0.1570 -0.1047 0.0262]
az =[1.0000 1.5289 1.6537 0.9452 0.2796]
系统函数为:
(2),,,,;分别用脉冲响应不变法及双线性变换法设计一巴特沃思数字低通滤波器,观察所设计数字滤波器的幅频特性曲线,记录带宽和衰减量,检查是否满足要求。比较这两种方法的优缺点。
解:
程序:
clear;
fs=1000;fc=200;fr=300;rp=1;rs=25;
%脉冲响应不变法
wp=2*pi*fc;
ws=2*pi*fr;
[N, wn] = buttord(wp, ws, rp, rs, 's');
[b1 a1]=butter(N,wn,'s');
[bz1,az1]=impinvar(b1,a1,fs);
[h1,w]=freqz(bz1,az1);
%双线性变换法
wp=2*fs*tan(2*pi*fc/fs/2);
ws=2*fs*tan(2*pi*fr/fs/2);
[N, wn] = buttord(wp, ws, rp, rs, 's');
[b2 a2]=butter(N,wn,'s');
[bz2,az2]=bilinear(b2,a2,fs);
[h2,w]=freqz(bz2,az2);
f=w/(2*pi)*fs;
figure; plot(f,abs(h1),'-.r',f,abs(h2),'-b');
grid; xlabel('频率/Hz'); ylabel('幅度');
legend('脉冲响应不变法','双线性变换法');
title('巴特沃思低通滤波器,线性幅度谱');
bz1 =[0.0000 0.0002 0.0153 0.0995 0.1444 0.0611 0.0075 0.0002 0.0000 0]
az1 =[1.0000 -1.9199 2.5324 -2.2053 1.3868 -0.6309 0.2045 -0.0450 0.0060 -0.0004]
因此脉冲响应不变法的系统函数为:
bz2 =[0.0179 0.1072 0.2681 0.3575 0.2681 0.1072 0.0179]
az2 =[1.0000 -0.6019 0.9130 -0.2989 0.1501 -0.0208 0.0025]
因此双线性变换法的系统函数为:
分析:
脉冲响应不变法的N=9,双线性变换法的N=6,由图知它们都满足要求,但脉冲响应的衰减较快,双线性变换的过渡带窄一些,且阶数比脉冲小,容易实现。
(3)利用双线性变换法分别设计满足下列指标的巴特沃思型、切比雪夫型和椭圆型数字低通滤波器,并作图验证设计结果:,,,,。
解:
程序:
clear;
fs=8000;fc=1200;fr=2000;rp=0.5;rs=40;
%巴特沃思低通滤波器
wp=2*fs*tan(2*pi*fc/fs/2);
ws=2*fs*tan(2*pi*fr/fs/2);
[N, wn] = buttord(wp, ws, rp, rs, 's');
[b1 a1]=butter(N,wn,'s');
[bz1,az1]=bilinear(b1,a1,fs);
[h1,w]=freqz(bz1,az1);
H1=20*log10(abs(h1));
f=w/(2*pi)*fs;
figure; plot(f,H1);%对数幅度谱
axis([0,fs/2,-100,10]);
grid; xlabel('频率/Hz'); ylabel('幅度');
title('巴特沃思低通滤波器,对数幅度谱');
%切比雪夫低通滤波器
wc=2*fs*tan(2*pi*fc/(2*fs));
wt=2*fs*tan(2*pi*fr/(2*fs));
[N,wn]=cheb1ord(wc,wt,rp,rs,'s');
[b2,a2]=cheby1(N,rp,wn,'low','s');
[bz2,az2]=bilinear(b2,a2,fs);
[h2,w]=freqz(bz2,az2);
H2=20*log10(abs(h2));
f=w*fs/(2*pi);
figure;
plot(f,H2);
axis([0,fs/2,-100,10]);
grid;
xlabel('频率/Hz');
ylabel('幅度/dB');
title('切比雪夫低通滤波器,对数幅度谱');
%椭圆型数字低通滤波器
wp=2*fs*tan(2*pi*fc/fs/2); %双线性变换法
ws=2*fs*tan(2*pi*fr/fs/2);
[N,wp]=ellipord(wp,ws,rp,rs,'s');
[b3,a3]=ellip(N,rp,rs,wp,'low','s');
[bz3,az3]=bilinear(b3,a3,fs);
[h3,w]=freqz(bz3,az3);
H3=20*log10(abs(h3));
f=w/(2*pi)*fs;
figure;plot(f,H3);
axis([0,fs/2,-100,10]);
grid; xlabel('频率/Hz'); ylabel('幅度/dB');
title('椭圆型数字低通滤波器,对数幅度谱');
巴特沃思低通滤波器:
bz1 =[0.0004 0.0032 0.0129 0.0302 0.0453 0.0453 0.0302 0.0129 0.0032 0.0004]
az1 =[1.0000 -2.7996 4.4582 -4.5412 3.2404 -1.6330 0.5780 -0.1370 0.0197 -0.0013]
系统函数为:
分析:
N=9,为九阶巴特沃思低通滤波器,从图中可以看出通带波动和阻带衰减都满足设计要求。
切比雪夫低通滤波器:
bz2=[0.0026 0.0132 0.0264 0.0264 0.0132 0.0026]
az2= [1.0000 -2.9775 4.2932 -3.5124 1.6145 -0.3334]
系统函数为:
分析:
N=5,为五阶切比雪夫低通滤波器,从图中可以看出通带波动和阻带衰减都满足设计要求。
椭圆型数字低通滤波器:
bz =[0.0389 0.0363 0.0665 0.0363 0.0389]
az =[1.0000 -2.1444 2.3658 -1.3250 0.3332]
系统函数为:
分析:
N=4,为四阶椭圆型数字低通滤波器,从图中可以看出通带波动和阻带衰减都满足设计要求。
(4)分别用脉冲响应不变法及双线性变换法设计一巴特沃思数字带通滤波器,已知,其等效的模拟滤波器指标为,,,,,。
解:程序:
clear;
fs=30000;fc=[2000,3000];
fr=[1500,6000];rp=3;rs=20;
%脉冲响应不变法
wp=2*pi*fc;
ws=2*pi*fr;
[N,wn]=buttord(wp, ws, rp, rs, 's');
[b1,a1]=butter(N,wn,'s');
[bz1,az1]=impinvar(b1,a1,fs);
[h1,w]=freqz(bz1,az1);
%双线性变换法
wp=2*fs*tan(2*pi*fc/fs/2);
ws=2*fs*tan(2*pi*fr/fs/2);
[N,wn]=buttord(wp, ws, rp, rs, 's');
[b2,a2]=butter(N,wn,'s');
[bz2,az2]=bilinear(b2,a2,fs);
[h2,w]=freqz(bz2,az2);
f=w/(2*pi)*fs;
figure;
plot(f,abs(h1),'-.r',f,abs(h2),'-b');
grid;
xlabel('频率/Hz');
ylabel('幅度');
legend('脉冲响应不变法','双线性变换法');
bz1 =[-0.0000 0.0057 -0.0122 0.0025 0.0089 -0.0049 0]
az1 =[1.0000 -4.8056 10.2376 -12.2625 8.7012 -3.4719 0.6145]
因此脉冲响应不变法的系统函数为:
bz2 =[0.0014 -0.0000 -0.0042 -0.0000 0.0042 -0.0000 -0.0014]
az2 =[1.0000 -4.8071 10.2473 -12.2838 8.7245 -3.4849 0.6176]
因此双线性变换法的系统函数为:
(5)利用双线性变换法设计满足下列指标的切比雪夫型数字带阻滤波器,并作图验证设计结果:当时,,当以及时,;采样频率。
解:
程序:
clear;
fs=10000;fc=[500 3000];
fr=[1000 2000];rp=3;rs=20;
wp=2*fs*tan(2*pi*fc/fs/2);
ws=2*fs*tan(2*pi*fr/fs/2);
[N,wn]=cheb1ord(wp,ws,rp,rs,'s');
[b,a]=cheby1(N,rp,wp,‘stop’,'s');
[bz,az]=bilinear(b,a,fs);
[h,w]=freqz(bz,az); f=w/(2*pi)*fs;
figure;plot(f,20*log10(abs(h)));
axis([0,2000,-200,10]);
grid; xlabel('频率/Hz'); ylabel('幅度/dB');
title('切比雪夫带阻滤波器');
bz =[ 0.2192 -0.5418 0.7732 -0.5418 0.2192]
az =[1.0000 -1.1051 0.2612 -0.4256 0.4502]
因此数字滤波器的系统函数为:
分析:
N=4,为四阶切比雪夫带阻滤波器,由图知满足设计要求。
Welcome To
Download !!!
欢迎您的下载,资料仅供参考!
展开阅读全文