《通信原理》課程設(shè)計_第1頁
《通信原理》課程設(shè)計_第2頁
《通信原理》課程設(shè)計_第3頁
《通信原理》課程設(shè)計_第4頁
《通信原理》課程設(shè)計_第5頁
已閱讀5頁,還剩13頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

本文格式為Word版,下載可任意編輯——《通信原理》課程設(shè)計數(shù)字傳輸系統(tǒng)誤碼率測試器的MATLAB實現(xiàn)及性能分析

數(shù)字傳輸系統(tǒng)誤碼率測試器的MATLAB實

現(xiàn)及性能分析

學(xué)生姓名:指導(dǎo)老師:

摘要本課程設(shè)計主要運用MATLAB集成環(huán)境下的Simulink仿真平臺設(shè)計進(jìn)行數(shù)字傳輸系統(tǒng)誤碼率測試器的實現(xiàn)及性能分析。其主要目的是仿真數(shù)字傳輸系統(tǒng)誤碼率測試器。從Simulink工具箱中找所到該設(shè)計所需的各元件,設(shè)計m序列產(chǎn)生器,產(chǎn)生信號送入含噪信道,在接收端與一致m序列再進(jìn)行異或運算來檢測誤碼。通過改變信道誤碼率大小,測試接收信號與發(fā)送信號之間的誤碼率,以及合理設(shè)置好參數(shù)可改變誤碼率與系統(tǒng)的抗噪聲性能,從而改善了該種數(shù)字傳輸系統(tǒng)誤碼率測試器的抗噪聲性能。

關(guān)鍵詞Simulink;數(shù)字系統(tǒng);m序列;誤碼率測試器

1引言

本次課程設(shè)計主要運用MATLAB軟件,在Simulink平臺下建立仿真模型。通過發(fā)送偽隨機序列,并在信道參與噪聲,測試收信號與發(fā)送信號之間的誤碼率大小,分析比較,改變參數(shù)設(shè)置,實現(xiàn)數(shù)字傳輸系統(tǒng)誤碼率計算過程。觀測輸入與輸出波形的變化以及誤碼率的大小,并對其進(jìn)行分析總結(jié)。

1.1課程設(shè)計的目的

通信原理課程設(shè)計是重要的實踐性教學(xué)環(huán)節(jié),通信原理是通信工程專業(yè)的一門骨干的專業(yè)課,是通信工程專業(yè)后續(xù)專業(yè)課的基礎(chǔ)。在進(jìn)行了專業(yè)基礎(chǔ)課和《通信原理》課程教學(xué)的基礎(chǔ)上,設(shè)計或分析一個簡單的通信系統(tǒng),有助于加深對通信系統(tǒng)原理及組成的理解。把握通信原理課程的知識可使學(xué)生打下一個堅實的專業(yè)基礎(chǔ),可提高處理通信系統(tǒng)問題能力和素質(zhì),同時也了解本通信專業(yè)的新發(fā)展。并可綜合運用這些知識解決一

第1頁共20頁

數(shù)字傳輸系統(tǒng)誤碼率測試器的MATLAB實現(xiàn)及性能分析

定的實際問題,使我們在所學(xué)知識的綜合運用能力上以及分析問題、解決問題能力上得到一定的提高。同時通過課程設(shè)計培養(yǎng)學(xué)生嚴(yán)謹(jǐn)?shù)目茖W(xué)態(tài)度,認(rèn)真的工作作風(fēng)和團隊協(xié)作精神。為我們以后做數(shù)字通信系統(tǒng)方面提供了更多的基礎(chǔ)知識和經(jīng)驗。

1.2課程設(shè)計的基本任務(wù)和要求

本次課程設(shè)計的基本任務(wù):

(1)把握MATLAB中的Simulink仿真平臺。

(2)利用m序列模擬測試信號,送入含噪及延時信道,在接收端與一致m序列再進(jìn)行異或運算以測試誤碼率。

(3)改變信道誤碼率或信噪比大小,測試接收信號與發(fā)送信號之間的誤碼率。(4)分析該種數(shù)字傳輸系統(tǒng)誤碼率測試器的抗噪聲性能。(5)按要求認(rèn)真編寫并按時完成報告。課程設(shè)計中必需遵循以下要求:

(1)本設(shè)計開發(fā)平臺為MATLAB中的Simulink。

