課程設(shè)計(jì)用MATLAB語(yǔ)言編程設(shè)計(jì)通信仿真教學(xué)軟件_第1頁(yè)
課程設(shè)計(jì)用MATLAB語(yǔ)言編程設(shè)計(jì)通信仿真教學(xué)軟件_第2頁(yè)
課程設(shè)計(jì)用MATLAB語(yǔ)言編程設(shè)計(jì)通信仿真教學(xué)軟件_第3頁(yè)
課程設(shè)計(jì)用MATLAB語(yǔ)言編程設(shè)計(jì)通信仿真教學(xué)軟件_第4頁(yè)
課程設(shè)計(jì)用MATLAB語(yǔ)言編程設(shè)計(jì)通信仿真教學(xué)軟件_第5頁(yè)
已閱讀5頁(yè),還剩16頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、用MATLAB語(yǔ)言編程設(shè)計(jì) 通信仿真教學(xué)軟件 【摘要】 本文介紹了一個(gè)用MATLAB語(yǔ)言編寫的通信仿真教學(xué)軟件。論述了通信的基礎(chǔ)理論和通信仿真教學(xué)軟件的設(shè)計(jì)思想以及實(shí)現(xiàn)的方法,并談到了計(jì)算機(jī)輔助教學(xué)的必要性。 1.前言通信原理是通信類專業(yè)的一門極為重要的基礎(chǔ)理論課程,主要研究信息傳遞的一系列變換的機(jī)理和屬性,它包括:信號(hào)分析、調(diào)制解調(diào)、同步、檢測(cè)過(guò)濾、糾錯(cuò)編碼、信號(hào)特性等理論方面的內(nèi)容,其內(nèi)容抽象難懂促使我們應(yīng)用MATLAB程序語(yǔ)言設(shè)計(jì)制作了這套通信仿真CAI課件。意在利用計(jì)算機(jī)一類智能設(shè)備來(lái)實(shí)現(xiàn)該課程的機(jī)輔教學(xué),幫助學(xué)生理解相關(guān)的知識(shí)難點(diǎn)。 2.通信仿真教學(xué)軟件的設(shè)計(jì)思想 在通信原理中,常常

2、借助于各種信號(hào)的時(shí)域波形圖以及頻譜圖來(lái)說(shuō)明系統(tǒng)的原理,指出相應(yīng)的電路設(shè)計(jì)應(yīng)達(dá)到的目標(biāo)。欲將寄載消息的信號(hào)保質(zhì)保量的傳送給接收者,就必須對(duì)它們進(jìn)行加工處理,對(duì)相應(yīng)的部件進(jìn)行分析和研究,而這種研討過(guò)程中會(huì)用到大量的數(shù)學(xué)計(jì)算。由于 “MATLAB”是Matrix Laboratory(矩陣實(shí)驗(yàn)室)的縮寫,顧名思義,它是以矩陣,數(shù)組為基本處理對(duì)象,矩陣的維數(shù)不需要預(yù)先指定,且隨時(shí)可變,具有豐富的矩陣運(yùn)算功能。因此,選用MATLAB作為開發(fā)環(huán)境無(wú)疑能夠減輕系統(tǒng)分析與設(shè)計(jì)的編寫負(fù)擔(dān),另外因MATLAB是一個(gè)開放性的系統(tǒng),具有模塊化的結(jié)構(gòu),任何用戶自己已定義的函數(shù)都可作為MATLAB函數(shù)進(jìn)行調(diào)用。仿真功能我

