常 巍,陳 瑋
(1.中國電子科技集團公司第13 研究所市場營銷部,河北石家莊 050051;2.中國電子科技集團公司第54 研究所,河北石家莊 050081)
模擬濾波器設(shè)計的關(guān)鍵是找到一個穩(wěn)定易實現(xiàn)的逼近函數(shù),且其幅頻特性要滿足所需濾波器的要求。常用的濾波器模型有巴特沃斯(Butterworth)濾波器、切比雪夫(Chebyscheff)濾波器、貝塞爾(Bessel)濾波器及橢圓函數(shù)(Elliptic)濾波器。雖這些濾波器設(shè)計過程均已較為成熟,但無論哪種設(shè)計過程卻均需要繁瑣復(fù)雜的計算,或使用大型設(shè)計軟件,因此不便于使用。
Matlab[1]作為一種高性能數(shù)值計算和可視化的工程計算工具,其具有豐富的數(shù)學(xué)函數(shù)功能支持,并提供了豐富的用于模擬濾波器設(shè)計的函數(shù),通過簡單編程便可實現(xiàn)低通、高通、帶通、帶阻濾波器的設(shè)計,并能繪制出幅頻和相頻特性曲線[2]。因此,為簡化濾波器設(shè)計,方便工程應(yīng)用,本文提出了基于Matlab 的低通濾波器快速設(shè)計方法,利用Matlab 的圖形用戶界面工具Guide 實現(xiàn)了可視化。
根據(jù)低通濾波器[1]所選逼近函數(shù)的不同,其也有不同的響應(yīng)。圖1(a)所示的響應(yīng)通帶頂部最平坦,故稱為“最平坦響應(yīng)”,也稱作“Butterworth 響應(yīng)”。圖1(b)所示的響應(yīng)通帶衰減有規(guī)律性的起伏,且幅度相等,故稱為“等波紋響應(yīng)”,也被稱作“Chebyscheff 響應(yīng)”[3-4]。
圖1 低通濾波器的幅頻特性曲線
圖1 中Rs為阻帶截止頻率處的衰減,Ws為阻帶截止頻率,Rp為通帶截止頻率處的衰減,Wp是通帶邊緣上衰減為Rp時的頻率,稱為“帶邊頻率”或“截止頻率”,即可認為0 ~Wp為通帶,Wp以上為阻帶。
在設(shè)計好濾波器的逼近函數(shù),確定濾波器階數(shù)后,則要進行所需元件值的計算。下面以Butterworth 濾波器和Chebyscheff 濾波器為例,介紹這兩種響應(yīng)元件值的計算方法[5-6]。
圖1(a)所示的Butterworth 濾波器數(shù)學(xué)表達式為
式中
對于兩端均接有電阻的Butterworth 低通濾波器,當(dāng)Rp=3 dB 時,其歸一化元件值可用下式得出
圖1(b)所示的Chebyscheff 濾波器數(shù)學(xué)表達式為
其中
式中,n 是該電路的電抗元件數(shù)目。若n 為偶數(shù)時,則Rs=0 dB 的頻率有n/2 個;若n 為奇數(shù),則Rs=0 dB的頻率有(n+1)/2 個[8-10]。
對于兩端均接有電阻的Chebyscheff 低通濾波器,設(shè)其通帶波紋為Rp,g0=1,Wp=1,則其歸一化元件值可用下式得出
式中
圖形用戶界面(Graphical User Interface,GUI)是目前計算機應(yīng)用程序界面的主要形式。使用Matlab 的Guide 平臺,用戶可便捷地設(shè)計GUI 界面,并開發(fā)自己的應(yīng)用程序。使用Guide 設(shè)計一個完整用戶界面的基本過程如下[1]:
(1)設(shè)計功能。運用面向?qū)ο蟮姆椒?,確定所需使用的對象,并添加到GUI 中。(2)完成布局。利用Guide 提供的布局工具,完成各對象的布局,力求界面友好、操作方便。(3)設(shè)置屬性。打開各對象的屬性查看器,設(shè)置相應(yīng)屬性。(4)編寫回調(diào)函數(shù)。編寫必要的回調(diào)函數(shù)(call-back),以保證所設(shè)計GUI 能正確響應(yīng)用戶操作。
基于Matlab 的低通濾波器設(shè)計軟件界面如圖2 所示。其主要包括參數(shù)輸入模塊、類型選擇模塊、繪圖模塊、計算模塊以及結(jié)果列表顯示模塊5 部分,可完成確定濾波器階數(shù)、繪制幅頻和相頻特性曲線以及計算元件值功能。
濾波器類型可選擇Butterworth 濾波器、Chebyscheff濾波器或Butterworth 濾波器及Chebyscheff 濾波器。通過輸入通帶截止頻率Wp、阻帶截止頻率Ws、通帶截止頻率處的衰減Rp、阻帶截止頻率處的衰減Rs,可確定Butterworth 和Chebyscheff 濾波器的階數(shù)、繪制幅頻、相頻特性曲線,并得出所需濾波器的元件值。
圖2 界面設(shè)計
完成界面設(shè)計后,需編寫相應(yīng)GUI 對象的回調(diào)函數(shù),以進行程序?qū)崿F(xiàn)。
設(shè)計一個模擬信號輸入低通濾波器,要求在40 Hz處的衰減為3 dB,在150 Hz 處的最小衰減為60 dB。
根據(jù)此設(shè)計要求,輸入通帶截止頻率Wp=40 Hz、阻帶截止頻率Ws=150 Hz、通帶截止頻率處的衰減Rp=3 dB、阻帶截止頻率處的衰減Rs=60 dB。分別采用Butterworth 和Chebyscheff 濾波器進行計算。
使用Matlab 自帶的濾波器計算函數(shù),可較快得出濾波器的階數(shù)。Butterworth 濾波器和Chebyscheff 濾波器計算函數(shù)分別如下
由此可得到,該低通濾波器按Butterworth 濾波器和Chebyscheff 濾波器設(shè)計得到的階數(shù)分別為4 階和5 階。
使用Matlab 還可繪制出濾波器的幅頻和相頻特性曲線。Butterworth 濾波器和Chebyscheff 濾波器所使用的函數(shù)分別如下
而繪制幅頻、相頻特性曲線的函數(shù)為
freqz(b,a,512,1 000);
最后得到按照Butterworth 濾波器和Chebyscheff濾波器設(shè)計的幅頻和相頻特性曲線分別如圖3 所示,可根據(jù)所需低通濾波器的具體要求選擇Butterworth 或Chebyscheff 加以實現(xiàn)。
圖3 濾波器幅頻和相頻特性曲線
Butterworth 濾波器和Chebyscheff 濾波器歸一化元件值的計算如上所述,通過編程,可計算出所需濾波器的歸一化元件值,如表1 所示。
表1 所需濾波器的歸一化元件值
使用低通濾波器設(shè)計軟件,點擊“計算”按鈕,在界面右側(cè)列表給出了所需濾波器的歸一化元件值,如圖4 所示。
圖4 元件值計算結(jié)果列表輸出
本文使用Matlab 的圖形用戶界面開發(fā)工具Guide,完成了模擬低通濾波器設(shè)計軟件,其中包含參數(shù)輸入、類型選擇、繪圖、計算以及結(jié)果列表顯示5 大模塊,并實現(xiàn)了確定濾波器階數(shù)、繪制幅頻和相頻特性曲線以及計算元件值3 大功能。通過設(shè)計應(yīng)用舉例,按照Butterworth 和Chebyscheff 兩種類型完成了所需的模擬低通濾波器的設(shè)計。
[1] 阮沈勇.MATLAB 程序設(shè)計[M].北京:電子工業(yè)出版社,2004.
[2] 高彩霞,高子余,艾永樂.基于MATLAB 的有源低通濾波器設(shè)計與實現(xiàn)[J].北京電子科技學(xué)院學(xué)報,2010(4):54-59.
[3] 王玉林,葛蕾,李艷斌.新型界面開發(fā)工具:MATLAB/GUI[J].無線電通信技術(shù),2008,34(6):50-52.
[4] 雷前召.模擬低通濾波器的MATLAB 實現(xiàn)[J].湖南科技學(xué)院學(xué)報,2009(4):48-49.
[5] 李春紅,王清芬.Ku 波段帶通濾波器的設(shè)計與實現(xiàn)[J].無線電工程,2006(4):42-43.
[6] 甘本祓,吳萬春.現(xiàn)代微波濾波器的結(jié)構(gòu)與設(shè)計[M].北京:科學(xué)出版社,1973.
[7] 吳明英,毛秀華.微波技術(shù)[M].西安:西北電訊工程學(xué)院出版社,1987.
[8] 湯煒,朱信剛.微波超低相噪光電振蕩器[J].半導(dǎo)體技術(shù),2006(5):382-384.
[9] 李宏軍,何艷麗.網(wǎng)絡(luò)變換在濾波器設(shè)計中的應(yīng)用[J].半導(dǎo)體技術(shù),2002(5):15-17.
[10]RHEA R W.HF filter design and computer simulation[M].Sweden:Noble Publishing,1994.