(2)模型設(shè)計應(yīng)當(dāng)符合工程實際,模塊參數(shù)設(shè)置必需與原理相符合。(3)處理結(jié)果和分析結(jié)論應(yīng)當(dāng)一致,而且應(yīng)符合理論。(4)獨立完成課程設(shè)計并按要求編寫課程設(shè)計報告書。

1.3設(shè)計基本思路

首先熟悉MATLAB軟件系統(tǒng)中Simulink模塊庫,生成空白仿真模型窗口;其次在空白仿真模型窗口產(chǎn)生一個n級m序列。確定本次設(shè)計產(chǎn)生一個15級的m序列,將設(shè)計好的m序列輸出端送入含噪信道中(可通過參與高斯噪聲來實現(xiàn)),然后在接收端用一致m序列(稱本地序列)與它進(jìn)行異或運算,即將接收端序列與本地序列進(jìn)行比較,從而檢測出誤碼。設(shè)置各模塊參數(shù),改變信道誤碼率大小,測試接收信號與發(fā)送信號之間的誤碼率,分析該種數(shù)字傳輸系統(tǒng)誤碼率測試器的抗噪聲性能。

1.4設(shè)計平臺

MATLAB集成環(huán)境下的Simulink平臺。

第2頁共20頁

數(shù)字傳輸系統(tǒng)誤碼率測試器的MATLAB實現(xiàn)及性能分析

2設(shè)計原理

2.1Simulink工作環(huán)境

Simulink是MATLAB最重要的組件之一,它提供一個動態(tài)系統(tǒng)建模、仿真和綜合分析的集成環(huán)境。Simulink是MATLAB中的一種可視化仿真工具,是一種基于MATLAB的框圖設(shè)計環(huán)境,是實現(xiàn)動態(tài)系統(tǒng)建模、仿真和分析的一個軟件包。Simulink可以用連續(xù)采樣時間、離散采樣時間或兩種混合的采樣時間進(jìn)行建模,它也支持多速率系統(tǒng),也就是系統(tǒng)中的不同部分具有不同的采樣速率。為了創(chuàng)立動態(tài)系統(tǒng)模型,Simulink提供了一個建立模型方塊圖的圖形用戶接口(GUI),這個創(chuàng)立過程只需單擊和拖動鼠標(biāo)操作就能完成,它提供了一種更快捷、直接明白的方式,而且用戶可以馬上看到系統(tǒng)的仿真結(jié)果。

Simulink是MATLAB軟件的擴展,它與MATLAB語言的主要區(qū)別在于,其與用戶交互接口是基于Windows的模型化圖形輸入,其結(jié)果是使得用戶可以把更多的精力投入到系統(tǒng)模型的構(gòu)建,而非語言的編程上。

設(shè)計仿真模型時,從模型庫中選中模塊,單擊鼠標(biāo)右鍵,選擇\,或直接把模塊拖到仿真模型中,即可參與模塊。Simulink模型庫窗口還提供了查找功能,,在查找對話框中輸入模塊名稱關(guān)鍵字,單擊

按鈕或按回車鍵,即可自動探尋到所需

的模型庫。可以用Simulink輕松的搭建一個系統(tǒng)模型,并設(shè)置模型參數(shù)和方針參數(shù),并且馬上觀測到改變后的仿真結(jié)果,進(jìn)而進(jìn)行分析。

2.2數(shù)字傳輸系統(tǒng)誤碼率測試器原理

(1)m序列產(chǎn)生原理

m序列是最長線性移位寄放器序列的簡稱。它是由多級移位寄放器或其他延遲元件通過線性反饋產(chǎn)生的最長的碼序列。由于m序列簡單產(chǎn)生、規(guī)律性強、有大量優(yōu)良的性能。特別是由于m序列的均衡性、游程分布和自相關(guān)特性與偽隨機序列的這些性質(zhì)極相像,所以偽隨機序列可由線性反饋移位寄放器網(wǎng)絡(luò)產(chǎn)生,如圖2-1所示。改變反饋規(guī)律的位置及數(shù)量還可以得到更多不同的序列輸出。線性反饋移位寄放器的相關(guān)特性如下:

第3頁共20頁

數(shù)字傳輸系統(tǒng)誤碼率測試器的MATLAB實現(xiàn)及性能分析

①線性移位寄放器的輸出序列是一個周期序列,對于級數(shù)為r的線性移位寄放器,最長周期N=2r-1。

