基于MATLABGUI信號與系統(tǒng)教學(xué)軟件設(shè)計說明_第1頁
基于MATLABGUI信號與系統(tǒng)教學(xué)軟件設(shè)計說明_第2頁
基于MATLABGUI信號與系統(tǒng)教學(xué)軟件設(shè)計說明_第3頁
基于MATLABGUI信號與系統(tǒng)教學(xué)軟件設(shè)計說明_第4頁
基于MATLABGUI信號與系統(tǒng)教學(xué)軟件設(shè)計說明_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、 PAGE28 / NUMPAGES29目 錄 TOC o 1-3 h z u HYPERLINK l _Toc3570198461 引言 PAGEREF _Toc357019846 h 1HYPERLINK l _Toc3570198471.1論文寫作背景 PAGEREF _Toc357019847 h 1HYPERLINK l _Toc3570198481.2研究問題的提出 PAGEREF _Toc357019848 h 1HYPERLINK l _Toc3570198491.3研究問題的解決方案 PAGEREF _Toc357019849 h 1HYPERLINK l _Toc35701

2、98502 MATLAB軟件簡介 PAGEREF _Toc357019850 h 2HYPERLINK l _Toc3570198512.1 MATLAB發(fā)展過程 PAGEREF _Toc357019851 h 2HYPERLINK l _Toc3570198522.2 MATLAB入門與其結(jié)構(gòu) PAGEREF _Toc357019852 h 3HYPERLINK l _Toc3570198532.3 MATLAB在信號與系統(tǒng)中的應(yīng)用 PAGEREF _Toc357019853 h 4HYPERLINK l _Toc3570198543 信號與系統(tǒng)知識結(jié)構(gòu) PAGEREF _Toc357019

3、854 h 4HYPERLINK l _Toc3570198553.1信號與系統(tǒng)課程簡介 PAGEREF _Toc357019855 h 4HYPERLINK l _Toc3570198563.2基于教學(xué)軟件中有關(guān)信號與系統(tǒng)的知識結(jié)構(gòu) PAGEREF _Toc357019856 h 5HYPERLINK l _Toc3570198573.2.1 信號的頻域分析 PAGEREF _Toc357019857 h 5HYPERLINK l _Toc3570198583.2.2 系統(tǒng)的頻域分析 PAGEREF _Toc357019858 h 7HYPERLINK l _Toc3570198593.2.

4、3教學(xué)軟件中相關(guān)知識結(jié)構(gòu) PAGEREF _Toc357019859 h 9HYPERLINK l _Toc3570198604 GUI界面的創(chuàng)建與應(yīng)用 PAGEREF _Toc357019860 h 9HYPERLINK l _Toc3570198614.1 GUI界面的基本知識 PAGEREF _Toc357019861 h 9HYPERLINK l _Toc3570198624.2 信號與系統(tǒng)教學(xué)軟件GUI設(shè)計 PAGEREF _Toc357019862 h 11HYPERLINK l _Toc3570198634.2.1GUI主界面的設(shè)計 PAGEREF _Toc357019863 h

5、 11HYPERLINK l _Toc3570198644.2.2周期信號頻域分析 PAGEREF _Toc357019864 h 12HYPERLINK l _Toc3570198654.2.3非周期信號頻域分析 PAGEREF _Toc357019865 h 14HYPERLINK l _Toc3570198664.2.4系統(tǒng)的頻率響應(yīng) PAGEREF _Toc357019866 h 23HYPERLINK l _Toc357019867結(jié)論 PAGEREF _Toc357019867 h 25HYPERLINK l _Toc357019868參考文獻(xiàn) PAGEREF _Toc357019

6、868 h 26HYPERLINK l _Toc357019869致 PAGEREF _Toc357019869 h 271 引言1.1論文寫作背景隨著社會科技的高速發(fā)展以與計算機網(wǎng)絡(luò)的普與,對信息應(yīng)用的研究就變得非常重要,而其中對信號波形的模擬可以方便研究人員進(jìn)行科學(xué)研究?!靶盘柵c系統(tǒng)”課程的特點是概念抽象,數(shù)學(xué)運算量大、公式和理論推導(dǎo)相對較多,因此一直處于教難、學(xué)更難的境況中,這就更加需要通過實驗來幫助學(xué)生理解這些抽象概念。學(xué)校開設(shè)的傳統(tǒng)實驗均在實驗室的硬件實驗設(shè)備上完成,設(shè)備的使用存在空間、時間上的局限性,另外,對儀器操作不當(dāng)?shù)纫蛩貙?dǎo)致無法看到正確的波形。而用軟件對信號波形進(jìn)行仿真有著界

