第一篇:通信系統仿真實驗
實驗
一、Systemview操作環境的認識與操作
一、實驗目的
1、了解和熟悉Systemview 軟件的基本使用;
2、初步學習Systemview軟件的圖符庫,能夠構建簡單系統。
二、實驗要求:
1、PDF中1.7練習
2、正弦信號(頻率為學號*10,幅度為(1+學號*0.1)V)、及其平方譜分析;并討論定時窗口的設計對仿真結果的影響。
三、實驗仿真
四、實驗結論
輸出信號底部有微弱的失真,調節輸入的頻率的以及平方器的參數,可以改變輸入信號的波形失真,對于頻域而言,sin信號平方之后,其頻率變為原來的二倍,這一點可有三角函數的化簡公式證明
實驗
二、濾波器使用及參數設計
一、實驗目的
1、學習使用SYSTEMVIEW 中的線性系統圖符。
2、掌握典型FIR 濾波器參數和模擬濾波器參數的設置過程。
3、按濾波要求對典型濾波器進行參數設計。
二、實驗要求: 學習濾波器的設計
1、設計一種FIR型帶通濾波器,帶通濾波器的帶通范圍為150HZ-200Hz,下邊帶截止頻率為120HZ。上邊帶截止頻率為230HZ。截止點相對于濾波器帶通區的歸一化增益為-60dB。
2、設計一種模擬低通濾波器,低通濾波器的通帶范圍為學號*10。
三、實驗仿真
四、實驗結論
對于試驗中低通濾波器的參數設置不太容易確定,在輸入完通帶寬度、截止頻率和截止點的衰落系數等濾波器參數后,如果選擇讓SystemView 自動估計抽頭,則可以選擇“Elanix Auto Optimizer”項中的“Enabled”按鈕,再單擊“Finish”按鈕退出即可。此時,系統會自動計算出最合適的抽頭數通常抽頭數設置得越大,濾波器的精度就越大。
實驗
三、模擬線性調制系統仿真(AM)
一、實驗目的
1、學習使用SYSTEMVIEW 構建簡單的仿真系統。
2、掌握模擬幅度調制的基本原理。
3、掌握常規調幅、DSB 的解調方法。
4、掌握AM 信號調制指數的定義。
二、實驗要求
1、完成PDF中4.1節的AM調幅仿真(要求調制信號頻率為學號*10),改變調制度,并觀察輸出波形(已調波)的變化;觀察其輸出頻譜
2、設計濾波器,完成AM系統的解調;觀察其輸出頻譜;
三、實驗仿真
四、實驗結論
高斯白噪聲的功率譜是均勻分布的,作為一種噪聲,仿真的時候加上高斯白噪聲其結果頻譜寬但是除了輸出信號的頻譜功率大些,其他的比較微弱,低通濾波器對高斯白噪聲的影響并不是很大,在實際中,所有的通信系統中都不可避免的引入高斯白噪聲。
實驗
四、DSB調制解調仿真
一、實驗目的
1、學習使用SYSTEMVIEW 構建簡單的仿真系統。
2、掌握模擬幅度調制的基本原理。
3、掌握常規調幅、DSB 的解調方法。
4、掌握AM 信號調制指數的定義。
二、實驗要求
使用通信庫中現成的雙邊帶調幅圖符重新完成4.1節中的仿真,并進行解調及分析
三、實驗仿真
四、實驗結論
DSB系統在無干擾的信道中傳輸時,解調后的波形與調制信號波形相比較,只是發生了一點延遲,幅度變化也不是很大,其波形基本與調制信號波形一樣。而DSB系統在有噪聲干擾的信道中傳輸時,解調后的信號不僅有延遲,而且波形發生了變化,仍然為正弦波,但是幅度卻發生了很大變化,而且是不規則的幅度變化。
實驗
五、SSB調制解調仿真
一、實驗目的
1、熟悉和掌握單邊帶調制解調方法,以及對比單邊帶和雙邊帶調制,比較其優缺點,、掌握SSB調制解調設計流程。
2、練習使用SytemView軟件仿真的使用。構造一般的仿真系統
二、實驗要求
參考PDF 4.3節,采用移相法完成SSB調制,并進行解調。
三、實驗仿真
四、實驗結論
實驗中并沒有加高斯白噪聲,但輸出的結果頻譜仍然有些噪聲。實驗中采用的頻率為180Hz,結果圖并不理想,也沒有把上邊帶和下邊帶的頻譜放在一起對比,不過在試驗中,最開始的時候兩個信號的頻率一樣的時候,上邊帶互相抵消的,上邊帶沒有波形。
實驗
六、模擬角度調制系統仿真
一、實驗目的
1、分析理解FM調制的意義
2、掌握FM調制的基本原理
3、設計調制及解調仿真系統
二、實驗要求
1、完成PDF中5.1.1、5.1.2節的仿真;
2、加大5.1.2節中FM調制器的調制增益,觀察輸出FM信號的頻譜變化。在解調器前面加大噪聲,并逐步改變噪聲功率,觀察解調波形失真情況。
三、實驗仿真
實驗參數設置比較麻煩,參數設置的并不太合適導致輸出信號的波形并不是十分規范,實驗輸出信號的頻譜也存在很大的噪聲,在試驗中修改濾波器的參數可以使得輸出的波形和頻譜改變較大,但是很難找到一個十分完美的參數使得信號可以完美的無失真,調頻信號的頻率為180Hz,濾波器的參數根據調制信號和載波信號的頻率進行適當的設置即可。
實驗
七、脈沖幅度調制系統仿真
一、實驗目的
1、理解并掌握抽樣定律,了解抽樣定理的一般應用。
2、設計一個脈沖幅度調制的通信系統,掌握脈沖幅度調制系統的一般設計流程和方法
二、實驗要求
1、理解抽樣定理的意義
2、采用乘法抽樣與開關抽樣兩種方式完成信號的取樣與恢復
三、實驗仿真
四、實驗結論
當采樣頻率小于奈奎斯特頻率時,在接收端恢復信號失真比較大,這是因為存在信號 混疊,當采樣頻率大于或者等于奈奎斯特采樣頻率的時候,恢復信號和原始信號基本一致,理論上理想抽樣頻率為2倍的奈奎斯特帶寬,但是在實際工程應用中,限帶信號絕對不會嚴格限帶,而且實際濾波器特性并不理想。
實驗八基帶傳輸系統眼圖分析與觀察
一、實驗目的
了解眼圖分析法中系統參數的影響,建立構成觀察眼圖的基帶傳輸仿真原理圖,掌握眼圖觀察的相關參數的設置。眼圖 的 “眼睛” 張開的大小反映著碼間串擾的強弱。“眼睛”張的 越大,且眼圖越端正,表示碼間串擾越小;反之表示碼間串擾越大。學習如何通過眼圖來評價一個通信系統的性能。
二、實驗要求 參考pdf7.2節
1、了解眼圖分析法中系統參數的影響
2、建立構成觀察眼圖的基帶傳輸仿真原理圖,掌握眼圖觀察的相關參數的設置
三、實驗仿真
四、實驗結論
信噪比是度量通信系統通信質量可靠性的一個主要技術指標,眼圖能直觀的表明碼間串擾和噪聲的影響,可以用來評價一個通信系統的優劣,另外也可以用來根據眼圖對接收濾波器的特性加以調整,以減少碼間串擾和改善系統的傳輸性能。
實驗九數字信號的載波調制系統仿真
一、實驗目的
1、熟悉并且掌握數字信號的載波傳輸的基本原理,2、掌握原理圖,能根據原理圖設計出對應的通信系統,3、掌握原理圖中各部分的作用與組成,4、掌握相干解調和非相干解調的基本原理,掌握兩種解調方式的優缺點,并能夠根據實際情況選用適當的解調方式,5、熟悉SystemView的仿真流程,進一步簡易通信系統的設計流程
二、實驗要求
1、學習數字信號的載波傳輸的基本原理(包括2ASK、2FSK);
2、完成2ASK調制仿真(包括調幅法和鍵控法)和解調仿真(相干解調和非相干解調);
3、完成2FSK調制仿真(包括模擬調頻法和鍵控法)和解調仿真(相干解調和非相干解調);
三、實驗仿真
四、實驗結論
在2ASK調制中,載波的幅度只有兩種變化狀態,即利用數字信息“0”或“1”的基帶矩形脈沖去鍵控一個連續的載波,使載波時斷時續的輸出。有載波輸出時表示“1”,無載波輸出時表示發送“0。2FSK信號產生的方法一般有兩種:一種叫直接調頻法,另一種叫頻移鍵控法。所謂直接調頻法,就是將輸入的基帶脈沖去控制一個振蕩器的某種參數,而達到改變振蕩頻率的目的。雖然方法簡單,但頻率穩定度不高,同時轉移速度不能太高;鍵控法就是利用矩形脈沖序列控制的開關電路,對兩個不同的獨立頻率源進行選通。一般來說,鍵控法采用兩個獨立的振蕩器,得到的是相位不連續的2FSK信號;而且直接調頻法f1,f2由同一個諧振電路產生,則得到相位連續的2FSK信號。2FSK信號便是0符號對應于載頻f1,1符號對應于載頻f2(與f1不同的另一個載頻)的一調制波形,而f1與f2的改變是瞬間完成的;
十、自行設計內容:增量調制
一、實驗目的
1.通過實驗加深對課本理論知識的理解。2.掌握SystemView進行通信原理仿真的方法。
3.通過實驗進一步掌握增量調制系統的構成及其工作原理。4.通過實驗現象對比,了解系統各項參數對系統性能的影響。
二、實驗要求
1、分析各個模塊在系統中的作用,并說明系統構成的原理。
2、說明系統各個參數設定的具體依據。
3、改變系統參數,結合輸出波形分析造成輸出波形失真的原因。
三、實驗仿真
四、實驗結論
輸出端較好的還原了輸入信號,經過判決器后輸出的波形為連續的1和-1,從波形上來看,就是一些看似無規律的方波,而積分器正是在這些方波為高(即1)時積分,而在為低(-1)時反積分,從而還原輸入信號。但是在上圖中我們看到在信號低頻部分(即波形左邊部分)有失真現象,這是因為量化階設置比較大,雖然能夠較好的還原高頻部分,但卻在低頻部分卻產生了失真,
第二篇:通信原理仿真
通信原理仿真實驗提綱
1.任意產生一個調制信號,畫出其波形及其頻譜;
2.產生一個余弦載波信號,畫出其波形及其頻譜;
3.分別采用AM(幅度),DSB(雙邊),SSB(單邊)的方式對調
制信號進行調制,畫出已調信號的波形及頻譜;
4.采用適當的方式,分別對3中得到的已調信號進行解調,畫
出解調信號的波形;
5.產生一個高斯白噪聲,疊加在已調信號上,然后進行解調,畫出解調信號的波形;
6.比較4和5中的結果;
7.編寫A律13折線PCM編碼的程序,能夠對任意輸入信號輸
出其PCM編碼;
8.產生一個隨機數字信號,分別進行ASK,FSK,PSK調制解調,畫出解調前后的波形
第三篇:通信仿真課程設計 初稿
基于MATLAB的點對點通信仿真
摘
要
在當前飛速發展的信息時代,隨著數字通信技術計算機技術的發展,以及通信網絡與計算機網絡的相互融合,信息技術已成為21世紀社會國際化的強大動力。Matlab軟件包含眾多的功能各異的工具箱,涉及領域包括:數字信號處理、通信技術、控制系統、神經網絡、模糊邏輯、數值統計、系統仿真和虛擬現實技術等。作為一個功能強大的數學工具軟件,在很多領域中得到本文利用Matlab對點對點通信進行仿真實驗,實現信號從信源到信宿過程的模擬并獲得信噪比與誤碼率的曲線圖,研究了相移鍵控調制下信噪比與誤碼率的關系并比較了不同進制相移鍵控調制下誤碼率—信噪曲線的異同,同時也研究了不同中繼信道對誤碼率—信噪比曲線的影響了廣泛的應用。
關鍵字:MATLAB仿真;點對點通信;PSK;中繼信道;誤碼率
基于MATLAB的點對點通信仿真............................................................................................1 摘
要............................................................................................................................1 1 引言.................................................................................................................................2 1.1 課程設計的目的和意義...........................................................................................2 1.2 課程設計內容.........................................................................................................2 2仿真環境簡介....................................................................................................................3 3系統理論分析....................................................................................................................3 3.1通信系統模型..........................................................................................................3 3.2 相移鍵控原理.........................................................................................................4 3.2.1二進制相移鍵控原理......................................................................................4 3.2.2 多進制相移鍵控調制原理..............................................................................5 4 仿真過程基于Matlab的實現.............................................................................................6 4.1仿真條件及符號說明................................................................................................6 4.1.1仿真條件:....................................................................................................6 4.1.2符號說明........................................................................................................6 5仿真結果...........................................................................................................................8 6仿真模型分析....................................................................................................................9 6.1模型結果分析..........................................................................................................9 6.2模型優缺點分析及改進方案...................................................................................10 6.2.1優缺點分析..................................................................................................10 6.2.2改進發案......................................................................................................10 7小結體會.........................................................................................................................10 參考文獻............................................................................................................................11 附錄...................................................................................................................................12 1 8PSK信噪比—誤碼率作圖代碼................................................................................12 2 QPSK信噪比—誤碼率作圖代碼................................................................................13 3 BPSK信噪比—誤碼率作圖程序................................................................................15 4 QPSK加三跳中繼作圖程序....................................................................................16 5 QPSK信號加兩跳中繼作圖程序................................................................................18 6 QPSK信號加一跳中繼作圖程序................................................................................20 引言
1.1 課程設計的目的和意義
鞏固所學的專業技術知識,培養學生綜合運用所學知識與生產實踐經驗,分析和解決工程技術問題的能力,培養初步的獨立設計能力;通過課程設計仿真試驗,了解并掌握通信系統、通信調制解調等技術的一般設計方法,訓練并提高學生在理論計算、結構設計、工程繪圖、查閱設計資料、運用標準與規范和應用計算機等方面的能力,更好地將理論與實踐相結合,提高綜合運用所學理論知識獨立分析和解決問題的能力。并且掌握Matlab的簡單操作方法。
1.2 課程設計內容
1)設計一個四進制相移鍵控調制系統,繪出誤碼率與信噪比的關系曲線。2)繪制不同進制相移鍵控下誤碼率與信噪比的關系曲線,并分析是否與理論相符,得出結論。
3)
設計一個加中繼且的四進制相移鍵控系統,繪出其誤碼率與信噪比的關系曲線。
4)繪出四進制相移系統加不同跳數中繼情況下其誤碼率與信噪比的關系曲線,并分析是否與理論相符,得出結論。
2仿真環境簡介
本次課程設計使用
MATLAB,運用蒙特?卡羅方法(Monte Carlo method),對通信系統進行仿真。
MATLAB是美國MathWorks公司出品的商業數學軟件,用于算法開發、數據可視化、數據分析以及數值計算的高級技術計算語言和交互式環境。MATLAB是一個包含大量計算算法的集合。其擁有600多個工程中要用到的數學運算函數,可以方便的實現用戶所需的各種計算功能。函數中所使用的算法都是科研和工程計算中的最新研究成果,而前經過了各種優化和容錯處理。在通常情況下,可以用它來代替底層編程語言,如C和C++。在計算要求相同的情況下,使用MATLAB的編程工作量會大大減少。MATLAB的這些函數集包括從最簡單最基本的函數到諸如矩陣,特征向量、快速傅立葉變換的復雜函數。函數所能解決的問題其大致包括矩陣運算和線性方程組的求解、微分方程及偏微分方程的組的求解、符號運算、傅立葉變換和數據的統計分析、工程中的優化問題、稀疏矩陣運算、復數的各種運算、三角函數和其他初等數學運算、多維數組操作以及建模動態仿真等。
蒙特?卡羅方法(Monte Carlo method),也稱統計模擬方法,是二十世紀四十年代中期由于科學技術的發展和電子計算機的發明,而被提出的一種以概率統計理論為指導的一類非常重要的數值計算方法。是指使用隨機數(或更常見的偽隨機數)來解決很多計算問題的方法。
這里主要使用MATLAB提供的功能,包括:數值和符號計算,工程與科學繪圖等,實現蒙特?卡羅過程,對通信系統進行仿真。最后給出幾種不同通信系統的通信效果的可視化結果,并對結果進行分析,比較。
3系統理論分析
3.1通信系統模型
圖2-1:通信系統模型
如圖2-1所示為通信系統的模型,由一下幾個部分組成: 信息源(簡稱信源):把各種消息轉換成原始電信號,如麥克風。信源可分為模擬信源和數字信源。
發送設備:產生適合于在信道中傳輸的信號。信道:將來自發送設備的信號傳送到接收端的物理媒質。分為有線信道和無線信道兩大類。
信道是信息論中的一個主要概念。它是用來傳送信息的,所以理論上應解決它能無錯誤地傳送的最大信息率,也就是計算信道容量問題,并證明這樣的信息率是能達到或逼近的,最好還能知道如何實現,這就是信道編碼問題。
在理論研究中,一條信道往往被分成信道編碼器、信道本身和信道譯碼器。人們可以變更編碼器、譯碼器以獲得最佳的通信效果,因此編碼器、譯碼器往往是指易于變動和便于設計的部分,而信道就指那些比較固定的部分。但這種劃分或多或少是隨意的,可按具體情況規定。例如調制解調器和糾錯編譯碼設備一般被認為是屬于信道編碼器、譯碼器的,但有時把含有調制解調器的信道稱為調制信道;含有糾錯編碼器、譯碼器的信道稱為編碼信道。信息通過信道傳輸,由于物理介質的干擾和無法避免噪聲,信道的輸入和輸出之間僅具有統計意義上的關系,在做出唯一判決的情況下將無法避免差錯,其差錯概率完全取決于信道特性。因此,一個完整、實用的通信系統通常包括信道編譯碼模塊。視頻信號在傳輸前都會經過高度壓縮以降低碼率,傳輸錯誤會對最后的圖像恢復產生極大的影響,因此信道編碼尤為重要。噪聲源:集中表示分布于通信系統中各處的噪聲。
接收設備:從受到減損的接收信號中正確恢復出原始電信號。
受信者(信宿):把原始電信號還原成相應的消息,如揚聲器等。
3.2 相移鍵控原理
數字相位調制(phase shift keying,PSK)又稱相移鍵控。二進制相移鍵控記做2PSK是相移鍵控最簡單的形式,還有多進制相移鍵控MPSK是二進制相移鍵控的推廣,本次仿真實驗主要用到了二進制相移鍵控(BPSK),四進制相移鍵控(QPSK)及八進制相移鍵控(8PSK)三種調制方式
3.2.1二進制相移鍵控原理
二進制相移鍵控是用二進制數字信號去控制載波的相位,使已調等幅、恒定載波的載波相位與待發數字信號相對應;只有兩種對應狀態,例如載波相位以0相與(傳號)和“0”(空號)。如果數字基帶信號g(t)的的幅度是
1、p相分別代表“1”寬度為Tb的矩形脈沖,則2PSK信號可表示為:
j2PSK(t)=Acos(w0t+q)
q取0時代表“1”,取p時代表“0”
由于2PSK信號相當于DSB信號,因而不能采用包絡解調,要采用相干解調;但必須在DSB解調后加一抽樣判決以便恢復原數字信號。其判決準則為:抽養值大于0,判為1 ;抽養值小于0,判為0 下圖為2PSK信號的波形圖及矢量圖
圖3-1:2PSK信號波形圖 圖3-2:2PSK信號矢量圖
3.2.2 多進制相移鍵控調制原理
多進制相移鍵控是二進制的推廣。它用多個相位狀態的正弦震蕩分別表示不同的數字信息,通常相位用M=2n計算,有2,4,8,16相制等,M取不同的相位,分別于n為二進制碼元的不同組合相對應。其信號的產生于BPSK類似只是維度不同在處理時略有差別,在此不再詳細介紹
圖3-3和圖3-4分別為QPSK信號及8PSK信號的矢量圖
010011013π/4相11π/4相1103π/8相111π/8相0-π/8相101-3π/8相100
5π/8相7π/8相-7π/8相0010-3π/4相 0010-π/4相-5π/8相000
圖3-3:QPSK信號矢量圖 圖3-4:8PSK信號矢量圖 仿真過程基于Matlab的實現
4.1仿真條件及符號說明 4.1.1仿真條件:
(1)整個通信的等效高斯白噪聲方差為1;(2)假設信道估計是理想的;
(3)經過不同跳數中繼的QPSK信號總的增益相同
4.1.2符號說明
(1)ray為瑞利衰落信道(2)n為高斯噪聲
(3)r為信號經過瑞利衰落信道后的接受信號(4)y為接收端對接收信號還原處理后的信號(5)snr為信噪比
(6)xigma為噪聲方差(7)ber為誤碼率(8)li為單位虛數i(9)s為調制信號的相位
(10)G為經過中繼轉發是信號的增益
4.2仿真過程的實現
(1)調制信號的產生(以QPSK為例)
產生兩個(0,1)的隨機數,根據兩個數的范圍,規定發送的兩位原碼的值及其相位
ss1=rand(1,2);if((ss1(1,1)>0.5)&&(ss1(1,2)>0.5))s1(1,1)=1;s1(1,2)=1;s=exp(1i*(pi/4));elseif((ss1(1,1)<0.5)&&(ss1(1,2)>0.5))s1(1,1)=0;s1(1,2)=1;s=exp(1i*pi*(3/4));elseif((ss1(1,1)<0.5)&&(ss1(1,2)<0.5))s1(1,1)=0;s1(1,2)=0;s=exp(1i*pi*(5/4));
else
s1(1,1)=1;s1(1,2)=0;s=exp(1i*pi*(7/4));
(2)信道的產生
ray=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
(3)高斯噪聲的產生
n=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
(4)接收信號
r=s*(snr(L)*xigma)*ray+n;(5)接收信號的還原
y=r/ray;(6)接受判決的實現
根據接受信號最終落在矢量圖中的位置判斷發送的QPSK信號的值,程序如下: if(real(y)>0)y1=1;else y1=-1;end
if(imag(y)>0)y2=1;else
y2=-1;end
if((y1==1)&&(y2==1))rs=[1,1];sre=exp(1i*(pi/4));elseif((y1==-1)&&(y2==1))rs=[0,1];sre=exp(1i*pi*(3/4));elseif((y1==-1)&&(y2==-1))rs=[0,0];sre=exp(1i*pi*(5/4));else
rs=[1,0];sre=exp(1i*pi*(7/4));
(7)信號經過中繼轉發過程的實現
r=s*(snr(L)*xigma)*ray+n;y1=r/ray;ray1=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));n1=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));r1=y1*ray1*G1+n1;
5仿真結果
仿真結果如下圖所示:
圖5-1為8PSK,QPSK,BPSK信號加高斯白噪聲經過相同信道,其誤碼率與信噪比的關系曲線 圖5-2為QPSK信號分別經過一跳中繼,兩跳中繼及三跳中繼后信噪比與誤碼率的關系曲線 100 M進制相位調制誤碼率—信噪比曲線圖8PSK10-1QPSKBPSKber(誤碼率)10-210-310-410-50 ***0snr(信噪比)圖5-1:M進制相位調制信噪比—誤碼率曲線圖
100對比加不同跳數中繼是信噪比與誤碼率的關系加三跳中繼加兩跳中繼加一跳中繼10-1誤碼率10-210-3012345678910信噪比(dB)圖5-2:對比加不同跳數中繼時信噪比與誤碼率的關系
6仿真模型分析
6.1模型結果分析
圖5-1所示為M進制相位調制信號誤碼率—信噪比的關系曲線 由圖可知:誤碼率隨著信噪比的增大而減小,即要想減小信號在傳輸過程中的失真度必須增加信號的發射功率以減小信號的誤碼率;對于BPSK、QPSK及8PSK相位調制,在相同信噪比的情況下BPSK的誤碼率最小QPSK次之,8PSK的誤碼率最大;同時,要想實現想同的誤碼率,8PSK調制時必須提供更大的信號功率,QPSK次之,BPSK所需的信號功率最小。然而對于MPSK系統,M的值越大,其功率譜的主瓣越大頻帶利用率越高,發送數據的速率越快。因此為提供較高的服務質量,在實際的運用中需均衡考慮信號的誤碼率及發送速率,因而MPSK系統一般很少取較大的M值,一般取M £16,并且以M=4的QPSK使用最多,其次是8PSK,16PSK及BPSK都較少使用。
圖5-2所示為在信號的總增益相同的情況下對比QPSK信號加不同跳數中繼時信噪比與誤碼率的關系的曲線圖。由圖可知在相同信噪比的情況下,信號所經過的中繼跳數越多其誤碼率就越大,原因是所經過的中繼跳數增加后所加入噪聲也怎加了,同時每經過一個信道時也會增加數據傳輸的誤碼率。
6.2模型優缺點分析及改進方案 6.2.1優缺點分析
本文對MPSK信號經高斯信道傳輸的接受誤碼率進行蒙特卡羅仿真,仿真過程取了1000000個點,得到了較為準確的信噪比—誤碼率的關系曲線;同時本文還考慮了加入中繼時的情況,對比了加不同跳數中繼對信噪比—誤碼率曲線的影響獲得了比較正確的結論;當然本模型也有一些不足之處,例如通信系統比較簡單沒有加入編碼和解碼的過程,算法的設計也還不是特別簡化,所獲得的信噪比與誤碼率的關系曲線也沒有和實際的曲線進行對比,數據的說服力還不夠強。
6.2.2改進發案
由于時間有限,我們現在所學的知識有限,整個仿真模型存在大量的不足之處,我在此提出以下改進方案:
(1)本通信仿真模型還可以加入編碼解碼的過程
(2)加中繼時的模型還可以討論一下協作中繼時的情況(3)本模型還可以用Simulink模塊來進行仿真
(4)可以把仿真所獲得的的曲線與實際情況下的信噪比—誤碼率的曲線拿來對比
7小結體會
歷時兩個月的軟件課程設計讓我們受益良多,從開始不懂matlab做起課程設計來一頭霧水到后期可以和老師討論自己想法,這中間都離不開老師的悉心教誨。
這次軟件課程設計的開展,其目的在于讓我們了解通信過程是如何實現的,以及讓我們深入了解matlab是如何作為仿真軟件仿真通信過程并結合相關的實例讓我們在原有了解的基礎上設計完成老師布置的課題。
在進行軟件課程設計的過程中我們遇到了一系列的問題,首先是對于matlab軟件的不熟悉,好在在大家的摸索和交流以及和老師的交流中慢慢熟悉。其次,由于在本專業的推薦課表中未導入通信原理等相關課程,使得我們對于調制解調,信道,編碼,接受判別等方面并不了解,大家一起查閱相關書籍,積極交流,積極主動的詢問老師,自己嘗試編碼,錯誤共享,成果共享,在老師的幫助下將上述模糊的概念一一攻克,并在錯誤中學會了進步。
在老師未布置課程題目時,老師給了我們積極思考的空間,通過自己在個人電腦上的編碼實踐和結合借閱的有關書籍,老師傳給我們的實例和學習資料,自己摸索,在上課時間和老師溝通,進行每人為時3分鐘的問題陳述,自己進程的陳述,結合陳述,老師給予相應的解答和指導。大家都表示在這個自主學習的過程中受益匪淺。
老師布置課程設計題目后,大家結合開始做的準備工作一步一個腳印的慢慢完善我們的程序和功能,在學會如何對多進制調制進行編碼的基礎上進行課程題目相關的仿真,并針對matlab仿真的結果進行交流,在原本點對點的單信道通信的基礎上加了中繼信道,實現了對于不同跳數的仿真,并進行了對比。同時由于不同的調制方式對誤碼率也有一定的影響,我們在基于多進制調制方式仿真上做了一個單信道的8PSK,QPSK,BPSK不同調制方式對接受端誤碼率的影響的仿真,并對結果進行了對比得出了相同信噪比時BPSK的誤碼率最低,QPSK其次,8PSK的誤碼率最高的仿真結果。
在本次課程設計實訓中,我們認識到了實訓遠比理論學習更有樂趣,仿真的意義就在于無需花費過大的成本就可以在計算機上通過matlab等仿真軟件模擬通信的過程,對最終的結果有一個大致的認識和了解,并與理論結果進行比對,找出產生差異的原因,同時節省了移動運營商的成本。
而對于這歷時兩個月的自我學習和共同學習,我們意識到學習有時候不是一個人的過程,它可以是一群人共同進步的過程。在交流和溝通中共同學習,共同協作,共同完成課題。在老師的幫助、在理解的基礎上、在實踐和理論相結合的基礎上學習,無疑是進步和積極的。
總之,在這次軟件課程設計的學習過程中無論是學習方法還是軟件仿真方法,我們都獲益匪淺,同時也感謝在課程設計過程中智慧老師不遺余力的教誨和給予我們的幫助。過程是艱辛的,但成果是美麗的。
參考文獻
[1] 王秉鈞,馮玉珉 通信原理 清華大學出版社 [2] 樊昌信.通信原理.國防工業出版社
[3] 黃載祿,殷蔚華.通信原理.科學出版社
[4] 李宗豪.基本通信原理.北京郵電大學出版社
[5] 甘勤濤.MATLAB 2012數學計算與工程分析從入門到精通.機械工業出版社 [6] 求是科技編著.MATLAB 7.0從入門到精通.人民郵電出版社
[7](美)William J.Palm III著;黃開枝譯.MAtlab基礎教程.清華大學出版社
附錄
部分程序代碼: 8PSK信噪比—誤碼率作圖代碼
clear all;clf;
snrindb=0:1:20;
snr=10.^(0.1*snrindb);xigma=1;
count=zeros(1,length(snrindb));ber8PSK=zeros(1,length(snrindb));for L=1:length(snrindb)
for num=1:1000000
ss1=rand(1,3);
if((ss1(1,1)>0.5)&&(ss1(1,2)>0.5)&&(ss1(1,3)>0.5))
s1=[1,1,1];
s=exp(1i*(pi/8));
elseif((ss1(1,1)>0.5)&&(ss1(1,2)>0.5)&&(ss1(1,3)<0.5))
s1=[1,1,0];
s=exp(1i*pi*(3/8));
elseif((ss1(1,1)<0.5)&&(ss1(1,2)>0.5)&&(ss1(1,3)<0.5))
s1=[0,1,0];
s=exp(1i*pi*(5/8));
elseif((ss1(1,1)<0.5)&&(ss1(1,2)>0.5)&&(ss1(1,3)>0.5))
s1=[0,1,1];
s=exp(1i*pi*(7/8));
elseif((ss1(1,1)<0.5)&&(ss1(1,2)<0.5)&&(ss1(1,3)>0.5))
s1=[0,0,1];
s=exp(1i*pi*(9/8));
elseif((ss1(1,1)<0.5)&&(ss1(1,2)<0.5)&&(ss1(1,3)<0.5))
s1=[0,0,0];
s=exp(1i*pi*(11/8));
elseif((ss1(1,1)>0.5)&&(ss1(1,2)<0.5)&&(ss1(1,3)<0.5))
s1=[1,0,0];
s=exp(1i*pi*(13/8));
elseif((ss1(1,1)>0.5)&&(ss1(1,2)<0.5)&&(ss1(1,3)>0.5))
s1=[1,0,1];
s=exp(1i*pi*(15/8));
end ray=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
n=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
r=s*(snr(L)*xigma)*ray+n;
y=r/ray;
a=real(y);
b=imag(y);
c=atan(b/a);
if(a>0&&b>0&&c>=0&&c<(pi/4))
rs=[1,1,1];
elseif(a>0&&b>0&&c>=(pi/4)&&c<(pi/2))
rs=[1,1,0];
elseif(a<0&&b>0&&c>=(-pi/2)&&c<(-pi/4))
rs=[0,1,0];
elseif(a<0&&b>0&&c>=(-pi/4)&&c<0)rs=[0,1,1];
elseif(a<0&&b<0&&c>=0&&c<(pi/4))
rs=[0,0,1];
elseif(a<0&&b<0&&c>=(pi/4)&&c<(pi/2))
rs=[0,0,0];
elseif(a>0&&b<0&&c>=(-pi/2)&&c<(-pi/4))
rs=[1,0,0];
elseif(a>0&&b<0&&c>=(-pi/4)&&c<0)
rs=[1,0,1];
end
if(rs(1,1)~=s1(1,1)||rs(1,2)~=s1(1,2)||rs(1,3)~=s1(1,3))
count(L)=count(L)+1;
end
end
ber8PSK(L)=count(L)/1000000;
end
semilogy(snrindb,ber8PSK,'r>-');gtext('8PSK')hold on;QPSK信噪比—誤碼率作圖代碼
snrindb=0:1:20;
snr=10.^(0.1*snrindb);xigma=1;
count=zeros(1,length(snrindb));berQPSK=zeros(1,length(snrindb));for L=1:length(snrindb)
for num=1:1000000
ss1=rand(1,2);
if((ss1(1,1)>0.5)&&(ss1(1,2)>0.5))
s1(1,1)=1;
s1(1,2)=1;
s=exp(1i*(pi/4));
elseif((ss1(1,1)<0.5)&&(ss1(1,2)>0.5))
s1(1,1)=0;
s1(1,2)=1;
s=exp(1i*pi*(3/4));
elseif((ss1(1,1)<0.5)&&(ss1(1,2)<0.5))
s1(1,1)=0;
s1(1,2)=0;
s=exp(1i*pi*(5/4));
else
s1(1,1)=1;
s1(1,2)=0;
s=exp(1i*pi*(7/4));
end
ray=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
n=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
r=s*(snr(L)*xigma)*ray+n;
y=r/ray;
if(real(y)>0)
y1=1;
else
y1=-1;
end
if(imag(y)>0)
y2=1;
else
y2=-1;
end
if((y1==1)&&(y2==1))
rs=[1,1];sre=exp(1i*(pi/4));
elseif((y1==-1)&&(y2==1))
rs=[0,1];sre=exp(1i*pi*(3/4));
elseif((y1==-1)&&(y2==-1))
rs=[0,0];sre=exp(1i*pi*(5/4));
else
rs=[1,0];sre=exp(1i*pi*(7/4));end
if((rs(1,1)~=s1(1,1))||rs(1,2)~=s1(1,2))
count(L)=count(L)+1;
end
end
berQPSK(L)=count(L)/1000000;
end
semilogy(snrindb,berQPSK,'r>-');gtext('QPSK')hold on;
BPSK信噪比—誤碼率作圖程序
snrindb=0:1:20;
snr=10.^(0.1*snrindb);xigma=1;
count=zeros(1,length(snrindb));ber=zeros(1,length(snrindb));for L=1:length(snrindb)
for num=1:1000000
ss1=rand;if ss1>0.5
s1=1;
s=exp(1i*0);
elseif ss1<0.5
s1=0;
s=exp(1i*pi);
end
ray=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
n=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
r=s*(snr(L)*xigma)*ray+n;
y=r/ray;
if(real(y)>0)
rs=1;
else
rs=0;
end
if(rs~=s1)
count(L)=count(L)+1;
end
end
ber(L)=count(L)/1000000;end
semilogy(snrindb,ber,'r>-');gtext('BPSK')hold on;QPSK加三跳中繼作圖程序
clear all;clf;
snrindb=0:1:10;snr=10.^(0.1*snrindb);xigma=1;
count=zeros(length(snrindb));ber=zeros(length(snrindb));G1=2;
G2=3;G3=6;
for L=1:length(snr)
for num=1:100000
ss1=rand(1,2);
if((ss1(1,1)>0.5)&&(ss1(1,2)>0.5))
s1(1,1)=1;
s1(1,2)=1;
s=exp(1i*(pi/4));
elseif((ss1(1,1)<0.5)&&(ss1(1,2)>0.5))
s1(1,1)=0;
s1(1,2)=1;
s=exp(1i*pi*(3/4));
elseif((ss1(1,1)<0.5)&&(ss1(1,2)<0.5))
s1(1,1)=0;
s1(1,2)=0;
s=exp(1i*pi*(5/4));
else
s1(1,1)=1;
s1(1,2)=0;
s=exp(1i*pi*(7/4));
end
ray=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
n=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
r=s*(snr(L)*xigma)*ray+n;
y1=r/ray;
ray1=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
n1=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
r1=y1*ray1*G1+n1;
y2=r1/ray1;
ray2=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
n2=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
r2=y2*ray2*G2+n2;
y3=r2/ray2;
ray3=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
n3=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
r3=y3*ray3*G3+n3;
y=r3/ray3;
if(real(y)>0)
y1=1;
else
y1=-1;
end
if(imag(y)>0)
y2=1;
else
y2=-1;
end
if((y1==1)&&(y2==1))
rs=[1,1];sre=exp(1i*(pi/4));
elseif((y1==-1)&&(y2==1))
rs=[0,1];sre=exp(1i*pi*(3/4));
elseif((y1==-1)&&(y2==-1))
rs=[0,0];sre=exp(1i*pi*(5/4));
else
rs=[1,0];sre=exp(1i*pi*(7/4));
end
if((rs(1,1)~=s1(1,1))||rs(1,2)~=s1(1,2))
count(L)=count(L)+1;
end
end
ber(L)=count(L)/100000;
end
semilogy(snrindb,ber);hold on;QPSK信號加兩跳中繼作圖程序
snrindb=0:1:10;
snr=10.^(0.1*snrindb);xigma=1;
count=zeros(length(snrindb));ber=zeros(length(snrindb));G1=3;
G2=12;
for L=1:length(snr)
for num=1:100000
ss1=rand(1,2);
if((ss1(1,1)>0.5)&&(ss1(1,2)>0.5))
s1(1,1)=1;
s1(1,2)=1;
s=exp(1i*(pi/4));
elseif((ss1(1,1)<0.5)&&(ss1(1,2)>0.5))
s1(1,1)=0;
s1(1,2)=1;
s=exp(1i*pi*(3/4));
elseif((ss1(1,1)<0.5)&&(ss1(1,2)<0.5))
s1(1,1)=0;
s1(1,2)=0;
s=exp(1i*pi*(5/4));
else
s1(1,1)=1;
s1(1,2)=0;
s=exp(1i*pi*(7/4));
end
ray=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
n=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
r=s*(snr(L)*xigma)*ray+n;
y1=r/ray;
ray1=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
n1=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
r1=y1*ray1*G1+n1;
y2=r1/ray1;
ray2=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
n2=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
r2=y2*ray2*G2+n2;
y=r2/ray2;
if(real(y)>0)
y1=1;
else
y1=-1;
end
if(imag(y)>0)
y2=1;
else
y2=-1;
end
if((y1==1)&&(y2==1))
rs=[1,1];sre=exp(1i*(pi/4));
elseif((y1==-1)&&(y2==1))
rs=[0,1];sre=exp(1i*pi*(3/4));
elseif((y1==-1)&&(y2==-1))
rs=[0,0];sre=exp(1i*pi*(5/4));
else
rs=[1,0];sre=exp(1i*pi*(7/4));
end
if((rs(1,1)~=s1(1,1))||rs(1,2)~=s1(1,2))
count(L)=count(L)+1;
%í3??′í?óbitêy
end
end
ber(L)=count(L)/100000;
end
semilogy(snrindb,ber);hold on;QPSK信號加一跳中繼作圖程序
snrindb=0:1:10;
snr=10.^(0.1*snrindb);xigma=1;
count=zeros(length(snrindb));ber=zeros(length(snrindb));G=36;
for L=1:length(snr)
for num=1:100000
ss1=rand(1,2);
if((ss1(1,1)>0.5)&&(ss1(1,2)>0.5))
s1(1,1)=1;
s1(1,2)=1;
s=exp(1i*(pi/4));
elseif((ss1(1,1)<0.5)&&(ss1(1,2)>0.5))
s1(1,1)=0;
s1(1,2)=1;
s=exp(1i*pi*(3/4));
elseif((ss1(1,1)<0.5)&&(ss1(1,2)<0.5))
s1(1,1)=0;
s1(1,2)=0;
s=exp(1i*pi*(5/4));
else
s1(1,1)=1;
s1(1,2)=0;
s=exp(1i*pi*(7/4));
end
ray=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
n=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
r=s*(snr(L)*xigma)*ray+n;
y1=r/ray;
ray1=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
n1=sqrt(1/2)*(randn(1,1)+1i*randn(1,1));
r1=y1*ray1*G+n1;
y=r1/ray1;
if(real(y)>0)
y1=1;
else
y1=-1;
end
if(imag(y)>0)
y2=1;
else
y2=-1;
end
if((y1==1)&&(y2==1))
rs=[1,1];sre=exp(1i*(pi/4));
elseif((y1==-1)&&(y2==1))
rs=[0,1];sre=exp(1i*pi*(3/4));
elseif((y1==-1)&&(y2==-1))
rs=[0,0];sre=exp(1i*pi*(5/4));
else
rs=[1,0];sre=exp(1i*pi*(7/4));
end
if((rs(1,1)~=s1(1,1))||rs(1,2)~=s1(1,2))
count(L)=count(L)+1;
end
end
ber(L)=count(L)/100000;
end
semilogy(snrindb,ber);hold on;
第四篇:基于MATLAB的通信系統的仿真報告參考例文
摘要
Simulink是Mathworks公司推出的基于Matlab平臺的著名仿真環境Simulin作為一種專業和功能強大且操作簡單的仿真工具,目前已被越來越多的工程技術人員所青睞,它搭建積木式的建模仿真方式既簡單又直觀,而且已經在各個領域得到了廣泛的應用。
本文主要是以simulink為基礎平臺,對2ASK、2FSK、2PSK信號的仿真。文章第一章內容是對simulink的簡單介紹和通信技術的目前發展和未來展望;第二章是對2ASK、2FSK和2PSK信號調制及解調原理的詳細說明;第三章是本文的主體也是這個課題所要表現的主要內容,第三章是2ASK、2FSK和2PSK信號的仿真部分,調制和解調都是simulink建模的的方法,在解調部分各信號都是采用相干解調的方法,而且在解調的過程中都對整個系統的誤碼率在display模塊中有所顯示
本文的主要目的是對simulink的熟悉和對數字通信理論的更加深化和理解。
關鍵詞:2ASK、2FSK、2PSK,simulink,調制,相干解調
目 錄
第一章 緒論...........................................................31 1.1 MATLAB/Smulink的簡介...............................................31 1.2 通信發展簡史.......................................錯誤!未定義書簽。1 1.3 通信技術的現狀和發展趨勢...........................錯誤!未定義書簽。4 第二章 2ASK、2FSK、2PSK和2DPSK的基本原理和實現......錯誤!未定義書簽。7 2.1 2ASK的基本原理和調制解調實現.....................錯誤!未定義書簽。8 2.2 2FSK的基本原理和調制解調實現....................錯誤!未定義書簽。11 2.3 2PSK的基本原理和調制解調實現
...................錯誤!未定義書簽。14 2.2DPSK的基本原理和調制解調實現
...................錯誤!未定義書簽。18 第三章 Smulink的模型建立和仿真....................錯誤!未定義書簽。24 3.1 2ASK的仿真......................................錯誤!未定義書簽。24 3.2 2FSK的仿真......................................錯誤!未定義書簽。32 3.3 2PSK的仿真......................................錯誤!未定義書簽。41 總結....................................................................46 致謝....................................................................47 參考文獻................................................................47
第一章
緒論
1.1 MATLAB/Simulink的簡介
美國Mathworks公司于1967年推出了矩陣實驗室“Matrix Laboratory”(縮寫為Matlab)這就是Matlab最早的雛形。開發的最早的目的是幫助學校的老師和學生更好的授課和學習。從Matlab誕生開始,由于其高度的集成性及應用的方便性,在高校中受到了極大的歡迎。由于它使用方便,能非常快的實現科研人員的設想,極大的節約了科研人員的時間,受到了大多數科研人員的支持,經過一代代人的努力,目前已發展到了7.X版本。Matlab是一種解釋性執行語言,具有強大的計算、仿真、繪圖等功能。由于它使用簡單,擴充方便,尤其是世界上有成千上萬的不同領域的科研工作者不停的在自己的科研過程中擴充Matlab的功能,使其成為了巨大的知識寶庫。可以毫不夸張的說,哪怕是你真正理解了一個工具箱,那么就是理解了一門非常重要的科學知識。科研工作者通常可以通過Matlab來學習某個領域的科學知識,這就是Matlab真正在全世界推廣開來的原因。目前的Matlab版本已經可以方便的設計漂亮的界面,它可以像VB等語言一樣設計漂亮的用戶接口,同時因為有最豐富的函數庫(工具箱),所以計算的功能實現也很簡單,進一步受到了科研工作者的歡迎。另外,,Matlab和其他高級語言也具有良好的接口,可以方便的實現與其他語言的混合編程,進一步拓寬了Matlab的應用潛力。可以說,Matlab已經也很有必要成為大學生的必修課之一,掌握這門工具對學習各門學科有非常重要的推進作用。
Simulink是MATLAB中的一種可視化仿真工具,也是目前在動態系統的建模和仿真等方面應用最廣泛的工具之一。確切的說,Simulink是一個用來對動態系統進行建模、仿真和分析的軟件包,它支持線性和非線性系統,連續、離散時間模型,或者是兩者的混合。系統還可以使多種采樣頻率的系統,而且系統可以是多進程的。Simulink工作環境進過幾年的發展,已經成為學術和工業界用來建模和仿真的主流工具包。在Simulink環境中,它為用戶提供了方框圖進行建模的圖形接口,采用這種結構畫模型圖就如同用手在紙上畫模型一樣自如、方便,故用戶只需進行簡單的點擊和拖動就能完成建模,并可直接進行系統的仿真,快速的得到仿真結果。它的主要特點在于:
1、建模方便、快捷;
2、易于進行模型分析;
3、優越的仿真性能。它與傳統的仿真軟件包微分方程和差分方程建模相比,具有更直觀、方便、靈活的優點。Simulink模塊庫(或函數庫)包含有Sinks(輸出方式)、Sources(輸入源)、Linear(線性環節)、Nonlinear(非線性環節)、Connection(連接與接口)和Extra(其他環節)等具有不同功能或函數運算的Simulink庫模塊(或庫函數),而且每個子模型庫中包含有相應的功能模塊,用戶還可以根據需要定制和創建自己的模塊。用Simulink創建的模型可以具有遞階結構,因此用戶可以采用從上到下或從下到上的結構創建模型。
用戶可以從最高級開始觀看模型,然后用鼠標雙擊其中的子系統模塊,來查看其下一級的內容,以此類推,從而可以看到整個模型的細節,幫助用戶理解模型的結構和各模塊之間的相互關系。在定義完一個模型后,用戶可以通過Simulink的菜單或MATLAB的命令窗口鍵入命令來對它進行仿真。菜單方式對于交互工作非常方便,而命令行方式對于運行仿真的批處理非常有用。采用Scope模塊和其他的顯示模塊,可以在仿真進行的同時就可立即觀看到仿真結果,若改變模塊的參數并再次運行即可觀察到相應的結果,這適用于因果關系的問題研究。仿真的結果還可以存放到MATLAB的工作空間里做事后處理。模型分析工具包括線性化和整理工具,MATLAB的所有工具及Simulink本身的應用工具箱都包含這些工具。由于MATLAB和SIMULINK的集成在一起的,因此用戶可以在這兩種環境下對自己的模型進行仿真、分析和修改模型。但是Simulink不能脫離MATLAB而獨立工作。,1.2 通信技術的歷史和發展
1.2.1 通信的概念
通信就是克服距離上的障礙,從一地向另一地傳遞和交換消息。消息是信息源所產生的,是信息的物理表現,例如,語音、文字、數據、圖形和圖像等都是消息(Message)。消息有模擬消息(如語音、圖像等)以及數字消息(如數據、文字等)之分。所有消息必須在轉換成電信號(通常簡稱為信號)后才能在通信系統中傳輸。所以,信號(Signal)是傳輸消息的手段,信號是消息的物質載體。
相應的信號可分為模擬信號和數字信號,模擬信號的自變量可以是連續的或離散的,但幅度是連續的(分別如圖1-2-1所示),如電話機、電視攝像機輸出的信號就是模擬信號。數字信號的自變量可以是連續的或離散的,但幅度是離散的(分別如圖1-2-2所示),如電船傳機、計算機等各種數字終端設備輸出的信號就是數字信號。
通信的目的是傳遞消息,但對受信者有用的是消息中包含的有效內容,也即信息(Information)。消息是具體的、表面的,而信息是抽象的、本質的,且消息中包含的信息的多少可以用信息量來度量。
通信技術,特別是數字通信技術近年來發展非常迅速,它的應用越來越廣泛。通信從本質上來講就是實現信息傳遞功能的一門科學技術,它要將大量有用的信息無失真,高效率地進行傳輸,同時還要在傳輸過程中將無用信息和有害信息抑制掉。當今的通信不僅要
有效地傳遞信息,而且還有儲存、處理、采集及顯示等功能,通信已成為信息科學技術的一個重要組成部分。
通信系統就是傳遞信息所需要的一切技術設備和傳輸媒質的總和,包括信息源、發送設備、信道、接收設備和信宿(受信者),它的一般模型如圖1-2-3所示。
信息源?發送設備?信道?接收設備?受信者
↑
噪聲源
圖1-2-3通信系統一般模型
通信系統可分為數字通信系統和模擬通信系統。數字通信系統是利用數字信號來傳遞消息的通信系統,其模型如圖1-2-4所示,信信源源信道數字制器數信信字受 道源信息?編?編?調? ?解?譯?譯?信碼器碼器道調器碼器碼器者 ↑
噪聲源
圖1-2-4 數字通信系統模型
模擬通信系統是利用模擬信號來傳遞消息的通信系統,其模型如圖1-2-5所示。
信息源?調制器?信道?解調器?受信者
?
噪聲源
圖1-2-5 模擬通信系統模型
數字通信系統較模擬通信系統而言,具有抗干擾能力強、便于加密、易于實現集成化、便于與計算機連接等優點。因而,數字通信更能適應對通信技術的越來越高的要求。近二十年來,數字通信發展十分迅速,在整個通信領域中所占比重日益增長,在大多數通信系統中已代替模擬通信,成為當代通信系統的主流。
1.2.2 通信的發展史簡介
遠古時代,遠距離的傳遞消息是以書信的形式來完成的,這種通信方式明顯具有傳遞時間長的缺點。為了在盡量短的時間內傳遞盡量多的消息,人們不斷地嘗試所能找到的各種最新技術手段。1837年發明的莫爾斯電磁式電報機標志著電通信的開始,之后,利用電進行通信的研究取得了長足的進步。1866年利用海底電纜實現了跨大西洋的越洋電報通信。1876年貝爾發明了電話,利用電信號實現了語音信號的有線傳遞,使信息的傳遞變的既迅速又準確,這標志著模擬通信的開始,由于它比電報更便于交流使用,所以直到20世紀前半葉這種采用模擬技術的電話通信技術比電報的到了更為迅速和廣泛的發展。1937年瑞威斯發明的脈沖編碼調制標志數字通信的開始。20世紀60年代以后集成電路、電子計算機的出現,使得數字通信迅速發展。在70年代末在全球發展起來的模擬移動電話在90年代中期被數字移動電話所代替,現有的模擬電視也正在被數字電視所代替。數字通信的高速率和大容量等各方面的優越性也使人們看到了它的發展前途。1.3 通信技術的發展現狀和趨勢
進入20世紀以來,隨著晶體管、集成電路的出現與普及、無線通信迅速發展。特別是在20世紀后半葉,隨著人造地球衛星的發射,大規模集成電路、電子計算機和光導纖維等現代技術成果的問世,通信技術在以下幾個不同方向都取得了巨大的成功。(1)微波中繼通信使長距離、大容量的通信成為了現實。
(2)移動通信和衛星通信的出現,使人們隨時隨地可通信的愿望可以實現。(3)光導纖維的出現更是將通信容量提高到了以前無法想象的地步。
(4)電子計算機的出現將通信技術推上了更高的層次,借助現代電信網和計算機的融合,人們將世界變成了地球村。
(5)微電子技術的發展,使通信終端的體積越來越小,成本越來越低,范圍越來越廣。例如,2003年我國的移動電話用戶首次超過了固定電話用戶。根據國家信息產業部的統計數據,到2005年底移動電話用戶近4億。
隨著現代電子技術的發展,通信技術正向著數字化、網絡化、智能化和寬帶化的方向發展。隨著科學技術的進步,人們對通信的要求越來越高,各種技術會不斷地應用于通信領域,各種新的通信業務將不斷地被開發出來。到那時人們的生活將越來越離不開通信。
第二章
數字頻帶傳輸系統
在數字基帶傳輸系統中,為了使數字基帶信號能夠在信道中傳輸,要求信道應具有低通形式的傳輸特性。然而,在實際信道中,大多數信道具有帶通傳輸特性,數字基帶信號不能直接在這種帶通傳輸特性的信道中傳輸。必須用數字基帶信號對載波進行調制,產生各種已調數字信號。
圖 2-1 數字調制系統的基本結構
數字調制與模擬調制原理是相同的,一般可以采用模擬調制的方法實現數字調制。但是,數字基帶信號具有與模擬基帶信號不同的特點,其取值是有限的離散狀態。這樣,可以用載波的某些離散狀態來表示數字基帶信號的離散狀態。基本的三種數字調制方式是:振幅鍵控(ASK)、移頻鍵控(FSK)和移相鍵控(PSK 或DPSK)。
本章重點論述二進制數字調制系統的原理及其抗噪聲性能,簡要介紹多進制 數字調制原理。2.1二進制振幅鍵控(2ASK)
振幅鍵控是正弦載波的幅度隨數字基帶信號而變化的數字調制.當數字基帶信號為二進制時,則為二進制振幅鍵控.設發送的二進制符號序列由0,1序列組成,發送0符號的概率為P,發送1符號的概率為1-P,且相互獨立.該二進制符號序列可表示為
(2-1-1)
其中:
(2-1-2)
Ts是二進制基帶信號時間間隔,g(t)是持續時間為Ts的矩形脈沖:
(2-1-3)
則二進制振幅鍵控信號可表示為
(2-1-4)
二進制振幅鍵控信號時間波型如圖 22 可以看出,2ASK信號的時間波形e2ASK(t)隨二進制基帶信號s(t)通斷變化,所以又稱為通斷鍵控信號(OOK信號).二進制振幅鍵控信號的產生方法如圖22 可以看出,2ASK信號與模擬調制中的AM信號類似.所以,對2ASK信號也能夠采用非相干解調(包絡檢波法)和相干解調(同步檢測法),其相應原理方框圖如圖25 所示._ 圖 2 – 2 二進制振幅鍵控信號時間波型
圖2-3 二進制振幅鍵控信號調制器原理框圖
圖 2 –4 二進制振幅鍵控信號解調器原理框圖
圖 26 所示,圖中波形g可分解為波形e和波形f,即二進制移頻鍵控信號可以看成是兩個不同載波的二進制振幅鍵控信號的疊加.若二進制基帶信號的1符號對應于載波頻率f1,0符號對應于載波頻率f2,則二進制移頻鍵控信號的時域表達式為
????e2FSK(t)???ang(t?nTs)?cos(?1t??n)???ang(t?nTb)?cos(?2t??n)
(2-1-5)
?n??n?
(2-1-6)
(2-1-7)
圖 2-6 二進制移頻鍵控信號的時間波形
由圖 28 所示.其解調原理是將二進制移頻鍵控信號分解為上下兩路二進制振幅鍵控信號,分別進行解調,通過對上下
兩路的抽樣值進行比較最終判決出輸出信號.非相干解調過程的時間波形如圖 210 所示.其基本原理是,二進制移頻鍵控信號的過零點數隨載波頻率不同而異,通過檢測過零點數從而得到頻率的變化.在圖 29)其中, an與2ASK和2FSK時的不同,在2PSK調制中,an應選擇雙極性,即
(2-1-10)
(2–1-11)
若g(t)是脈寬為Ts, 高度為1的矩形脈沖時,則有 e2PSK(t)=cosωct, 發送概率為P
-cosωct,發送概率為1-P 由式(2-111 所示.圖 2 – 11 二進制移相鍵控信號的時間波形
二進制移相鍵控信號的調制原理圖如圖 214 所示.當恢復的相干載波產生180°倒相時,解調出的數字基帶信號將與發送的數字基帶信號正好是相反,解調器輸出數字基帶信號全部出錯.
圖 2-122PSK信號的調制原理圖
圖 2-132PSK信號的解調原理圖
圖 2-142PSK信號相干解調各點時間波形
這種現象通常稱為“倒π”現象.由于在2PSK信號的載波恢復過程中存在著180°的相位模糊,所以2PSK信號的相干解調存在隨機的“倒π”現象,從而使得2PSK方式在實際中很少采用.
第三章 調制與解調仿真
3-1 2ASK的調制與解調仿真 1。調制仿真
(1)建立模型方框圖
2ASK信號調制的模型方框圖由DSP模塊中的sinwave信號源、方波信號源、相乘器等模塊組成,Simulink 模型圖如下所示:
圖3-1 2ASK信號調制的模型方框圖
其中正玄信是載波信號,方波代表S(t)序列的信號塬,正玄信號和方波相乘后就得到鍵控2ASK信號。2)參數設置
建立好模型之后就要設置系統參數,以達到系統的最佳仿真。從正玄信號源開始依次的仿真參數設置如下:
圖3-2 正玄信號參數設置
其中sin函數是幅度為2頻率為1Hz采樣周期為0.002的雙精度DSP信號
圖3-3 方波信號源的參數設置
方波信號是基于采樣的,其幅度設置為2,周期為3,占1比為2/3 3)系統仿真及各點波形圖
經過上面參數的設置后,就可以進行系統的仿真下面是示波器顯示的各點的波形圖:
圖3-4 各點的時間波形圖
由上圖可以看出信息源和載波信號相乘之后就產生了受幅度控制的2ASK信號。1. 解調仿真
2ASK的解調分為相干解調和非相干解調法,下面采用相干解調法對2ASK信號進行解調(1)建立simulink模型方框圖
相干解調也叫同步解調,就是用已調信號恢復出載波——既同步載波。再用載波和已調信號相乘,經過低通濾波器和抽樣判決器恢復出S(t)信號,simulink模型圖如下:
圖3-5 2ASK相干解調的 simulink模型方框圖
(2)參數設置
建立好模型之后,開始設置各點的參數,由于低通濾波器是濾去高頻的載波,才能恢復出原始信號,所以為了使已調信號的頻譜有明顯的搬移,就要使載波和信息源的頻率有明顯的差別,所以載波的頻率設置為100Hz.為了更好的恢復出信源信號,所以在此直接使用原載波信號作為同步載波信號。下面是低通濾波器的參數設置:
圖3-6 低通濾波器的參數設置圖
(3)系統仿真及各點時間波形圖
圖3-7 2ASK信號解調的各點時間波形圖
由上圖可以看出由于載波頻率的提高使的示波器在波形顯示上出現了一定的困難,不過要想顯示調制部分的理想波形只要調整示波器的顯示范圍即可。(4)誤碼率分析
由于在解調過程中沒有信道和噪聲,所以誤碼率相對較小,一般是由于碼間串擾或是參數設置的問題,由3-5圖可以看出此系統的誤碼率為0.3636。3-2 2FSK的調制與解調仿真 1.調制仿真
2FSK信號是由頻率分別為f1和f2的兩個載波對信號源進行頻率上的控制而形成的,其中f1和f2是兩個頻率有明顯差別的且都遠大于信號源頻率的載波信號,2FSK信號產生的simulink仿真模型圖如下所示:
圖3-8 2FSK信號的simulink模型方框圖
其中sin wave和sin wave1是兩個頻率分別為f1和f2的載波,Pulse Generator模塊是信號源,NOT實現方波的反相,最后經過相乘器和相加器生成2FSK信號,各參數設置如下: 載波f1的參設
圖3-9 載波sin wave的參數設置
其中幅度為2,f1=1Hz,采樣時間為0.002s在此選擇載波為單精度信號
f2的參數設置
圖3-10 載波sin wave1的參數設置 載波是幅度為2,f2=2,采樣時間.為0.002的單精度信號。
本來信號源s(t)序列是用隨機的0 1信號產生,在此為了方便仿真就選擇了基于采樣的Pulse Generator信號模塊其參數設置如下:
圖3-11 Pulse Generator信號模塊參數設置 其中方波是幅度為1,周期為3,占1比為1/3的基于采樣的信號。經過以上參數的設置后就可以進行系統的仿真,其各點的時間波形如下:
圖3-12 2FSK信號調制各點的時間波形
由上圖可以看出經過f1和f2兩個載波的調制,2FSK信號有明顯的頻率上的差別。2.解調仿真
解調方框圖如下所示:
圖3-13 2FSK信號解調方框圖
其中From File是一個封裝模塊,就是2FSK信號的調制模塊,兩個帶通濾波器分別將2FSK信號上下分頻f1和f2 ,后面就和2ASK信號的解調過程相同,各參數設置如下:
圖3-14 2FSK信號f1帶通濾波器參數設置
圖3-15 2FSK信號f2帶通濾波器參數設置
經過系統仿真后的各點時間波形如下:
圖3-15 2FSK信號解調各點時間波形
經過系統的仿真可以觀察出系統的誤碼率為0.7273,如下圖所示:
圖3-16 2FSK相干解調誤碼率
3-3 2PSK的調制與解調仿真 1.調制仿真
在二進制數字調制中,當正弦載波的相位隨二進制數字基帶信號離散變化時,則產生二進制移相鍵控(2PSK)信號.在此用已調信號載波的 0°和 180°分別表示二進制數字基帶信號的 1 和 0.用兩個反相的載波信號進行調制,其方框圖如下:
圖3-17 2PSK信號調制的simulink的模型圖
其中Sin wave和Sin wave1是反相的載波,正玄脈沖作為信號源,各個參數設置如下:
圖3-18 Sin wave信號參數設置
圖3-19 Sin wave1信號的參數設置
由上面兩個圖可以看出兩個載波是幅度為3頻率為4Hz采樣時間為0.002s的反相信號。
圖3-20 脈沖信號的參數設置
脈沖信號是幅度為2周期為1占空比為50%的基于時間的信號。
圖3-21 2PSK調制的各點時間波形
2. 解調仿真
(1)建立simulink模型方框圖如下:
圖3-22 2PSK解調框圖
(2)各點的時間波形如下所示:
圖3-23 2PSK解調各點的時間波形
(3)結果分析
由3-22圖可以看出其誤碼率為0.6667,由于沒有噪聲的影響所以誤碼率一般在0.5,由于系統的 不 準確性和碼間影響所以誤碼率稍微偏大。
總結
本文通過對數字信號的simulink建模仿真,使我數字鍵控的概念又有了更深的了解,而且也熟悉了simulink軟件的操作,在此非常感謝李義紅教員和井亞鵲教員對我的指導和支持。使我在設計和論文過程中非常順利的完成。由于個人能力有限,在設計和論文中可能存在種種的不足之處,希望各位教員和評委予以指出,謝謝!
致謝
參考文獻
[1] 王興亮 編著,《數字通信原理與技術》,西安電子科技大學出版社,第二版 [2] 徐明遠 邵玉斌 編著,《MATLAB仿真在通信與電子工程中的應用》,西安電子科技大學出版社,2005 [3] 孫屹 吳磊編著, 《Simulink通信仿真開發手冊》,國防工業出版社,2003
第五篇:MatlabSimulink通信系統建模與仿真課程設計
電子信息課程設計
題目:
Matlab/Simulink通信
系統建模與仿真
班級:
2008級電子(X)班
學號:
姓名:
電子信息課程設計
Matlab/Simulink通信系統建模與仿真
一、設計目的:學習Matlab/Simulink的功能及基本用法,對給定系統進行建模與仿真。
二、基本知識:Simulink是用來對動態系統進行建模、仿真和分析的軟件包,依托于MATLAB豐富的仿真資源,可應用于任何使用數學方式進行描述的動態系統,其最大優點是易學、易用,只需用鼠標拖動模塊框圖就能迅速建立起系統的框圖模型。
三、設計內容:
1、基本練習:
(1)
啟動SIMULINK:先啟動MATLAB,在命令窗口中鍵入:simulink,回車;或點擊窗口上的SIMULINK圖標按鈕。
圖(1)建立simulink
(2)
點擊File\new\Model或白紙圖標,打開一個創建新模型的窗口。
(3)
移動模塊到新建的窗口,并按需要排布。
(4)
連接模塊:將光標指向起始模塊的輸出口,光標變為“+”,然后拖動鼠標到目標模塊的輸入口;或者,先單擊起始模塊,按下Ctrl鍵再單擊目標模塊。
(5)
在連線中插入模塊:只需將模塊拖動到連線上。
(6)
連線的分支與改變:用鼠標單擊要分支的連線,光標變為“+”,然后拖動到目標模塊;單擊并拖動連線可改變連線的路徑。
(7)
信號的組合:用Mux模塊可將多個標量信號組合成一個失量信號,送到另一模塊(如示波器Scope)。
(8)
生成標簽信號:雙擊需要加入標簽的信號線,會出現標簽編輯框,鍵入標簽文本即可。或點擊Edit\Signal
Properties。傳遞:選擇信號線并雙擊,在標簽編輯框中鍵入<>,并在該尖括號內鍵入信號標簽即可。
四、建立模型
1.建立仿真模型
(1)在simulink
library
browser中查找元器件,并放置在創建的新模型的窗口中,連接元器件,得到如下的仿真模型。
圖(2)調幅解調器性能測試仿真模型
(2)分別雙擊雙邊帶相干解調模塊和低通濾波器模塊,彈出如下的對話框,進行相應的參數設置。
(3)相干解調模塊載波設置為1MHZ,初相位為-pi/2,低通濾波器截止頻率為6000HZ。
圖(3)雙邊帶相干解調模塊及低通濾波器的設置對話框
(4)在MATLAB中輸入如下程序進行仿真。
%
ch5problem1.m
SNR_in_dB=-10:2:30;
SNR_in=10.^(SNR_in_dB./10);
%
信道信噪比
m_a=0.3;
%
調制度
P=0.5+(m_a^2)/4;
%
信號功率
for
k=1:length(SNR_in)
sigma2=P/SNR_in(k);
%
計算信道噪聲方差并送入仿真模型
sim('ch5problem1.mdl')
;
%
執行仿真
SNRdemod(k,:)=SNR_out;
%
記錄仿真結果
end
plot(SNR_in_dB,SNRdemod);
xlabel('輸入信噪比
dB');
ylabel('解調輸出信噪比
dB');
legend('包絡檢波','相干解調');
執行程序之后,得出仿真結果如下圖所示。圖中給出了不同輸入信噪比下兩種解調器輸出的信噪比曲線。從圖中可見,高輸入信噪比情況下,相干解調方法下的輸出解調信噪比大致比包絡檢波法好3dB左右,但是在低輸入信噪比情況下,包絡檢波輸出信號質量急劇下降,這樣我們就通過仿真驗證了包絡檢波的門限效應。
圖(4)解調信噪比仿真結果
同時在仿真中給出了三路解調輸出信號的波形,如下,從解調輸出的波形上也可以看出,在相同噪聲傳輸條件下,包絡檢波輸出的正弦波幅度較小,也即包絡檢波的解調增益較相干解調要小。
圖(5)仿真輸出的解調信號波形
2建立另一個仿真模型
(1)
在圖(2)的基礎上加上一個鎖相環,構成鎖相環相干解調器模型,如下。
圖(6)鎖相環提取載波的相干解調仿真模型
(2)
用類似于對圖(2)進行仿真的程序進行仿真,程序如下
%
ch5problem1progB.m
SNR_in_dB=-10:2:30;
SNR_in=10.^(SNR_in_dB./10);
%
信道信噪比
m_a=0.3;
%
調制度
P=0.5+(m_a^2)/4;
%
信號功率
for
k=1:length(SNR_in)
sigma2=P/SNR_in(k);
%
計算信道噪聲方差并送入仿真模型
sim('
ch5problem1progB.mdl');
%
執行仿真
SNRdemod(k,:)=SNR_out;
%
記錄仿真結果
end
plot(SNR_in_dB,SNRdemod);
xlabel('輸入信噪比
dB');
ylabel('解調輸出信噪比
dB');
legend('包絡檢波','相干解調');
(3)
仿真的波形如下,從結果中可以看出,在低信噪比下,鎖相環相干解調器的性能比理想解調模塊要差一些,但在實際中由于PLL的門限效應,一般不能達到這里仿真出來的性能曲線。
圖(7)鎖相環相干解調器的輸出信噪比性能對比
(4)
同時給出仿真輸出的解調信號波形如下
五.設計總結
借由此次模擬通信系統的建模仿真設計,基本熟悉了調制解調的原理和借條性能的測試方法,通過仿真實驗進一步深入理解超外差接收機的工作原理。設計過程中由于對軟件的不熟悉遇到了很多的問題,例如,元器件的正確查找,參數設置,等等,在老師的指導下,參照參考書目,及與同學們討論摸索,及上網搜索,此次學到了很多東西。做完這次課設,對matlab軟件也進一步熟悉,真正把理論與實踐聯系起來,使我所學的專業知識得到了的運用,更深刻的理解了理論知識,理論聯系實際的實踐操作能力也進一步提高。這次的課程設計,學要我們更進一步的掌握學到的基礎知識,加深對軟件的掌握,應用,為下一次課程設計打好基礎。
【參考文獻】
紹玉斌
仿真實例分析學習輔導和習題詳解.清華大學出版社