②當(dāng)時始狀態(tài)是0狀態(tài)時,線性移位寄放器的輸出全0序列。③級數(shù)一致的線性移位寄放器的輸出序列和反饋規(guī)律有關(guān)。④同一個線性移位寄放器的輸出序列還和起始狀態(tài)有關(guān)。

⑤對于級數(shù)為r的線性移位寄放器,當(dāng)周期N=2r-1時,改變移位寄放器初始狀態(tài)只改變序列的初相。

圖2-1線性反饋移位寄放器原理框圖

(2)數(shù)字信號誤碼率測量原理

誤碼率是數(shù)字通信系統(tǒng)中一項主要的質(zhì)量指標(biāo),也就是數(shù)字系統(tǒng)的可靠性主要用誤碼率來衡量。在實際測量數(shù)字通信系統(tǒng)的誤碼率時,一般說來,測量結(jié)果與信源送出信號的統(tǒng)計特性有關(guān)。尋常認(rèn)為二進(jìn)制信號中“0〞和“1〞是以等概率隨機出現(xiàn)的。所以測量誤碼率時最理想的信源應(yīng)是隨機序列產(chǎn)生器。

用真正隨機序列產(chǎn)生器進(jìn)行測量時,只適用于閉環(huán)線路測試。但是閉環(huán)測試法所用的信道不符合狀況。因此,在實際過程中采用單程測試法。在測量單程數(shù)字通信誤碼率時,就不能利用隨機序列,而只好利用相近的偽隨機序列代替它。圖2-2示出這種狀況。這時,發(fā)送設(shè)備和接收設(shè)備分出兩地。由于發(fā)送端用的是偽隨機序列,而且尋常是m序列,接收端可以用同樣的m序列產(chǎn)生器,由同步信號控制,產(chǎn)生出一致的本地序列。本地序列和接收序列相比較,就可檢測誤碼。

信源發(fā)送信道接收同步信號比較記錄偽隨機序列圖2-2誤碼率單程測試法

第4頁共20頁

數(shù)字傳輸系統(tǒng)誤碼率測試器的MATLAB實現(xiàn)及性能分析

3設(shè)計步驟

3.1熟悉MATLAB系統(tǒng)中Simulink模型庫

(1)開啟MATLAB軟件,單擊工具欄上的按鈕,即可進(jìn)入斯Simulink工具箱,如圖3-1所示。查看Simulink模塊庫中的每個模塊,通過查閱資料弄明白每個模塊的功能和用法。用同樣的方法熟悉communication模塊庫中的常用模塊。

圖3-1Simulink工具箱

Simulink圖庫目錄,如圖3-2所示。

圖3-2Simulink圖庫目錄

第5頁共20頁

數(shù)字傳輸系統(tǒng)誤碼率測試器的MATLAB實現(xiàn)及性能分析

(2)設(shè)計仿真模型

在MATLAB子窗口或Simulink模型庫的菜單欄依次選擇“File〞|“New〞|“Model〞,即可生成空白仿真模型窗口,如圖3-3所示。

圖3-3新建仿真模型窗口

3.2繪制電路級框圖

(1)15級m序列的繪制

根據(jù)一個線性反饋移存器能產(chǎn)生m序列的充要條件為:反饋移存器的特征方程為本原多項式。換言之,本原多項式對應(yīng)的反饋移存器產(chǎn)生的序列稱為m序列。通過查表[1]得15級的m序列的本原多項式為:x15+x+1。由于本原多項式的逆多項式也是本原多項式,x15+x+1的逆多項式為:x15+x14+1。.

ITU建議用于數(shù)字傳輸系統(tǒng)測量的m序列周期是215-1=32767,其特征多項式建議采用x15+x14+1。[1]

所以本設(shè)計為15級m序列,本原多項式選用x15+x14+1,因此把第14和第15個延時單元的輸出端進(jìn)行異或運算,然后送入第一個延時單元。

m序列所需要的模塊:延時模塊和異或模塊,如圖3-4所示。

圖3-4m序列所需模塊

在圖3-2中繪制框圖,繪制好的框圖如圖3-5所示:

圖3-515級m序列的繪制

第6頁共20頁

數(shù)字傳輸系統(tǒng)誤碼率測試器的MATLAB實現(xiàn)及性能分析

(2)在含噪信道中傳輸過程的繪制