7、面可視性強,操作簡單方便;便于數(shù)據(jù)修改,文件保存,實驗效率高,實驗容豐富,結(jié)果直觀易懂,便于分析的優(yōu)點,同時可以讓學(xué)生對相關(guān)課程產(chǎn)生興趣,所以使用軟件有必要而且急為迫切。1.2研究問題的提出在學(xué)習(xí)“信號與系統(tǒng)”這門課程時,由于該課程對數(shù)學(xué)要求較高,理論結(jié)果往往來源于復(fù)雜的數(shù)學(xué)運算與推導(dǎo),這就導(dǎo)致學(xué)生將大量的時間用于進(jìn)行手工數(shù)學(xué)運算(如微分、積分、方程求解、多項式求根等),而未真正理解分析結(jié)果在信號處理中的實際應(yīng)用。因此學(xué)生在學(xué)習(xí)過程中較被動,特別是在系統(tǒng)設(shè)計方面,自己設(shè)計的系統(tǒng)經(jīng)過復(fù)雜的手工數(shù)學(xué)計算后,往往不能直觀地得到系統(tǒng)的可視化測試結(jié)果,一定程度上制約了學(xué)生學(xué)習(xí)的主動性和創(chuàng)造性,達(dá)不到培養(yǎng)

8、綜合能力的目的。因此,該課程迫切需要進(jìn)行教學(xué)方法和教學(xué)手段的改革,即改革傳統(tǒng)的單一教學(xué)模式,將計算機多媒體教學(xué)引入到“信號與系統(tǒng)”課程的教學(xué)中來,進(jìn)行“信號與系統(tǒng)”計算機仿真立體化教材建設(shè),實現(xiàn)在實驗環(huán)境中,以計算機為輔助教學(xué)手段,用信號分析軟件幫助學(xué)生完成數(shù)值計算、信號與系統(tǒng)分析的可視化建模與仿真調(diào)試,培養(yǎng)學(xué)生主動獲取知識和獨立解決問題的能力,為學(xué)習(xí)后續(xù)專業(yè)課打下堅實的基礎(chǔ)。1.3研究問題的解決方案MATLAB 的出現(xiàn)給“信號與系統(tǒng)”課程的計算機輔助教學(xué)與計算機仿真帶來了福音,使利用計算機輔助學(xué)生完成“信號與系統(tǒng)”課程的數(shù)值計算、信號與系統(tǒng)分析的可視化建模與仿真調(diào)試成為可能,該軟件包含的信號

9、處理工具箱更是學(xué)習(xí)和應(yīng)用信號與系統(tǒng)分析方法和原理的有力工具。本教學(xué)軟件就是基于MATLAB軟件中的GUI即圖形用戶界面(GUI是由窗口、按鍵、菜單、文字說明等對象構(gòu)成的一個用戶界面,用戶通過一定的方法,選擇、激活這些圖形對象,實現(xiàn)計算、繪圖等功能)模塊進(jìn)行的設(shè)計。通過簡單的操作可以直觀的了解到信號在時域、頻域的變換以與運算, 使同學(xué)能夠?qū)Ρ菊n程的學(xué)習(xí)產(chǎn)生興趣。2 MATLAB軟件簡介2.1 MATLAB發(fā)展過程MATLAB軟件是由美國Mathworks公司推出的用于數(shù)值計算和圖形處理的科學(xué)計算系統(tǒng)環(huán)境。MATLAB是英文MATrix LABoratory(短陣實驗室)的縮寫。它的第1版(DoS

10、版本1.0)發(fā)行于1984年,現(xiàn)在最新的版本集中了日常數(shù)學(xué)處理中的各種功能,包括高效的數(shù)值計算、矩陣運算、信號處理和圖形生成等功能。在MATLAB環(huán)境下,用戶可以集成地進(jìn)行程序設(shè)計、數(shù)值計算、圖形繪制、輸入輸出、文件管理等各項操作。 MATLAB提供了一個人機交互的數(shù)學(xué)系統(tǒng)環(huán)境,該系統(tǒng)的基本數(shù)據(jù)結(jié)構(gòu)是矩陣,在生成矩陣對象時,不要求作明確的維數(shù)說明。與利用c語言或FORTRAN語言作數(shù)值計算的程序設(shè)計相比,利用MATLAB可以節(jié)省大量的編程時間。在美國的一些大學(xué)里,MATLAB正在成為對數(shù)值線性代數(shù)以與其他一些高等應(yīng)用數(shù)學(xué)課程進(jìn)行輔助教學(xué)的有益工具。在工程技術(shù)界,MATLAB也被用來解決一些實際

