您的位置:首页 > 其它

实验三:数字滤波器的设计

2015-06-24 22:59 316 查看
(一)实验目的:掌握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)');


结果:





(四)心得体会:

了解函数程序其中字母所代表的含义,统筹全局,再加上自己所拥有的知识,

理清思路,构造好流程图,在步步瓦解,最后不停的调试直至得到满意的结果。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: