欧美色欧美亚洲高清在线观看,国产特黄特色a级在线视频,国产一区视频一区欧美,亚洲成a 人在线观看中文

  1. <ul id="fwlom"></ul>

    <object id="fwlom"></object>

    <span id="fwlom"></span><dfn id="fwlom"></dfn>

      <object id="fwlom"></object>

      MATLAB通信原理課程設計報告

      時間:2019-05-12 00:37:37下載本文作者:會員上傳
      簡介:寫寫幫文庫小編為你整理了多篇相關的《MATLAB通信原理課程設計報告》,但愿對你工作學習有幫助,當然你在寫寫幫文庫還可以找到更多《MATLAB通信原理課程設計報告》。

      第一篇:MATLAB通信原理課程設計報告

      MATLAB通信原理課程設計報告

      目 錄

      1課題名稱.....................................................................................................................1 2課程設計的方案和基本原理.....................................................................................1

      2.1信息論基本計算...............................................................................................1 2.2數(shù)字信號基帶傳輸系統(tǒng)...................................................................................1 3課程設計步驟.............................................................................................................3

      3.1信息論基本計算的設計步驟...........................................................................3 3.2數(shù)字信號基帶傳輸系統(tǒng)的設計步驟...............................................................3 4課程設計結(jié)果和結(jié)果分析論證.................................................................................4

      4.1信息論的基本運算結(jié)果...................................................................................4 4.2數(shù)字信號基帶傳輸系統(tǒng)的設計結(jié)果...............................................................6

      5、心得體會................................................................................................................11 6附件...........................................................................................................................11 6.1信息論基本計算.............................................................................................11 6.2數(shù)字信號基帶傳輸系統(tǒng).................................................................................14 7 評分表......................................................................................錯誤!未定義書簽。

      1課題名稱

      (1)信息論基本計算。

      (3)數(shù)字信號基帶傳輸系統(tǒng)設計

      2課程設計的方案和基本原理

      2.1信息論基本計算

      2.1.1平均信息量:平均每個符號所能提供的信息量。

      H(X)。

      2.1.2離散信道容量:信道容量是信道所能傳送的最大的信息量。C=maxI(X;Y)R=I(X;Y)=H(X)-H(XY)2.1.3信源編碼過程:Huffman編碼的意義是,用最少的編碼長度來表達符號的信息。為了使平均碼長度最小,將發(fā)生概率較大的符號用比較短的碼組來表示,將發(fā)生概率較小的符號用較長的碼組實現(xiàn),以得到最佳的變長編碼,減少冗余度,提高系統(tǒng)傳輸?shù)男省?/p>

      2.2數(shù)字信號基帶傳輸系統(tǒng)

      2.2.1數(shù)字基帶信號的碼型:由于數(shù)字基帶信號是數(shù)字信息的電脈沖表示,不同形式的基帶信號(又稱為碼型)有不同的頻譜結(jié)構和功率譜分布。不同的碼型有不同的優(yōu)點,常用的碼型有單/雙極性碼、非歸零/歸零碼、數(shù)字雙相碼(曼徹斯特碼)、密勒碼、AMI碼、HDB3碼。

      2.2.2單/雙極性碼:單極性碼是用電平1來表示二元信息中的‘1’,用電平0來表示二元信息中的0,電平在整個碼元的持續(xù)時間里保持不變,記做NRZ碼。雙極性碼與單極性碼的區(qū)別僅在于它用電平-1來表示二元信息中的‘0’。

      2.2.3非歸零/歸零碼:歸零碼與非歸零碼的區(qū)別僅在于,非歸零碼在整個碼元持續(xù)時間內(nèi)保持電平值不變,而歸零碼的碼元持續(xù)時間的前一半時間內(nèi)保持,而后一半時間內(nèi)回到0.1 2.2.4數(shù)字雙相碼(曼徹斯特碼):此種碼型采用在一個碼元的持續(xù)時間中央時刻從0到1的跳變來表示1,從1到0的跳變來表示0?;蛘吲c之相反用在一個碼元的持續(xù)時間中央時刻從0到1的跳變來表示0,從1到0的跳變來表示1。

      2.2.5密勒碼:該碼型是雙相碼的變型。它采用碼元中央時刻跳變表示信息1即前半時間的電平和前一碼元的后半時間的電平相同,中間跳變。遇到信息0做如下處理:首先對0的碼元在整個持續(xù)時間內(nèi)保持同一電平值,其次若此0的前一信息是一則碼元的電平同前面信息1的碼元后半時間電平相同,若前一信息為0,則與前面碼元的電平相反。

      2.2.6 AMI碼、HDB3碼: AMI碼是傳號交替反轉(zhuǎn)碼。其編碼規(guī)則是將消息碼中的“1”交替變成“+1”和“-1”,將消息碼中的“0”仍保持為“0”。HDB3碼的全稱是3階高密度雙極性碼。首先將信息碼變換成AMI碼,然后檢查AMI碼中連0的情況,沒有發(fā)現(xiàn)4個以上連0的碼元串時碼型不需變換,仍為AMI碼的形狀。若發(fā)現(xiàn)4個以上連0的碼元串時,則根據(jù)相應規(guī)則把第四個0變換成相應符號。

      2.2.7碼型的功率譜分布:數(shù)字基帶信號一般是隨機信號,因此分析隨機信號的頻譜特性要用功率諾密度來分析。一般來說,求解功率譜是一件相當困難的事,但由于上述幾種碼型比較簡單,我們可以求出其功率譜密度函數(shù)。

      對單極性非歸零碼、單極性歸零碼、雙極性非歸零碼和雙極性歸零碼這4種碼。由于統(tǒng)計的獨立性,課由由功率譜公式畫出功率譜波形圖。數(shù)字雙相碼的功率相關公式如下:“y=sin(pi*x/2);y=y./(pi*x/2);y(1)=1;mache=sin(pi*x/2).*sin(pi*x/2);mache=mache.*y;mache=mache.*y”。密勒碼的相關功率公式如下:

      “x=x*pi;miler=(23-2*cos(x)-22*cos(2*x)-12*cos(3*x)+5*cos(4*x)+12*cos(5*x)+2*cos(6*x)-8*cos(7*x)+2*cos(8*x))./(17+8*cos(8*x));t=x.*x;miler=miler./t;”

      對于AMI碼和HDB3碼的功率譜函數(shù),則需要進行實際的碼型進行分析。

      3課程設計步驟

      3.1信息論基本計算的設計步驟

      3.1.1信源平均信息量的計算(以高斯分布的信源為例):

      通過系統(tǒng)產(chǎn)生一個高斯隨機信源,再求出它的平均信息量。3.1.2離散信道容量的計算(以輸入符號等概分布為例):

      編寫hmessage函數(shù)求出平均互信息,編寫dmessage函數(shù),求出離散信息熵,調(diào)用hmessage函數(shù)和dmessage函數(shù)得出hf和hx,最后信道容量c=hx-hf。3.1.3信源編碼過程(以Huffman編碼為例):

      先編寫huffman函數(shù),對系列排序并求出huffman編碼。調(diào)用huffman函數(shù)和dmessage函數(shù),得出編碼后的碼字。

      3.2數(shù)字信號基帶傳輸系統(tǒng)的設計步驟

      3.2.1單/雙極性歸零/非歸零碼:先對原始碼型進行相應的碼型變換,畫出碼型子圖,再由功率譜公式畫出功率譜波形圖。

      3.2.2數(shù)字雙相碼:先進行碼型變換,再畫出功率譜,功率相關公式如下:“y=sin(pi*x/2);y=y./(pi*x/2);y(1)=1;mache=sin(pi*x/2).*sin(pi*x/2);mache=mache.*y;mache=mache.*y”。

      3.2.3密勒碼:密勒碼的相關功率公式如下:

      “x=x*pi;miler=(23-2*cos(x)-22*cos(2*x)-12*cos(3*x)+5*cos(4*x)+12*cos(5*x)+2*cos(6*x)-8*cos(7*x)+2*cos(8*x))./(17+8*cos(8*x));t=x.*x;miler=miler./t;”

      3.2.4AMI碼:編寫AMI函數(shù),求的AMI碼型變換。編寫t2f函數(shù),功能是將時域信號做傅里葉變換到頻域。為了求AMI碼的功率譜密度,編寫AMIpower函數(shù),該函數(shù)中又調(diào)用了t2f函數(shù)。3.2.5HDB3碼:編寫HDb3函數(shù)和t2f函數(shù),分別實現(xiàn)HDb3編碼和傅里葉變換。調(diào)用HDb3函數(shù)和t2f函數(shù),得出原序列圖、編碼后的序列圖和功率譜圖。

      4課程設計結(jié)果和結(jié)果分析論證

      4.1信息論的基本運算結(jié)果

      4.1.1信源平均信息量的計算(以高斯分布的信源為例):

      圖4.1.1連續(xù)信源平均信息量

      4.1.2離散信道容量的計算(以輸入符號等概分布為例)4

      圖4.1.2離散信道容量

      信道容量為信源的平均信息量減去互信息量。

      4.1.3信源編碼過程(以Huffman編碼為例)

      圖4.1.3 huffman編碼

      哈弗曼編碼是把出現(xiàn)概率較大的用較短的碼元來實現(xiàn),概率出現(xiàn)較小的用較長的碼元實現(xiàn)。4.2數(shù)字信號基帶傳輸系統(tǒng)的設計結(jié)果

      4.2.1單極性非歸零碼及其功率譜

      圖4.2.1單極性非歸零碼碼型和功率譜

      輸入的序列是x=[1 1 0 1 0 0 1 0 1 0 0 1],輸出的序列是y=[1 1 0 1 0 0 1 0 1 0 0 1]經(jīng)編碼規(guī)則驗證是正確的。功率譜顯示,碼型的功率分布有分段性,并以某些頻率為中心。

      4.2.2單極性歸零碼及其功率譜

      圖4.2.2單極性歸零碼碼型和功率譜

      由圖可知,輸入的序列是x=[1 1 0 1 0 0 1 0 1 0 0 1],輸出的序列是y=[10 10 00 10 00 00 10 00 10 00 00 10] 經(jīng)編碼規(guī)則驗證是正確的。功率譜顯示,碼型的功率分布有分段性,并以某些頻率為中心。

      4.2.3雙極性非歸零碼及其功率譜

      圖4.2.3雙極性非歸零碼碼型和功率譜

      由圖可知輸入的序列為x=[1 1 0 1 0 0 1 0 1 0 0 1],輸出的序列為y=[1 1-1 1-1-1 1-1 1-1-1 1], 經(jīng)編碼規(guī)則驗證是正確的。功率譜顯示,碼型的功率分布有分段性,并以某些頻率為中心。

      4.2.4雙極性歸零碼及其功率譜密度

      圖4.2.4雙極性歸零碼碼型和功率譜

      由圖可知,輸入序列為x=[1 1 0 1 0 0 1 0 1 0 0 1],輸出序列為y=[10 10-10 10-10-10 10-10 10-10-10 10]。經(jīng)編碼規(guī)則驗證是正確的。功率譜顯示,碼型的功率分布有分段性,并以某些頻率為中心。

      4.2.5數(shù)字雙相碼及其功率譜

      圖4.2.5數(shù)字雙相碼碼型和功率譜

      由圖可知,輸入的序列為x=[1 1 0 1 0 0 1 0 1 0 0 1],輸出的序列為y=[10 10 01 10 01 01 10 01 10 01 01 10].功率譜顯示,碼型的功率分布有分段性。

      4.2.6密勒碼及其功率譜

      圖4.2.6密勒碼碼型和功率譜

      信息的輸入序列是x=[1 1 0 1 0 0 1 0 1 0 0 1]。

      4.2.7 AMI碼及其功率譜

      圖4.2.7AMI碼碼型和功率譜

      輸入序列是x=[1 1 0 1 0 0 1 0 1 0 0 1]。

      4.2.8 HDB3碼及其功率譜

      圖4.2.8 HDB3碼碼型和功率譜

      由此圖的功率譜與AMI碼的功率譜比較可知,HDB3碼與AMI碼是相似的,HDB3碼是AMI碼的變形。

      5、心得體會

      6附件

      6.1信息論基本計算

      6.1.1、信源平均信息量的計算(高斯分布的信源)x=randn(1,100000);%產(chǎn)生N(0,1)高斯源 px=1/sqrt(2*pi)*exp(-(x-1).^2/2);%計算概率 l=-mean(log2(px))%計算熵

      6.1.2、編程實現(xiàn)離散信道容量的計算(以輸入符號等概分布為例)function r=dmessage(x,n)%參數(shù)x表示概率矩陣,n是符號的數(shù)目 r=0;for i=1:n r=r-x(i)*log(x(i))/log(2);end disp('此離散信源的平均信息量為:');r %直接在命令窗口中調(diào)用dmessage函數(shù),也可以在其它函數(shù)中調(diào)用 dmessage([0.25,0.25,0.25,0.25],4)

      6.1.3、離散信道容量的計算 %求互信息的函數(shù)文件如下 function r=hmessage(x,f,nx,my)%x為輸出的信源分布,f為轉(zhuǎn)移概率矩陣,nx為輸出的符號可選個數(shù) %my為輸出的符號個數(shù) sum=0;for i=1:nx for j=1:my 11 %通過式子p(x,y)=p(x)p(y/x)來求p(x,y),用t表示 t=f(i,j)*x(i);%求平均互信息量 if t~=0 sum=sum-t*log(f(i,j))/log(2);end;end;end;r=sum;disp('平均互信息量為:');%利用函數(shù)dmessage來求信源的熵,利用函數(shù)hmessage來求平均互信息量 x=[0.25,0.25,0.25,0.25];f1=[1/2,1/4,1/4,0,0,0 0,1/2,1/4,1/4,0,0 0,0,1/2,1/4,1/4,0 0,0,0,1/2,1/4,1/4,];hf1=hmessage(x,f1,4,6);hx=dmessage(x,4);c1=hx-hf1 %信道容量

      6.1.4、哈弗曼編碼的實現(xiàn) p=[1/4,1/4,1/4,1/8,1/8];[h,l]=huffman1(p)%哈弗曼編碼的實現(xiàn)函數(shù)如下 function [h,l]=huffman(p)if(length(find(p<0))~=0)error('Not a prob,negative component');end if(abs(sum(p)-1)>10e-10)error('Not a prob.vector,component do not add to 1')end n=length(p);q=p;12 m=zeros(n-1,n);for i=1:n-1 [q,l]=sort(q);m(i,:)=[l(1:n-i+1),zeros(1,i-1)];q=[q(1)+q(2),q(3:n),1];end for i=1:n-1 c(i,:)=blanks(n*n);end c(n-1,n)='0';c(n-1,2*n)='1';for i=2:n-1

      c(n-i,1:n-1)=c(n-i+1,n*(find(m(n-i+1,:)==1))-(n-2):n*(find(m(n-i+1,:)==1)));c(n-i,n)='0';c(n-i,n+1:2*n-1)=c(n-i,1:n-1);c(n-i,2*n)='1';for j=1:i-1

      c(n-i,(j+1)*n+1:(j+2)*n)=c(n-i+1,n*(find(m(n-i+1,:)==j+1)-1)+1:n*find(m(n-i+1,:)==j+1));end;end for i=1:n h(i,1:n)=c(1,n*(find(m(1,:)==i)-1)+1:find(m(1,:)==i)*n);ll(i)=length(find(abs(h(i,:))~=32));end l=sum(p.*ll);%在命令窗口或M文件里調(diào)用haffman函數(shù) p=[1/2,1/4,1/8,1/16,1/16];[h,l]=huffman(p)

      6.2數(shù)字信號基帶傳輸系統(tǒng)

      6.2.1、單極性非歸零碼以及功率譜的實現(xiàn) function y=djx(x)%本函數(shù)實現(xiàn)將輸入的一段二進制代碼編碼為相應的單極性非歸零碼輸出 %輸入x為二進制碼,輸出y為編好的碼

      %給出計算每一個碼元的點數(shù),因為我們只有用離散的點來得出連續(xù)的函數(shù)表示 grid=300;t=0:1/grid:length(x);for i=1:length(x)if(x(i)==1)for j=1:grid y((i-1)*grid+j)=1;end else for j=1:grid y((i-1)*grid+j)=0;end end end y=[y,x(i)];M=max(y);m=min(y);subplot(2,1,1);plot(t,y);hold on;axis([0,i,m-0.1,M+0.1]);%采用title命令來實現(xiàn)標記出各碼元對應的二元信息

      title(' 1 1 0 1 0 0 1 0 1 0 0 1 ');fs=100;x=1:1/fs:5;y=sin(pi*x);y=y./(pi*x);14 y(1)=1;dan1=y.*y;dan1=dan1/4;subplot(2,1,2);subplot(2,1,2);plot(x,dan1);axis([1,4,0,0.015]);title('單極性非歸零碼的功率譜');%函數(shù)調(diào)用t=[1 1 0 1 0 0 1 0 1 0 0 1];djx(t);

      6.2.2、單極性歸零碼及其功率譜實現(xiàn) function y=djxglm(x)grid=200;t=0:1/grid:length(x);for i=1:length(x)if(x(i)==1)for j=1:grid/2 y(grid/2*(2*i-2)+j)=1;y(grid/2*(2*i-1)+j)=0;end else for j=1:grid/2 y(grid*(i-1)+j)=0;end end end y=[y,x(i)];M=max(y);m=min(y);subplot(2,1,1);plot(t,y);axis([0,i,m-0.1,M+0.1]);title(' 1 1 0 1 0 0 1 15

      0 1 0 0 1 ');fs=50;x=1:1/fs:5;y=sin(pi*x);y=y./(pi*x);y(1)=2;dan2=y.*y;dan2=dan2/4;subplot(2,1,2);plot(x,dan2);axis([1,5,0,0.05]);title('單極性歸零碼的功率譜');%在命令窗口或M文件中調(diào)用函數(shù) t=[1 1 0 1 0 0 1 0 1 0 0 1];djxglm(t);

      6.2.3、雙極性非歸零碼及其功率譜的實現(xiàn) function y=sjx(x)%本函數(shù)實現(xiàn)將輸入的一段二進制代碼編碼為相應的雙極性非歸零碼輸出 %輸入x為二進制碼,輸出y為編好的碼 grid=300;t=0:1/grid:length(x);for i=1:length(x)if(x(i)==1)for j=1:grid y((i-1)*grid+j)=1;end else for j=1:grid y((i-1)*grid+j)=-1;end 16 end end y=[y,x(i)];M=max(y);m=min(y);subplot(2,1,1);plot(t,y);axis([0,i,m-0.1,M+0.1]);%采用title命令來實現(xiàn)標記出各碼元對應的二元信息

      title(' 1 1 0 1 0 0 1 0 1 0 0 1 ');fs=100;x=1:1/fs:5;y=sin(pi*x);y=y./(pi*x);y(1)=1;dan1=y.*y;dan1=dan1/4;subplot(2,1,2);plot(x,dan1);axis([1,4,0,0.02]);title('雙極性非歸零碼的功率譜');%在命令窗口或M文件中調(diào)用函數(shù) t=[1 1 0 1 0 0 1 0 1 0 0 1];sjx(t);

      6.2.4、雙極性歸零碼及其功率譜的實現(xiàn) function y=sjxglm(x)%本函數(shù)實現(xiàn)將輸入的一段二進制代碼編碼為相應的雙極性歸零碼輸出%輸入x為二進制碼,輸出y為編好的碼 grid=300;t=0:1/grid:length(x);for i=1:length(x)17

      if(x(i)==1)for j=1:grid/2 y(grid/2*(2*i-2)+j)=1;y(grid/2*(2*i-1)+j)=0;end else for j=1:grid/2 y(grid/2*(2*i-2)+j)=-1;y(grid/2*(2*i-1)+j)=0;end end end y=[y,x(i)];M=max(y);m=min(y);subplot(2,1,1);plot(t,y);axis([0,i,m-0.1,M+0.1]);%采用title命令來實現(xiàn)標記出各碼元對應的二元信息title(' 1 1 0 1 0 0 1 0 1 0 0 1 ');fs=50;x=1:1/fs:5;y=sin(pi*x);y=y./(pi*x);y(1)=2;dan2=y.*y;dan2=dan2/4;subplot(2,1,2);plot(x,dan2);axis([1,5,0,0.025]);title('雙極性歸零碼的功率譜');%在命令窗口或M文件中調(diào)用函數(shù)

      t=[1 1 0 1 0 0 1 0 1 0 0 1];sjxglm(t);

      6.2.5、數(shù)字雙相碼及其功率譜的實現(xiàn) function y=szsxm(x)%本函數(shù)實現(xiàn)將輸入的一段二進制代碼編碼為相應的數(shù)字雙相碼輸出 %輸入x為二進制碼,輸出y為編好的碼 grid=300;t=0:1/grid:length(x);for i=1:length(x)if(x(i)==1)for j=1:grid/2 y(grid/2*(2*i-2)+j)=1;%用從1到0的電平跳變來表示‘1’ y(grid/2*(2*i-1)+j)=0;end else for j=1:grid/2 y(grid/2*(2*i-2)+j)=0;%用從0到1的電平跳變來表示‘0’ y(grid/2*(2*i-1)+j)=1;end end end y=[y,x(i)];M=max(y);m=min(y);subplot(2,1,1);plot(t,y);axis([0,i,m-0.1,M+0.1]);%采用title命令來實現(xiàn)標記出各碼元對應的二元信息

      title(' 1 1 0 1 0 0 1 0 1 0 0 1 ');fs=100;x=1:1/fs:5;19

      y=sin(pi*x/2);y=y./(pi*x/2);y(1)=1;mache=sin(pi*x/2).*sin(pi*x/2);mache=mache.*y;mache=mache.*y;subplot(2,1,2);plot(x,mache);axis([1,5,0,0.5]);title('數(shù)字雙相碼的功率譜');%在命令窗口或M文件中調(diào)用函數(shù) t=[1 1 0 1 0 0 1 0 1 0 0 1];szsxm(t);

      6.2.6、密勒碼及其功率譜的實現(xiàn) function y=mlm(x)%該函數(shù)實現(xiàn)密勒編碼,輸入碼序列為x grid=100;t=0:1/grid:length(x);%定義時間序列 i=1;%由于第一碼元的編碼不定,我們直接給出 if(x(i)==1)for j=1:grid/2 y(grid/2*(2*i-2)+j)=0;%前半時間為0 y(grid/2*(2*i-1)+j)=1;%后半時間為1 end else for j=1:grid%若輸入0 y(grid*(i-1)+j)=0;%碼元持續(xù)時間內(nèi)為0 end end for i=2:length(x)%開始進行密勒編碼

      if(x(i)==1)%若輸入信息為1 for j=1:grid/2 y(grid/2*(2*i-2)+j)=y(grid/2*(2*i-3)+grid/4);%前半時間與前一碼元后半時間值相同

      y(grid/2*(2*i-1)+j)=1-y(grid/2*(2*i-2)+j);%后半時間與前半時間相反 end else if(x(i-1)==1)%反之,若前一信息為1,輸入為0 for j=1:grid y(grid*(i-1)+j)=y(grid/2*(2*i-3)+grid/4);%所有時間與前一碼元后半時間值相同 end else%前一信息為0 for j=1:grid y(grid*(i-1)+j)=1-y(grid/2*(2*i-3)+grid/4);%所有時間與前一碼元后半時間值相反 end end end end y=[y,y(i*grid)];M=max(y);m=min(y);subplot(2,1,1);plot(t,y);axis([0,i,m-0.1,M+0.1]);%采用title命令來實現(xiàn)標記出各碼元對應的二元信息

      title(' 1 1 0 1 0 0 1 0 1 0 0 1 ');fs=100;x=1:1/fs:5;x=x*pi;miler=(23-2*cos(x)-22*cos(2*x)-12*cos(3*x)+5*cos(4*x)+12*cos(5*x)+2*c 21 os(6*x)-8*cos(7*x)+2*cos(8*x))./(17+8*cos(8*x));t=x.*x;miler=miler./t;miler(1)=0.2;x=x/pi;subplot(2,1,2);plot(x,miler);axis([1,5,0,0.3]);title('密勒碼的功率譜')%下面是mlm函數(shù)的調(diào)用 t=[1 1 0 1 0 0 1 0 1 0 0 1];mlm(t);

      6.2.7、AMI碼及其功率譜的實現(xiàn) *t2f.m文件:傅里葉變換 function X=t2f(x,dt)X=fftshift(fft(x))*dt;

      function y=AMI(x)grid=300;t=0:1/grid:length(x);i=1;if(x(i)==1)for j=1:grid y(j)=1;h=1;end else for j=1:grid y(j)=0;end end for i=2:length(x)if(x(i)==1)if h==1 for j=1:grid y(grid*(i-1)+j)=-1;h=-1;end else if h==-1 for j=1:grid y(grid*(i-1)+j)=1;h=1;end end end else for j=1:grid y(grid*(i-1)+j)=0;end end end y=[y,x(i)];M=max(y);m=min(y);subplot(2,1,1);plot(t,y);axis([0,i,m-0.1,M+0.1]);%采用title命令來實現(xiàn)標記出各碼元對應的二元信息title(' 1 1 0 1 0 0 1 0 1 0 0 1 ');Rt=0.5;k=14;N=2^k;L=64;M=N/L;Rb=2;Ts=1/Rb dt=Ts/L;df=1/(N*dt)T=N*dt Bs=N*df/2;t=[-T/2+dt/2:dt:T/2];f=[-Bs+df/2:df:Bs];Ep=zeros(size(f));for ii=1:50 n=1;while rem(n,2)~=0, a=round(rand(1,M));n=length(find(a==1));end bb=find(a==1);cc=bb(1:2:length(bb));b=a;

      b(cc)=-ones(size(cc));ami=zeros(1,N);for tt=1:Rt*Ts/dt;ami(tt+[0:M-1]*L)=b;end AMI=t2f(ami,dt);P=AMI.*conj(AMI)/T;Ep=(Ep*(ii-1)+P)/ii;end aa=30+10*log10(Ep+eps);subplot(2,1,2);plot(f,aa);axis([-5,+5,-50,50]);title('AMI功率譜密度')%AMI函數(shù)的調(diào)用

      t=[1 1 0 1 0 0 1 0 1 0 0 1];AMI(t);

      6.2.8、HDB3碼及其功率譜的實現(xiàn) function X=t2f(x,dt)X=fftshift(fft(x))*dt;*HDB3_encoding.m文件:

      function [changed_hdb3]=Hdb3_encoding(pcm)last_V=-1;last_one=-1;M=length(pcm);changed_hdb3=zeros(size(pcm));count=0;for i=1:M if(pcm(i)==1)changed_hdb3(i)=-last_one;last_one=changed_hdb3(i);count=0;else count=count+1;

      if(count==4)count=0;changed_hdb3(i)=-last_V;last_V=changed_hdb3(i);if(i>4)if(changed_hdb3(i)*last_one==-1)changed_hdb3(i-3)=changed_hdb3(i);end end last_one=changed_hdb3(i);end end end %函數(shù)調(diào)用 clear all close all k=input(‘取樣點數(shù)=2^k,k=[4]’);if isempty(k), k=14;end N=2^k;L=64;M=N/L;Rb=1;Ts=1/Rb;dt=Ts/L;df=1/(N*dt);T=N*dt;Bs=N*df/2;t=[-T/2+dt/2:dt:T/2];f=[-Bs+df/2:df:Bs];Ep=zeros(size(f));for ii=1:30 a=rand(1,M)>0.75;b=Hdb3_encoding(a);hdb=zeros(L,M);init=zeros(L,M);for loop=1:L/2 init(loop,:)=a;end for loop=1:L/2 hdb(loop,:)=b;end hdb=reshape(hdb,1,N);init=reshape(init,1,N);HDB=t2f(hdb,dt);P=HDB.*conj(HDB)/T;Ep=(Ep*(ii-1)+P)/ii;end init figure(9)subplot(3,1,1)plot(t,init,'m')grid on axis([0,T/10,-1.5,1.5])set(gca,'XTick',[0:1:T/10])xlabel('t(Tb)')ylabel('s(t)')title(‘原始序列’)subplot(3,1,2)plot(t,hdb,'b')grid on axis([0,T/10,-1.5,1.5])set(gca,'XTick',[0:1:T/10])xlabel('t(Tb)')ylabel('s(t)')title(‘HDB3編碼序列’)subplot(3,1,3)aa=30+10*log10(Ep+eps);plot(f,aa,'r')grid on axis([-5,5,-50,50])xlabel('f(Rb)')ylabel('Ps(f)')title(‘HDB3碼功率譜密度’)

      第二篇:通信原理課程設計_(基于MATLAB的_2PSK_2DPSK仿真)

      江西農(nóng)業(yè)大學

      通信原理課程設計報告

      題 目 基于Matlab的相移鍵控仿真設計

      專 業(yè) 電子信息工程

      學生姓名 曾凡文

      學 號 20121206

      江西農(nóng)業(yè)大學課程設計報告 二 0 一五 年 六 月

      基于Matlab的2PSK,2DPSK仿真

      摘要:現(xiàn)代通信系統(tǒng)要求通信距離遠、通信容量大、傳輸質(zhì)量好,作為其關鍵技術之一的調(diào)制技術一直是研究的一個重要方向。本設計主要敘述了數(shù)字信號的調(diào)制方式,介紹了2PSK數(shù)字調(diào)制方式的基本原理,功率譜密度,并運用MATLAB軟件對數(shù)字調(diào)制方式2PSK進行了編程仿真實現(xiàn),在MATLAB平臺上建立2PSK和2DPSK調(diào)制技術的仿真模型。進一步學習了MATLAB編程軟件,將MATLAB與通信系統(tǒng)中數(shù)字調(diào)制知識聯(lián)系起來,為以后在通信領域?qū)W習和研究打下了基礎在計算機上,運用MATLAB軟件來實現(xiàn)對數(shù)字信號調(diào)制技術的仿真。

      課程設計目的:通過課程設計,鞏固已學過的*****知識,加深對其理解和應用,學會應用Matlab Simulink工具對通信系統(tǒng)仿真。

      關鍵詞:數(shù)字調(diào)制與解調(diào);MATLAB;2PSK;2DPSK;

      江西農(nóng)業(yè)大學課程設計報告

      第1章 基本工作原理

      1.1 2PSK原理

      1.1.1 2PSK基本原理

      二進制移相鍵控,簡記為2PSK或BPSK。2PSK信號碼元的“0”和“1”分別用兩個不同的初始相位“0”和“?”來表示,而其振幅和頻率保持不變.因此,2PSK信號的時域表達式為:

      (t)=Acos其中,表示第n個符號的絕對相位:

      t+)

      =因此,上式可以改寫為:

      這種以載波的不同相位直接表示相應二進制數(shù)字信號的調(diào)制方式,稱為二進制移相鍵控方式。二進制移相鍵控信號的典型時間波形如圖1-1。

      10011tTs江西農(nóng)業(yè)大學課程設計報告

      圖1-1 二進制相移鍵控信號的時間波形

      1.1.2 2PSK調(diào)制原理

      在二進制數(shù)字調(diào)制中,當正弦載波的相位隨二進制數(shù)字基帶信號離散變化時,則產(chǎn)生二進制移相鍵控(2PSK)信號。2PSK信號調(diào)制有兩種方法,即模擬調(diào)制法和鍵控法。通常用已調(diào)信180°分別表示信號的 1 和 兩個反相的載制。2PSK以載

      號載波的 0°和 二進制數(shù)字基帶0,模擬調(diào)制法用波信號進行調(diào)波的相位變化作為參考基準的,當基帶信號為0時相位相對于初始相位為0°,當基帶信號為1時相對于初始相位為180°。鍵控法,是用載二進制信息的調(diào)制和180°來分別代表達式為:

      波的相位來攜帶方式。通常用0°表0和1。其時域

      ??e2PSK???ang(t?nTs)?cos?ct

      ?n?其中,2PSK的調(diào)制中an必須為雙極性碼。兩種方法原理圖分別如圖1-2和圖1-3所示。

      圖1-2 模擬調(diào)制原理圖

      江西農(nóng)業(yè)大學課程設計報告

      圖 1-3 鍵控法原理圖

      帶通濾波器ae2PSK(t)相乘器c低通濾波器d抽樣判決器定時脈沖e輸出

      cos?ct

      1.1.3 2PSK解調(diào)原理

      b由于2PSK的幅度是恒定的,必須進行相干解調(diào)。經(jīng)過帶通濾波的信號在相乘器中與本地載波相乘,然后用低通濾波器濾除高頻分量,在進行抽樣判決。判決器是按極性來判決的。即正抽樣值判為1,負抽樣值判為0。2PSK信號的相干解調(diào)原理圖如圖1-4所示,各點的波形如圖1-5所示。

      由于2PSK信號的載波回復過程中存在著180°的相位模糊,即恢復的本地載波與所需相干載波可能相同,也可能相反,這種相位關系的不確定性將會造成解調(diào)出的數(shù)字基帶信號與發(fā)送的基帶信號正好相反,即“1”變成“0”嗎“0”變成“1”,判決器輸出數(shù)字信號全部出錯。這種現(xiàn)象稱為2PSK方式的“倒π”現(xiàn)象或“反相工作”。

      圖 1-4 2PSK的相干解調(diào)原理圖

      江西農(nóng)業(yè)大學課程設計報告

      edb10011atTstctt10011t

      圖 1-5 相干解調(diào)中各點波形圖

      1.2 2DPSK原理

      1.2.1 2DPSK基本原理

      二進制差分相移鍵控常簡稱為二相相對調(diào)相,記為2DPSK。它不是利用載波相位的絕對數(shù)值傳送數(shù)字信息,而是用前后碼元的相對載波相位值傳送數(shù)字信息。所謂相對載波相位是只本碼元初相與前一碼元初相之差。

      傳輸系統(tǒng)中要保證信息的有效傳輸就必須要有較高的傳輸速率和很低的誤碼率。在傳輸信號中,2PSK信號和2ASK及2FSK信號相比,具有較好的誤碼率性能,但是,在2PSK信號傳輸系統(tǒng)中存在相位不確定性,并將造成接收碼元“0”和“1”的顛倒,產(chǎn)生誤碼。為了保證2PSK的優(yōu)點,又不會產(chǎn)生誤碼,將2PSK體制改進為二進制差分相移鍵控(2DPSK),及相對相移鍵控。

      2DPSK方式即是利用前后相鄰碼元的相對相位值去表示數(shù)字信息的一種方式?,F(xiàn)假設用Φ表示本碼元初相與前一碼元初相之差,并規(guī)定:Φ=0表示0碼,Φ=π表示1碼。則數(shù)字信息序列與2DPSK信號的碼元相位關系可舉例表示如2PSK信號是用載波的不同相位直接去表示相應的數(shù)字信號而得出的,在接收端只能采用相干解調(diào),它的時域波形圖見圖1-6。

      江西農(nóng)業(yè)大學課程設計報告

      圖1-6 2DPSK信號波形圖

      (a)絕對碼(b)相對碼10參考100011011(c)2DPSKt1.2.2 2DPSK調(diào)制原理

      二進制差分相移鍵控。2DPSK方式是用前后相鄰碼元的載波相對相位變化來表示數(shù)字信息。假設前后相鄰碼元的載波相位差為??,可定義一種數(shù)字信息與??之間的關系為:

      ?0(數(shù)字信息“0”)????

      ??(數(shù)字信息“1 ?為前一碼元的相位。

      實現(xiàn)二進制差分相移鍵控的最常用的方法是:先對二進制數(shù)字基帶信號進行差分編碼,然后對變換出的差分碼進行絕對調(diào)相即可。2DPSK調(diào)制原理圖如圖1-7所示。

      絕對碼Dn相對碼BnCnS2dpsk(t)+延時Ts波形變換×Coswc(t)

      圖1-7 2DPSK調(diào)制原理框圖

      1.2.3 2DPSK解調(diào)原理

      2DPSK信號解調(diào)有相干解調(diào)方式和差分相干解調(diào)。用差分相干解調(diào)這種方法解調(diào)時不需要恢復本地載波,只要將DPSK信號精確地延遲一個碼元時間間隔,然后與DPSK信號相乘,相乘的結(jié)果就反映了前后碼元的相對相位關系,經(jīng)低通濾波后直接抽樣判決即可恢復出原始的數(shù)字信息,而不需要在進行差分解碼。

      第二章 設計系統(tǒng)

      江西農(nóng)業(yè)大學課程設計報告 2.1框圖

      兩種解調(diào)方式的原理框圖如圖1-8和圖1-9所示。

      圖 1-8 2DPSK差分相干解調(diào)原理框圖

      圖 1-9 2DPSK相干解調(diào)原理框圖

      2.2工作原理

      相干解調(diào)碼變換法及相干解調(diào)法的解調(diào)原理是,先對2DPSK信號進行相干解調(diào),恢復出相對碼,再通過碼反變換器變換為絕對碼,從而恢復出發(fā)送的二進制數(shù)字信息。

      在解調(diào)過程中,若相干載波產(chǎn)生180?相位模糊,解調(diào)出的相對碼將產(chǎn)生倒置現(xiàn)象,但是經(jīng)過碼反變換器后,輸出的絕對碼不會發(fā)生任何倒置現(xiàn)象,從而解決了載波相位模糊的問題。本次設計采用相干解調(diào)。

      2.3設定參數(shù) 如附錄1

      江西農(nóng)業(yè)大學課程設計報告

      第三章 Matlab仿真

      3.1顯示系統(tǒng)不同部分的信號波形

      3.1.1PSK如圖3-1和圖3-2所示

      圖3-1

      圖3-2

      江西農(nóng)業(yè)大學課程設計報告

      3.1.2 2DPSK如圖3-

      3、圖3-4和圖3-5所示

      圖3-3

      圖3-4

      江西農(nóng)業(yè)大學課程設計報告

      圖3-5 3.2各種相移系統(tǒng)的比較和分析

      例如“倒π”現(xiàn)象

      對于相同的數(shù)字信號基帶序列,由于初始相位不同,2DPSK信號的相位并不直接代表基帶信號,而前后碼元相對相位的差才唯一決定信號的符號。2PSK信號載波恢復過程中,存在著180°的相位模糊即恢復的本地載波與與所需的想干載波可能同相也可能反相,這種相位關系的不確定性將會造成解調(diào)出來的數(shù)字基帶信號與發(fā)送的數(shù)字基帶信號正好相反,即“1”變成“0”,“0”變成“1”,判決器輸出的數(shù)字信號全部出錯, 這種現(xiàn)象稱為2PSK的“倒π”現(xiàn)象或“反相工作”。本地載波與發(fā)送端載波反向時,2PSK的解調(diào)波形與2DPSK完全相反

      3.3不同方式解調(diào)下PSK、DPSK的誤碼率

      誤碼率是指接收的碼元數(shù)在傳輸總碼元數(shù)中所占的比例,即:

      誤碼率錯誤碼元數(shù)傳輸總碼元數(shù) PSK相干解調(diào):

      誤碼率(r/2)DPSK相干解調(diào):

      誤碼率 DPSK差分非相干解調(diào):

      誤碼率1/2e^(-r)r為信噪比。

      誤碼率是衡量一個數(shù)字通信系統(tǒng)性能的重要指標。在信道高斯白噪聲的干擾下,各種二進制數(shù)字調(diào)制系統(tǒng)的誤碼率取決于解調(diào)器輸入信噪比,而誤碼率表達式的形式則取決于解調(diào)方式。對于所有的數(shù)字調(diào)制系統(tǒng)誤碼率與信噪比的關系的圖表來看,所有的曲線呈減函數(shù)的下降曲線,即隨著信噪比的增大,誤碼率降低。橫向比較來看,對于同一種調(diào)制方式,當信噪比相同時,采用相干解調(diào)方式的誤碼率低于非相干解調(diào)方式的誤碼率;縱向比較來看,對2PSK,2DPSK兩種調(diào)制方式若采用同一種解調(diào)方式

      江西農(nóng)業(yè)大學課程設計報告(相干解調(diào)或非相干解調(diào)),則2PSK的誤碼率最低,2DSPK的誤碼率次之。當信噪比一定時,誤碼率由低到高依次是:2PSK的相干解調(diào),2DPSK的相干解調(diào),2DPSK的差分解的非相干調(diào)。

      附錄1 2PSK調(diào)制解調(diào)程序及注釋: clear all close all i=10;j=5000;fc=4.6;%載波頻率 fm=i/5;%碼元速率 B=2*fm;t=linspace(0,5,j);a=round(rand(1,i));%隨機序列,基帶信號 figure(3);stem(a);st1=t;for n=1:10 if a(n)<1;for m=j/i*(n-1)+1:j/i*n st1(m)=0;end else for m=j/i*(n-1)+1:j/i*n st1(m)=1;end end end figure(1);subplot(411);plot(t,st1);title('基帶信號st1');axis([0,5,-1,2]);%由于PSK中的是雙極性信號,因此對上面所求單極性信號取反來與之一起構成雙極性碼

      st2=t;for k=1:j;if st1(k)>=1;st2(k)=0;else

      江西農(nóng)業(yè)大學課程設計報告 st2(k)=1;end end;subplot(412);plot(t,st2);title('基帶信號反碼st2');axis([0,5,-1,2]);st3=st1-st2;subplot(413);plot(t,st3);title('雙極性基帶信號st3');axis([0,5,-2,2]);s1=sin(2*pi*fc*t);subplot(414);plot(s1);title('載波信號s1');e_psk=st3.*s1;figure(2);subplot(511);plot(t,e_psk);title('e_2psk');noise=rand(1,j);psk=e_psk+noise;%加入噪聲 subplot(512);plot(t,psk);title('加噪后波形');psk=psk.*s1;%與載波相乘 subplot(513);plot(t,psk);title('與載波s1相乘后波形');[f,af] = T2F(t,psk);%通過低通濾波器 [t,psk] = lpf(f,af,B);subplot(514);plot(t,psk);title('低通濾波后波形');for m=0:i-1;if psk(1,m*500+250)<0;for j=m*500+1:(m+1)*500;psk(1,j)=0;end else for j=m*500+1:(m+1)*500;psk(1,j)=1;end

      江西農(nóng)業(yè)大學課程設計報告 end end subplot(515);plot(t,psk);axis([0,5,-1,2]);title('抽樣判決后波形')

      2DPSK調(diào)制解調(diào)程序及注釋: clear all close all i=10;j=5000;fc=4.6;%載波頻率 fm=i/5;%碼元速率 B=2*fm;t=linspace(0,5,j);a=round(rand(1,i));figure(4);stem(a);st1=t;for n=1:10 if a(n)<1;for m=j/i*(n-1)+1:j/i*n st1(m)=0;end else for m=j/i*(n-1)+1:j/i*n st1(m)=1;end end end figure(1);subplot(321);plot(t,st1);title('絕對碼');axis([0,5,-1,2]);b=zeros(1,i);%全零矩陣 b(1)=a(1);for n=2:10 if a(n)>=1;

      江西農(nóng)業(yè)大學課程設計報告 if b(n-1)>=1 b(n)=0;else b(n)=1;end else b(n)=b(n-1);end end st1=t;for n=1:10 if b(n)<1;for m=j/i*(n-1)+1:j/i*n st1(m)=0;end else for m=j/i*(n-1)+1:j/i*n st1(m)=1;end end end subplot(323);plot(t,st1);title('相對碼st1');axis([0,5,-1,2]);st2=t;for k=1:j;if st1(k)>=1;st2(k)=0;else st2(k)=1;end end;subplot(324);plot(t,st2);title('相對碼反碼st2');axis([0,5,-1,2]);s1=sin(2*pi*fc*t);subplot(325);plot(s1);title('載波信號s1');s2=sin(2*pi*fc*t+pi);subplot(326);plot(s2);

      江西農(nóng)業(yè)大學課程設計報告 title('載波信號s2');d1=st1.*s1;d2=st2.*s2;figure(2);subplot(411);plot(t,d1);title('st1*s1');subplot(412);plot(t,d2);title('st2*s2');e_dpsk=d1+d2;subplot(413);plot(t,e_dpsk);title('調(diào)制后波形');noise=rand(1,j);dpsk=e_dpsk+noise;%加入噪聲 subplot(414);plot(t,dpsk);title('加噪聲后信號');dpsk=dpsk.*s1;%與載波s1相乘 figure(3);subplot(411);plot(t,dpsk);title('與載波相乘后波形');[f,af]=T2F(t,dpsk);%通過低通濾波器 [t,dpsk]=lpf(f,af,B);subplot(412);plot(t,dpsk);title('低通濾波后波形');st=zeros(1,i);%全零矩陣 for m=0:i-1;if dpsk(1,m*500+250)<0;st(m+1)=0;for j=m*500+1:(m+1)*500;dpsk(1,j)=0;end else for j=m*500+1:(m+1)*500;st(m+1)=1;dpsk(1,j)=1;end end end subplot(413);

      江西農(nóng)業(yè)大學課程設計報告 plot(t,dpsk);axis([0,5,-1,2]);title('抽樣判決后波形')dt=zeros(1,i);%全零矩陣 dt(1)=st(1);for n=2:10;if(st(n)-st(n-1))<=0&&(st(n)-st(n-1))>-1;dt(n)=0;else dt(n)=1;end end st=t;for n=1:10 if dt(n)<1;for m=j/i*(n-1)+1:j/i*n st(m)=0;end else for m=j/i*(n-1)+1:j/i*n st(m)=1;end end end subplot(414);plot(t,st);axis([0,5,-1,2]);title('碼反變換后波形');

      第三篇:通信原理課程設計_(基于MATLAB的_2PSK_2DPSK仿真)

      江西農(nóng)業(yè)大學

      通信原理課程設計報告

      題 目 基于Matlab的相移鍵控仿真設計

      專 業(yè) 電子信息工程

      學生姓名 曾凡文

      學 號 20121206

      江西農(nóng)業(yè)大學課程設計報告 2015年6月

      基于Matlab的2PSK,2DPSK仿真

      摘要:現(xiàn)代通信系統(tǒng)要求通信距離遠、通信容量大、傳輸質(zhì)量好,作為其關鍵技術之一的調(diào)制技術

      一直是研究的一個重要方向。本設計主要敘述了數(shù)字信號的調(diào)制方式,介紹了2PSK數(shù)字調(diào)制方式的

      基本原理,功率譜密度,并運用MATLAB軟件對數(shù)字調(diào)制方式2PSK進行了編程仿真實現(xiàn),在MATLAB平

      臺上建立2PSK和2DPSK調(diào)制技術的仿真模型。進一步學習了MATLAB編程軟件,將MATLAB與通信系統(tǒng)

      中數(shù)字調(diào)制知識聯(lián)系起來,為以后在通信領域?qū)W習和研究打下了基礎在計算機上,運用MATLAB軟件

      來實現(xiàn)對數(shù)字信號調(diào)制技術的仿真。

      關鍵詞:數(shù)字調(diào)制與解調(diào);MATLAB;2PSK;2DPSK;

      江西農(nóng)業(yè)大學課程設計報告

      江西農(nóng)業(yè)大學課程設計報告

      第1章 緒論

      1.1 調(diào)制方式

      數(shù)字通信系統(tǒng), 按調(diào)制方式可以分為基帶傳輸和帶通傳輸。數(shù)字基帶信號的功率一般處于從零開始到某一頻率(如0~6M)低頻段,因而在很多實際的通信(如無線信道)中就不能直接進行傳輸,需要借助載波調(diào)制進行頻譜搬移,將數(shù)字基帶信號變換成適合信道傳輸?shù)臄?shù)字頻帶信號進行傳輸,這種傳輸方式,稱為數(shù)字信號的頻帶傳輸或調(diào)制傳輸、載波傳輸。所謂調(diào)制,是用基帶信號對載波波形的某參量進行控制,使該參量隨基帶信號的規(guī)律變化從而攜帶消息。對數(shù)字信號進行調(diào)制可以便于信號的傳輸;實現(xiàn)信道復用;改變信號占據(jù)的帶寬;改善系統(tǒng)的性能。

      數(shù)字基帶通信系統(tǒng)中四種基本的調(diào)制方式分別稱為振幅鍵控(ASK,Amplitude-Shift keying)、移頻鍵控(FSK,F(xiàn)requency-Shift keying)、移相鍵控(PSK,Phase-Shift keying)和差分移相鍵(DPSK,Different Phase-Shift keying)。本次課程設計對PSK,DPSK這兩種調(diào)制方式進行了仿真。

      1.2 設計要求 1.2.1 設計內(nèi)容

      用MATLAB完成對2PSK、2DPSK的調(diào)制與解調(diào)仿真電路設計,并對仿真結(jié)果進行分析,可編寫程序,也可硬件設計框圖

      1.2.2 設計參數(shù)(參數(shù)可以自行設置)

      1、傳輸基帶數(shù)字信號(15位)碼元周期T=0.01S

      2、載波頻率:15KHz 1.2.3 設計儀器

      計算機和MATLAB軟件

      江西農(nóng)業(yè)大學課程設計報告

      第2章 2PSK,2DPSK原理

      2.1 2PSK原理 2.1.1 2PSK基本原理

      二進制移相鍵控,簡記為2PSK或BPSK。2PSK信號碼元的“0”和“1”分別用兩個不同的初始相位“0”和“?”來表示,而其振幅和頻率保持不變.因此,2PSK信號的時域表達式為:

      (t)=Acos其中,表示第n個符號的絕對相位:

      t+)

      =因此,上式可以改寫為:

      這種以載波的不同相位直接表示相應二進制數(shù)字信號的調(diào)制方式,稱為二進制移相鍵控方式。二進制移相鍵控信號的典型時間波形如圖2-1。

      10011tTs圖2-1 二進制相移鍵控信號的時間波形

      2.1.2 2PSK調(diào)制原理

      在二進制數(shù)字調(diào)制中,當正弦載波的相位隨二進制數(shù)字基帶信號離散變化時,則產(chǎn)生二進制移相鍵控(2PSK)信號。2PSK信號調(diào)制有兩種方法,即模擬調(diào)制法和鍵控法。通常用已調(diào)信號載波的 0°和 180°分別表示二進制數(shù)字基帶信號的 1 和 0,模擬調(diào)

      江西農(nóng)業(yè)大學課程設計報告

      制法用兩個反相的載波信號進行調(diào)制。2PSK以載波的相位變化作為參考基準的,當基帶信號為0時相位相對于初始相位為0°,當基帶信號為1時相對于初始相位為180°。

      鍵控法,是用載波的相位來攜帶二進制信息的調(diào)制方式。通常用0°和180°來分別代表0和1。其時域表達式為:

      ??e2PSK???ang(t?nTs)?cos?ct

      ?n?其中,2PSK的調(diào)制中an必須為雙極性碼。兩種方法原理圖分別如圖2-2和圖2-3所示。

      圖2-2 模擬調(diào)制

      原理圖

      圖 2-3 鍵控法原理

      2.1.3 2PSK解調(diào)原理

      由于2PSK的幅度是恒定的,必須進行相干解調(diào)。經(jīng)過帶通濾波的信號在相乘器中與本地載波相乘,然后用低通濾波器濾除高頻分量,在進行抽樣判決。判決器是按極性來判決的。即正抽樣值判為1,負抽樣值判為0。2PSK信號的相干解調(diào)原理圖如圖2-4所示,各點的波形如圖2-5所示。

      由于2PSK信號的載波回復過程中存在著180°的相位模糊,即恢復的本地載波與所需 3

      江西農(nóng)業(yè)大學課程設計報告

      相干載波可能相同,也可能相反,這種相位關系的不確定性將會造成解調(diào)出的數(shù)字基帶信號與發(fā)送的基帶信號正好相反,即“1”變成“0”嗎“0”變成“1”,判決器輸出數(shù)字信號全部出錯。這種現(xiàn)象稱為2PSK方式的“倒π”現(xiàn)象或“反相工作”。

      e2PSK(t)帶通濾波器a相乘器c低通濾波器d抽樣判決器定時脈沖e輸出

      cos?ct

      b

      圖 2-4 2PSK的相干解調(diào)原理圖

      edb10011atTstctt10011t圖 2-5 相干解調(diào)中各點波形圖

      2.2 2DPSK原理 2.2.1 2DPSK基本原理

      二進制差分相移鍵控常簡稱為二相相對調(diào)相,記為2DPSK。它不是利用載波相位的絕對數(shù)值傳送數(shù)字信息,而是用前后碼元的相對載波相位值傳送數(shù)字信息。所謂相對 4

      江西農(nóng)業(yè)大學課程設計報告

      載波相位是只本碼元初相與前一碼元初相之差。

      傳輸系統(tǒng)中要保證信息的有效傳輸就必須要有較高的傳輸速率和很低的誤碼率。在傳輸信號中,2PSK信號和2ASK及2FSK信號相比,具有較好的誤碼率性能,但是,在2PSK信號傳輸系統(tǒng)中存在相位不確定性,并將造成接收碼元“0”和“1”的顛倒,產(chǎn)生誤碼。為了保證2PSK的優(yōu)點,又不會產(chǎn)生誤碼,將2PSK體制改進為二進制差分相移鍵控(2DPSK),及相對相移鍵控。

      2DPSK方式即是利用前后相鄰碼元的相對相位值去表示數(shù)字信息的一種方式?,F(xiàn)假設用Φ表示本碼元初相與前一碼元初相之差,并規(guī)定:Φ=0表示0碼,Φ=π表示1碼。則數(shù)字信息序列與2DPSK信號的碼元相位關系可舉例表示如2PSK信號是用載波的不同相位直接去表示相應的數(shù)字信號而得出的,在接收端只能采用相干解調(diào),它的時域波形圖見圖2-6。

      圖2-6 2DPSK信號波形圖(a)絕對碼(b)相對碼10參考100011011(c)2DPSKt

      2.2.2 2DPSK調(diào)制原理

      二進制差分相移鍵控。2DPSK方式是用前后相鄰碼元的載波相對相位變化來表示數(shù)字信息。假設前后相鄰碼元的載波相位差為??,可定義一種數(shù)字信息與??之間的關系為:

      ?0(數(shù)字信息“0”)????

      ?(數(shù)字信息“1 ??為前一碼元的相位。

      實現(xiàn)二進制差分相移鍵控的最常用的方法是:先對二進制數(shù)字基帶信號進行差分編碼,然后對變換出的差分碼進行絕對調(diào)相即可。2DPSK調(diào)制原理圖如圖2-7所示。

      江西農(nóng)業(yè)大學課程設計報告

      絕對碼Dn相對碼BnCnS2dpsk(t)+延時Ts波形變換×Coswc(t)

      圖2-7 2DPSK調(diào)制原理框圖

      2.2.3 2DPSK解調(diào)原理

      2DPSK信號解調(diào)有相干解調(diào)方式和差分相干解調(diào)。用差分相干解調(diào)這種方法解調(diào)時不需要恢復本地載波,只要將DPSK信號精確地延遲一個碼元時間間隔,然后與DPSK信號相乘,相乘的結(jié)果就反映了前后碼元的相對相位關系,經(jīng)低通濾波后直接抽樣判決即可恢復出原始的數(shù)字信息,而不需要在進行差分解碼。

      相干解調(diào)碼變換法及相干解調(diào)法的解調(diào)原理是,先對2DPSK信號進行相干解調(diào),恢復出相對碼,再通過碼反變換器變換為絕對碼,從而恢復出發(fā)送的二進制數(shù)字信息。

      在解調(diào)過程中,若相干載波產(chǎn)生180?相位模糊,解調(diào)出的相對碼將產(chǎn)生倒置現(xiàn)象,但是經(jīng)過碼反變換器后,輸出的絕對碼不會發(fā)生任何倒置現(xiàn)象,從而解決了載波相位模糊的問題。本次設計采用相干解調(diào)。兩種解調(diào)方式的原理圖如圖2-8和圖2-9所示。

      2DPSK相干解調(diào)各點波形圖如圖 2-10所示。

      圖 2-8 2DPSK差分相干解調(diào)原理圖

      江西農(nóng)業(yè)大學課程設計報告

      圖 2-9 2DPSK相干解調(diào)原理圖

      第3章 實驗過程

      3.1 2PSK仿真部分 3.1.1 2PSK仿真圖

      用MATLAB搭建好的2PSK仿真圖如下:

      江西農(nóng)業(yè)大學課程設計報告

      圖3-1PSK仿真圖

      3.1.2 2PSK模塊的參數(shù)設置: 1)相乘模塊

      圖3-2 相乘器參數(shù)設置

      2)低通濾波器模塊

      江西農(nóng)業(yè)大學課程設計報告

      圖3-3 濾波器其參數(shù)設置

      3)抽樣判決模塊

      圖3-4 pulse generator 參數(shù)設置

      江西農(nóng)業(yè)大學課程設計報告

      3.2 2DPSK仿真部分 3.2.1 2DPSK仿真圖

      用MATLAB搭建好的2DPSK仿真圖如下:

      圖3-5 2DPSK仿真圖

      2.2.2 2DPSK模塊的參數(shù)設置: 1)載波模塊

      圖3-6 載波參數(shù)設置

      江西農(nóng)業(yè)大學課程設計報告

      2)乘法器模塊

      圖3-7 乘法器參數(shù)設置

      3)基帶模塊

      圖3-8 基帶信號參數(shù)設置

      江西農(nóng)業(yè)大學課程設計報告

      4)Unipolar to Bipolar Converte模塊

      圖3-9 Unipolar to Bipolar Converter參數(shù)設置

      5)碼變換模塊

      圖3-10 Logical Operator參數(shù)設置

      江西農(nóng)業(yè)大學課程設計報告

      圖3-11 Unit Delay參數(shù)設置

      圖3-12 Data Type Conversion參數(shù)設置

      6)濾波器模塊

      江西農(nóng)業(yè)大學課程設計報告

      圖3-13 帶通濾波器參數(shù)設置

      圖3-14 低通濾波器參數(shù)設置

      江西農(nóng)業(yè)大學課程設計報告

      第4章 仿真結(jié)果

      4.1 2PSK仿真結(jié)果

      圖4-1 2PSK電路仿真波形

      4.2 2DPSK仿真結(jié)果

      江西農(nóng)業(yè)大學課程設計報告

      圖4-2 2DPSK電路仿真波形

      附錄:

      通過編寫M文件程序: 2PSK調(diào)制解調(diào)程序及注釋 clear all close all i=10;j=5000;fc=4;%載波頻率 fm=i/5;%碼元速率 B=2*fm;t=linspace(0,5,j);a=round(rand(1,i));%隨機序列,基帶信號 figure(3);stem(a);st1=t;16

      江西農(nóng)業(yè)大學課程設計報告

      for n=1:10 if a(n)<1;for m=j/i*(n-1)+1:j/i*n st1(m)=0;end else for m=j/i*(n-1)+1:j/i*n st1(m)=1;end end end figure(1);subplot(411);plot(t,st1);title('基帶信號st1');axis([0,5,-1,2]);%由于PSK中的是雙極性信號,因此對上面所求單極性信號取反來與之一起構成雙極性碼 st2=t;

      for k=1:j;

      if st1(k)>=1;

      st2(k)=0;

      else

      st2(k)=1;

      end end;subplot(412);plot(t,st2);title('基帶信號反碼st2');axis([0,5,-1,2]);st3=st1-st2;subplot(413);plot(t,st3);title('雙極性基帶信號st3');axis([0,5,-2,2]);s1=sin(2*pi*fc*t);subplot(414);plot(s1);title('載波信號s1');e_psk=st3.*s1;figure(2);subplot(511);plot(t,e_psk);title('e_2psk');noise=rand(1,j);psk=e_psk+noise;

      %加入噪聲 subplot(512);plot(t,psk);title('加噪后波形');psk=psk.*s1;

      %與載波相乘 subplot(513);plot(t,psk);title('與載波s1相乘后波形');[f,af] = T2F(t,psk);

      %通過低通濾波器

      [t,psk] = lpf(f,af,B);subplot(514);plot(t,psk);title('低通濾波后波形');for m=0:i-1;

      if psk(1,m*500+250)<0;

      for j=m*500+1:(m+1)*500;

      psk(1,j)=0;

      end

      else

      for j=m*500+1:(m+1)*500;

      psk(1,j)=1;

      end

      end end subplot(515);plot(t,psk);axis([0,5,-1,2]);title('抽樣判決后波形')

      2DPSK調(diào)制解調(diào)程序及注釋 clear all close all i=10;j=5000;fc=4;%載波頻率 fm=i/5;%碼元速率B=2*fm;t=linspace(0,5,j);a=round(rand(1,i));figure(4);stem(a);st1=t;for n=1:10 if a(n)<1;for m=j/i*(n-1)+1:j/i*n st1(m)=0;end else for m=j/i*(n-1)+1:j/i*n st1(m)=1;end end end 江西農(nóng)業(yè)大學課程設計報告

      figure(1);subplot(321);plot(t,st1);title('絕對碼');axis([0,5,-1,2]);b=zeros(1,i);%全零矩陣 b(1)=a(1);for n=2:10 if a(n)>=1;if b(n-1)>=1 b(n)=0;else b(n)=1;end else b(n)=b(n-1);end end st1=t;for n=1:10 if b(n)<1;for m=j/i*(n-1)+1:j/i*n st1(m)=0;end else for m=j/i*(n-1)+1:j/i*n st1(m)=1;end end end subplot(323);plot(t,st1);title('相對碼st1');axis([0,5,-1,2]);st2=t;for k=1:j;if st1(k)>=1;st2(k)=0;else st2(k)=1;江西農(nóng)業(yè)大學課程設計報告 end end;subplot(324);plot(t,st2);title('相對碼反碼st2');axis([0,5,-1,2]);s1=sin(2*pi*fc*t);subplot(325);plot(s1);title('載波信號s1');s2=sin(2*pi*fc*t+pi);subplot(326);plot(s2);title('低通濾波后波形');st=zeros(1,i);

      %全零矩陣for m=0:i-1;

      if dpsk(1,m*500+250)<0;

      st(m+1)=0;

      for j=m*500+1:(m+1)*500;

      dpsk(1,j)=0;

      end

      else

      for j=m*500+1:(m+1)*500;

      st(m+1)=1;

      dpsk(1,j)=1;

      end

      end end subplot(413);plot(t,dpsk);axis([0,5,-1,2]);title('抽樣判決后波形')dt=zeros(1,i);

      %全零矩陣 dt(1)=st(1);for n=2:10;

      if(st(n)-st(n-1))<=0&&(st(n)-st(n-1))>-1;

      dt(n)=0;

      else

      dt(n)=1;

      end end st=t;for n=1:10

      if dt(n)<1;

      for m=j/i*(n-1)+1:j/i*n

      st(m)=0;

      end

      else

      for m=j/i*(n-1)+1:j/i*n

      st(m)=1;

      end

      end end 江西農(nóng)業(yè)大學課程設計報告

      江西農(nóng)業(yè)大學課程設計報告

      subplot(414);plot(t,st);axis([0,5,-1,2]);title('碼反變換后波形')21

      第四篇:通信原理課程設計報告

      通信原理課程設計報告

      電信0802 3080503031 王婉婉

      題一:QPSK誤碼率性能研究以及QPSK和DQPSK調(diào)制信號性能的比較

      (一):QPSK誤碼率性能

      1:目的:本題是設計一個QPSK仿真模型,以衡量QPSK在高斯白噪聲信道中的性能。

      2:原理圖解析 圖中Bernoulli binary generator產(chǎn)生一個二進制向量,向量的長度等于2,分別代表QPSK Modulator baseband的兩個輸入信號。QPSK調(diào)制器產(chǎn)生的調(diào)制信號首先經(jīng)過一個AWGN Channel然后進入QPSK Dodulator baseband進行解調(diào);由于貝努力二進制序列產(chǎn)生器的輸出信號是長度為2的二進制向量,而QPSK基帶解調(diào)器模塊的輸出信號則是一個二進制序列,因此在對它們進行比較之前首先通過兩個數(shù)值轉(zhuǎn)換模塊(Bit to integer Converter和Bit to integer Converter1),把它們轉(zhuǎn)化成四進制數(shù);最后兩個數(shù)值轉(zhuǎn)換的輸出信號進入一個誤碼率統(tǒng)計模塊(Error Rate Calculation),以統(tǒng)計QPSK解調(diào)信號的誤碼率。QPSK調(diào)制解調(diào)原理圖如下圖所示:

      3:為了得到QPSK調(diào)制信號誤碼率與信號的信噪比之間的關系,所需m文件代碼如下:

      xSampleTime=1/100000;xSimulationTime=10;xInitialSeed=[61 71];xPhaseOffset=pi/4;x=0:10;y=x;hold off;for index=1:4 xSamplesPerSymbol=index;switch index case 1 xReceiveDelay=0;color='r';case 2 xReceiveDelay=1;color='g';case 3 xReceiveDelay=1;color='b';case 4 xReceiveDelay=1;color='m';end for i=1:length(x)xSNR=x(i);sim('QPSK');y(i)=xErrorRate(1);end semilogy(x,y,color);hold on;end

      4:將仿真截止時間設為0.1秒,可得如下圖示仿真結(jié)果:

      圖中:4條曲線分別表示當QPSK調(diào)制器和解調(diào)器的Samples per symbol參數(shù)等于1,2,3,4時QPSK信號的誤碼率性能從圖中可以看出Samples per symbol參數(shù)的設置在很大程度上影響著QPSK信號的解調(diào)性能。

      (二)DQPSK和QPSK調(diào)制信號性能的比較

      1:在DQPSK調(diào)制的仿真模型中,Bernoulli binary generator產(chǎn)生一個二進制向量,向量的長度等于2,分別代表DQPSK兩個支路的輸入信號。我們采用DQPSK Modulator baseband對這個信號進行調(diào)制產(chǎn)生DQPSK基帶調(diào)制信號;

      基帶調(diào)制信號首先經(jīng)過一個AWGN Channel然后進入DPSK Dodulator baseband進行解調(diào);由于貝努力二進制序列產(chǎn)生器的輸出信號在通過Bit to integer Converter轉(zhuǎn)換成整數(shù)后,與DPSK解調(diào)信號一起進入一個誤碼率統(tǒng)計模塊(Error Rate Calculation),以統(tǒng)計DPSK的誤碼率。DQPSK 調(diào)制解調(diào)原理圖如下圖所示:

      2:將DQPSK和QPSK的誤碼率性能曲線繪出的m文件如下所示:

      xSampleTime=1/100000;xSimulationTime=10;xInitialSeed=[61 71];xPhaseOffset=pi/4;xSamplesPerSymbol=1;xReceiveDelay=0;x=0:10;y1=x;y2=x;for i=1:length(x)xSNR=x(i);sim('DQPSK');y1(i)=xErrorRate(1);sim('QPSK');y2(i)=xErrorRate(1);end semilogy(x,y1,'r');gtext('DQPSK');hold on;semilogy(x,y2,'g');gtext('QPSK');

      3:將仿真截止時間設為2秒,可得如下圖示仿真結(jié)果:

      圖中紫紅色曲線表示DQPSK調(diào)制信號的誤碼率,而綠色曲線表示QPSK調(diào)制信號的誤碼率,從圖中可見在相同條件下(相同的數(shù)據(jù)源、相同的信噪比以及相同的調(diào)制信號抽樣數(shù)),QPSK調(diào)制信號的性能優(yōu)于DQPSK。

      題二:SSB信號的調(diào)制與解調(diào)

      1:其調(diào)制解調(diào)原理圖如下圖所示:

      單邊帶調(diào)制系統(tǒng)中,發(fā)送端只傳輸頻帶幅度調(diào)制信號的上邊帶或下邊帶,它使用的帶寬只是雙邊帶調(diào)制信號的一半,因此具有更高的頻帶利用率,下圖中,將輸入信號進行SSB調(diào)制,然后將其解調(diào)回復原波形。圖中示波器用以觀察信號調(diào)制解調(diào)各個階段的波形。

      2:仿真結(jié)果如下所示:

      示波器顯示結(jié)果

      注:第一個和第六個是輸入信號波形,第二個是下邊帶調(diào)制信號,第三個是已調(diào)制是的信號波形,第四個是已解調(diào)的信號波形,第五個是下邊帶信號波形。

      三:參考資料

      【1】MATLAB通信仿真及應用實例詳解 鄧華等編著 人民郵電出版社

      【2】MATLAB仿真在通信與電子工程中的應用 徐明遠 邵玉斌編著 西安電子科技大學出版社

      第五篇:通信原理課程設計報告

      課 題 學 院 專 業(yè) 學生姓名學 號 班級 指導教師

      通信原理 課程設計報告

      基于MATLAB的2FSK仿真 電子信息工程學院 通信工程

      二〇一五年一月

      基于MATLAB的基帶傳輸系統(tǒng)的研究與仿真

      —— 碼型變換

      摘 要

      HDB3碼編碼規(guī)則

      首先將消息代碼變換成AMI碼;然后檢查AMI碼中的連0情況,當無4個或4個以上的連0串時,則保持AMI的形式不變;若出現(xiàn)4個或4個以上連0串時,則將1后的第4個0變?yōu)榕c前一非0符號(+1或-1)同極性的符號,用V表示(+1記為+V,-1記為-V);最后檢查相鄰V符號間的非0符號的個數(shù)是否為偶數(shù),若為偶數(shù),則再將當前的V符號的前一非0符號后的第1個0變?yōu)?B或-B符號,且B的極性與前一非0符號的極性相反,并使后面的非0符號從V符號開始再交替變化

      關鍵詞: HDB3碼 MATLAB編碼原則 V碼 B碼

      一、背景知識

      二、MATLAB仿真軟件介紹

      三、仿真的系統(tǒng)的模型框圖

      四、使用MATLAB編程(m文件)完成系統(tǒng)的仿真

      五、仿真結(jié)果

      六、結(jié)果分析

      七、心得、參考文獻

      正文部分

      一、背景知識

      在實際的傳輸系統(tǒng)中,并不是所有的代碼電氣波形都可以信道中傳輸。含有直流分量和較豐富的單極性基帶波形就不適宜在低頻傳輸特性差的信道中傳輸,因為它有可能造成信號的嚴重的畸變。

      在傳輸碼(或稱線路嗎)的結(jié)構將取決于實際信道特性和系統(tǒng)的工作條件。通常,傳輸碼的結(jié)構應具有以下的特性:

      (1)相應的基帶信號無直流分理,且低頻分量少(2)便于從信號中提取定時信息

      (3)信號中高頻分應盡量少以節(jié)省傳輸頻帶并減少碼間串擾(4)不受信號源統(tǒng)計特性影響,即能適應于信息源變化

      (5)具有內(nèi)在的檢錯能力,傳輸?shù)拇a型應具有一定的規(guī)律性,以便利用這一規(guī)律性進行宏觀監(jiān)測

      (6)編譯碼設備要盡可能簡單

      滿足以上特性的傳輸碼型種類繁多,這里使用HDB3。

      要了解HDB3碼的編碼規(guī)則,首先要知道AMI碼的構成規(guī)則,AMI碼就是把單極性脈沖序列中相鄰的“1”碼(即正脈沖)變?yōu)闃O性交替的正、負脈沖。將“0”碼保持不變,把“1”碼變?yōu)?

      1、-1交替的脈沖。如: NRZ碼:1 0 0 0 0 1 0 0 0 0 1 1 0 0 0 0 1 1 AMI碼:-1 0 0 0 0 +1 0 0 0 0-1 +1 0 0 0 0-1 +1 HBD3碼(3nd Order High Density Bipolar)的全稱是三階高密度雙極性碼,它是AMI碼的一種改進型,改進目的是為了保持AMI碼的優(yōu)點而克服其缺點,使連“0”個數(shù)不超過3個。其編碼規(guī)則:

      (1)檢查消息碼中連“0”的個數(shù)。當連“0”數(shù)目小于等于3時,HBD3碼與AMI碼一樣(“1”交替的變換為“+1”和“-1”,“0”保持不變)。

      (2)當連“0”數(shù)目超過3時,將每4個連“0”化作一小節(jié),定義為“B00V"稱為破壞節(jié),其中V稱為破壞脈沖,而B稱為調(diào)節(jié)脈沖;

      (3)V與前一個相鄰的非“0”脈沖的極性相同(這破壞了極性交替的規(guī)則,所以V稱破壞脈沖),并且要求相鄰的V碼之間極性必須交替。V的取值為“+1”或“-1”;

      (4)B的取值可選0、+1或-1,以使V同時滿足(3)中的兩個要求;(5)V碼后面的傳號碼極性也要交替。例如:

      消息碼: 1 000 0 1 000 0 1 1 000 0 000 0 1 1 AMI碼:-1 000 0 +1 000 0-1+1 000 0 000 0-1+1 HDB3碼:-1 000-V +1 000+V-1+1-B00-V +B00+V-1+1 其中的±B脈沖和±V脈沖與±1脈沖波形相同,用V或B表示的目的是為了示意其中的該非“0”碼是由原信碼的“0”變換而來的。

      當相鄰兩個V碼之間有奇數(shù)個“1”碼時,能保證V碼滿足(3)的要求,B取“0”;當相鄰兩個V碼之間有偶數(shù)個“1”碼時,不能保證V碼極性交替,B取“+1”或“-1”,B碼的符號與前相鄰“1”相反,而其后面的V碼與B碼極性相同。

      二、MATLAB簡介

      美國MATHWORK公司于1967年推出了“Matrix Laboratory”(縮寫為MATLAB)軟件包,不斷更新和擴充。它是一種功能強、效率高便于進行科學和工程計算的交互式軟件包。其中包括:一般數(shù)值分析、矩陣運算、數(shù)字信號處理、建模和系統(tǒng)控制和優(yōu)化等應用程序。

      MATLAB的基本數(shù)據(jù)單位是矩陣,它的指令表達式與數(shù)學,工程中常用的形式十分相似,故用MATLAB來解算問題要比用C,F(xiàn)ORTRAN等語言完相同的事情簡捷得多。在新的版本中也加入了對C,F(xiàn)ORTRAN,c++,JAVA的支持??梢灾苯诱{(diào)用,用戶也可以將自己編寫的實用程序?qū)氲組ATLAB函數(shù)庫中方便自己以后調(diào)用,此外許多的MATLAB愛好者都編寫了一些經(jīng)典的程序,用戶可以直接進行下載就可以用,非常的方便。

      MATLAB的基礎是矩陣計算,但是由于他的開放性,并且mathwork也吸收了像maple等軟件的優(yōu)點,使MATLAB成為一個強大的數(shù)學軟件。

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

      開放性使MATLAB廣受用戶歡迎。除內(nèi)部函數(shù)外,所有MATLAB主包文件和各種工具包都是可讀可修改的文件,用戶通過對源程序的修改或加入自己編寫程序構造新的專用工具包。

      Matlab的優(yōu)勢和特點:

      (1)友好的工作平臺和編程環(huán)境

      MATLAB由一系列工具組成。這些工具方便用戶使用MATLAB的函數(shù)和文件,其中許多工具采用的是圖形用戶界面。包括MATLAB桌面和命令窗口、歷史命令窗口、編輯器和調(diào)試器、路徑搜索和用于用戶瀏覽幫助、工作空間、文件的瀏覽器。隨著MATLAB的商業(yè)化以及軟件本身的不斷升級,MATLAB的用戶界面也越來越精致,更加接近Windows的標準界面,人機交互性更強,操作更簡單。而且新版本的MATLAB提供了完整的聯(lián)機查詢、幫助系統(tǒng),極大的方便了用戶的使用。簡單的編程環(huán)境提供了比較完備的調(diào)試系統(tǒng),程序不必經(jīng)過編譯就可以直接運行,而且能夠及時地報告出現(xiàn)的錯誤及進行出錯原因分析。

      (2)簡單易用的程序語言

      Matlab一個高級的距陣/陣列語言,它包含控制語句、函數(shù)、數(shù)據(jù)結(jié)構、輸入和輸出和面向?qū)ο缶幊烫攸c。用戶可以在命令窗口中將輸入語句與執(zhí)行命令同步,也可以先編寫好一個較大的復雜的應用程序(M文件)后再一起運行。新版本的MATLAB語言是基于最為流行的C++語言基礎上的,因此語法特征與C++語言極為相似,而且更加簡單,更加符合科技人員對數(shù)學表達式的書寫格式。使之更利于非計算機專業(yè)的科技人員使用。而且這種語言可移植性好、可拓展性極強,這也是MATLAB能夠深入到科學研究及工程計算各個領域的重要原因。

      (3)強大的科學計算機數(shù)據(jù)處理能力

      MATLAB是一個包含大量計算算法的集合。其擁有600多個工程中要用到的數(shù)學運算函數(shù),可以方便的實現(xiàn)用戶所需的各種計算功能。函數(shù)中所使用的算法都是科研和工程計算中的最新研究成果,而前經(jīng)過了各種優(yōu)化和容錯處理。在通常情況下,可以用它來代替底層編程語言,如C和C++。在計算要求相同的情況下,使用MATLAB的編程工作量會大大減少。MATLAB的這些函數(shù)集包括從最簡單最基本的函數(shù)到諸如距陣,特征向量、快速傅立葉變換的復雜函數(shù)。函數(shù)所能解決的問題其大致包括矩陣運算和線性方程組的求解、微分方程及偏微分方程的組的求解、符號運算、傅立葉變換和數(shù)據(jù)的統(tǒng)計分析、工程中的優(yōu)化問題、稀疏矩陣運算、復數(shù)的各種運算、三角函數(shù)和其他初等數(shù)學運算、多維數(shù)組操作以及建模動態(tài)仿真等。

      (4)出色的圖形處理功能

      MATLAB自產(chǎn)生之日起就具有方便的數(shù)據(jù)可視化功能,以將向量和距陣用圖形表現(xiàn)出來,并且可以對圖形進行標注和打印。高層次的作圖包括二維和三維的可視化、圖象處理、動畫和表達式作圖。可用于科學計算和工程繪圖。新版本的MATLAB對整個圖形處理功能作了很大的改進和完善,使他不僅在一般數(shù)據(jù)可視化軟件都具有的功能(例如二維曲線和三維曲面的繪制和處理等)方面更加完善,而且對于一些其他軟件所沒有的功能(例如圖形的光照處理、色度處理以及四維數(shù)據(jù)的表現(xiàn)等),MATLAB同樣表現(xiàn)了出色的處理能力。同時對一些特殊的可視化要求,例如圖形對話等,MATLAB也有相應的功能函數(shù),保證了用戶不同層次的要求。另外新版本的MATLAB還著重在圖形用戶界面(GUI)的制作上作了很大的改善,對這方面有特殊要求的用戶也可以得到滿足。

      (5)應用廣泛的模塊集合工具箱

      MATLAB對許多專門的領域都開發(fā)了功能強大的模塊集和工具箱。一般來說,他們都是由特定領域的專家開發(fā)的,用戶可以直接使用工具箱學習、應用和評估不同的方法而不需要自己編寫代碼。目前,MATLAB已經(jīng)把工具箱延伸到了科學研究和工程應用的諸多領域,諸如數(shù)據(jù)采集、數(shù)據(jù)庫接口、概率統(tǒng)計、樣條擬合、優(yōu)化算法、偏微分方程求解、神經(jīng)網(wǎng)絡、小波分析、信號處理、圖像處理、系統(tǒng)辨識、控制系統(tǒng)設計、LMI控制、魯棒控制、模型預測、模糊邏輯、金融分析、地圖工具、非線性控制設計、實時快速原型及半物理仿真、嵌入式系統(tǒng)開發(fā)、定點仿真、DSP與通訊、電力系統(tǒng)仿真等,都在工具箱(Toolbox)家族中有了自己的一席之地。

      (6)實用的程序接口和發(fā)布平臺

      新版本的MATLAB可以利用MATLAB編譯器和C/C++數(shù)學庫和圖形庫,將自己的MATLAB程序自動轉(zhuǎn)換為獨立于MATLAB運行的C和C++代碼。允許用戶編寫可以和MATLAB進行交互的C或C++語言程序。另外,MATLAB網(wǎng)頁服務程序還容許在Web應用中使用自己的MATLAB數(shù)學和圖形程序。

      MATLAB的一個重要特色就是他有一套程序擴展系統(tǒng)和一組稱之為工具箱的特殊應用子程序。工具箱是MATLAB函數(shù)的子程序庫,每一個工具箱都是為某一類學科專業(yè)和應用而定制的,主要包括信號處理、控制系統(tǒng)、神經(jīng)網(wǎng)絡、模糊邏輯、小波分析和系統(tǒng)仿真等方面的應用。

      (7)應用軟件開發(fā)(包括用戶界面)

      在開發(fā)環(huán)境中,使用戶更方便地控制多個文件和圖形窗口;在編程方面支持了函數(shù)嵌套,有條件中斷等;在圖形化方面,有了更強大的圖形標注和處理功能,包括對性對起連接注釋等;在輸入輸出方面,可以直接向Excel和HDF5。

      三、仿真的系統(tǒng)的模型框圖

      (1)實驗編碼原理框圖如下所示 :

      (2)以下是V碼以及B碼產(chǎn)生的框圖:

      (3)V碼產(chǎn)生單元的工作流程圖

      (4)B碼產(chǎn)生單元的工作流程圖 譯碼規(guī)則: 在接收端,將接收到的HDB3碼序列恢復為原輸入二進制數(shù)字信息序列的過程稱為譯碼。

      對HDB3碼而言,譯碼就是找到編碼時插入的特殊序列并將它恢復為0000。根據(jù)編碼原則,HDB3的譯碼可分為三個步驟:

      (1)根據(jù)“V”的極性特點,找出特殊序列。由于編碼時,每個“V”的極性 都與其前一個“1”碼的極性相同,所以,在接收序列中一旦出現(xiàn)連續(xù)兩個同極性碼時,兩個同極性碼的后一個即為“V”,此“V”與其前的三位碼就是一個特殊序列;

      (2)將所有的特殊序列都恢復為“0000”;

      (3)將正、負脈沖都恢復為“1”碼,零電平恢復為“0”碼。下圖是譯碼的框圖:

      四、使用MATLAB編程(m文件)完成系統(tǒng)的仿真

      程序源代碼

      global dt df t f N close all

      N=2^13;

      %采樣點數(shù)

      L=8;

      %每碼元的采樣點數(shù)

      M=N/L;

      %碼元數(shù)

      Rb=2;Ts=0.5;

      %碼元寬度是0.5us dt=Ts/L;

      df=1/(N*dt);

      %MHz RT=0.5;

      %占空比 T=N*dt;

      %截短

      Bs=N*df/2;

      %系統(tǒng)帶寬

      t=[-T/2+dt/2:dt:T/2];

      %時域橫坐標

      f=[-Bs+df/2:df:Bs];

      %頻域橫坐標 figure(1)

      set(1,'Position',[10,50,300,200])

      %設定窗口位置及大小

      figure(2)

      set(2,'Position',[350,50,300,200])

      %設定窗口位置及大小

      EPAMI=zeros(size(f));EPHDB=zeros(size(f));for ii=1:8 ami=zeros(1,M);hdb=zeros(1,M);a=round(rand(1,M));

      b=3;

      %表示0000之間循環(huán)個數(shù)

      c=-1;

      %記載相鄰V之間的1元素個數(shù)

      sign1=-1;

      %標志前一個信號

      sign2=-1;

      %標志前一個信號

      for ii=1:M

      if a(ii)==1

      sign1=0-sign1;ami(ii)=sign1;

      end End for ii=1:M

      if b==3

      %表示非0000

      if a(ii)==1

      sign2=0-sign2;hdb(ii)=sign2;

      if c>=0

      %表示不是第一個0000

      c=c+1;

      %用來計算相鄰v之間的非0元素個數(shù)

      end

      elseif ii<=M-3 & a(ii)+a(ii+1)+a(ii+2)+a(ii+3)==0

      if mod(c,2)==1

      %000V hdb(ii+3)=sign2;

      else

      %B00V

      sign2=0-sign2;hdb(ii)=sign2;

      hdb(ii+3)=sign2;

      end

      c=0;

      b=0;

      end

      elseif b<3

      %對0000的循環(huán)

      b=b+1;

      End end

      for i=[1:L] ami1(i+[0:M-1]*L)=ami;hdb1(i+[0:M-1]*L)=hdb;end

      AMI=T2F*(ami1);

      PAMI=AMI.*conj(AMI)/T;HDB=T2F*(hdb1);

      PHDB=HDB.*conj(HDB)/T;EPAMI=(EPAMI*(ii-1)+PAMI)/ii;EPHDB=(EPHDB*(ii-1)+PHDB)/ii;figure(1)

      aa=30+10*log10(EPAMI+eps);

      %加eps以避免除以零

      bb=30+10*log10(EPHDB+eps);plot(f,aa,'g');grid

      axis([-8,+8,-80,80])xlabel('f(MHz)')

      ylabel('AMIPs(f)

      (dBm/MHz)')figure(2)plot(f,bb,'b');grid

      axis([-8,+8,-80,80])xlabel('f(MHz)')

      ylabel('HDBPs(f)

      (dBm/MHz)')figure(3)subplot(3,1,1)tt=[1:40];

      stem(tt,a(1:40),'g')title('原始RNZ信號')s ubplot(3,1,2)

      stem(tt,ami(1:40),'g')title('AMI信號')subplot(3,1,3)

      stem(tt,hdb(1:40),'g')title('HDB碼')end

      %將下面的代碼保存在t2f.m文件中

      function X=t2f(x)global dt df N t f T

      %X=t2f(x)

      %x為時域的取樣值矢量 %X為x的傅氏變換

      %X與x長度相同,并為2的整冪。

      %本函數(shù)需要一個全局變量dt(時域取樣間隔)H=fft(x);

      X=[H(N/2+1:N),H(1:N/2)]*dt;end

      五、仿真結(jié)果

      六、結(jié)果分析和心得

      HDB3(High DensityBinary-3)碼的全稱是3階高密度雙極性碼。它是AMI碼的一種改進型,主要是為了克服AMI碼中連“0”時所帶來的提取定時信息的困難。HDB3編碼規(guī)則是:先把消息代碼中的“1”交替變成“+1”和“-1”,“0”仍然保持“0”不變的AMI碼,然后去檢查AMI碼的連“0”的情況 ,當沒有4個和4個以上連“0”串時 ,這樣的AMI碼就是HDB3碼 ;當出現(xiàn)4個和4個以上連“0”串時,則將每4個連“0”的小段的第4個“0”變換成與其前一個非零符號相同極型的符號,并用“+V”和“-V”表示.若此“V”使后面的序列破壞了“極性交替反轉(zhuǎn)” 的原則,則將出現(xiàn)直流分量。故需要保證相鄰“V”的符號也是極性相反,所以,當不滿足V也極性相反時,將這個連“0” 碼無串的等一個“0” 變成“-B”和“+B”?!癇”的符號與前一個非“0”碼的符號相反,并且讓后面的非“0” 碼元符號從“V” 碼開始再交替變化。

      HDB3碼譯碼比較容易,從收到的符號序列中可以容易地找到破壞點V,于是也斷定V符號及其前面3 個符號必是連0 符號,從而恢復4個連0碼,再將所有的-1變成+1后便得到原消息代碼。

      下面用例題來進一步說明編碼與譯碼的原理: 例:求序列***000對應的HDB3碼。編碼譯碼步驟如下: 找出四連0序列;用特殊序列代替連0序列,第一個特殊序列可任意選擇如選擇100V。

      將“1”和“V”標上極性“+1”或“-1”。輸入數(shù)據(jù)中的“1”和特殊序列中的“1”作為一個整體極性交替,第一個“1”的極性可任意選擇如選擇“-1”。第一個特殊序列中的“V“與其前第一個“1”的極性相同,后面的“V”依次極性交替。

      根據(jù)上面步驟列出系列各式以及畫圖,實現(xiàn)HDB3碼的編碼。

      通過譯碼原理可知:V碼與B碼的極性相同,我們可以對這個輸出碼從后開始譯碼,自然而然的可以得到原輸入的序列,此時,編碼與譯碼就完成了。

      另外說明:1.由于第一個特殊序和第一個“1”的極性均可任意選擇,所以同一數(shù)字信息序列的HDB3可有四種不同的形式。2.當編碼的序列足夠長時,我們的編碼與譯碼過程中更容易得到規(guī)律。

      以上的程序便是綜合了HDB3的編碼譯碼以及對于其仿真的全部過程,此是經(jīng)過了本組成員的反復修改最終制作而成,對于HDB3的編譯碼有了更加深入的了解。

      七、參考文獻

      1.郭文彬,桑林編著,通信原理-基于Matlab的計算機仿真,北京郵電大學出版社,2006 2.曹志剛,錢亞生,現(xiàn)代通信原理,清華大學出版社,2002年

      3.郭仕劍等,《MATLAB 7.x數(shù)字信號處理》,人民郵電出版社,2006年

      4.樊昌信,曹麗娜編著,通信原理學習指導,西安電子科技大學,2003

      下載MATLAB通信原理課程設計報告word格式文檔
      下載MATLAB通信原理課程設計報告.doc
      將本文檔下載到自己電腦,方便修改和收藏,請勿使用迅雷等下載。
      點此處下載文檔

      文檔為doc格式


      聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻自行上傳,本網(wǎng)站不擁有所有權,未作人工編輯處理,也不承擔相關法律責任。如果您發(fā)現(xiàn)有涉嫌版權的內(nèi)容,歡迎發(fā)送郵件至:645879355@qq.com 進行舉報,并提供相關證據(jù),工作人員會在5個工作日內(nèi)聯(lián)系你,一經(jīng)查實,本站將立刻刪除涉嫌侵權內(nèi)容。

      相關范文推薦

        通信原理課程設計報告

        通信系統(tǒng)課程設計報告 單邊帶電臺仿真院 (系): 專業(yè)年級(班): 學 生: 學 號: 指 導 教 師: 完 成 時 間: 摘 要 這篇文章介紹了使用MATLAB軟件編制程序,以實現(xiàn)單邊帶信號的調(diào)制和解調(diào)。......

        通信原理課程設計報告

        《通信原理》 課程設計報告 題目:AM超外差收音機的設計及仿真 班 級: 姓 名: 學 號: 指導老師:2011年6月 1 引言 課程設計目的 綜合運用信號與系統(tǒng)、數(shù)字信號處理的理論知識進行......

        通信原理課程設計報告

        目錄 一、摘要 ????????????????????3 二、課程設計的目的與要求 ????????????4 (1)課程設計的目的 (2)課程設計的要求 三、FM調(diào)制解調(diào)系統(tǒng)......

        通信原理課程設計[范文]

        通 題目: 信 原 理課程設計 基于MATLAB的系統(tǒng)的2ASK仿真 - 1 五、 設計心得和體會??????????????????????? 1、 心得和體會……………………………......

        通信原理課程設計

        通 信 原 理 課 程 設計班級:姓名: 學號: 任課教師:Simulink建模仿真實現(xiàn)頻分復用 ? 設計目的 1 掌握頻分復用工作原理 2 學會使用Simulink建模仿真 ? 設計題目涉及的理論知......

        通信原理課程設計[大全]

        二○一○~二○一一學年第二學期 電子信息工程系 課程設計計劃書 課程名稱:通信原理班級:姓名:學號:指導教師:二○一一年六月一日 1、課程設計目的: 通過課程設計,鞏固已經(jīng)學過的有關......

        通信原理課程設計

        通信原理課程設計 AM超外差收音機仿真 院系: 班級:姓名: 學號:指導老師: 完成日期: (一)課程設計目的: 為了將理論應用到實踐,我們進行了在整整半個月的課程設計,我學到很多很多的東西......

        通信原理課程設計

        沈陽理工大學通信系統(tǒng)課程設計報告 1.課程設計目的 (1)掌握抑制載波調(diào)幅信號(AM)的調(diào)制原理。 (2)學會Matlab仿真軟件在通信中的應用。 (3)掌握AM系統(tǒng)在同步檢波下的性能分析。 (4)......