国产性生交xxxxx免费-国产中文字幕-啊灬啊灬啊灬快灬高潮了,亚洲国产午夜精品理论片在线播放 ,亚洲欧洲日本无在线码,色爽交视频免费观看

鍋爐信息網 > 鍋爐知識 > 鍋爐學習

MATLAB信號發生器仿真

發布時間:

[摘要]本論文以課題“信號發生器的MATLAB仿真”為背景展開,介紹了MATLAB仿真技術的發展和信號發生器的現狀,結合線性調制系統的應用

[摘要]

本論文以課題“信號發生器的MATLAB仿真”為背景展開,介紹了MATLAB仿真技術的發展和信號發生器的現狀,結合線性調制系統的應用背景設計了一種結構簡便、性能優良的線性調制信號發生器,全面的實現信號發生器的功能要求。

本論文主要研究內容包括:

1.研究了信號發生器的現狀,MATLAB仿真技術的發展及現狀,介紹了用MATLAB進行仿真的實用性及可靠性。

2.研究了常規調制信號ASK信號、FSK信號和PSK等有關理論,為信號生成打下基礎。

3.以線性調制為例研究了MATLAB仿真的三種方法,比較了其各自的優缺點,同時選定以Simulink進行系統的仿真。

4.用GUI進行線性調制系統的模擬,完成軟件設計的實現,對系統進行調試,使系統達到指標需求。

關鍵詞:信號發生器;線性調制系統;MATLAB仿真;simulink


目錄

摘要........................................................................1

ABSTRACT................................................................. 2目錄........................................................................3第一章 緒論................................................................1

1.1論文的立題背景及研究意義...............................................1

1.2 MATLAB仿真技術的發展及現狀..........................................1

1.3信號發生器的發展及現狀.................................................3

1.4論文的主要研究內容.....................................................4

第二章 信號發生器的理論部分................................................5

2.1信號發生器分類簡介......................................................5

2.2常規信號...............................................................7

2.3本章小結..............................................................10

第三章 MATLAB的三種仿真辦法.............................................11

3.1仿真基礎原理..........................................................11

3.2三種仿真方法的簡單實現................................................12

3.3基于Matlab 7.0的三種仿真方法比較.....................................15

3.4本章小結............................................................. 15

第四章 信號發生器的MATLAB仿真實現......................................16

4.1常規信號的Matlab仿真實現..............................................16

4.2線性調制系統Matlab仿真實現...........................................18

4.3AM信號發生的Simulink仿真實現......................................... 20

4.4本章小結............................................................. 23

結束語.....................................................................24

致謝.......................................................................25

參考文獻...................................................................26

第一章 緒論

1.1 論文的立題背景及研究意義

在現代聲納、雷達等通信系統測試與仿真中都需要高精度的任意的波形信號,任意波形信號的重構技術也是聲學和語音信號合成等應用領域中的關鍵技術之一。不過聲納、雷達等通信系統研制過程中出于保密和成本等原因不可能長期做大量的外場實驗,而更多情況下需要在實驗室重構這些具有某一種特征的隨機信號,進行系統測試、系統分析與半實物仿真研究。

而且,隨著通信技術的發展,通信信號的種類越來越多,隨著通信事業的發展,通信網絡的數目也越來越多。如何截獲敵方的通信信號,對其進行預測和干擾從而阻礙敵方正常通信,是通信對抗的主要研究內容。在通信對抗的研究中,為了模擬真實場景,通信信號發生器也是不可或缺的儀器。而市面上的通信信號發生器價格十分昂貴,功能也比較簡單,因此開展任意波形的通信信號的高精度重構方法研究工作,具有重要的理論意義和實用價值。

在生成任意波形時域信號的過程中,分為硬件、軟件兩種設計方法。Matlab仿真屬于通過軟件編程實現。Matlab是矩陣實驗室(Matrix Laboratory)的簡稱,是美國MathWorks公司出品的商業數學軟件。MATLAB可以行矩陣運算、繪制函數和數據、實現算法、創建用戶界面、連接其他編程語言的程序等,主要應用于工程計算、控制設計、信號處理與通訊、圖像處理、信號檢測、金融建模設計與分析等領域。圖形用戶界面(Graphical User Interface,簡稱GUI,又稱圖形用戶接口)是指采用圖形方式顯示的計算機操作用戶界面。與早期計算機使用的命令行界面相比,圖形界面對于用戶來說在視覺上更易于接受。Matlab自帶了強大的GUI工具。Matlab仿真技術的出現也為研究產生任意波形的通信信號提供了有力的技術支持。

任意波形發生器不僅能產生正弦、余弦、方波、三角波和鋸齒波等常見波形,而且還可以利用各種編輯手段,產生傳統函數生器所不能產生的真正意義上的任意波形。如它能模擬諸如編碼雷達信號、潛艇特征信號、磁盤數據信號、機械振動瞬變過程、電視信號以及各種各樣的神經脈沖之類的波形。


1.2 MATLAB仿真技術的發展及現狀