3、們采用了MATLAB語(yǔ)言編程,以Windows 和MATLAB為軟件運(yùn)行環(huán)境。將通信原理中的知識(shí)點(diǎn)用MATLAB來(lái)實(shí)現(xiàn)。通過(guò)靈活的菜單和界面設(shè)計(jì)使某些參數(shù)可調(diào)。同時(shí)運(yùn)用Simulink軟件包,使波形在仿真的同時(shí)顯示系統(tǒng)。更加有利于在課堂上使用。3理論基礎(chǔ)31有關(guān)通信基礎(chǔ)理論方面 通信中的常見技術(shù)如調(diào)制解調(diào),多址與復(fù)用,同步,模擬信號(hào)數(shù)字化,噪聲中的信號(hào)檢測(cè),差錯(cuò)控制等在通信原理這門課程中都要有所涉及,因此,必須將與這些技術(shù)相關(guān)的專業(yè)基礎(chǔ)理論知識(shí)融匯與本課件的編程設(shè)計(jì)工作中,便使我們的CAI軟件真正起到輔助教學(xué)的作用。32 有關(guān)MATLAB的文件編寫方面321 數(shù)組運(yùn)算數(shù)組加減運(yùn)算 符號(hào)或,既表

4、示矩陣運(yùn)算又表示數(shù)組運(yùn)算。數(shù)組乘除運(yùn)算 在MATLAB中,符號(hào).*表示數(shù)組乘法運(yùn)算,若a,b具有相同的維數(shù),則a.*b為a和b對(duì)應(yīng)元素的簡(jiǎn)單乘積,符號(hào).或./表示數(shù)組除法的運(yùn)算,而且這兩種都是對(duì)應(yīng)元素相除,這與矩 陣的左除或右除的含義不同。關(guān)系運(yùn)算: MATLAB中提供了6個(gè)關(guān)系運(yùn)算符,用于相同維數(shù)兩個(gè)矩陣進(jìn)行比較。這6個(gè)運(yùn)算符為:< 小于 <=小于等于>大于 >=大于等于等于 不等于322繪圖連續(xù)形式: x,y均為向量,這時(shí)以向量x作為x軸,向量y作為y軸,繪制典型的二維曲線,調(diào)用格式為plot(x,y)。323菜單對(duì)菜單的調(diào)用如下: 菜單項(xiàng)句柄uimenu(窗口句柄

5、,屬性1,屬性值1,. . .); 子菜單項(xiàng)句柄uimenu(菜單項(xiàng)句柄,屬性1,屬性值1,. . .);其功能是在窗口句柄所代表的窗口下建立一個(gè)菜單項(xiàng)(由菜單項(xiàng)句柄代表),并在該菜單項(xiàng)下建立一個(gè)子菜單項(xiàng)(由子菜單項(xiàng)句柄代表)。其中uimenu()函數(shù)的屬性又很多種,但最基本的必須有一下兩條:.Label屬性:它為菜單提示名稱;.Callback屬性:它定義了回調(diào)函數(shù),當(dāng)該菜單項(xiàng)被選中之后,MATLAB將自動(dòng)調(diào)用此回調(diào)函數(shù)作為相應(yīng)菜單項(xiàng)的響應(yīng)。設(shè)計(jì)出來(lái)的本軟件的主界面菜單如圖1所示。 圖1 主菜單界面324控制流語(yǔ)句for循環(huán)語(yǔ)句它允許一條語(yǔ)句或一組語(yǔ)句被重復(fù)執(zhí)行預(yù)先確定的次數(shù)。它的格式如下

6、for variable=StartVal:StepVal:EndVal statements end while循環(huán)語(yǔ)句 它可以使一條或一組語(yǔ)句能夠在一定條件下反復(fù)執(zhí)行多次。格式如下:while expressionstatements endif語(yǔ)句: 是一種簡(jiǎn)單的條件轉(zhuǎn)移語(yǔ)句。其格式為:if expression Statementsend暫停語(yǔ)句: pause 功能是暫時(shí)停止程序的執(zhí)行,直到用戶按任意鍵之后,才繼續(xù)執(zhí)行程序;回顯控制語(yǔ)句: echo on/off控制是否在屏幕上回顯MATLAB正在執(zhí)行的語(yǔ)句,系統(tǒng)所默認(rèn)的狀態(tài)是不回顯。325 M文件編程1函數(shù)定義行函數(shù)文件的第一行要求用

