数字信号处理实验-IIR滤波器设计

数字信号处理实验-IIR滤波器设计
数字信号处理实验-IIR滤波器设计

实验四 IIR 数字滤波器的设计

(1)kHz f c 3.0=,dB 8.0=δ,kHz f r 2.0=,dB At 20=,ms T 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'); 050100150200

250300350400450500

-80

-70-60-50-40-30-20

-10010频率/Hz

幅度/d B

分析: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] 系统函数为:

43214

3212796.09452.06537.15289.110262.01047.01570.01047.0-0262.0)(H --------+++++-+=

z z z z z z z z z

(2)kHz f c 2.0=,dB 1=δ,kHz f r 3.0=,dB At 25=,ms T 1=;分别用脉冲响应不变法及双线性变换法设计一巴特沃思数字低通滤波器,观察所设计数字滤波器的幅频特性曲

线,记录带宽和衰减量,检查是否满足要求。比较这两种方法的优缺点。 解: 程序: 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('巴特沃思低通滤波器,线性幅度谱');

50100150200

250300350400450500

00.20.40.60.8

1

1.2

1.4

频率/Hz

幅度

巴特沃思低通滤波器,线性幅度谱

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] 因此脉冲响应不变法的系统函数为:

1234567

123456789

0.00020.01530.09950.14440.06110.00750.0002()1 1.9199 2.5324 2.2053 1.38680.63090.20450.04500.00600.0004imp z z z z z z z H z z z z z z z z z z ----------------+++---=

-+-+-+-+-

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] 因此双线性变换法的系统函数为:

123456

123456

0.01790.10720.26810.35750.26810.10720.0179()10.60190.91300.29890.15010.02080.0025bil z z z z z z H z z z z z z z ------------++++++=

-+-+-+ 分析:

脉冲响应不变法的N=9,双线性变换法的N=6,由图知它们都满足要求,但脉冲响应的衰减较快,双线性变换的过渡带窄一些,且阶数比脉冲小,容易实现。

(3)利用双线性变换法分别设计满足下列指标的巴特沃思型、切比雪夫型和椭圆型数字低通滤波器,并作图验证设计结果:kHz f c 2.1=,

dB 5.0≤δ,kHz f r 2=,

dB At 40≥,kHz f s 8=。

解: 程序: 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('椭圆型数字低通滤波器,对数幅度谱');

500

1000

1500

20002500

3000

3500

4000

-100

-90-80-70-60-50-40-30

-20-100

10频率/Hz

幅度

巴特沃思低通滤波器,对数幅度谱

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] 系统函数为:

123456789

1123456789

0.00040.00320.01290.03020.04530.04530.03020.01290.00320.0004H ()1 2.7996 4.4582 4.5412 3.2404 1.63300.56800.13700.01970.0013z z z z z z z z z z z z z z z z z z z ------------------++-++++++=

-+-+-+-+-

分析:

N=9,为九阶巴特沃思低通滤波器,从图中可以看出通带波动和阻带衰减都满足设计要求。

500

1000

1500

20002500

3000

3500

4000

-100

-90-80-70-60-50-40-30

-20-100

10频率/Hz

幅度/d B

切比雪夫低通滤波器,对数幅度谱

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] 系统函数为:

5

43215

432123334.06154.15124.32932.49775.210026.00132.06420.00264.01320.00026.0)(H -----------+-+-+++++=

z z z z z z z z z z z

分析:

N=5,为五阶切比雪夫低通滤波器,从图中可以看出通带波动和阻带衰减都满足设计要求。

相关主题
相关文档
最新文档