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