7、關(guān)鍵字“function”把該文件定義為函數(shù),并指定函數(shù)的名字必須與存盤的文件名相同。同時(shí)這一語(yǔ)句也定義了輸入與輸出參數(shù)。2函數(shù)體 函數(shù)體是函數(shù)的主體部分,它完成了函數(shù)的主要功能。函數(shù)體中有流程控制、定義變量、數(shù)值運(yùn)算、符號(hào)運(yùn)算、交互輸入輸出等功能,也可以調(diào)用其它函數(shù)和腳本3函數(shù)說(shuō)明 函數(shù)說(shuō)明是對(duì)本函數(shù)完成功能的簡(jiǎn)要說(shuō)明,通常當(dāng)某個(gè)函數(shù)過(guò)于復(fù)雜時(shí),我們給出函數(shù)說(shuō)明以方便使用。4注釋 注釋是夾雜在函數(shù)體中的語(yǔ)句,它以%開頭,出現(xiàn)%的行,%后的語(yǔ)句均為注釋性的。33有關(guān)SIMULINK方面Simulink是一個(gè)用來(lái)對(duì)動(dòng)態(tài)系統(tǒng)進(jìn)行建模,仿真,分析的軟件包。他支持線性和非線性系統(tǒng),連續(xù)和時(shí)間模型,或者

8、是兩者的混合,系統(tǒng)還可以是多采樣頻率的,比如系統(tǒng)的不同部分擁有不同的采樣頻率。對(duì)于建模,Simulink提供了一個(gè)圖形化的用戶界面,可以用鼠標(biāo)點(diǎn)擊和拖拉模塊的圖標(biāo)建模。圖形界面可以將系統(tǒng)模型和圖形同時(shí)展示出來(lái)。這是以前需要用編程語(yǔ)言明確的用公式表達(dá)微分方程的仿真軟件包所遠(yuǎn)遠(yuǎn)不能相比的。Simulink包括一個(gè)復(fù)雜的由接收器,信號(hào)源,線性和非線性組件以及連接件組成的模塊庫(kù),當(dāng)然也可以定制或者創(chuàng)建用戶自己的模塊。所有模型都是分級(jí)的,因此可以采取自上而下或者自下而上的方法來(lái)建立模型。可以在最高層面上查看一個(gè)系統(tǒng),然后通過(guò)雙擊系統(tǒng)中的各個(gè)模塊進(jìn)入到系統(tǒng)的低一級(jí)層面以查看到模型的更多的細(xì)節(jié)。這一方法提供

9、了一個(gè)了解模型是如何組成以及它的的各個(gè)部分是如何相互聯(lián)系的方法。定義完一個(gè)模塊后,就可通過(guò)Simulink的菜單或者在MATLAB的命令窗口輸入命令對(duì)他仿真。菜單對(duì)于交互式工作非常方便,而命令行方式對(duì)于處理成批的仿真比較應(yīng)用。使用Scopes或者其他的顯示模塊,可以在運(yùn)行仿真時(shí)觀察到仿真的結(jié)果。另外,可以在仿真時(shí)改變參數(shù)并且立即就可以看到有什么變化。仿真的結(jié)果可以放在MATLAB(workspace)的工作空間中進(jìn)一步的處理或者可視化。4通信仿真的實(shí)現(xiàn)41數(shù)字基帶信號(hào)數(shù)字通信中一般以單極性非歸零碼,單極性歸零碼型,雙極性非歸零碼,雙極性歸零碼,數(shù)字雙相碼,條件雙相碼和密勒碼幾種碼來(lái)表示二元信息

10、序列。由于數(shù)字基帶信號(hào)是數(shù)字信息的電脈沖表示,不同形式的數(shù)字基帶信號(hào)具有不同的頻譜結(jié)構(gòu),合理設(shè)計(jì)數(shù)字基帶信號(hào)可將數(shù)字信息變換為適合于給定信道傳輸?shù)男问?,這種變換又稱為數(shù)字信息的碼型轉(zhuǎn)換。譬如單極性非歸零碼是用高電平表示二元信息中的1,用低電平表示二元信息中的0,電平在整個(gè)碼元的時(shí)間里保持不變。其MATLAB主要源程序如下:grid=300t=0:1/grid:length(x);for i=1:length(x), 計(jì)算碼元的值 if(x(i)=1), 如果信息為1 for j=1:grid, 該碼元對(duì)應(yīng)的點(diǎn)值取1 y(i-1)*grid+j)=1; end else for j=1:grid