1.2.1 MATLAB的概況

  MATLAB是矩陣實驗室(Matrix Laboratory)之意。除具備卓越的數值計算能力外,它還提供了專業水平的符號計算,文字處理,可視化建模仿真和實時控制等功能。

  MATLAB的基本數據單位是矩陣,它的指令表達式與數學,工程中常用的形式十分相似,故用MATLAB來解算問題要比用C,FORTRAN等語言完相同的事情簡捷得多。

  當前流行的MATLAB 7.0/Simulink 3.0包括擁有數百個內部函數的主包和三十幾種工具包(Toolbox)。工具包又可以分為功能性工具包和學科工具包。功能工具包用來擴充MATLAB的符號計算,可視化建模仿真,文字處理及實時控制等功能。學科工具包是專業性比較強的工具包,控制工具包,信號處理工具包,通信工具包等都屬于此類。

1.2.2 MATLAB產生的歷史背景

  在70年代中期,Cleve Moler博士和其同事在美國國家科學基金的資助下開發了調用EISPACK和LINPACK的FORTRAN子程序庫.EISPACK是特征值求解的FOETRAN程序庫,LINPACK是解線性方程的程序庫.在當時,這兩個程序庫代表矩陣運算的最高水平.

  到70年代后期美國New Mexico大學計算機系系主任的Cleve Moler利用業余時間為學生編寫EISPACK和LINPACK的接口程序.在以后的數年里,MATLAB在多所大學里作為教學輔助軟件使用,并作為面向大眾的免費軟件廣為流傳。

  1983年春天,Cleve Moler和Cleve Moler,Steve Bangert一起,用C語言開發了第二代專業版.這一代的MATLAB語言同時具備了數值計算和數據圖示化的功能.

  1984年,Cleve Moler和John Little成立了Math Works公司,正式把MATLAB推向市場,并繼續進行MATLAB的研究和開發.

  在當今30多個數學類科技應用軟件中,就軟件數學處理的原始內核而言,可分為兩大類.一類是數值計算型軟件,如MATLAB,Xmath,Gauss等,這類軟件長于數值計算,對處理大批數據效率高;另一類是數學分析型軟件,Mathematica,Maple等,這類軟件以符號計算見長,能給出解析解和任意精確解,其缺點是處理大量數據時效率較低.MathWorks公司順應多功能需求之潮流,在其卓越數值計算和圖示能力的基礎上,又率先在專業水平上開拓了其符號計算,文字處理,可視化建模和實時控制能力,開發了適合多學科,多部門要求的新一代科技應用軟件MATLAB.經過多年的國際競爭,MATLAB以經占據了數值軟件市場的主導地位.

時至今日,經過MathWorks公司的不斷完善,MATLAB已經發展成為適合多學科,多種工作平臺的功能強大大大型軟件。在國外,MATLAB已經經受了多年考驗。在歐美等高校,MATLAB已經成為線性代數,自動控制理論,數理統計,數字信號處理,時間序列分析,動態系統仿真等高級課程的基本教學工具。

1.2.3 MATLAB的語言特點

  一種語言之所以能如此迅速地普及,顯示出如此旺盛的生命力,是由于它有著不同于其他語言的特點,正如同FORTRAN和C等高級語言使人們擺脫了需要直接對計算機硬件資源進行操作一樣,被稱作為第四代計算機語言的MATLAB,利用其豐富的函數資源,使編程人員從繁瑣的程序代碼中解放出來。MATLAB最突出的特點就是簡潔。MATLAB用更直觀的,符合人們思維習慣的代碼,代替了C和tFORTRAN語言的冗長代碼。MATLAB給用戶帶來的是最直觀,最簡潔的程序開發環境。以下簡單介紹一下MATLAB的主要特點。

1)語言簡潔緊湊,使用方便靈活,庫函數極其豐富2)運算符豐富。3)MATLAB既具有結構化的控制語句(如for循環,while循環,break語句和if語句),又有面向對象編程的特性。4)程序限制不嚴格,程序設計自由度大。5)程序的可移植性很好,基本上不做修改就可以在各種型號的計算機和操作系統上運行。6)MATLAB的圖形功能強大。7)MATLAB的缺點是,它和其他高級程序相比,程序的執行速度較慢。8)功能強大的工具箱。9)源程序的開放性。


1.3 信號發生器的發展及現狀

在七十年代前,函數信號發生器能夠提供正弦波、余弦波、方波、三角波等幾種常用標準波形,產生其它波形時,需要采用較復雜的電路和機電結合的方法。這個時期的波形發生器多采用模擬電子技術,而且模擬器件構成的電路存在著尺寸大、價格貴、功耗大等缺點,并且要產生較為復雜的信號波形,則電路結構非常復雜。同時,主要表現為兩個突出問題,一是通過電位器的調節來實現輸出頻率的調節,因此很難將頻率調到某一固定值;二是脈沖的占空比不可調節。

在七十年代后,微處理器的出現,可以利用處理器A/D和D/A,硬件和軟件使波形發生器的功能擴大,產生更加復雜的波形。這時期的波形發生器多以軟件為主,實質是采用微處理器對DAC的程序控制,就可以得到各種簡單的波形。

信號發生的主要實現方法根據實現思路可以分為模擬式和數字式,根據實現方法可以分為直接法、鎖相法、直接數字法和混合法四種。