選出此過程稱所要用到的模塊,包括:高斯噪聲模塊、抽樣判決器、示波器。如圖3-6所示。

圖3-6信號在含噪信道傳輸過程中需要用到的模塊

把加m序列與高斯噪聲相加,表示送入含噪信道。從加法器輸出的信號由于參與了噪聲,因此會存在一定程度的干擾,這時為了最大程度的減小噪聲的干擾,應(yīng)在加法器后加一個抽樣判決器,用中間電平值代替實際電平,參與噪聲過程如圖3-7所示:

圖3-7信號在含噪信道中傳輸

接著,對輸出的信號進(jìn)行抽樣判決,把抽樣判決后的信號與同樣的15級m序列(與加密所用的m序列初值應(yīng)一致)進(jìn)行異或運算,即相當(dāng)于將輸出信號與原信號進(jìn)行比較,如圖3-8所示:

圖3-8輸出信號與輸入信號比較模塊圖

第7頁共20頁

數(shù)字傳輸系統(tǒng)誤碼率測試器的MATLAB實現(xiàn)及性能分析

(3)誤碼率測量和控制部分的繪制

選出此過程稱所要用到的模塊,包括:數(shù)據(jù)類型轉(zhuǎn)換器、誤碼率測試器模塊、顯示器,如圖3-9所示。其中,數(shù)據(jù)類型轉(zhuǎn)換模塊是把數(shù)據(jù)類型由boolean轉(zhuǎn)換成double型;誤碼率計算模塊即是計算出輸入兩端的數(shù)字信號的誤碼率;顯示器是用來顯示誤碼率大小。

圖3-9誤碼率測試部分用到的模塊

誤碼率計算部分的模型圖如圖3-10所示。首先,進(jìn)行數(shù)據(jù)類型轉(zhuǎn)換。由于原輸入m序列信號和通過信道后輸出的數(shù)字信號的數(shù)據(jù)類型都是boolean,而誤碼率計算模塊的輸入應(yīng)是double型的,所以需要參與一個數(shù)據(jù)類型轉(zhuǎn)換器,通過它輸出的數(shù)據(jù)類型就是double型的。

然后便把轉(zhuǎn)換過數(shù)據(jù)類型的兩路數(shù)字信號分別與誤碼率計算器模塊的兩個輸入端相連,再把計算出的誤碼率輸出到一個顯示器上。

最終,由于信號在經(jīng)過傳輸以后有可能出現(xiàn)延時現(xiàn)象,而誤碼率計算器是一對對碼元分別輸入進(jìn)行比較的,那么若有延時,則誤碼率增大好多,因此查看系統(tǒng)是否有延時必不可少。在經(jīng)過finddelay模塊后同樣接一個顯示模塊,把延時個數(shù)顯示出來,再作為依據(jù)設(shè)置誤碼率計算模塊的延時接收參數(shù)。

圖3-10誤碼率測量部分框圖

(4)總體整合框圖

把三個部分的電路級框圖按順序連好,在需要觀測數(shù)字信號波形的地方加上示波器以觀測波形變化和誤碼變化,得到圖3-11。

第8頁共20頁

數(shù)字傳輸系統(tǒng)誤碼率測試器的MATLAB實現(xiàn)及性能分析

圖3-11總體框圖

4

模塊仿真及分析

4.1模塊參數(shù)設(shè)置

電路級框圖完成后,需要對每個模塊的參數(shù)進(jìn)行合理的設(shè)置,這樣仿真出的結(jié)果才更加正確、合理。(1)m序列參數(shù)設(shè)置

延時單元的設(shè)置如圖4-1所示,所有延時單元的sampletime都取“1〞,表示延時一個時間間隔,而Initialconditions表示所給的初值,此項設(shè)置為:從第一到第十三個延時單元初值都為“0〞。而第十四和第十五個延時單元初值為“1〞。接收端同步信號時用到的m序列同樣進(jìn)行此步的設(shè)置,且對應(yīng)的參數(shù)設(shè)置與輸入時的一致。

第9頁共20頁

數(shù)字傳輸系統(tǒng)誤碼率測試器的MATLAB實現(xiàn)及性能分析

圖4-1延時單元參數(shù)

(2)噪聲信號模塊進(jìn)行參數(shù)設(shè)置

雙擊高斯噪聲信號模塊,出現(xiàn)如圖4-2的窗口,此時將Variance設(shè)置為0,以便產(chǎn)生無噪信道。