11、, 反之,信息元為0,碼元對(duì)應(yīng)點(diǎn)值取0 y(i-1)*grid+j)=0; end;end;endy=y,x(i); 為了畫圖,將y序列加上最后一位圖2 單極性非歸零碼的波形演示再如雙極性歸零碼,這是一種占空比小于100的雙極性數(shù)字基帶信號(hào)。因此它具有三個(gè)電平,嚴(yán)格說(shuō)來(lái)是一種偽三元碼(電平1,0,1)。雙極性歸零碼實(shí)現(xiàn)的其主要程序段如下: grid=300;t=0:1/grid:length(x); 定義對(duì)應(yīng)時(shí)間序列for i=1:length(x) 進(jìn)行編碼 if(x(i)=0) 若輸入信息為1 for j=1:grid/2 y(grid/2*(2*i-2)+j)=1; 定義前半時(shí)間為1 y

12、(grid/2*(2*i-1)+j)=0; 定以后半時(shí)間為0 end else for j=1:grid/2 反之,輸入信息為0 y(grid/2*(2*i-2)+j)=-1; 定義前半時(shí)間為1 y(grid/2*(2*i-1)+j)=0; 定義后半時(shí)間為0 end;end;end 又如密勒碼,它是數(shù)字雙相碼的變形。它采用碼元中央時(shí)刻的跳變來(lái)表示信息1,即前半時(shí)間的電平同前一碼元后半時(shí)間的電平相同,中央跳變。遇到信息0作如下處理:首先對(duì)0的碼元在整個(gè)碼元的時(shí)間內(nèi)都保持同一電平值,其次若此0前一信息是1,則碼元的電平同前面信息1的碼元后半時(shí)間電平相同,若前一信息為0,則與前面碼元的電平相反。為此

13、,我們用MATLAB編寫了下述程序段來(lái)加以演示:grid=100; t=0:1/grid:length(x); 定義時(shí)間序列i=1; 由于第一碼元的編碼不定,我們直接給出if(x(i)=1) 輸入為1,則 for j=1:grid/2 y(grid/2*(2*i-2)+j)=0; 前半時(shí)間為0 y(grid/2*(2*i-1)+j)=1; 后半時(shí)間為1 end else for j=1:grid 反之,輸入為0 y(grid*(i-1)+j)=0; 所有時(shí)間為0 end end for i=2:length(x) 開始進(jìn)行密勒編碼 if(x(i)=1) 輸入信息為1 for j=1:grid/

14、2y(grid/2*(2*i-2)+j)=y(grid/2*(2*i-3)+grid/4);前半時(shí)間與前一碼元后半時(shí)間取值相同y(grid/2*(2*i-1)+j)=1-y(grid/2*(2*i-2)+j);后半時(shí)間與前半時(shí)間相反 end else if(x(i-1)=1) 反之,若前一信息為1,輸入信息0 for j=1:gridy(grid*(i-1)+j)=y(grid/2*(2*i-3)+grid/4);所有時(shí)間與前一碼元后半時(shí)間值相同 end else 否則,前一信息為0 for j=1:gridy(grid*(i-1)+j)=1-y(grid/2*(2*i-3)+grid/4);

