国产毛片a精品毛-国产毛片黄片-国产毛片久久国产-国产毛片久久精品-青娱乐极品在线-青娱乐精品

基于MatlabGUI的模擬帶通濾波器的設(shè)計(jì)

發(fā)布時(shí)間:2010-8-21 15:49    發(fā)布者:lavida
關(guān)鍵詞: MatlabGUI , 濾波器 , 模擬帶通
模擬帶通濾波器在信號(hào)的檢測和傳輸過程中起著很重要的作用,但在傳統(tǒng)模擬帶通濾波器的設(shè)計(jì)過程中需要大量繁瑣的數(shù)值計(jì)算,如果手工計(jì)算則費(fèi)時(shí)費(fèi)力。也有許多公司開發(fā)了相關(guān)的濾波器設(shè)計(jì)軟件,如AnsoftDesigner,F(xiàn)ilterlab等,但是它們大多數(shù)使用起來不容易上手,而且價(jià)格比較昂貴。Matlab中的圖形界面編程環(huán)境GUIDE為用戶開發(fā)軟件界面提供了強(qiáng)有力的工具。在圖形界面編程環(huán)境GUIDE下,設(shè)計(jì)好濾波器的設(shè)計(jì)工具界面后,對(duì)界面上各個(gè)控件的回調(diào)函數(shù)進(jìn)行編寫就能設(shè)計(jì)出交互式濾波器的分析設(shè)計(jì)軟件。  

本文在Matlab GUI基礎(chǔ)上設(shè)計(jì)了針對(duì)Chebyshev型模擬帶通濾波器的設(shè)計(jì)分析軟件。用戶在使用時(shí)只需輸入要設(shè)計(jì)的濾波器設(shè)計(jì)指標(biāo)值,選擇要設(shè)計(jì)的濾波器類型,即可在分析濾波器特性時(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)通過某種頻率轉(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ā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ì)工具簡介  

在Matlab中,圖形用戶界面(graphical user interface,GUI)是Matlab中一個(gè)專用于GUI程序設(shè)計(jì)的向?qū)гO(shè)計(jì)器,而GUI是由各種圖形對(duì)象,如圖形窗口、圖軸、菜單、按鈕、文本框等構(gòu)建的用戶界面,是人機(jī)交互的有效工具和方法。通過GUIDE可以很方便地設(shè)計(jì)出各種符合要求的圖形用戶界面。用戶通過一定的方法(如鼠標(biāo)或鍵盤)選擇、激活這些圖形對(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ù)的編寫提供了一個(gè)參考框架。FIG文件是一個(gè)二進(jìn)制文件,包含系列化的圖形窗口對(duì)象。所有對(duì)象的屬性都是用戶創(chuàng)建圖形窗口時(shí)保存的屬性。該文件最主要的功能是對(duì)象句柄的保存。M文件包含GUI設(shè)計(jì)、控制函數(shù)及控件的回調(diào)函數(shù),主要用來控制GUI展開時(shí)的各種特征。該文件基本上可以分為GUI初始化和回調(diào)函數(shù)2個(gè)部分,控件的回調(diào)函數(shù)可根據(jù)用戶與GUI的具體交互行為分別調(diào)用。  

3 軟件界面設(shè)計(jì)  

在軟件設(shè)計(jì)時(shí),通過文本編輯框控件來接收用戶輸入的濾波器設(shè)計(jì)指標(biāo)值,考慮到分析濾波器時(shí)輸出的參數(shù)較多,如果用一一對(duì)應(yīng)的文本框來接收輸出的參數(shù)值,則使軟件界面在設(shè)計(jì)中難以布局,并影響了界面的美觀,所以只用一個(gè)文本編輯框控件來實(shí)現(xiàn)多個(gè)參數(shù)的輸出。在濾波器類型選擇控件方面,因?yàn)橹挥?種濾波器來進(jìn)行選擇設(shè)計(jì),所以使用兩個(gè)單選按鈕,以實(shí)現(xiàn)濾波器類型的選擇;在濾波器特性曲線分析和參數(shù)計(jì)算方面,利用圖形界面設(shè)計(jì)工具GUIDE提供的菜單編輯器來設(shè)計(jì)出分析、計(jì)算菜單,并加入相應(yīng)的功能子菜單。繪制輸出濾波器的特性曲線時(shí)使用一個(gè)坐標(biāo)軸來實(shí)現(xiàn)各個(gè)特性曲線的繪制,這樣可以使軟件界面簡潔明了。最后對(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ù)(分母)子菜單。  

4應(yīng)用程序M文件的設(shè)計(jì)  

