资源描述:
《数字信号处理实验报告书(实验四)》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、实验拫告课程名称:数字信号处理实验题目:实验四模拟原型滤波器的设计院系:物理与电子信息系班级:姓名:学号:指导教师:实验时间:2012年12月12日实验四模拟原型滤波器的设计一、实验目的•学会运用MATLAB设计模拟低通滤波器原型的设计方法。二、实验原理由于IIR数字滤波器是在已知的归一化的低通模拟滤波器的棊础上设计的,主要包括巴特沃斯低通滤波器、切比雪夫低通滤波器、椭圆低通滤波器,因此把这些低通滤波器称为滤波器原型。三、实验内容及结果设计一个模拟原型低通滤波器,通带截止频率为6khz,通带最大衰减为ldb,阻带截止频率为15khz,阻带最小衰减为30db。要求:分别实现符合以上指标的巴特沃斯
2、滤波器、切比雪夫I型滤波器、椭圆滤波器,绘制幅频特性、幅频特性分布图、相频特性、零极点分布图,并列写系统函数表示式,注意:是所求系统的系统函数,而不是归一化的系统函数。1、巴特沃斯模拟原型低通滤波器MATLAB源程序与运行结果图形:fp=6000;wp=2*pi*fp%输入滤波器的通带截止频率fs=15000;ws=2*pi*fs%输入滤波器的阻带截止频率Rp=l;As=30;%输入滤波器的通阻带衰减指标%计算滤波器的阶数和3dB截止频率[n,wc]=buttord(wp,ws,Rp,As,,s,)%计算n阶模拟低通原型[zO,pO,kO]=buttap(n)%字母后加0表明这是原型滤波器的各
3、指标,而不是所求的滤波器的bO=kO*poly(zO)%求归一化滤波器分子系数bOaO=poly(pO)%求归一化滤波器分母系数aO[H,w]=freqs(bO,aO);%求归一化系统的频率特性dbH=20*logl0(abs(H)/max(abs(H)));%将归一化系统的幅频特性化为分贝依,注意此时的分贝值为负的,为了使分贝图和幅频响应图一致subplot(2z2zl)zplot(w*wc/(2*pi),abs(H)),grid%画所求滤波器的幅频响应图axis([0,20000,04.l】);ylabel(
4、幅度');xlabel('f(Hzn;subplot(2,2/2),plot(w
5、*wc/(2*pi),angle(H))zgrid%画所求滤波器的相频响应图axis([0,20000,-4,4]);ylabel('相位'};xlabel(’f{Hz)');subplot(2,2,3),plot(w*wc/(2*pi),dbH),gNd%画所求滤波器的幅频响应分贝图axis([0,20000,-30,2]);ylabel(•幅度(dBD;xlabeirf(Hzr);subplot(2,2,4)zplot(p0*wc/x,);%画所求滤波器的极点图,用x号标出axissquare,axisequal,gridon%使乂、y轴等比例显示%以下程序可不写wx0=[wp,ws]/w
6、c;%设置频率向量Hx=freqs(bO,aO,wxO);%计算通带阻带该两点的频率特性,即H(jwp)、H(jws)dbHx=-20*logl0(abs(Hx)/max(abs(H)))%将H(jwp)、H(jws)化力分贝值,即通带最大衰减、阳.带最小衰减wp=3.7699e+004ws=9.4248e+004n=5wc=4.7241e+004zO=[]pO=-0.3090+0.9511i-0.3090-0.9511i-0.8090+0.5878i-0.8090-0.5878i-1.0000k0=1bO=1aO=1.00003.2361dbHx=0.432730.0000系统函数:1.52
7、x104o150o.42g0•21f(HZ)00511.5x104422430參SI/O.1O.2O(apss1.52x1045.23615.23613.23611.00000-2-4,三X••I••:•--8-6-4-201021042、切比雪夫T型模拟原型低通滤波器MATLAB源程序与运行结果图形:fp=6000;wp=2*pi*fp%输入滤波器的通带截止频率fs=15000;ws=2*pi*fs%输入滤波器的阻带截止频率Rp=l;As=30;%输入滤波器的通阻带衰减指标%计算滤波器的阶数和通带截止频率[n,wp]=cheblord(wp,ws,Rp,As/s')%计算n阶模拟低通原型,得
8、到左半平面零极点[zO,pO,kO]=cheblap(n,Rp)bO=kO*poly(zO)%求滤波器系数bOaO=poly(pO)%求滤波器系数aO[H,w]=freqs(bO/aO);%求系统的频率特性dbH=20*logl0(abs(H)/max(abs(H)));%化为分贝值subplot(2,2/l),plot(w*wp/(2*pi),abs(H)/k,)zgridaxis([0,200