15、所有時(shí)間與前一碼元后半時(shí)間值相反 end;end; end;end. . . 調(diào)用后的效果圖見圖3 圖3 密勒碼 該圖清楚的展示了信息序列及其相應(yīng)的密勒碼的相應(yīng)波形42幅度調(diào)制幅度調(diào)制(又稱線性調(diào)制),這是一種讓正弦載波的幅度隨著調(diào)制信號(hào)而改變的調(diào)制方案 。這一類調(diào)制方案包括DSB(抑制載波的雙邊帶幅度調(diào)制),AM(常規(guī)雙邊帶調(diào)幅),SSB調(diào)制(單邊帶幅度調(diào)制)以及VSB調(diào)制(殘留邊帶幅度調(diào)制)。在DSB調(diào)制中,調(diào)制信號(hào)和已調(diào)載波振幅間的函數(shù)關(guān)系非常簡(jiǎn)單,而在SSB調(diào)制或VSB調(diào)制中要復(fù)雜些。線性調(diào)制器的一般模型如圖所示。它由模擬乘法器和沖激響應(yīng)為h(t)的帶通濾波器組成。 ×h(t

16、) m(t) 圖4 線性調(diào)制器的一般模型調(diào)幅信號(hào)的解調(diào)可有兩種,相干解調(diào)和非相干解調(diào)。圖5和圖6分別給出了DSB系統(tǒng)及相干解調(diào)的性能和AM系統(tǒng)及非相干解調(diào)的性能演示。在此,我們用了理想的限帶白噪聲來(lái)代替高斯白噪聲通過(guò)接收機(jī)前置帶通濾波器之后的噪聲。由此可以看出,運(yùn)用Simulink進(jìn)行仿真,不僅能夠向?qū)W生展示仿真出來(lái)的圖形,而且,它又同時(shí)把相應(yīng)的原理圖也展現(xiàn)在了大家的面前,這樣更有利于課堂教學(xué)。 圖5 DSB系統(tǒng)及相干解調(diào)性能演示 DSB調(diào)制DSB信號(hào)的時(shí)域表達(dá)式為: u(t)=Acm(t)cos(2fct) ()其中 c(t)=Accos(2fct)為載波,m(t)是被調(diào)信號(hào)。對(duì)式()進(jìn)行傅

17、立葉變換,而DSB信號(hào)的頻譜表達(dá)式為:圖6 AM系統(tǒng)及非相干解調(diào)性演示 U(f)=M(f-f)+ M(f+f)由此可見,這種調(diào)制方式使得模擬基帶信號(hào)的頻譜搬移到載頻fc附近,且形成了上下兩個(gè)邊帶。用Simulink中的一些模塊進(jìn)行適當(dāng)?shù)奶幚?,就可得到?duì)應(yīng)的DSB信號(hào)波形。如圖5所示422 調(diào)幅系統(tǒng)的抗噪聲性能 然而,任何一種通信系統(tǒng)都難免有加性噪聲和乘性干擾,大部分服從高斯分布的加性噪聲對(duì)調(diào)幅波會(huì)產(chǎn)生什么影響?接收端輸入信噪比的大小對(duì)相干與非相干解調(diào)的性能有何影響?這些都需要用相應(yīng)的波形來(lái)加以演示說(shuō)明,為此,我們利用Simulink中的幾個(gè)模塊,對(duì)它們的參數(shù)等按需要做了相應(yīng)的設(shè)計(jì)和改變后,按原

18、理框圖連接起來(lái)獲得了相應(yīng)的仿真結(jié)果,見圖5及圖6。423單邊帶調(diào)幅 單邊帶調(diào)幅方式的時(shí)域表達(dá)式比較復(fù)雜,有上邊帶(USB)和下邊帶(SSB)兩種方式,表達(dá)式分別如下:S(t)= m(t)coswtm()sinwtS (t)= m(t)coswtm ()sinwt其中f()為f(t)的希爾伯特變換,從時(shí)域上來(lái)講兩者有以下關(guān)系式:從頻域上來(lái)講兩者的關(guān)系式是:F()=-jsgn(w)F(w)在本軟件中,我們使用的未調(diào)制信號(hào)為: 式中t取2s,載波C(t)=cos2t,=100。它的MATLAB實(shí)現(xiàn)如下:c=cos(2*pi*fc.*t); 定義載波同相分量b=sin(2*pi*fc.*t); 定義載