直接法是優點是速度快,相位噪聲底,但結構復雜、雜散多。鎖相法所采用的鎖相頻率合成技術在近年發展較快,應用也較廣泛,但其頻率轉換速度不快,電路控制復雜,這使得該技術的應用受到了一定的限制。直接數字法是采用直接數字合成(DDS)的方法實現信號產生。該技術具有頻率轉換速度快、頻率分辨率高、易于控制的突出特點。在信號發生的幾種技術當中,直接數字合成技術出現得最晚,但近年來發展得最快。隨著大規模集成技術和數模混合信號集成技術的發展,單片集成的DDS芯片紛紛出現,在應用領域內大有后來居上的勢頭。混合法則是指采用以上方法中的兩種及兩種以上的方法實現信號發生。

隨著現代信息事業的發展,測試對象不斷豐富,現代通信系統和電子系統對測試系統提出了越來越高的要求,進而對信號發生器也提出了更高的要求。我們將當前業內對信號發生部件的要求大致歸納為以下四點:(1)高頻譜純度、寬頻帶。 (2 ) 快速和多點頻率捷變。(3 )系列化、模塊化。(4 )小型化和工程化。

隨著現代電子、計算機和信號處理等技術的發展,極大促進了數字化技術在電子測量儀器中的應用,使原有的模擬信號處理逐步被數字信號處理所代替,從而擴充了儀器信號的處理能力,提高了信號測量的準確度、精度和變換速度,克服了模擬信號處理的諸多缺點,數字信號發生器隨之發展起來。




1.4 論文的主要研究內容

研究相關理論,并根據具體實驗室的應用,意在設計一個通用的多路任意波形信號發生器,該系統由兩部分組成:

本論文圍繞第一部分數據處理、信號產生部分設計而展開,基于對Matlab7.0的三種仿真方式介紹引出信號發生器的Matlab應程序設計。其主要工作如下:

第一章緒論

介紹了本論文的研究背景和立題意義,強調了通信信號發生器的重要性,概述了信號發生器的及MATLAB仿真技術的發展和現狀,提出了本文的研究內容,闡述了本文的主要工作。

第二章信號發生器的理論部分

在本章中主要簡單介紹了信號發生器的理論以及分類,研究了ASK、PSK、FSK和代縣白噪聲等常規信號的時頻域表達式、調制方法。為設計通信信號發生器奠定了技術和理論的基礎。為后面用MATLAB實現ASK、PSK、FSK信號奠定了理論基礎。

第三章MATLAB的三種仿真辦法

本文分析了線性模擬調制的數學模型,采用基于Matlab 7.0的三種仿真方法對AM調制進行仿真,以實例闡述了三種仿真方法的特點。最后,在實例分析的基礎上對三種方法進行了簡單的比較。結果表明,三種方法各有優劣,基于Simulink仿真模型能夠反映系統的動態工作過程,基于GUI的可視化界面具有很好的演示效果,都為通信系統的設計和研究提供了強有力的工具,也為通信系統理論的教學和學習提供了有力的工具。

第四章信號發生器的MATLAB仿真實現

介紹了Matlab軟件實現的程序編程的情況,重點介紹了信號的軟件產生,其中包括ASK、PSK、FSK等信號以及AM、DSB 、SSB等信號。同時用Simulink產生的線性調制系統可以產生AM、DSB 、SSB、VSB等線性調制系統的任意波形信號等波形。


第二章 信號發生器的理論部分

2.1 信號發生器分類簡介

信號發生器按輸出波形可分為正弦波信號發生器、脈沖信號發生器、函數發生器和任意波形發生器等。按其產生頻率的方法又可分為調諧信號發生器、鎖相信號發生器和合成信號發生器。

調諧信號發生器是由調諧振蕩器構成,傳統調諧信號發生器都是由調諧振蕩器和統調的調幅放大器(輸出放大器)加上一些指示電路構成。這種信號發生器結構復雜、頻率范圍窄,而且可靠性、穩定性較差,波形失真比較大。隨著集成電路的迅速發展,高性能的集成電路越來越多,這類信號發生器的性能有所改善。一般這種信號發生器只能手動來轉換量程,不僅體積大,而且可靠性和準確度很難進一步提高,頻率準確度一般在0.5%以下。現代電子測量對信號發生器的頻率準確度和穩定度要求越來越高,要求在較寬的頻率范圍內獲得高穩定度和準確度的輸出信號。因此調諧信號發生器己經越來越不能滿足現代電子測量的需要。另外,這類信號發生器只能產生規則波形,如方波、三角波、TTL信號和正弦波。進行科學試驗則對信號發生器的輸出波形提出了各種各樣的要求,采用純模擬的方法很難滿足實驗的要求。

鎖相信號發生器是由調諧振蕩器通過鎖相的方法獲得輸出信號的信號源。這類信號發生器頻率的精度和穩定度很高,但要實現快速和數控比較困難,同時輸出信號的頻率分辨率較差。實現高分辨率的信號發生器,采用鎖相環來實現有一定的難度,尤其是覆蓋低頻和高頻的信號發生器采用鎖相實現比較困難。