11、課題和數(shù)學(xué)模型問題。典型的應(yīng)用包括數(shù)值計算、算法預(yù)設(shè)計與驗證,以與一些特殊的短陣計算應(yīng)用,如自動控制理論、統(tǒng)計、數(shù)字信號處理(時間序列分拆)等。 MATLAB系統(tǒng)最初是由CIeve Moler用FORTRAN語言設(shè)計的,有關(guān)短陣的算法來自LINPACK和EIsPACK課題的研究成果;現(xiàn)在的MATLAB程序是Math Works公司用 C語言開發(fā)的,第一版由Steve Bangert主持開發(fā)編譯解釋程序,SteveKleiman完成圖形功能的設(shè)計,John Little和Cleve Moler主持開發(fā)了各類數(shù)學(xué)分分析的子模塊,撰寫用戶指南和大部分的M文件。自從第一版發(fā)行以來,已有眾多的科技工作者

12、加入到MATLAB的開發(fā)隊伍中,并為形成今天的MATLAB系統(tǒng)做出了巨大的貢獻(xiàn)。 MATLAB以商品形式出現(xiàn)后,僅短短幾年,就以其良好的開放性和運行的可靠性,使原先控制領(lǐng)域里的封閉式軟件包(如英國的UMIST,瑞典的LUND和SIMNON,德國的KEDDC)紛紛淘汰,而改以MATLAB為平臺加以重建。到九十年代初期,在國際上30多個數(shù)學(xué)類科技應(yīng)用軟件中,MATLAB在數(shù)值計算方面獨占鰲頭。1993年Math Works公司從加拿大滑鐵盧大學(xué)購得Maple的使用權(quán),以Maple為“引擎”開發(fā)了Symbolic Math Toolbox 1.0。Math Works公司此舉加快結(jié)束了國際上數(shù)值計算

13、、符號計算孰優(yōu)孰劣的長期爭論,促成了兩種計算的互補發(fā)展新時代??梢钥闯鯩ATLAB是一個功能十分強大的系統(tǒng),是集數(shù)值計算、圖形管理、程序開發(fā)為一體的環(huán)境。除此之外,MATLAB還具有很強的功能擴展能力,與它的主系統(tǒng)一起,可以配備各種各樣的工具箱,以完成一些特定的任務(wù)。用戶可以根據(jù)自己的工作任務(wù),開發(fā)自己的工具箱。在歐美大學(xué)里,諸如應(yīng)用代數(shù)、數(shù)理統(tǒng)計、自動控制、數(shù)字信號處理、模擬與數(shù)字通信、時間序列分析、動態(tài)系統(tǒng)仿真等課程的教科書都把MATLAB作為容。顯然,今天的MATLAB 已經(jīng)不再是僅僅解決矩陣與數(shù)值計算的軟件,更是一種集數(shù)值與符號運算、數(shù)據(jù)可視化圖形表示與圖形界面設(shè)計、程序設(shè)計、仿真等多

14、種功能于一體的集成軟件。觀察由歐美引進(jìn)的新版教材,MATLAB已經(jīng)成為線性代數(shù)、數(shù)值分析計算、數(shù)學(xué)建模、信號與系統(tǒng)分析、自動控制、數(shù)字信號處理、通信系統(tǒng)仿真等一批課程的基本教學(xué)工具。而在國,隨著MATLAB 在我國高校的推廣和應(yīng)用,MATLAB 已經(jīng)漸入人心。2.2 MATLAB入門與其結(jié)構(gòu)MTALAB系統(tǒng)由五個主要部分組成,下面分別加以介紹。 (1)MATALB語言體系 MATLAB是高層次的矩陣數(shù)組語言、具有條件控制、函數(shù)調(diào)用、數(shù)據(jù)結(jié)構(gòu)、輸入輸出、面向?qū)ο蟮瘸绦蛘Z言特性。利用它既可以進(jìn)行小規(guī)模編程,完成算法設(shè)計和算法實驗的基本任務(wù),也可以進(jìn)行大規(guī)模編程,開發(fā)復(fù)雜的應(yīng)用程序。 (2)MATL