圖4-2噪聲信號模塊進(jìn)行參數(shù)設(shè)置

(3)示波器參數(shù)設(shè)置,如圖4-3所示:

第10頁共20頁

數(shù)字傳輸系統(tǒng)誤碼率測試器的MATLAB實現(xiàn)及性能分析

F=0.5/10^(0.1*x(i));sim('G:\\m2023.mdl');y(i)=ErrorVec(1);end

semilogy(x,y)

xlabel('信噪比');ylabel('誤碼率Pe');title('誤碼率曲線圖');grid;

再在信號的整體框圖中做以下修改:

①高斯噪聲模塊的參數(shù)Variance窗口中改為F;

②誤碼率計算ErrorRateCalculation中的OutputDate設(shè)置為Workspace。保存以上修改。

保存好M文件后,單擊M文件窗口中的

圖標(biāo)運行,運行結(jié)果生產(chǎn)圖如4-12所示:

圖4-12誤碼率曲線圖(1)

分析:由于信噪比與噪聲功率關(guān)系為:噪聲功率增加,信噪比減小;又由于噪聲功率增

加,誤碼率也增加。因此誤碼率增加,信噪比減??;或者信噪比增加,誤碼率減小。由圖4-12可知,該曲線符合相關(guān)理論,但曲線不光滑,為了更明顯說明問題,所以要繼續(xù)修改。

第16頁共20頁

數(shù)字傳輸系統(tǒng)誤碼率測試器的MATLAB實現(xiàn)及性能分析

將Simulationstoptime作以下修改,如圖4-13

圖4-13Simulationstoptime參數(shù)修改圖

再次運行,結(jié)果如圖4-14所示:

圖4-14誤碼率曲線圖(1)

由仿真所得的誤碼率曲線圖4-14可以看出,該曲線符合相關(guān)理論,誤碼率隨信噪比增加而減小,同時也說明白信號在信道中傳輸會受到噪聲的干擾而使接受端受到錯誤信息,所以在實際應(yīng)用中,我們設(shè)計好信道,盡量減少噪聲的干擾。

5出現(xiàn)的問題及解決方法

在本次課程設(shè)計過程中遇到了不少問題,不過通過自己的努力摸索,以及在老師和同學(xué)的幫助下都一一解決了,總結(jié)如下:

首先,由于對m序列不是很了解,不知道它的哪個特征多項式是能產(chǎn)生m序列的,后來通過看書和查找相關(guān)資料得知:一個線性反饋移存器能產(chǎn)生m序列的充要條件為:反饋移存器的特征方程為本原多項式。而且一般的n級m序列的本原多項式都可以查表

第17頁共20頁

數(shù)字傳輸系統(tǒng)誤碼率測試器的MATLAB實現(xiàn)及性能分析

可知。

其次,在仿真及生成曲線時出現(xiàn)的問題及解決方法:

(1)運行后如示波器沒有出現(xiàn)完整波形或波形不明了等,可以點擊scope菜單欄的

圖標(biāo),再單擊右鍵,選擇Axesproperties即可出現(xiàn)明了波形。

(2)在整個仿真過程中,各模塊的參數(shù)設(shè)置十分重要,一定要設(shè)置適合的參數(shù),才會得出所需要的信號。

(3)修改示波器參數(shù)時,title不能為中文名,否則將出錯,用英文字母表示即可。(4)若出現(xiàn)波形很差,可以把修正因子(默認(rèn)為1)加大,具體步驟為選擇模型菜單中的“Simulink|configurationparameters|Dataimport/export〞修改Decimation中數(shù)據(jù),可加大。

(5)生成誤碼率曲線時若高斯噪聲模塊參數(shù)的沒有修改,則誤碼率曲線是一條直線;但將Variance改為F時,運行即可完成。

解決了上述問題后,就能順利完成設(shè)計任務(wù)了。

第18頁共20頁

數(shù)字傳輸系統(tǒng)誤碼率測試器的MATLAB實現(xiàn)及性能分析

終止語

通過這兩周的通信原理課程設(shè)計實踐,它使我加深了對課堂知識的理解,更加熟

悉了MATLAB里的Simulink工具箱,重溫了模擬調(diào)制系統(tǒng)和相干解調(diào)等知識,同時把握了一般的課程設(shè)計的基本思路和方

溫馨提示

  • 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)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論