合成信號發生器是采用頻率合成方法構成的信號發生器。合成信號發生器中使用一個晶體參考頻率源,所需的各種頻率都由它經過分頻、混頻和倍頻后得到的,因而合成器輸出頻率的穩定性和精度與參考源一樣,現在絕大多數頻率合成技術都使用這種合成方法。這類信號發生器具有頻率穩定度高、分辨率高、輸出信號頻率范圍寬、頻率易于實現程序控制、可以實現多種波形輸出及頻率顯示方便等優點。近10年間,隨著微電子技術的迅速發展,它以有別于其它頻率合成方法的優越性能和特點,成為現代頻率合成技術中的佼佼者。具體體現在頻率范圍寬、頻率轉換時間短、頻率分辨率高、輸出相位連續、可產生寬帶正交信號及其他多種調制信號、可編程和全數字化、控制靈活方便等方面,并具有極高的性價比。傳統的模擬信號發生器存在可靠性差、體積大、不能實現數控等缺點。模擬信號發生器與模擬信號發生器相比,具有很大的優勢。








2.2 常規信號

通信的根本任務是遠距離傳遞信息,因此如何準確地傳輸數字信息是數字通信的一個重要組成部分。在數字傳輸系統中,其傳輸對象通常是二元數字信息,它可能來自計算機、電傳打字機或其他數字設備的各種數字代碼,也可能來自數字電話終端的脈沖編碼信號。設計數字傳輸系統的基本考慮是選擇一組有限的離散的波形來表示數字信息。這些離散波形可以是未經調制的不同電平信號,也可以是調制后的信號形式。由于未經調制的電脈沖信號占據的頻帶通常從直流和低頻開始,因此稱為數字基帶信號。在某些有線信道中,特別是傳輸距離不太遠的情況下,數字基帶信號可以直接傳送,我們稱之為數字信號的基帶傳輸。而在另外一些信道,特別是無線信道和光信道中,數字基帶信號則必須經過調制,將信號頻譜搬移到高頻處才能在信道中傳輸,我們把這種傳輸稱為數字信號的調制傳輸(或載波傳輸)。

調制的方法主要是通過改變余弦波的幅度、相位或頻率來傳送信息。其基本原理是把數據信號寄生在載波的上述三個參數中的一個上,即用數據信號來進行幅度調制、頻率調制或相位調制。數字信號只有幾個離散值,因此調制后的載波參數也只有有限個值,類似于用數字信息控制開關,從幾個具有不同參量的獨立振蕩源中選擇參量,為此把數字信號的調制方式稱為“鍵控”。數字調制分為調幅、調相和調頻三類,分別對應“幅移鍵控”(ASK)、“相移鍵控”(PSK)和“頻移鍵控”(FSK)三種數字調制方式。除這些基本的以外,還可以采用各種多相位、多振幅和多頻率的方案。但ASK、PSK和FSK這三種數字調制方式仍是最主要和最基本的,所以接下來要對這三種調制技術,以及上面提到的QAM調制技術分別進行介紹。

2.2.1 ASK信號

在幅度鍵控中載波幅度是隨著調制信號而變化的。最簡單的形式是載波在二進制基帶信號1或0的控制下通或斷,這種二進制幅度鍵控方式稱為通一斷鍵控(00K)。

二進制幅度鍵控的調制器可以用一個相乘器來實現,如圖2.1所示,對基帶信號和載波進行乘法運算即可得到ZASK信號。對于通斷鍵控信號來說,相乘器則可以用一個開關電路來代替,調制信號為1時開關電路導通,為0時開關電路切斷。


圖2.1 2ASK調制原理圖

2.2.2 FSK信號

在二進制頻移鍵控中載波頻率隨著調制信號1或0而變。

二進制頻移鍵控的調制器可以采用模擬信號調制電路來實現,但更容易的實現方法是圖2.10中的鍵控法,兩個獨立的載波發生器的輸出受控于輸入的二進制信號,按照1或O分別選擇一個載波作為輸出。

FSK方式實現起來比較容易,抗噪聲和抗衰減性能好,穩定可靠,是中低速數據傳輸最佳選擇。



圖2.2 2FSK調制原理圖

2.2.3 PSK信號

在PSK調制時,載波的相位隨調制信號狀態不同而改變。如果兩個頻率相同的載波同時開始振蕩,這兩個頻率同時達到正最大值,同時達到零值,同時達到負最大值,此時它們就處于“同相”狀態;如果一個達到正最大值時,另一個達到負最大值,則稱為“反相”。一般把信號振蕩一次(一周)作為360度。如果相差半個周期,我們說兩個波的相位差180度,也就是反相。二進制相移鍵控中,載波的相位隨調制信號1或0而改變,通常用相位0。和

來分別表示1或0。二進制相移鍵控已調信號的時域表達式為