GUI包含許多可以使軟件終端與用戶界面進(jìn)行交互的用戶界面組件,GUI實(shí)現(xiàn)的任務(wù)之一就是控制組件如何響應(yīng)用戶的行為。Matlab通過創(chuàng)建應(yīng)用程序M文件為GUI控制程序提供一個(gè)框架。所有代碼(包括回調(diào)函數(shù))都包含在應(yīng)用程序M文件中,即完成了圖形界面的設(shè)計(jì)后,應(yīng)用程序設(shè)計(jì)的主要工作是控件回調(diào)函數(shù)的設(shè)計(jì)。下面討論程序設(shè)計(jì)流程及控件回調(diào)函數(shù)的設(shè)計(jì)。  

4.1 程序設(shè)計(jì)流程  

軟件運(yùn)行時(shí),系統(tǒng)首先初始化。接著判斷輸入的濾波器參數(shù)及其類型是否正確,不正確重新輸入,正確即可選擇相應(yīng)的功能菜單,實(shí)現(xiàn)相應(yīng)的功能。程序具體流程圖如圖3所示。  


  
4.2 控件回調(diào)函數(shù)設(shè)計(jì)  

該軟件的控件回調(diào)函數(shù)包括“確定”按鈕控件回調(diào)函數(shù)、“清除”按鈕控件回調(diào)函數(shù)、濾波器類型選擇控件回調(diào)函數(shù)、“分析”菜單下各子菜單功能回調(diào)函數(shù)和“計(jì)算”菜單下各子菜單功能控回調(diào)函數(shù)的設(shè)計(jì)。限于篇幅,僅討論“分析”菜單下各個(gè)菜單功能回調(diào)函數(shù)和“計(jì)算”菜單下各功能回調(diào)函數(shù)的設(shè)計(jì)。  

4.2.1 “分析”菜單下的各子菜單功能回調(diào)函數(shù)設(shè)計(jì)  

在“分析”菜單下應(yīng)包含“幅頻特性”、“相頻特性”、“階躍響應(yīng)”、“脈沖響應(yīng)”、“零極點(diǎn)圖”子菜單,分別用來實(shí)現(xiàn)幅頻特性曲線、相頻特性曲線、階躍響應(yīng)、脈沖響應(yīng)、零極點(diǎn)圖的繪制。其中,“幅頻特性”菜單用來繪制給定參數(shù)的濾波器的幅頻特性曲線,在程序設(shè)計(jì)過程中首先使用Matlab中的axes函數(shù),得到坐標(biāo)軸控件的句柄,以便繪制特性曲線。在得到用戶輸入的設(shè)計(jì)指標(biāo)值后,利用if else語句來判斷用戶所選擇的是哪一種濾波器類型,在階數(shù)和截止頻率的計(jì)算中,利用信號(hào)處理工具箱中的cheblord和cheb2ord函數(shù)來計(jì)算,再用chebyl和theby2函數(shù)來計(jì)算轉(zhuǎn)移函數(shù)的分子、分母,設(shè)計(jì)出用戶所要求的濾波器。在計(jì)算濾波器幅值時(shí),利用freqs函數(shù)計(jì)算出轉(zhuǎn)移函數(shù)的響應(yīng)。在繪制濾波器幅頻特性曲線時(shí),利用plot函數(shù)來完成,即在plot函數(shù)的參數(shù)中設(shè)置相關(guān)值,以完成幅頻特性曲線的繪制。為了更好地觀察到濾波器的設(shè)計(jì)是否達(dá)到相關(guān)的設(shè)計(jì)要求,利用line函數(shù)在坐標(biāo)上標(biāo)識(shí)出通帶最大損耗、阻帶最小損耗等點(diǎn),這樣可以直觀地觀察到所設(shè)計(jì)出的濾波器是否符合用戶提出的要求,其具體程序如下:  





  
在“分析”菜單下“相頻特性”子菜單用來繪制給定參數(shù)的濾波器的相頻特性曲線。相頻特性曲線的在程序設(shè)計(jì)過程與幅頻特性曲線的程序設(shè)計(jì)比較相似,只是在求得幅值后加一相位計(jì)算函數(shù)angle來求相位角。在plot函數(shù)中將縱坐標(biāo)參數(shù)換為求出的相位角變量即可完成相頻特性曲線的繪制。  

對(duì)于“階躍響應(yīng)”回調(diào)函數(shù)的程序設(shè)計(jì),要將計(jì)算出的階躍響應(yīng)繪制在坐標(biāo)軸控件界面上,不能利用信號(hào)處理工具箱中step函數(shù)直接求得。因?yàn)槿粲迷摵瘮?shù)會(huì)使繪制出的階躍響應(yīng)曲線在一個(gè)新打開的窗口上,而軟件在界面設(shè)計(jì)時(shí),所求濾波器的所有特性曲線都共用一個(gè)坐標(biāo)軸來繪制;在程序設(shè)計(jì)時(shí)利用tf函數(shù)將計(jì)算出的濾波器轉(zhuǎn)移函數(shù)的分子、分母系數(shù)生成轉(zhuǎn)移函數(shù),再利用階躍響應(yīng)函數(shù)step對(duì)求出的轉(zhuǎn)移函數(shù)變量求解出階躍響應(yīng)值;最后利用plot函數(shù)繪制出所求濾波器的階躍響應(yīng)曲線,這樣即可完成階躍響應(yīng)曲線在坐標(biāo)軸上的繪制。  

