基于matlab的低通滤波器,基于Matlab Guide的低通滤波器设计

模拟滤波器设计的关键是找到一个稳定易实现的逼近函数,且其幅频特性要满足所需滤波器的要求。常用的滤波器模型有巴特沃斯(Butterworth)滤波器、切比雪夫(Chebyscheff)滤波器、贝塞尔(Bessel)滤波器及椭圆函数(Elliptic)滤波器。虽这些滤波器设计过程均已较为成熟,但无论哪种设计过程却均需要繁琐复杂的计算,或使用大型设计软件,因此不便于使用。Matlab[1]作为一种高性能数值计算和可视化的工程计算工具,其具有丰富的数学函数功能支持,并提供了丰富的用于模拟滤波器设计的函数,通过简单编程便可实现低通、高通、带通、带阻滤波器的设计,并能绘制出幅频和相频特性曲线[2]。因此,为简化滤波器设计,方便工程应用,本文提出了基于Matlab的低通滤波器快速设计方法,利用Matlab的图形用户界面工具Guide实现了可视化。1低通滤波器设计根据低通滤波器[1]所选逼近函数的不同,其也有不同的响应。图1(a)所示的响应通带顶部最平坦,故称为“最平坦响应”,也称作“Butterworth响应”。图1(b)所示的响应通带衰减有规律性的起伏,且幅度相等,故称为“等波纹响应”,也被称作“Chebyscheff响应”[3-4]。图1低通滤波器的幅频特性曲线图1中Rs为阻带截止频率处的衰减,Ws为阻带截止频率,Rp为通带截止频率处的衰减,Wp是通带边缘上衰减为Rp时的频率,称为“带边频率”或“截止频率”,即可认为0~Wp为通带,Wp以上为阻带。在设计好滤波器的逼近函数,确定滤波器阶数后,则要进行所需元件值的计算。下面以Butterworth滤波器和Chebyscheff滤波器为例,介绍这两种响应元件值的计算方法[5-6]。1.1Butterworth滤波器元件值设计图1(a)所示的Butterworth滤波器数学表达式为92www.dianzikeji.orgRs(Ws)=10log101+WsW()p2[]n(1)式中=10Rp()10-1(2)由于式(1)中WsWp在Ws=0时,具有最大可能数目的零导数,因此有“最平坦”之称。式中的n,相当于有源滤波器电抗元件的数目。对Butterworth滤波器而言,常选Rp=3dB,则Wp就是其3dB带宽[7]。对于两端均接有电阻的Butterworth低通滤波器,当Rp=3dB时,其归一化元件值可用下式得出g0=gn+1=1gk=2sin(2k-1)2[]n,k=1,2,3,…,n(3)1.2Chebyscheff滤波器元件值设计图1(b)所示的Chebyscheff滤波器数学表达式为Rs(Ws)=10log101+cos2ncos-1WsW{[()]}pWsWpRs(Ws)=10log101+cosh2ncosh-1WsW{[()]}pWsWp(4)其中=10Rp()10-1(5)式中,n是该电路的电抗元件数目。若n为偶数时,则Rs=0dB的频率有n/2个;若n为奇数,则Rs=0dB的频率有(n+1)/2个[8-10]。对于两端均接有电阻的Chebyscheff低通滤波器,设其通带波纹为Rp,g0=1,Wp=1,则其归一化元件值可用下式得出g1=2a1gk=4ak-1akbk-1gk-1,k=1,2,3,…,ngn+1=1,n奇=tanh2()4,n偶(6)式中=lncothRp()17.37=sinh2()nak=sin(2k-1)2[]n,k=1,2,…,nbk=2+sin2k()n,k=1,2,…,n(7)2Matlab图形用户界面图形用户界面(GraphicalUserInterface,GUI)是

本文链接:https://my.lmcjl.com/post/7704.html

展开阅读全文

4 评论

留下您的评论.