式(2-9)所示BPSK信號與式(2-1)所示OOK信號相對比可知,BPSK信號是雙極性非歸零碼的雙邊帶調制,而OOK信號則是單極性非歸零碼的雙邊帶調制。BPSK調制信號沒有直流分量,因而是抑制載波的雙邊帶調制。由此可見,BPS信號的功率譜與OOK信號的相同,只是少了一個離散的載頻分量。這一結論也同樣適用于基帶信號為其他形式的BPSK信號。BPSK調制器可以采用相乘器,如圖2.3所示。將二進制信息由單記性變為雙極性后與載波相乘,即可得到已調信號。另外,也可以用相位選擇器來實現,根據二進制信息選擇載波的相位,也可得到已調信號。



圖2.3 BPSK調制原理圖


PSK相移鍵控調制技術在數據傳輸中,尤其是在中速和中高速的數傳機2400bit/s-4800bit/s中得到了廣泛的應用。應用較多的是二相和四相調相,即QPSK(Quadrature Phaseshift Keying),在衛星信道中傳送數字電視信號時采用的就是QPSK調制方式,它可以看成是由兩個ZPSK調制器構成的。輸入的串行二進制信息序列經串一并變換后分成兩路速率減半的序列,由電平轉換器分別產生雙極性二電平信號I(t)和Q(t)。fct進行調制,相加后即可得到QPSK信號。四相相移調制是利用載波的四種不同相位差來表征輸入的數字信息,是四進制移相鍵控。QPSK是在M=4時的調相技術,它規定了四種載波相位,分別為45度,135度,225度,275度。調制器輸入的數據是二進制數字序列,為了能和四進制的載波相位配合起來,則需要把二進制數據變換為四進制數據,這就是說需要把二進制數字序列中每兩比特分成一組,共有四種組合,即00,01,10,l1。QPSK中每次調制可傳輸2個信息比特,這些信息比特是通過載波的四種相位來傳遞的。

2.2.4 帶限白噪聲

白噪聲是指功率譜密度在整個頻域內均勻分布的噪聲。嚴格地說,白噪聲只是一種理想化模型,因為實際噪聲的功率譜密度不可能具有無限寬的帶寬,否則它的平均功率將是無限大,是物理上不可實現的,如圖2.4。然而,白噪聲在數學處理上比較方便,因此它是系統分析的有力工具。一般,只要一個噪聲過程所具有的頻譜寬度遠遠大于它所作用系統的帶寬,并且在該帶寬中其頻譜密度基本上可以作為常數來考慮,就可以把它作為白噪聲來處理。

白噪聲具有頻帶寬、能量分布均衡、對被測系統干擾小的特點,在工程實際中,是一種使用十分廣泛的信號。當然用任何方法都無法產生理想的無限帶寬的白噪聲,實際應用中是要求信號的頻率特性在一定帶寬內具有白噪聲的頻率特性,即帶寬內各頻率分量能量近似相等。工程應用和試驗研究中,經常需要信號的帶寬可調,并具有較好的低通特性,一般還要求產生的白噪聲信號具有一定的輸出功率。



圖2.4 理想白噪聲的功率譜密度和自相關函數


白噪聲的實現可以通過單一的Logist方程進行,Logist方程見式(2-11)。Logist所產生的迭代混沌序列是平穩的隨機過程,并且當參數K=4時,所產生的信號的統計特性和時頻特性與白噪聲一致,因此用Logist方程可以產生白噪聲的理論成立。而且同時應用兩個Logist方程可以改善白噪聲的性能。

2.3 本章小結

在本章中主要簡單介紹了信號發生器的理論以及分類,研究了ASK、PSK、FSK和代縣白噪聲等常規信號的時頻域表達式、調制方法。為設計通信信號發生器奠定了技術和理論的基礎。為后面用MATLAB實現ASK、PSK、FSK信號奠定了理論基礎。


第三章 MATLAB的三種仿真辦法

3.1 仿真基礎原理

3.1.1 三種仿真方法簡介

目前,計算機仿真已經成為解決工程實際問題的重要手段,Matlab軟件是其中功能最為強大的仿真軟件之一。目前利用Matlab進行系統性能仿真,主要有三種方法:其一是通過腳本程序的編寫,實現相關系統仿真和性能分析;其二是利用Simulink模塊庫,通過鼠標拖拉的方式建立相關系統的仿真模型,對每個模塊進行參數設置,以達到動態系統仿真和性能分析的目的;其三是利用圖形用戶界面GUI,創建各種菜單、按鈕等可視化界面,通過函數回調等手段,實現人機交互的系統仿真及其性能分析。Matlab語言比較簡單,腳本程序的編寫也比較簡單,很多語言結構和風格與常用的C語言非常相似,因此,對于初學者而言,是很容易上手的。

Simulink軟件具有豐富的模塊庫,其中公共模塊庫共包含9個模塊庫:連續系統模塊庫、離散系統模塊庫、函數與表庫、數學運算庫、非線性系統模塊庫、信號與系統模塊庫、系統輸出模塊庫、系統輸人模塊庫、子系統模塊庫。除了公共模塊庫之外,Simulink中還集成了許多面向不同專業領域的專業模塊庫,如面向控制系統設計與分析的Control System Toolbox模塊庫、面向數字信號處理系統設計與分析的DSP Blockset模塊庫、專用于通信系統仿真的通訊模塊庫等。Simulink不但功能非常強大,而且還是一個開放性體系,可以支持用戶開發模塊來增強其自身的功能。