“脈沖響應(yīng)”回調(diào)函數(shù)的程序設(shè)計(jì)與“階躍響應(yīng)”回調(diào)函數(shù)的程序設(shè)計(jì)十分相近,只是將上述程序中的階躍響應(yīng)函數(shù)step換成脈沖響應(yīng)函數(shù)impluse,并在對(duì)應(yīng)的時(shí)間做相應(yīng)的調(diào)整即可完成脈沖響應(yīng)回調(diào)函數(shù)的編寫。  

“零極點(diǎn)圖”回調(diào)函數(shù)的程序設(shè)計(jì)與以上兩個(gè)子菜單的回調(diào)函數(shù)設(shè)計(jì)大致相同,程序的設(shè)計(jì)結(jié)構(gòu)與前面幾個(gè)菜單的回調(diào)函數(shù)的設(shè)計(jì)基本一致。在求得轉(zhuǎn)移函數(shù)的分子、分母系數(shù)后,利用tf2zp函數(shù)求出所設(shè)計(jì)出的濾波器的零點(diǎn)、極點(diǎn)、增益,再用real函數(shù)和imag函數(shù)求出零點(diǎn)、極點(diǎn)的實(shí)部和虛部,最后利用繪圖函數(shù)plot繪制出系統(tǒng)的零極點(diǎn)圖。  

4.2.2 “計(jì)算”菜單下各功能回調(diào)函數(shù)的編寫  

“計(jì)算”菜單下包含了“階數(shù)”、“零點(diǎn)”、“極點(diǎn)”、“增益”、“轉(zhuǎn)移函數(shù)分子系數(shù)”。其中,“轉(zhuǎn)移函數(shù)分母系數(shù)”菜單分別用來計(jì)算所設(shè)計(jì)的濾波器階數(shù)、零點(diǎn)、極點(diǎn)、增益、轉(zhuǎn)移函數(shù)分子系數(shù)、轉(zhuǎn)移函數(shù)分母系數(shù);“階數(shù)”菜單用來計(jì)算所輸入?yún)?shù)濾波器的階數(shù),并將它輸出到輸出參數(shù)框。在程序的設(shè)計(jì)中,首先判斷用戶所選擇濾波器的類型,然后將計(jì)算出的參數(shù)用set函數(shù)輸出到輸出文本區(qū)。因?yàn)闃O點(diǎn)、零點(diǎn)值可能為復(fù)數(shù),而文本編輯框的數(shù)據(jù)類型為數(shù)值型,所以在輸出時(shí),利用num2str函數(shù)將得到的值進(jìn)行格式轉(zhuǎn)化,以防止出現(xiàn)復(fù)數(shù)值只能顯示出實(shí)部來。“階數(shù)”菜單程序如下:  


  
“階數(shù)”、“零點(diǎn)”、“極點(diǎn)”、“增益”、“轉(zhuǎn)移函數(shù)分子系數(shù)”、“轉(zhuǎn)移函數(shù)分母系數(shù)”子菜單中回調(diào)函數(shù)的程序設(shè)計(jì)基本一樣,只是在輸出值時(shí)參數(shù)名稱不同。將階數(shù)子菜單程序中set語句的“n”換成相應(yīng)菜單對(duì)應(yīng)的變量名即可實(shí)現(xiàn)相應(yīng)的功能。在完成了各個(gè)控件的回調(diào)函數(shù)編寫后,對(duì)軟件的功能進(jìn)行逐一調(diào)試,以保證每項(xiàng)功能都能正確響應(yīng)用戶的操作。  

4.3 代碼優(yōu)化  

在調(diào)試完軟件的各項(xiàng)功能后,應(yīng)對(duì)所設(shè)計(jì)的軟件代碼進(jìn)行優(yōu)化。打開軟件中使用次數(shù)比較多的程序段,利用Matlab中的程序執(zhí)行耗時(shí)剖析功能函數(shù)profile指令對(duì)程序中執(zhí)行耗時(shí)情況進(jìn)行分析,之后進(jìn)行改進(jìn),以提高執(zhí)行效率。打開設(shè)計(jì)出的軟件主程序M文件,對(duì)已經(jīng)優(yōu)化過且使用次數(shù)較多的程序段,應(yīng)另外編寫成函數(shù)形式,供需要的控件回調(diào)函數(shù)調(diào)用,在需要調(diào)用的相關(guān)控件回調(diào)函數(shù)下只需要填寫相應(yīng)的函數(shù)名稱就能實(shí)現(xiàn)其相應(yīng)的功能。  

