(一)实验目的:掌握IIR数字低通滤波器的设计方法。
(三)实验内容:
题一:试用双线性Z变换法设计一低通数字滤波器,给定技术指标是Hz,Hz,dB, dB,抽样频率Hz。
提示:首先应该得到角频率,然后再
(1) 将数字滤波器的技术要求转换为模拟滤波器的技术要求。
(2) 设计低通滤波器
由=依次求出,,再求出N,可得
然后由转换成
(3) 由求
设计步骤:
(1)求出角频率
(2)对角频率做预畸变
(3)求出模拟低通滤波器的阶次,利用函数[N,Wn]=buttord(Wp,Ws,Rp,Rs,’s’) 注意:Wp,Ws应该为(2)中的,。
(4)设计模拟低通原型滤波器,其调用格式是 [z,p,k]=buttap(N)。
N是欲设计的低通原型滤波器的阶次,z,p,k分别是设计出的的极点、零点及增益。
(5)求模拟低通原型滤波器的分子分母系数, [b,a]=zp2tf(z,p,k)。
(6)求出的分子、分数系数。[B,A]=lp2lp(b,a,Wo)
(7)求出的分子、分母系数,利用bilinear函数。
(8)求频率响应,利用Freqz函数。
(9)画的图 。
clc;
fp=100;fs=300;Rp=3;As=20;Fs=1000;
wp=2*pi*fp/Fs;ws=2*pi*fs/Fs;
omegaP=2*Fs*tan(wp/2);omegaS=2*Fs*tan(ws/2);
[N,omegaC]=buttord(omegaP,omegaS,Rp,As,'s');
[z,p,k]=buttap(N);
[b,a]=zp2tf(z,p,k);
[d,c]=lp2lp(b,a,omegaC);
[bz,az]=bilinear(d,c,Fs);
[H,W]=freqz(bz,az);
figure(1);plot(W,abs(H));grid on;
xlabel('W');ylabel('|H(jw)|');
title('Magnitude Frequency幅频特性');
db=20*log10(abs(H));
[H,W]=freqz(bz,az,1024,'whole',Fs);
figure(2);plot(W,db);grid on;
xlabel('W');ylabel('dB');
title('Magnitude Frequency幅频特性(db)');
结果:
(四)心得体会:
了解函数程序其中字母所代表的含义,统筹全局,再加上自己所拥有的知识,
理清思路,构造好流程图,在步步瓦解,最后不停的调试直至得到满意的结果。