圖形用戶界面GUI(Graphics User Interface)是由各種圖形對象,如圖形窗口、圖軸、菜單、按鈕、文本框等構建的用戶界面,是人機交流信息的T具和方法。在該界面內,用戶可以根據界面提示完成整個工程,不必去了解工程內部是如何工作的。GUI設計可以以基本的Matlab程序設計為主,也可以鼠標為主利用GUIDE(Graphics User Interface Design Environment)工具進行設計。利用GUIDE設計圖形用戶界面時,可通過GUI應用屬性設置編輯器來設置對句柄操作的響應,findobj命令可以獲得所需對象的旬柄。GUIDE是—個專用于GUI程序設計的快速開發環境,使用者通過鼠標就能迅速地產生各種CUI控件,并隨心所欲地改變它們的外形、大小及顏色等,從而幫助用戶方便地設計出各種符合要求的圖形用戶界面。

本章將以線性模擬調制為例,來闡述基于Natlab7.0的三種系統仿真方法,最后在仿真分析的基礎上,對三種仿真方法進行分析比較。

3.2.2 線性模擬調制原理

線性模擬調制主要有調幅(AM)、雙邊帶(DSB)、單邊帶(SSB)和殘留邊帶(VSB)等調制方式。其中VSB調制是介于SSB與DSB之間的一種折中方式。

由于基于Matlab 7.0的三種系統仿真,都需要了解系統數學模型,所以下面就對AM、DSB和SSB調制的數學模型進行分析。


3.2 三種仿真的簡單實現

3.2.1 基于Matlab的系統仿真

本文以線性模擬調制中的線性調制AM調制為例,通過腳本程序的編寫,實現系統仿真和性能分析。

首先,編寫Matlab腳本程序如下:

clear;

clf;

t=0:pi/10:40*pi;

Carrier=sin(t);

Mod_Sig=sin(t/20);

Dsb_am=Carrier.*(1+Mod_Sig);

plot(t,Carrier,t,Mod_Sig,t,Dsb_am);

title('Plot of carrier modulated by sinewave (dsb-am)');

xlabel('time');

ylabel('voltage');

grid on;

legend('carrier','baseband','modulated signal')



圖3.1 基于腳本程序仿真的仿真結果


3.2.2 基于Simulink的系統仿真及分析

從以上理論分析可知,AM、DSB和SSB調制具有一定的共性,因此,為了演示和比較這三種調制方式的特點,可以將其集成在同一個仿真模型中。當需選擇其他調制方式時,只需手動點擊開關就可以進行切換。

使用Simulink建立如圖3.2所示的線性模擬調制仿真模型。



圖3.2 線性模擬調制仿真模型


仿真模型中所用到的模塊,均可以用鼠標從Simulink模塊庫中拖到模型編輯窗口,進行模塊間的連線,然后對每一個模塊的參數進行設置。當參數設置和連線正確后,就可以點擊開始仿真按鈕,進行性能仿真。通過示波器和頻譜儀等輸出模塊,可以非常直觀地看到各個節點的時域和頻域特性。

本文以AM調制的性能仿真結果為例,得出相關節點的仿真圖形。顯然,示波器模塊可以非常直觀地顯示了AM調制的調制信號時域波形、乘法器輸出時域波形、乘法器輸出信號頻譜和已調信號時域波形。

在圖2中,當切換左邊開關就可以改變調制信號,實現AM調制與DSB或SSB調制不同調制方式的切換;當切換右邊下面的開關就可以通過選擇不同的濾波器,得到不同的SSB調制信號;而切換右邊上面的開關就可以在示波器和頻譜儀中顯示相應的輸出結果。當然,整個仿真模型中載波頻率、濾波器傳輸特性等都可以按需要改變,相應節點的輸出時域波形和頻域波形都會隨之改變。

3.2.3 基于GUI的動態系統仿真及分析

Matlab 7.0通信工具箱提供了一個典型的通信系統通常所包括的信源、信宿、信道和發送接收處理部分,可以通過應用相應的函數實現相關通信功能的仿真。通過使用GUI,可以使不同功能的系統形成一個獨立的界面,編寫m函數實現界面上相應按鈕的功能,使用函數回調功能實現界面和m函數之間的鏈接。調試成功的圖形用戶界面可以實現對不同仿真系統的運行、暫停或停止進行控制,通過滑動塊或動態文本框等實時修改模塊參數,形成一個完整的仿真體系。t

仍然以線性模擬調制解調系統中的AM調制為例,設計圖形用戶界面,編寫m函數,通過函數回調等功能,達到動態演示AM調制的目的。

此種仿真首先要建立基于GUI的仿真系統主界面,添加按鈕、靜態文本、坐標軸等來實現界面的可視化,然后通過編輯回調函數,調用回調函數,來實現分析仿真。


3.3 基于Matlab 7.0的三種仿真方法比較

從上文的仿真范例可以看出,基于腳本程序編寫的方法比較簡單,只要掌握Matlab語言,就可以編輯一些簡單的程序,實現一些仿真功能。但這種方法不直觀,對于復雜系統的仿真對編程水乎有較高的要求。另外,這種仿真方法不直觀,用戶不了解功能系