19、波正交分量 v=m.*c+imag(hilbert(m).*b; 計(jì)算出下邊帶調(diào)幅分量u=m.*c-imag(hilbert(m).*b; 計(jì)算出上邊帶調(diào)幅變量M,m,dfl=fftseq(m,ts,df); 傅立葉變換M=M/fs;U,u,dfl=fftseq(u,ts,df); 傅立葉變換U=U/fs;V,v,dfl=fftseq(v,ts,df); 傅立葉變換則由此編程設(shè)計(jì)所得結(jié)果圖形用界面演示如圖7所示。在這里載頻我們?nèi)〉檬?00,是為了更好的能在課堂上演示,實(shí)際上,載頻是遠(yuǎn)遠(yuǎn)的大于100。從時(shí)域波形可以看出,單邊帶調(diào)幅波形的包絡(luò)已經(jīng)不能反映未調(diào)信號(hào)的幅度了,所以只能采用相干解調(diào)方式。

20、另外,上下邊帶的調(diào)制波形區(qū)別不是很大,因?yàn)樗鼈兊念l譜具有某種對(duì)稱性。原信號(hào)的頻譜如圖8所示圖7 單邊帶調(diào)幅波形演示效果圖 圖8 未調(diào)信號(hào)的頻譜圖則調(diào)制信號(hào)的頻譜圖如圖9所示 圖9 SSB信號(hào)頻譜圖43 抽樣定理的證明 PCM是模擬信號(hào)數(shù)字化的基本方式之一。其包含了三個(gè)重要變換:抽樣,量化和編碼,而抽樣定理則是在對(duì)模擬信號(hào)進(jìn)行抽樣時(shí)必須遵循的準(zhǔn)則,是接收端從已抽樣信號(hào)中重建模擬信號(hào)的保正。設(shè)有一個(gè)頻帶限制在赫的模擬信號(hào)m(t):可作出時(shí)域圖象和頻譜圖如圖10所示 圖10 被抽樣信號(hào)的時(shí)域波形與頻譜圖從圖象來(lái)看,信號(hào)在時(shí)域內(nèi)衰減較快,大約在0.1s時(shí)就衰減為0,從頻譜分布來(lái)看,原信號(hào)的頻譜為一帶限

21、信號(hào),在高頻沒有分量,低頻從零頻率開始。將m(t)與周期沖激函數(shù)相乘,如圖(a)所示,乘積是已抽樣信號(hào),收端可用低通濾波器來(lái)重建m(t) ×低通濾波器 m(t) m(t) (a) (b)圖11 抽樣與恢復(fù) 先分別用兩種采樣頻率對(duì)信號(hào)進(jìn)行抽樣,f1=100Hz,f2=200Hz,按此原理,我們用MATLAB編程實(shí)現(xiàn)的MATLAB腳本文件如下:實(shí)現(xiàn)上述圖象的MATLAB腳本文件如下:t0=10; 定義時(shí)間長(zhǎng)度ts=0.001; 采樣周期ts1=0.01; 欠采樣周期ts2=0.005; 正確采樣周期fs=1/ts; fs1=1/ts1; fs2=1/ts2;df=0.5; 定義頻率分辨力

22、t=-t0/2:ts:t0/2; 定義時(shí)間序列x=sin(200*t); m=x./(200*t);w=t0/(2*ts)+1; 確定t=0的點(diǎn)m(w)=1; t=0點(diǎn)的信號(hào)值為1m=m.*m; m=50.*m;M,mn,dfy=fftseq(m,ts,df); 傅立葉變換M=M/fs;f=0:dfy:dfy*length(mn)-dfy-fs/2; 定義頻率系列這里有兩點(diǎn)需要說(shuō)明:(1) 在上述MATLAB的腳本文件中,我們首先定義信號(hào)時(shí)采用了該信號(hào)的函數(shù)表達(dá)式的形式,值得注意的是,由于有計(jì)算sin(t)/t這一式子,在t=0時(shí)MATLAB會(huì)得出此時(shí)的函數(shù)值為NaN,如果不加以修正的話,在后