15、AB工作環(huán)境這是對MATLAB提供給用戶使用的管理功能的總稱,包括管理工作空間中的變量數(shù)據(jù)輸入輸出的方式和方法,以與開發(fā)、調(diào)試、管理M文件的各種工具。 (3)圖形對象系統(tǒng)是MATLAB圖形系統(tǒng)的基礎(chǔ),包括完成2D和3D數(shù)據(jù)圖示、圖像處理、動畫生成、圖形顯示等功能的高層MATLAB命令,也包括用戶對圖形圖像等對象進(jìn)行控制的底層MATLAB命令,與開發(fā)GUI應(yīng)用程序的各種工具。 (4)MATLAB數(shù)學(xué)函數(shù)庫是對MATLAB使用的各種數(shù)學(xué)算法的總稱包括各種初等函數(shù)的算法,也包括矩陣運算、矩陣分析等高層次數(shù)學(xué)算法。 (5)MATLAB應(yīng)用程序接口(API),是MATLAB為用戶提供的一個函數(shù)庫,使得用

16、戶能夠在MATLAB環(huán)境中使用C程序或FORTRAN程序。2.3 MATLAB在信號與系統(tǒng)中的應(yīng)用當(dāng)今社會已經(jīng)進(jìn)入信息時代,人們每天都要接觸各種各樣載有信息的信號形式,如接收廣播、電視信號、使用傳送聲音信號等,其目的是為了把不同形式的消息借助一定形式的信號進(jìn)行表達(dá)或傳遞。因此,通常把人們得到的消息、情報或知識稱為信息。而傳輸信息的載體或者說信息的具體表現(xiàn)形式稱作信號。連續(xù)時間信號分析和離散時間信號分析是信號處理的基礎(chǔ)。對于線性系統(tǒng)中的信號處理無論是連續(xù)系統(tǒng)還是離散系統(tǒng)其所處理的信號都可分解為一系列基本信號分量的線性組合;而線性系統(tǒng)對任一輸入信號的響應(yīng)是系統(tǒng)對許多不同基本信號分量分別作用產(chǎn)生相應(yīng)

17、的疊加;不同信號分解方式會導(dǎo)致不同系統(tǒng)分析方法。用MATLAB表示和分析連續(xù)系統(tǒng)和線性時不變連續(xù)系統(tǒng),嚴(yán)格來說,只有用符號推理的方法才能分析連續(xù)系統(tǒng),用數(shù)值方法是不能表示連續(xù)信號的,因為它給出的是各個樣本點的數(shù)據(jù)。只有當(dāng)樣本點取得很密集時才可看成連續(xù)信號,所謂密集,是相對于信號變化的快慢而言。3 信號與系統(tǒng)知識結(jié)構(gòu)3.1信號與系統(tǒng)課程簡介“信號與系統(tǒng)”是與通信、信息與自動控制等專業(yè)有關(guān)的一門基礎(chǔ)學(xué)科。它的主要任務(wù)是:(1)在“時間域”與“頻率域”下研究時間函數(shù)x(t)與離散序列x(n)的各種表示方式,(2)在“時間域”與“頻率域”下研究系統(tǒng)特性的各種描述方式,(3)在“時間域”與“頻率域”下研

18、究激勵信號通過系統(tǒng)時所獲得的響應(yīng)。時間函數(shù)x(t)與自變量代表時間的離散序列x(n)是信號的時域的基本表示方式。此外,無論是連續(xù)信號還是離散序列,都可以在頻域中用它的傅里葉變換(即頻譜函數(shù))表示,也可以在“復(fù)頻域”中用相應(yīng)的拉普拉斯變換或z變換表示。與此對應(yīng),連續(xù)或離散系統(tǒng)的特性可在時域中用微分方程或差分方程描述,也可分別用沖激響應(yīng)h(t)或h(n)描述;或頻域中用頻率響應(yīng)H(j)、H(ejw)或傳遞函數(shù)H(s)、H(z)描述。研究在給定的激勵下通過系統(tǒng)的響應(yīng),可以在時域下用解微分方程或差分方程的方法,或通過激勵信號與沖激響應(yīng)的卷積進(jìn)行,也可以在頻域下,分別將連續(xù)信號或離散序列的傅里葉變換、拉