統的體系構成。

Simulink是一個對動態系統進行建模、仿真并對仿真結果進行分析的軟件包。使用Simulink可以更加方便地對系統進行可視化建模,并進行基于時間流的系統級仿真,使得仿真系統建模與工程中的方框圖統一起來。并且仿真結果可以近乎“實時”地通過可視化模塊,如示波器模塊、頻譜儀模塊以及數據輸入輸出模塊等顯示出來,使得系統的仿真工作十分方便。因此,目前這種方法在科研中被廣泛使用。但這種方法,不足之處就在于人機交互不太理想,對于系統演示等也不是很適合。

而使用GUI進行的界面設計,具有人機交互功能,可以實時改變系統各個參數,進行動態仿真,并將仿真結果形象地展現m來。可以通過形象、對比式的演示,使用戶能夠從整體上認識和區別各種系統,容易理解、印象深刻。因此,這種方法常用于演示系統

的開發,如通信原理課程的實驗教學等。


3.4 本章小結

本文分析了線性模擬調制的數學模型,采用基于Matlab 7.0的三種仿真方法對AM調制進行仿真,以實例闡述了三種仿真方法的特點。最后,在實例分析的基礎上對三種方法進行了簡單的比較。結果表明,三種方法各有優劣,基于Simulink仿真模型能夠反映系統的動態工作過程,基于GUI的可視化界面具有很好的演示效果,都為通信系統的設計和研究提供了強有力的工具,也為通信系統理論的教學和學習提供了有力的工具。


  1. 信號發生器的MATLAB仿真實現

4.1 常規信號的MATLAB仿真實現

理論論述介紹參見第二章,現在僅介紹用Matlab仿真實現常規數字信號的發生實現,現列舉簡潔的程序請單及運行結果如圖一所示下:

clear all;

close all;

A=1;

fc=2; %2Hz

N_sample=8;

N=500; %碼元數

Ts=1; %1Baud/s

dt=Ts/fc/N_sample; %波形采樣間隔

t=0:dt:N*Ts-dt;

Lt=length(t);

%產生二進制信號源

d=sign(randn(1,N));

X=length((d+1)/2);

dd=zeros(fc*N_sample,X);

dd(1,:)=(d+1)/2;

dd=reshape(dd,1,fc*N_sample*X)

gt=ones(1,fc*N_sample); %NRZ波形

figure(1)

subplot(411); %輸入NRZ信號波形(單極性)

d_NRZ=conv(dd,gt);

plot(t,d_NRZ(1:length(t)));

axis([0 10 0 1.2]);ylabel('輸入信號');

%OOK信號

ht=A*cos(2*pi*fc*t);

s_2ask=d_NRZ(1:Lt).*ht;

subplot(412);

plot(t,s_2ask);

axis([0 10 -1.2 1.2]);ylabel('OOK');

%2PSK信號

d_2psk=2*d_NRZ-1;

s_2psk=d_2psk(1:Lt).*ht;

subplot(413);

plot(t,s_2psk);

axis([0 10 -1.2 1.2]);ylabel('2PSK');

%2FSK信號

sd_2fsk=2*d_NRZ-1;

s_2fsk=A*cos(2*pi*fc*t+2*pi*sd_2fsk(1:length(t)).*t);

subplot(414);

plot(t,s_2fsk);

axis([0 10 -1.2 1.2]);ylabel('t');ylabel('2PSK');



圖4.1 OOK、PSK、FSK信號的仿真實現圖

4.2 線性調制信號的MATLAB仿真實現

Matlab語言比較簡單,腳本程序的編寫也比較簡單,很多語言結構和風格與常用的C語言非常相似,因此,對于初學者而言,是很容易上手的。

本文以線性模擬調制中的線性調制AM、DSB、SSB調制為例,通過腳本程序的編寫,實現系統仿真和性能分析。理論介紹參考第三章。


close all;

clear all;

dt=0.001;

fm=1;

fc=10;

t=0:dt:5;

mt=sqrt(2)*cos(2*pi*fm*t);


%AM信號

A=2;

s_am=(A+mt).*cos(2*pi*fc*t);

figure;

subplot(311);

plot(t,s_am);hold on;

plot(t,A+mt,'r');

title('AM');xlabel('t');


%DSB信號

s_dsb=mt.*cos(2*pi*fc*t);

subplot(312);

plot(t,s_dsb);hold on;

plot(t,mt,'r');

title('DSB');xlabel('t');


%SSB信號

s_ssb=real(hilbert(mt).*exp(j*2*pi*fc*t));

subplot(313);

plot(t,s_ssb);

title('SSB');xlabel('t');




圖4.2 AM、DSB、SSB信號的仿真實現圖



4.3 AM信號發生的Simulink仿真實現

第三章所建立的Simulink模型如圖4.3進行分析如下:


圖4.3 AM信號發生的Simulink仿真實現



圖4.4 調制信號1


圖4.5 調制信號2



圖4.6 AM調制信號




圖4.7 DSB單邊帶調制信號




圖4.8 AM經過帶通濾波器的輸出波形