對(duì)于在界面設(shè)計(jì)時(shí)沒有用到的控件,對(duì)應(yīng)生成的代碼可以直截刪去。最后在Matlab環(huán)境下,運(yùn)行該程序,即可實(shí)現(xiàn)模擬帶通濾波器的設(shè)計(jì)和性能分析。利用該軟件對(duì)模擬帶通濾波器進(jìn)行了分析,其部分結(jié)果如圖4、圖5所示。  


  
圖4為切比雪夫2型模擬帶通濾波器的幅頻特性和極點(diǎn)分析計(jì)算結(jié)果;圖5為切比雪夫1型模擬帶通濾波器零極點(diǎn)分析計(jì)算結(jié)果。分析結(jié)果表明,該軟件有助于模擬帶通濾波器的分析設(shè)計(jì)。  


  
5 結(jié) 語  

該文在分析模擬濾波器設(shè)計(jì)理論的基礎(chǔ)上,設(shè)計(jì)了基于Matlab GUI的模擬帶通濾波器設(shè)計(jì)軟件。利用該軟件可以分析濾波器的幅頻特性、相頻特性和零,極點(diǎn)分布特性等。如何將該課題的研究與實(shí)際的模擬濾波器設(shè)計(jì)整合在一起,將是下一步面臨的重要工作。同時(shí)也可利用該設(shè)計(jì)方法設(shè)計(jì)功能更大的濾波器分析設(shè)計(jì)軟件,使該軟件具有更大的實(shí)用價(jià)值。
本文地址:http://www.qingdxww.cn/thread-23206-1-1.html     【打印本頁】

本站部分文章為轉(zhuǎn)載或網(wǎng)友發(fā)布,目的在于傳遞和分享信息,并不代表本網(wǎng)贊同其觀點(diǎn)和對(duì)其真實(shí)性負(fù)責(zé);文章版權(quán)歸原作者及原出處所有,如涉及作品內(nèi)容、版權(quán)和其它問題,我們將根據(jù)著作權(quán)人的要求,第一時(shí)間更正或刪除。
您需要登錄后才可以發(fā)表評(píng)論 登錄 | 立即注冊(cè)

廠商推薦

  • Microchip視頻專區(qū)
  • 你仿真過嗎?使用免費(fèi)的MPLAB Mindi模擬仿真器降低設(shè)計(jì)風(fēng)險(xiǎn)
  • 想要避免發(fā)生災(zāi)難,就用MPLAB SiC電源仿真器!
  • 更佳設(shè)計(jì)的解決方案——Microchip模擬開發(fā)生態(tài)系統(tǒng)
  • 深度體驗(yàn)Microchip自動(dòng)輔助駕駛應(yīng)用方案——2025巡展開啟報(bào)名!
  • 貿(mào)澤電子(Mouser)專區(qū)

相關(guān)在線工具

相關(guān)視頻

關(guān)于我們  -  服務(wù)條款  -  使用指南  -  站點(diǎn)地圖  -  友情鏈接  -  聯(lián)系我們
電子工程網(wǎng) © 版權(quán)所有   京ICP備16069177號(hào) | 京公網(wǎng)安備11010502021702
快速回復(fù) 返回頂部 返回列表
主站蜘蛛池模板: 黄色高清视频网站 | qvod经典视频在线播放 | 久久久久久免费精品视频 | 免费在线日韩 | 免费一级毛片在线播放视频 | 在线观看国产精品入口 | 性欧美在线 | 日本福利片国产午夜久久 | 亚洲精品欧美日本中文字幕 | 1024你懂的国产精品 | 玖玖玖免费观看视频 | 在线视频亚洲欧美 | 日韩欧美中文字幕在线播放 | 一级片在线视频 | 热久久综合网 | 岛国在线免费 | 五月开心六月伊人色婷婷 | 国产欧美精品一区二区三区 | 亚洲一区二区三区精品视频 | 免费看麻豆视频 | 天天操天天干天天舔 | 亚洲第一综合网站 | 成人综合影院 | 久久综合九九 | 国产欧美日韩精品第一区 | 欧美视频二区 | www.久久99| 亚洲韩精品欧美一区二区三区 | 日本不卡在线一区二区三区视频 | 国产情侣真实露脸在线最新 | 日本在线视频二区 | 青青青久97在线观看香蕉 | 91啦丨porny丨蝌蚪 | 免费毛片视频网站 | 天天操天天干视频 | 九九热免费视频 | 特级黄aaaaaaaaa毛片 | 四虎影院在线观看网站 | 久久嫩草影院免费看夜色 | 国产乱了真实在线观看 | 在线观看亚洲欧美 |