19、普拉斯變換或z變換與系統(tǒng)的頻率響應(yīng)或傳遞函數(shù)相乘,得出響應(yīng)的傅里葉變換、拉普拉斯變換或z變換,再進(jìn)行反變換。就得到了以時間函數(shù)或離散序列表示的響應(yīng)。課程從概念上可以區(qū)分為信號分解和系統(tǒng)分析兩部分,但二者又是密切相關(guān)的,根據(jù)連續(xù)信號分解為不同的基本信號,對應(yīng)推導(dǎo)出線性系統(tǒng)的分析方法分別為:時域分析、頻域分析和復(fù)頻域分析;離散信號分解和系統(tǒng)分析也是類似的過程。圍限定于確定性信號(非隨機信號)經(jīng)線性、時不變系統(tǒng)傳輸與處理的基本理論。本課程涉與的數(shù)學(xué)容包括微分方程、差分方程、級數(shù)、復(fù)變函數(shù)、線性代數(shù)等。本課程的主要容包括連續(xù)系統(tǒng)的時域分析、傅里葉變換、拉普拉斯變換、連續(xù)時間系統(tǒng)的s域分析、離散時間系統(tǒng)

20、的時域分析、z變換、離散時間系統(tǒng)的z域分析等。3.2基于教學(xué)軟件中有關(guān)信號與系統(tǒng)的知識結(jié)構(gòu)3.2.1 信號的頻域分析1.連續(xù)時間信號頻域分析(1)連續(xù)時間周期信號的頻域分析周期信號可以表示為不同頻率正弦分量的線性組合。從信號分析的角度,將信號表示為不同頻率正弦分量的線性組合,為不同信號之間進(jìn)行比較提供了途徑;從系統(tǒng)分析角度,已知單頻正弦信號激勵下的響應(yīng),利用疊加特性可求得多個不同頻率正弦信號同時激勵下的總響應(yīng)與每個正弦分量通過系統(tǒng)后的變化。周期信號 展開為傅里葉級數(shù)時,應(yīng)滿足狄里赫利(Dirichlet條件),即:(a) 在一個周期絕對可積,即滿足 。(b) 在一個周期只有有限個不連續(xù)點。(c

21、) 在一個周期只有有限個極大值和極小值。在實際表示中,周期信號可以分解為不同頻率的虛指數(shù)信號: 其中其中, 兩項的基波頻率為f0,兩項合起來稱為信號的基波分量;的基波頻率為2f0,兩項合起來稱為信號的2次諧波分量;的基波頻率為Nf0,兩項合起來稱為信號的N次諧波分量;(2)連續(xù)時間非周期信號的頻域分析連續(xù)周期信號 可以表達(dá)為一系列虛指數(shù)信號 的加權(quán)疊加,通過周期信號的Fourier級數(shù)建立了周期信號時域與頻域之間的對應(yīng)關(guān)系。同理,連續(xù)非周期信號可以表達(dá)為虛指數(shù)信號的加權(quán)疊加,其通過非周期信號的Fourier變換建立了非周期信號時域與頻域之間的對應(yīng)關(guān)系。(3-1)(3-2)其中,式(3-2)稱為

22、非周期信號的連續(xù)時間Fourier變換(CTFT),稱為非周期信號的頻譜(函數(shù))。式(3-1)稱為的Fourier反變換,其物理意義是非周期信號可以表示為無數(shù)個頻率為 ,復(fù)振幅X(jw)/2dw的復(fù)指數(shù)信號的線性組合。不同的非周期信號都可以表示為式(3-1)的形式,所不同的只是復(fù)指數(shù)信號前面的系數(shù)不同。2.離散信號頻域分析(1)離散周期信號的頻域分析由上可得:離散時間周期信號和非周期信號,也可以表示為相應(yīng)的虛指數(shù)序列,從而引入離散周期信號的離散Fourier級數(shù)(DFS),以與離散非周期信號的離散時間Fourier變換(DTFT)。根據(jù)Fourier級數(shù)理論,周期為N的離散時間周期信號,可以表