其中,仿真結果圖4.6驗證了調幅波是一個載波振幅按照調制信號的大小線性變化的高頻振蕩信號,而其載波頻率保持不變的特點。圖4.6和圖4.8相比較可以看出,未經過帶通濾波器濾波的乘法器輸出時域波形比經過帶通濾波器濾波的已調信號時域波形多很多帶外噪聲,這也驗證了帶通濾波器在AM調制中的作用。

在圖4.3中,當切換左邊開關就可以改變調制信號,實現AM調制與DSB或SSB調制不同調制方式的切換;當切換右邊下面的開關就可以通過選擇不同的濾波器,得到不同的SSB調制信號;而切換右邊上面的開關就可以在示波器和頻譜儀中顯示相應的輸出結果。當然,整個仿真模型中載波頻率、濾波器傳輸特性等都可以按需要改變,相應節點的輸出時域波形和頻域波形都會隨之改變。

圖4.6,4.7分別與4.2節中直接用MATLAB語言進行仿真的結果相比較,可以發現,其調制結果是相同的。由此也可以證明用Simulink來進行仿真是很簡潔的,可以不用過多的了解MATLAB語言,只要懂得對參數進行設計就可以了。


4.4 本章小結

綜上分析,Simulink是一個對動態系統進行建模、仿真并對仿真結果進行分析的軟件包。使用Simulink可以更加方便地對系統進行可視化建模,并進行基于時間流的系統級仿真,使得仿真系統建模與工程中的方框圖統一起來。并且仿真結果可以近乎“實時”地通過可視化模塊,如示波器模塊、頻譜儀模塊以及數據輸入輸出模塊等顯示出來,使得系統的仿真工作十分方便。因此,目前這種方法在科研中被廣泛使用。












結束語

計算機仿真已經成為解決工程實際問題的重要手段,Matlab軟件是其中功能最為強大的仿真軟件之一。目前利用Matlab進行系統性能仿真,主要有三種方法:其一是通過腳本程序的編寫,實現相關系統仿真和性能分析;其二是利用Simulink模塊庫,通過鼠標拖拉的方式建立相關系統的仿真模型,對每個模塊進行參數設置,以達到動態系統仿真和性能分析的目的;其三是利用圖形用戶界面GUI,創建各種菜單、按鈕等可視化界面,通過函數回調等手段,實現人機交互的系統仿真及其性能分析。Matlab語言比較簡單,腳本程序的編寫也比較簡單,很多語言結構和風格與常用的C語言非常相似,因此,對于初學者而言,是很容易上手的。

利用MATLAB豐富的數據處理函數和強大的圖形可視化功能,用它來實現信號源,使設計者能快速實現多種方案,對于信號源的采集、分析和處理都帶來了較大的方便。雖然這種方法實現的信號源受聲卡采樣頻率、電腦噪音的影響較大,但還是能夠基本滿足電路實驗室低頻信號發生器的要求。

但是,采用這種方法實現的低頻信號發生器有產生噪音,分析如下:

(1)主機電源的噪音;

(2)主機的高頻幅射;

(3)環境噪音。降低噪音。

我們可以:

(1)選擇信噪比比較高的主機電源將會對消除噪到重要作用;

(2)實驗設備在利用信號源時應盡量與主機保持距離,以減少電磁輻射對設備的影響;

(3)對于環境噪音,當信號頻率與50HZ相差很大時忽略環境噪音對設備的影響,但當信號頻率接近50HZ應對實驗設備采取良好的屏蔽措施;

雖然會有一些噪聲,但總體而言,用MATLAB仿真得到的信號發生器總體效果還是很好的,簡單可靠有效。這些特點使MATLAB仿真在實際應用中具有廣泛的推廣應用前景。

精選推薦

  • 催化燃燒設備供應商
    催化燃燒設備供應商

    催化燃燒設備供應商,催化燃燒處理裝置廠家,本裝置是采用廢氣先進入噴淋塔過濾——干式過濾—-蜂窩活性碳吸附—脫附再生——催化燃

  • 該不該有模具供應商
    該不該有模具供應商

    今天紅姐又來跟我探討供應商的管理問題了。故事是這樣的:供應商來料不良,原因是模具問題。而那個模具是我們找的一家模具供應商做的

  • 什么牌子高壓鍋好,高壓鍋哪個牌子好,高壓鍋什么牌子好,高壓鍋哪個品牌好
    什么牌子高壓鍋好,高壓鍋哪個牌子好,高

    1蘇泊爾 雙重安全閥門 高壓鍋雙重安全閥,防燙把手,復合底。這款高壓鍋擁有雙重安全閥門,更好的保證使用安全。搭載防燙傷把手,方便起

  • 高壓鍋啥牌子好,高壓鍋哪個牌子的好,什么高壓鍋牌子好,高壓鍋推薦選購指南
    高壓鍋啥牌子好,高壓鍋哪個牌子的好,什

    1、雙喜階梯型復底高壓鍋推薦理由:高壓鍋滿足上蒸下煮,飯菜同時進行,方便快速,有效提升烹飪效率。多重安全防護,安全系數較高,家人使用

0