基于Matlab GUI的模擬帶通濾波器的設(shè)計
0 引 言
本文引用地址:http://2s4d.com/article/187876.htm模擬帶通濾波器在信號的檢測和傳輸過程中起著很重要的作用,但在傳統(tǒng)模擬帶通濾波器的設(shè)計過程中需要大量繁瑣的數(shù)值計算,如果手工計算則費時費力。也有許多公司開發(fā)了相關(guān)的濾波器設(shè)計軟件,如AnsoftDesigner,F(xiàn)ilterlab等,但是它們大多數(shù)使用起來不容易上手,而且價格比較昂貴。Matlab中的圖形界面編程環(huán)境GUIDE為用戶開發(fā)軟件界面提供了強有力的工具。在圖形界面編程環(huán)境GUIDE下,設(shè)計好濾波器的設(shè)計工具界面后,對界面上各個控件的回調(diào)函數(shù)進行編寫就能設(shè)計出交互式濾波器的分析設(shè)計軟件。
本文在Matlab GUI基礎(chǔ)上設(shè)計了針對Chebyshev型模擬帶通濾波器的設(shè)計分析軟件。用戶在使用時只需輸入要設(shè)計的濾波器設(shè)計指標值,選擇要設(shè)計的濾波器類型,即可在分析濾波器特性時只需選擇相應(yīng)菜單就能得出對應(yīng)的特性。該工具解決了用戶在設(shè)計Chebyshev型模擬帶通濾波器時大量繁瑣的數(shù)值計算,不僅可以作為研究設(shè)計Chebyshev型模擬帶通濾波器的輔助工具,還可以作為設(shè)計濾波器等相關(guān)課程的輔助教學(xué)軟件。
1 模擬帶通濾波器的設(shè)計理論
目前,模擬高通濾波器、帶通濾波器和帶阻濾波器的設(shè)計方法都是先將要設(shè)計的濾波器技術(shù)指標通過某種頻率轉(zhuǎn)換關(guān)系轉(zhuǎn)換成模擬低通濾波器的技術(shù)指標,并依據(jù)這些技術(shù)指標設(shè)計出低通濾波器的轉(zhuǎn)移函數(shù),然后再依據(jù)頻率轉(zhuǎn)換關(guān)系變成所要設(shè)計的濾波器的轉(zhuǎn)移函數(shù)。工程實際中,設(shè)計高通、帶通、帶阻濾波器的常用方法是借助低通原型濾波器,經(jīng)頻率變換和元件變換得到。
對于模擬帶通濾波器的設(shè)計,首先是將要設(shè)計的模擬帶通濾波器的技術(shù)指標通過頻率變換關(guān)系,轉(zhuǎn)換成模擬低通濾波器的技術(shù)指標,其次根據(jù)這些技術(shù)指標設(shè)計出低通切比雪夫濾波器轉(zhuǎn)移函數(shù),最后再依據(jù)頻率轉(zhuǎn)換關(guān)系變成模擬低通切比雪夫濾波器,其具體設(shè)計流程如圖1所示。
2 Matlab GUI設(shè)計工具簡介
在Matlab中,圖形用戶界面(graphical user interface,GUI)是Matlab中一個專用于GUI程序設(shè)計的向?qū)гO(shè)計器,而GUI是由各種圖形對象,如圖形窗口、圖軸、菜單、按鈕、文本框等構(gòu)建的用戶界面,是人機交互的有效工具和方法。通過GUIDE可以很方便地設(shè)計出各種符合要求的圖形用戶界面。用戶通過一定的方法(如鼠標或鍵盤)選擇、激活這些圖形對象,使計算機產(chǎn)生某種動作或變化,比如實現(xiàn)計算、繪圖等。GUI設(shè)計既能以基本的Matlab程序設(shè)計為主,也能以鼠標為主,利用GUIDE工具進行設(shè)計,也可綜合以上兩種方法進行設(shè)計。GUIDE主要是一個界面設(shè)計工具集。Matlab將所有GUl支持的用戶控件都集成在這個環(huán)境中并提供界面外觀、屬性和行為相應(yīng)方式的設(shè)置方法。GUIDE將用戶保存設(shè)計好的圖形用戶界面保存在一個FIG資源文件中,同時自動生成包含圖形用戶界面初始化和組件界面布局控制代碼的M文件,這個M文件為實現(xiàn)回調(diào)函數(shù)的編寫提供了一個參考框架。FIG文件是一個二進制文件,包含系列化的圖形窗口對象。所有對象的屬性都是用戶創(chuàng)建圖形窗口時保存的屬性。該文件最主要的功能是對象句柄的保存。M文件包含GUI設(shè)計、控制函數(shù)及控件的回調(diào)函數(shù),主要用來控制GUI展開時的各種特征。該文件基本上可以分為GUI初始化和回調(diào)函數(shù)2個部分,控件的回調(diào)函數(shù)可根據(jù)用戶與GUI的具體交互行為分別調(diào)用。
3 軟件界面設(shè)計
在軟件設(shè)計時,通過文本編輯框控件來接收用戶輸入的濾波器設(shè)計指標值,考慮到分析濾波器時輸出的參數(shù)較多,如果用一一對應(yīng)的文本框來接收輸出的參數(shù)值,則使軟件界面在設(shè)計中難以布局,并影響了界面的美觀,所以只用一個文本編輯框控件來實現(xiàn)多個參數(shù)的輸出。在濾波器類型選擇控件方面,因為只用2種濾波器來進行選擇設(shè)計,所以使用兩個單選按鈕,以實現(xiàn)濾波器類型的選擇;在濾波器特性曲線分析和參數(shù)計算方面,利用圖形界面設(shè)計工具GUIDE提供的菜單編輯器來設(shè)計出分析、計算菜單,并加入相應(yīng)的功能子菜單。繪制輸出濾波器的特性曲線時使用一個坐標軸來實現(xiàn)各個特性曲線的繪制,這樣可以使軟件界面簡潔明了。最后對參數(shù)輸入和參數(shù)輸出區(qū)進行功能區(qū)域劃分,利用控件工具箱中的框架按鈕,將參數(shù)的輸入與輸出區(qū)劃分,利用控件工具箱中文本標簽對上面相應(yīng)控件的功能命名。將設(shè)計好的界面文件保存運行,就可以看到軟件在運行時顯示出的實際效果。設(shè)計的界面如圖2所示,設(shè)計出的軟件界面由4個部分組成:菜單欄、參數(shù)輸入?yún)^(qū)、參數(shù)輸出區(qū)、繪圖區(qū)。
其中,設(shè)計的分析菜單包括濾波器的幅頻特性、相頻特性、階躍響應(yīng)、脈沖相應(yīng)和零極點子菜單,計算菜單包括階數(shù)、零點、極點、增益、轉(zhuǎn)移函數(shù)(分子)和轉(zhuǎn)移函數(shù)(分母)子菜單。
低通濾波器相關(guān)文章:低通濾波器原理
電源濾波器相關(guān)文章:電源濾波器原理
高通濾波器相關(guān)文章:高通濾波器原理 數(shù)字濾波器相關(guān)文章:數(shù)字濾波器原理
評論