基于matlab的低通滤波器

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

第-1-页共10页基于matlab的低通滤波器摘要:调用MATLAB信号处理工具箱中滤波通过观察滤波器输入输出信号的时域波形及其频谱,建立数字滤波的概念。应用最广泛的是双线性变换法。基本设计过程是:①先将给定的数字滤波器的指标转换成过渡模拟滤波器的指标;②设计过渡模拟滤波器;③将过渡模拟滤波器系统函数转换成数字滤波器的系统函数。MATLAB信号处理工具箱中的各种IIR数字滤波器设计函数都是采用双线性变换法。关键词:滤波器,matlab,c语言,声音Abstract:callMATLABsignalprocessingtoolboxfilteringthroughtheobservationfilterofinputandoutputsignalstimedomainwaveformandspectrum,establishtheconceptofdigitalfilter.Oneofthemostwidelyappliedisdoublelineartransformationmethod.Thebasicdesignprocessis:(1)toagivendigitalfiltersindexconvertedintoanalogfiltertransitionindex;(2)thedesigntransitionsimulationfilter;(3)transitionsimulationfiltersystemfunctionwillbeconvertedintodigitalfiltersystemfunction.MATLABsignalprocessingtoolboxdigitalfilterfunctiondesignofIIRisbilineartransformationmethod.Keywords:filter,matlab,theclanguage,thevoice一.任务:用matlab软件设计IIR模拟、数字以及各种窗函数的FIR低通滤波器二.设计目的:(1)了解matlab软件的用途以及用法;(2)了解用冲激响应不变法设计模拟低通滤波器;(3)了解用脉冲响应不变法设计的巴特沃思数字低通滤波器;(4)了解基于汉明窗函数的FIR低通滤波器的设计。三.设计内容:3.1用冲激响应不变法设计模拟低通滤波器3.1.1设计内容:要求按照设计指标设计无限冲激响应IIR巴特沃什模拟低通滤波器。3.1.2设计原理:低通滤波器的技术要求用图形表示如下:|)(|jeHpsc10.707112第-2-页共10页通带过渡带阻带如上图表示了一个频域设计、一维低通滤波器的技术要求图。ws和wp分别称为通带截止频率和阻带截止频率。通带频率范围为0≤w≤wp,阻带频率范围ws≤w≤π。从wp到ws称为过渡带,用Δw表示,在过渡带里,幅频特性单调下降。在通带和阻带内的衰减一般用数dB表示,通带内允许最大衰减是αs,阻带内允许最小衰减是αp。定义分别为:Matlab信号处理工具箱中提供了设计巴特沃思模拟滤波器的函数buttord、buttap和butter,格式如下:[,](,,,,CPSPSNWbuttordWWRRs用于计算巴特沃思模拟低通滤波器的阶N和3dB截止频率Wc(即本书中的符号c)。其中,Wp和Ws分别是滤波器的通带截止频率p和阻止截止频率s,单位为rad/s;Rp和Rs分别是通带最大衰减系数p和阻带最小衰减系数s,单位为dB。[,,]()zpGbuttapN用于计算N阶巴特沃思归一化(c=1)模拟低通滤波器系统函数的零、极点和增益因子,返回长度为N的向量z和p分别给出N个零点和极点,G是滤波器增益。得到的滤波器系统函数形式如下:1212()()()()()()()()()aNaaNQsszszszHsGPsspspsp其中,kz和kp分别是向量z和p的第k个元素。如果要从零、极点得到系统函数的分子和分母多项式系数向量B和A,可以调用结构转换函数:[,]2(,,)BAzptfzpG结构转换后系统函数的形式为:111111()()()MMMaNNNbsbsbBsHsAsasasa其中,M是向量B的长度,N是向量A的长度,kkba和分别是向量B和A的第k个元素。[,](,,,)CBAbutterNWftypes用于计算巴特沃什模拟滤波器系统函数中分子和分母多项式系数向量B和A,其中N和CW分别是滤波器的阶和3dB截止频率c,返回向量B和A中的元素ka和kb分别是上面的()aHs表示式中的分母和分子系数。ftype缺省时,设计低通滤波器,S缺省时,设计数字滤波器。3.1.3设计程序如下:(1)巴特沃思模拟低通滤波器设计指标如下:wp=0.4*pi,ws=0.45*pi,Rp=5,Rs=10;实验所用到的程序如下通带通带通带pj0pj(e)20lg(e)HHsj0sj(e)20lg(e)HH第-3-页共10页wp=0.4*pi;ws=0.45*pi;Rp=5;Rs=10;[N,wc]=buttord(wp,ws,Rp,Rs,'s');[B,A]=butter(N,wc,'s');w=0:0.001:6;[H,W]=freqs(B,A,w);H=20*log10(abs(H));plot(w,H),gridon;xlabel(‘频率/(rad/s)');ylabel('幅度/dB')经matlab仿真以后得到的滤波器如下图所示:图1.1巴特沃思模拟低通滤波器运行后在matlab控制窗口上显示如下结果:N=7(2)为了方便观察故设计了不同阶次N的滤波器,即Butterworth模拟原型低通滤波器,其程序代码如下:n=0:0.01:2;forii=1:4switchiicase1,N=2;case2,N=5;case3,N=10;case4,N=20;end[z,p,k]=buttap(N);[b,a]=zp2tf(z,p,k);[H,w]=freqs(b,a,n);magH2=(abs(H)).^2;holdon;0123456-60-50-40-30-20-10010频率/(rad/s)幅度/dB巴特沃什模拟低通滤波器第-4-页共10页plot(w,magH2);endxlabel('w/wc');ylabel('|H(jw)|^2');title('Butterworth模拟原型低通滤波器');text(1.5,0.18,'n=2')text(1.3,0.08,'n=5')text(1.16,0.08,'n=10')text(0.93,0.98,'n=20')gridon;仿真后结果图形如图:图1.2Butterworth模拟原型低通滤波器(3)利用冲激响应不变法,把系统函数为651)(2ssssHa的模拟滤波器变换成等价的数字滤波器,采样间隔T=1S。先经过计算得到:2132651)(2ssssssHa,则有如下式子21112130067.01851.012209.00000.1112)(zzzzeTzeTzHTTMatlab实验参考程序如下:B=[1,1];A=[1,5,6];T=1;Fs=1/T;[Bz,Az]=impinvar(B,A,Fs);%用冲激响应不变法将模拟滤波器变换成数字滤波器00.20.40.60.811.21.41.61.8200.20.40.60.811.21.4w/wc|H(jw)|2Butterworth模拟原型滤波器n=2n=5n=10n=20第-5-页共10页运行结果:Bz=1.0000-0.2209Az=1.0000-0.18510.0067得到的数据和先前计算得到的数据相同,故利用冲激响应不变化法把模拟滤波器设计成数字滤波器正确。3.1.4实验结果及分析(1)步骤1中产生的低通模拟滤波器的系统函数,经计算为:经过仿真后的结果,与上式对比,所得结果进分析相同。此处为N=7的低通模拟滤波器(2)在Butterworth模拟原型低通滤波器中,可以看到,滤波器的幅频特性随着滤波器阶次N的增加而变得越来越好。(3)步骤3中,利用冲激响应不变法,把系统函数的模拟滤波器变换成等价的数字滤波器,在matlab仿真软件中验证了冲激响应不变法的正确性。3.2用脉冲响应不变法设计的巴特沃思数字低通滤波器3.2.1设计内容:设计巴特沃思数字低通滤波器和椭圆数字低通滤波器,要求通带边界频率fp=2.1kHZ,通带最大衰减Rp=0.5dB;阻带边界频率fs=8kHZ,阻带最小衰减Rs=30dB,采样频率为Fs=20kHZ。3.2.2设计步骤:用MATLAB进行典型的数字滤波器的设计,一般步骤如下:(1)将设计指标归一化处理。如果采用双线性变换法,还需进行预畸变。(2)根据归一化频率,确定最小阶数N和频率参数Wn。可供选用的阶数择函数有:buttord,cheblord,cheb2ord,ellipord等。(3)运用最小阶数N设计模拟低通滤波器原型。模拟低通滤波器的创建函数有:buttap,cheblap,cheb2ap,ellipap和besselap,这些函数输出的是零极点式形式,还要用zp2tf函数转换成分子分母多项式形式。如果想根据最小阶数直接设计模拟低通滤波器原型,可用butter,chebyl,cheby2,ellip,bessel等函数,只是注意要将函数中的Wn设为1。(4)根据第2步的频率参数Wn,模拟低通滤波原型转换模拟低通、高通、带通、带阻滤波器,可用函数分别是:lp21p,lp2hp,lp2bp,lp2bs。(5)运用脉冲响应不变法或双线性变法把模滤波器转数字滤波器,调用的函数是impinvar和bilinear。脉冲响应不变法适用于采样频率大于4倍截止频率的锐截止低通带通滤波器,而双线性变换法适合于相位特性要求不高的各型滤波器。(6)根据输出的分子分母系数,用tf函数生成H(z)的表达式,再用freqz函数验证设计结果。3.2.3设计程序如下:fp=2100;fs=8000;Fs=20000;Rp=0.5;Rs=30;T=1/Fs;%设计指标W1p=fp/Fs*2;W1s=fs/Fs*2;%求归一化频率[N,Wn]=buttord(W1p,W1s,Rp,Rs,'s');%确定butterworth的最小介数N和频率参数Wn[z,p,k]=buttap(N);%设计模拟低通原型的零极点增益参数[bp,ap]=zp2tf(z,p,k);%将零极点增益转换成分子分母参数))()(((1893.1s4144.152.024144.1483.12s1.4144)2.143Ss23625.3)(ssssHa第-6-页共10页[bs,as]=lp2lp(bp,ap,Wn*pi*Fs);%将低通原型转换为模拟低通[bz,az]=impinvar(bs,as,Fs);%用脉冲响应不变法进行模数变换sys=tf(bz,az,T);%给出传输函数H(Z)[H,W]=freqz(bz,az,512,Fs);%生成频率响应参数subplot(2,1,1);plot(W,20*log10(abs(H)));%绘制幅频响应gridon;%加坐标网格xlabel('频率/Hz');ylabel('振幅/dB');subplot(2,1,2);plot(W,abs(H));gridon;xlabel('频率/Hz');ylabel('振幅/H');运行后的波形如下:图2.1巴特沃思和椭圆数字低通滤波器N=4bz=0.00000.09990.19140.0252az=1.0000-1.43361.0984-0.41150.06273.3基于汉明窗函数的FIR低通滤波器的设计3.3.1设计具体低通滤波器要求:设低通滤波器通带截止频率为0.2p,阻带截止频率为0.4s,通带纹波pA=0.5dB,最小阻带衰减rA=50dB。3.

1 / 10
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功