23、面計(jì)算傅立葉變換時(shí)就會(huì)出錯(cuò)。(2) 在MATLAB中求連續(xù)信號(hào)的頻譜,我們應(yīng)用的是離散傅立葉變換,這樣實(shí)際運(yùn)算的仍是對(duì)連續(xù)信號(hào)的采樣結(jié)果,這里我們給予了足夠高的采樣頻率,把其作為連續(xù)信號(hào)來(lái)考慮。對(duì)于一個(gè)頻帶在(0, )的連續(xù)信號(hào),則該信號(hào)可用等間隔的采樣值;來(lái)唯一的表示。而采樣間隔必須不大于1/2,或者說(shuō)是最低采樣頻率為2。從物理概念上可對(duì)采樣定理作如下解釋,由于一個(gè)頻帶受限的信號(hào)波形決不可能在很短的時(shí)間內(nèi)產(chǎn)生獨(dú)立的實(shí)質(zhì)的變化,它的最高變換速度受最高頻率分量的限制。因此,為了保留這一頻率分量的全部信息,一個(gè)周期的間隔內(nèi)至少要采樣兩次。對(duì)采樣來(lái)說(shuō),等于將信號(hào)與一系列沖擊脈沖相乘,f1=100Hz

24、時(shí),其表達(dá)式如下:原信號(hào)的頻譜相應(yīng)有移動(dòng),在f1的條件下,作出的圖象如圖11所示: 由于f1<2,時(shí)域波形中沖激串的包絡(luò)已經(jīng)不能完整的表示原信號(hào),有了失真,從頻譜圖看得更如此,不同的頻譜帶互相重疊,已經(jīng)不能體現(xiàn)原信號(hào)頻譜的特點(diǎn)了,在頻譜中,出現(xiàn)了頻域的直流分量,這樣恢復(fù)時(shí)將出現(xiàn)沖擊信號(hào),因此我們就無(wú)法正確的恢復(fù)信號(hào)。圖12 欠采樣的頻譜圖在它的MATLAB實(shí)現(xiàn)中我們用了語(yǔ)句:N1=M1,M1,M1,M1,M1,M1,M1,M1,M1,M1,M1,M1,M1;f1=-7*df1*length(mn1):df1:6*df1*length(mn1)-df1-fs1/2;將一個(gè)周期的圖象擴(kuò)展到多

25、個(gè)周期,這樣得到的圖象更有說(shuō)服力。對(duì)情況f2=200Hz,其表示式為: 作出的圖象如圖13所示 圖13 采樣足夠頻譜圖由于f2>2,此次的采樣是成功的,它能夠恢復(fù)原信號(hào),從時(shí)域波形可看出,比上面采樣所得的沖激脈沖串包含的細(xì)節(jié)要多,在頻域中也沒出現(xiàn)頻譜的交疊,這樣我們可以利用低通濾波器m(t)得到無(wú)失真的重建。4.4量化 量化就是將一個(gè)有連續(xù)幅度取值得信號(hào)映射成幅度離散信號(hào)的過(guò)程,從這個(gè)定義可以看出,由于是將連續(xù)的值改為離散的值,量化是一定有誤差的,在此過(guò)程中丟失的信息是無(wú)法重新恢復(fù)的。所以說(shuō)研究量化的誤差并找到使之最小的方案是一個(gè)主要問(wèn)題。量化方案可分為標(biāo)量量化和矢量量化,標(biāo)量量化中每個(gè)

26、信源被分別量化,它分為均勻量化和非均勻量化。均勻量化的量化區(qū)域是等長(zhǎng)的,非均勻量化則是不等長(zhǎng)的,正因?yàn)槿绱耍蔷鶆蛄炕男阅芤獌?yōu)于均勻量化。在標(biāo)量量化中,隨機(jī)標(biāo)量X的定義域劃分為N個(gè)互不重疊的區(qū)域Ri,i=1,2,. . .,N,R稱為量化間隔,在每個(gè)區(qū)域選擇一個(gè)點(diǎn)作為量化基礎(chǔ),用xi表示。落在該區(qū)域的點(diǎn)都用xi表示,這樣會(huì)帶來(lái)誤差。該均方誤差為: 其中f(x)是信源隨機(jī)變量的概率密度函數(shù)。我們定義信號(hào)量化噪聲比為: 在均勻量化方式中除第一個(gè)和最后一個(gè)區(qū)域,其他的所以區(qū)域是等長(zhǎng)的,即: ··· 每一級(jí)都有一個(gè)重建電平,既落在該區(qū)域中的不同值都會(huì)被化為同一值,通常每