23、示為N項虛指數(shù)序列的線性組合,即 (3-3)式(3-3)稱為離散周期信號的離散Fourier級數(shù)(DFS)表示,其中,加權(quán)系數(shù)稱為離散周期信號的DFS系數(shù)。由于虛指數(shù)序列具有正交特性,根據(jù)式(3-3)求出DFS系數(shù)為 (3-4)也是周期為N的離散序列,稱為離散周期信號的頻譜。(2)離散非周期信號的頻域分析根據(jù)離散序列的離散時間Fourier變換(DTFT)的理論,滿足一定約束條件的離散非周期序列可以表示為虛指數(shù)序列的線性組合,即 (3-5)利用虛指數(shù)序列的正交性,可得式(3-5)中加權(quán)系數(shù)為 (3-6)為非周期序列的頻譜。式(3-6)稱為序列的離散時間Fourier變換(簡稱DTFT),而式(

24、3-5)稱為離散時間Fourier反變換(簡稱IDTFT)。3.2.2 系統(tǒng)的頻域分析1.連續(xù)時間系統(tǒng)頻域分析 連續(xù)系統(tǒng)的頻率響應(yīng)定義為: (3-7)若n階連續(xù)LTI系統(tǒng)的微分方程為 (3-8)在零狀態(tài)響應(yīng)條件下,y(t)=yzs(t)。對式(3-8)兩邊進(jìn)行Fourier變換,經(jīng)過整理可得輸出信號的頻譜函數(shù)與輸入信號的頻譜函數(shù)之比,并以符號表示,即 (3-9)式(3-9)表明,為系統(tǒng)在零狀態(tài)下輸出響應(yīng)與輸入激勵的頻譜函數(shù)之比,稱為系統(tǒng)的頻率響應(yīng)。在系統(tǒng)頻域分析中,系統(tǒng)頻率響應(yīng)起著極為重要的作用,它表征了系統(tǒng)的頻率特性,是系統(tǒng)的頻域描述。從式(3-9)可以看出與系統(tǒng)的輸入與輸出無關(guān),而只與系統(tǒng)

25、本身特性有關(guān)。2.離散時間信號頻域分析離散系統(tǒng)的頻率響應(yīng)定義為: (3-10)若n階離散LTI系統(tǒng)的差分方程為 (3-11)在零狀態(tài)響應(yīng)條件下,yk=yzsk。對式(3-11)兩邊進(jìn)行Fourier變換,經(jīng)過整理可得輸出序列的頻譜函數(shù)與輸入序列的頻譜函數(shù)之比,并以符號表示,即 (3-12) 式(3-12)表明,為系統(tǒng)在零狀態(tài)下輸出序列與輸入激勵的頻譜函數(shù)之比,稱為離散系統(tǒng)的頻率響應(yīng)。. 在離散系統(tǒng)頻域分析中,系統(tǒng)頻率響應(yīng)起著極為重要的作用,它表征了系統(tǒng)的頻率特性,是系統(tǒng)特性的頻域描述。從式(3-12)可以看出與系統(tǒng)的輸入與輸出無關(guān),而只與系統(tǒng)本身特性有關(guān)。 3.2.3教學(xué)軟件中相關(guān)知識結(jié)構(gòu)圖3

26、-1 知識結(jié)構(gòu)(1)圖3-2知識結(jié)構(gòu)(2)4 GUI界面的創(chuàng)建與應(yīng)用4.1GUI界面的基本知識圖形用戶界面,簡稱GUI,是英文Graphic User Interface的縮寫。其創(chuàng)建方法是:單擊菜單FileNewGUI或者在命令窗口單擊 (GUIDE),彈出如下圖3-1所示的對話框,在Create New GUI下選擇Blank GUI(Default),還可以選擇文件存儲路徑,然后點擊OK,則會創(chuàng)建出一個新的界面如圖4-2所示。圖4-1 GUI的創(chuàng)建圖4-2 創(chuàng)建后的GUI界面當(dāng)用戶在GUIDE中打開一個GUI時,該GUI將顯示在Layout編輯器中,Layout編輯器是所有GUIDE工具

27、的控制面版。用戶可以使用鼠標(biāo)拖動模版左邊的控件如圖4-3(按鈕、坐標(biāo)軸、單選按鈕等)到中間的布局區(qū)域。圖4-3控件、按鈕最后在相應(yīng)的控件里填上所要執(zhí)行程的代碼,點擊(Run)按鈕,便可實現(xiàn)程序的運行。4.2信號與系統(tǒng)教學(xué)軟件GUI設(shè)計本軟件的設(shè)計是基于MATLAB中GUI(圖形用戶界面)而成的,而其目的是為了作為“信號與系統(tǒng)”一種教學(xué)軟件使同學(xué)在面對“信號與系統(tǒng)”這門課程量的公式以與概念時,不會產(chǎn)生枯燥乏味的情況。本設(shè)計主要針對“信號與系統(tǒng)”中的頻域部分,對信號進(jìn)行頻域的分析,以與一些典型的非周期信號的變化過程、幅度調(diào)制、仿真波形等。4.2.1GUI主界面的設(shè)計如圖4-4所示,本界面設(shè)計用到的