27、個(gè)量化間的重建電平也都取均勻分布的值。在本軟件系統(tǒng)中我們的輸入信號(hào)為正弦信號(hào),其幅度為Am ,現(xiàn)將其進(jìn)行均勻量化,量化器的范圍是(-V,V),共分為L(zhǎng)級(jí)電平。(這里Am1,V=1.5,L=64和8)。)8級(jí)電平(如圖14所示)。 圖14 8級(jí)量化波形MATLAB的實(shí)現(xiàn)如下:x=0:0.004:4*pi; 定義時(shí)間序列 y=sin(x); 計(jì)算原信號(hào)圖值 w=junyun(y,1,8); 計(jì)算量化值從圖上看,量化后的值與原曲線值相差較小,階梯形的量化曲線與原曲線比較吻合,較好的完成了任務(wù)。在量化范圍(-V,V)中,量化間隔數(shù)為L(zhǎng)個(gè),均勻量化器的量化間隔由上面可以得到。求量化噪聲功率的公

28、式在此可以簡(jiǎn)化為: 而由前述可知: 所以因此,均勻量化器的不過(guò)載噪聲(信號(hào)的幅度小于V)與信號(hào)統(tǒng)計(jì)特性無(wú)關(guān),只與量化間隔和量化的最大值由關(guān)系。本軟件系統(tǒng)中,使用64級(jí)電平的量化噪功率為: nq=8.1380e-005該量化器的信噪比(信號(hào)認(rèn)為是正弦信號(hào))為: SNR=則計(jì)算出:snr=1.5*(1/1)2*642snr=6144 %計(jì)算信噪比snr=10*log(snr)/log(10)snr=37.8845 將信噪比改為dB表示但使用8級(jí)電平的情況會(huì)完全不同,效果大大變壞??梢钥闯觯肼暪β侍岣吡藥讉€(gè)數(shù)量級(jí),量化效果明顯變差。 在本軟件中,我們用Simulink來(lái)實(shí)現(xiàn)量化誤差及量化噪聲的演示

29、。通過(guò)量化前和量化后的信號(hào)相減可得量化誤差,然后經(jīng)理想LPF得到量化噪聲。因?yàn)榱炕`差和對(duì)應(yīng)的量化噪聲都很小,為方便老師在課堂上向?qū)W生演示所以我們將量化誤差和量化噪聲進(jìn)行了放大。圖15就是我們仿真出來(lái)的量化誤差及量化噪聲。 圖15 量化誤差及量化噪聲的演示4.5數(shù)字調(diào)制 數(shù)字調(diào)制方式有:幅度鍵控,移頻鍵控和移相鍵控等三種。在幅度鍵控中,載波信號(hào)的幅度是隨著調(diào)制信號(hào)而變化的。最簡(jiǎn)單的形式是載波在數(shù)字基帶信號(hào)1或0的控制下通或斷。設(shè)信息源發(fā)出的是由二進(jìn)制符號(hào)0,1組成的序列,且假定0符號(hào)出現(xiàn)的概率為P,1符號(hào)出現(xiàn)的概率為1P,且彼此獨(dú)立,則二進(jìn)制振幅鍵控信號(hào)可以表示成一個(gè)單極性非歸零波形s(t)與

30、正弦載波相乘,即: 通常,二進(jìn)制振幅鍵控信號(hào)的調(diào)制方法有兩種,模擬幅度調(diào)制方法和鍵控方法。 我們對(duì)二元序列10110010,畫出2ASK的波形,其中載頻為碼元速率的10倍。即表明在一個(gè)符號(hào)的時(shí)間里,載波剛好為5個(gè)周期。它的MATLAB實(shí)現(xiàn)的主要程序斷如下所示: y=sin(10*pi*t); 載波x=ones(1,100),zeros(1,100),ones(1,100),ones(1,100),zeros(1,100),zeros(1,100),ones(1,100),zeros(1,101);定義一個(gè)與二元序列對(duì)應(yīng)的時(shí)間序列z=x.*y; 幅頻鍵控 圖16 振幅鍵控將數(shù)字信號(hào)調(diào)制在載波的頻率上的

溫馨提示

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

評(píng)論

0/150

提交評(píng)論