28、控件有Static Text、Push Button、Axes等。圖4-4 軟件主界面其中在Axes上顯示圖片所用的代碼如下:axes(handles.axes1);X=imread(bttc.jpg);imshow(X);axis imageoff接著選擇Menu Editor按鈕設(shè)計編輯菜單如下圖4-5所示圖4-5 菜單設(shè)計界面4.2.2周期信號頻域分析(1)進(jìn)行信號分析中的周期信號界面設(shè)計,如下圖4-6所示:圖4-6周期信號界面(2)在連續(xù)時間周期信號Fourier級數(shù)信號中主要容為:對周期方波信號的分解與合成,與對矩形信號、三角信號、方波信號進(jìn)行頻譜分析。如下圖4-7所示是對周期方波信

29、號的分解與合成。圖4-7周期方波信號的分解與合成該設(shè)計所需的控件有Push Button、Axes、Static Text、Edit等;用戶可以跟據(jù)自己需求,對該周期信號中的最高諧波次數(shù)Nf、幅度M進(jìn)行設(shè)值,以方便觀察該信號的分解與合成過程。其中運行代碼如下所示:function pushbutton1_Callback(hObject, eventdata, handles)Nf= str2num(get(handles.edit1,string);M = str2num(get(handles.edit2,String);t=0:0.01:2*pi; x=zeros(Nf,max(size

30、(t);%預(yù)分配數(shù)組、矩陣的存儲空間,以加快運算速度y=zeros(1,max(size(t);for W=1:2:Nf; %起始值:步長:終止值x1=M*sin(W*t)/W; %各次諧波 x(W,:)=x(W,:)+x1; %各次諧波分別存在矩陣x的相應(yīng)行endaxes(handles.axes1) plot(t,x(1:Nf,:);grid onxlabel(t);ylabel(y(t);for W=1:2:Nf;y=y+x(W,:); %各次諧波疊加endaxes(handles.axes2) plot(t,y)grid onxlabel(t);ylabel(y(t);4.2.3非周期

31、信號頻域分析界面如下圖4-8所示:圖4-8 非周期信號的頻譜分析在連續(xù)時間非周期信號的頻域分析界面下,可以進(jìn)行典型信號讀取、以與信號的幅度調(diào)制、仿真波形等操作,使學(xué)習(xí)者對非周期信號的頻域變換了解得更深刻。其中典型信號非周期頻譜分析,如圖4-9所示,列舉了直流信號、單邊指數(shù)信號、單位階躍信號、單位沖激信號、門函數(shù)信號五種常見的信號,讓同學(xué)可以看到這五種信號的時域波形,與其對應(yīng)頻域的變化。圖4-9 典型非周期信號頻譜分析圖4-10 直流信號頻譜分析相應(yīng)代碼如下:t=-5:0.01:5;f=1; %幅值axes(handles.axes1) plot(t,f,b); %顏色axis(-5 5 0 2

32、)xlabel(時間(t));ylabel(幅值(f));grid onaxes(handles.axes2) line(0 0,0 2*pi)% 確定兩個坐標(biāo)點axis(-5 5 0 8)grid on圖4-11 單邊指數(shù)信號頻譜分析代碼如下:R=0.02;t=-5:R:5;k=1;f=exp(-1*t*k).*t=0;W1=2*pi*1;N=200;k=-N:N;W=k*W1/N;F1=f*exp(-j*t*W)*R;F=abs(F1); %F=fft(f,512);axes(handles.axes1) plot(t,f);xlabel(時間(t));ylabel(幅值(f));grid

33、 onaxes(handles.axes2) plot(W,F);grid on在幅度調(diào)制中,列舉了正弦信號、門函數(shù)信號,可以清晰的看出這兩種信號分別乘以載波cos(wt)以后,在改變載波角頻率w時,兩種信號的變化情況。 幅度調(diào)制界面如圖4-12所示,正弦信號的幅度調(diào)制如圖4-13所示。圖4-12 幅度調(diào)制圖4-13 正弦信號的幅度調(diào)制代碼如下:function NPFDzhengxian_OpeningFcn(hObject, eventdata, handles, varargin)Fs=1000;N=1000;n=0:N-2;t=n/Fs;x=sin(pi*50*t);Nfft=1024

34、; %快速傅里葉變換點數(shù)window=hamming(512);noverlap=256;%最小采樣頻率dflag=none;%是否有重疊F,f=psd(x,Nfft,Fs,window,noverlap,dflag);w0=200;y=modulate(x,w0,Fs,am);%幅度調(diào)制W,F1=psd(y,1024,Fs,window,noverlap,dflag);axes(handles.axes1) plot(t,x);axis(0 0.1 -1 1);grid onaxes(handles.axes2) plot(f,F);axis(0 500 0 100)grid on axes

35、(handles.axes3) plot(t,y);axis(0 0.1 -1 1);grid on axes(handles.axes4) plot(F1,W);grid onfunctionslider1_Callback(hObject, eventdata, handles)w0 =get(handles.slider1,Value);set(handles.text3,string,w0)Fs=1000;N=1000;n=0:N-2;t=n/Fs;x=sin(pi*50*t); Nfft=1024;window=hamming(512);noverlap=256;dflag=none

36、;F,f=psd(x,Nfft,Fs,window,noverlap,dflag); % PSD 是做功率譜密度的函數(shù)y=modulate(x,w0,Fs,am);W,F1=psd(y,1024,Fs,window,noverlap,dflag);axes(handles.axes3) plot(t,y);axis(0 0.1 -1 1);grid onaxes(handles.axes4) plot(F1,W);grid on圖4-14門函數(shù)的幅度調(diào)制代碼如下:function NPFDmen_OpeningFcn(hObject, eventdata, handles, varargin)

37、R=0.005;t=-1.2:R:1.2;f=(t+1)=0)-(t-1)=0);w0=20;f1=f.*cos(w0*t);W1=40;N=1000;k=-N:N;W=k*W1/N;F=f*exp(-j*t*W)*R;F=real(F);%顯示函數(shù)實部F1=f1*exp(-j*t*W)*R;F1=real(F1); axes(handles.axes1);plot(t,f);grid onaxes(handles.axes2) plot(W,F)grid onaxes(handles.axes3) plot(t,f1)axis(-1.2 1.2 -1 1);grid onaxes(handl

38、es.axes4) plot(W,F1)grid onfunction slider1_Callback(hObject, eventdata, handles)w0 =get(handles.slider1,Value);set(handles.text3,string,w0) R=0.005;t=-1.2:R:1.2;f=(t+1)=0)-(t-1)=0);f1=f.*cos(w0*t);W1=40;N=1000;k=-N:N;W=k*W1/N;F=f*exp(-j*t*W)*R;F=real(F);F1=f1*exp(-j*t*W)*R;F1=real(F1);axes(handles.

39、axes3) plot(t,f1)axis(-1.2 1.2 -1 1);grid onaxes(handles.axes4) plot(W,F1)grid on在仿真波形界面下,列舉了連續(xù)時間非周期信號Fourier變換的一些性質(zhì),如尺度變換特性、時移變換特性、頻移變換特性等性質(zhì)。圖4-15尺度變換特性代碼如下:function NPFZchidu_OpeningFcn(hObject, eventdata, handles, varargin)axes(handles.axes1) R=0.02;t=-2:R:2;f=(t+1)=0-(t-1)=0;plot(t,f);grid onaxe

40、s(handles.axes2) R=0.02;t=-2:R:2;f1=(2*t+1)=0-(2*t-1)=0;plot(t,f1);grid on ;axes(handles.axes3) W1=2*pi*5;N=500;k=0:N;W=k*W1/N;F=f*exp(-j*t*W)*R;F=real(F);W=-fliplr(W),W(2:501);%相當(dāng)于將函數(shù)翻轉(zhuǎn)F=fliplr(F),F(2:501);plot(W,F);grid onaxes(handles.axes4) W1=2*pi*5;N=500;k=0:N;W=k*W1/N;F1=f1*exp(-j*t*W)*R;F1=re

41、al(F1);W=-fliplr(W),W(2:501);F1=fliplr(F1),F1(2:501);plot(W,F1);grid on圖4-16 頻移特性代碼如下:function varargout = NPFZpinyi_OutputFcn(hObject, eventdata, handles) R=0.02;t=-2:R:2;f=(t+1)=0-(t-1)=0;f1=f.*exp(-j*20*t);W1=2*pi*5;N=500;k=-N:N;W=k*W1/N;F=f*exp(-j*t*W)*R;F=real(F);F1=f1*exp(-j*t*W)*R;F1=real(F1);axes(handles.axes1) plot(t,f);grid onaxes(handles.axes3) plot(t,f1);grid onaxes(handles.axes2) plot(W,F);grid onaxes(handles.axes4) plot(W,F1);grid on4.2.4系統(tǒng)的頻率響應(yīng)本部分主要設(shè)計了連續(xù)系統(tǒng)的頻率響應(yīng)如圖4-17,離散系統(tǒng)的頻率響應(yīng)兩部分,其中系統(tǒng)均已三階系統(tǒng)為例。圖4-17 連續(xù)系統(tǒng)頻率響應(yīng)代碼如下:function pushbutton1_Callback(hObject,

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論