




版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、蘭州理工大學(xué)蘭州理工大學(xué)計(jì)算機(jī)與通信學(xué)院2010 年秋季學(xué)期移動(dòng)通信移動(dòng)通信課程設(shè)計(jì)課程設(shè)計(jì)題目:基于 MATLAB 的 Walsh 函數(shù)的產(chǎn)生專業(yè)班級(jí):通信工程 07 級(jí)(2)班姓名:王旭東學(xué)號(hào):07250229指導(dǎo)教師:賈科軍成績(jī):摘要本文研究的是基于 MATLAB 的擴(kuò)頻通信系統(tǒng)設(shè)計(jì)。 為我們介紹了擴(kuò)頻通信系統(tǒng)的基本原理,并對(duì)擴(kuò)頻系統(tǒng)的各個(gè)重要模塊進(jìn)行詳細(xì)的理論介紹,如 Walsh 函數(shù)的產(chǎn)生及其特性,BPSK 的調(diào)制和解調(diào)方法,以及高斯加性白噪聲 AWNG 的特點(diǎn)等等。所有的理論依據(jù)為后續(xù)的 MATLAB 程序仿真奠定基礎(chǔ)。在 MATLAB 程序仿真部分,主要分為 6 大部分,分別為主
2、函數(shù),發(fā)送模塊,接收模塊,AWNG 信道,Walsh 函數(shù)和差錯(cuò)計(jì)數(shù)器。通過(guò)主函數(shù)對(duì)各個(gè)子函數(shù)的調(diào)用,實(shí)現(xiàn) 4 個(gè)用戶的隨機(jī)數(shù)據(jù)的發(fā)送和接收,同時(shí)生成前 4 個(gè)用戶在整個(gè)傳輸過(guò)程中的各種波形變化圖,并對(duì)系統(tǒng)信噪比與誤碼率關(guān)系進(jìn)行分析。擴(kuò)頻通信是通信的一個(gè)重要分支和信道通信系統(tǒng)的發(fā)展方向。擴(kuò)頻技術(shù)具有抗干擾能力強(qiáng),保密性好,易于實(shí)現(xiàn)多址通信等優(yōu)點(diǎn),因此該技術(shù)越來(lái)越受到人們的重視,這也是選擇本次課題研究的原因所在。關(guān)鍵詞: 擴(kuò)頻; walsh;MATLAB;目錄1 擴(kuò)頻通信的基本原理1 1 21.3 WALSH 函數(shù) 21.4 BPSK3高斯加性白噪聲(AWNG)32 MATLAB 仿真4 4程序
3、模塊43 仿真結(jié)果分析 111111問(wèn)題的分析和解決 124 仿真程序 135 課程設(shè)計(jì)心得 21Abstract 22參考文獻(xiàn)231擴(kuò)頻通信的基本原理11所謂擴(kuò)展頻譜通信,可簡(jiǎn)單表述如下:“擴(kuò)頻通信技術(shù)是一種信息傳輸方式,其信號(hào)所占有的頻帶寬度遠(yuǎn)大于所傳信息必需的最小帶寬;頻帶的擴(kuò)展是通過(guò)一個(gè)獨(dú)立的碼序列來(lái)完成,用編碼及調(diào)制的方法來(lái)實(shí)現(xiàn)的,與所傳信息數(shù)據(jù)無(wú)關(guān);在接收端則用同樣的碼進(jìn)行相關(guān)同步接收、解擴(kuò)及恢復(fù)所傳信息數(shù)據(jù)”。擴(kuò)頻通信的基本特點(diǎn),是傳輸信號(hào)所占用的頻帶寬度(W)遠(yuǎn)大于原始信息本身實(shí)際所需的最小帶寬(B) ,其比值稱為處理增益(Gp) 。總之,我們用擴(kuò)展頻譜的寬帶信號(hào)來(lái)傳輸信息,就
4、是為了提高通信的抗干擾能力,即在強(qiáng)干擾條件下保證可靠安全地通信。這就是擴(kuò)展頻譜通信的基本思想和理論依據(jù)。擴(kuò)頻通信的性能。擴(kuò)頻通信的可行性是從信息論和抗干擾理論的基本公式中引伸而來(lái)的。信息論中關(guān)于信息容量的仙農(nóng)( Shannon) 公式為:C=Blog2 ( 1+ SN)其中: C 為信道容量( 即極限傳輸速率) , B 為信號(hào)頻帶寬度, S 為信號(hào)功率, N 為噪聲功率。Shannon 公式說(shuō)明, 在給定的傳輸速率不變的條件下, 頻帶寬度和信噪比P 可以互換,即可以通過(guò)增加頻帶寬度, 在信噪比較低的情況下傳輸信息。擴(kuò)展頻譜以換取信噪比要求的降低, 正是擴(kuò)頻通信的重要特點(diǎn), 并由此為擴(kuò)頻通信的應(yīng)
5、用奠定了基礎(chǔ)。擴(kuò)頻通信的一個(gè)重要參數(shù)是擴(kuò)頻增益, 反映了系統(tǒng)抗干擾能力的強(qiáng)弱, 是對(duì)信噪比改善程度的度量, 定義為接收機(jī)相關(guān)器輸出信噪比和輸入信噪比之比, 即(1)其中: Rs 為擴(kuò)頻碼的傳輸速率, Rd 為信息數(shù)據(jù)的傳輸速率, Bs 為擴(kuò)頻碼的帶寬,Bd 為信息數(shù)據(jù)的帶寬。按照擴(kuò)展頻譜的方式不同, 現(xiàn)有的擴(kuò)頻通信系統(tǒng)可分為直接序列( DS) 擴(kuò)頻、跳頻( FH) 、跳時(shí)( TH) 、線性調(diào)頻( chirp) 以及上述幾種方式的組合。擴(kuò)頻通信常用的擴(kuò)頻碼主要有PN 序列、GOLD 序列、WALSH 碼和OVSF 碼。PN 碼即偽噪聲序列也稱之為偽隨機(jī)序列, 是用確定性方法產(chǎn)生的序列, 但它卻近
6、似具有隨機(jī)產(chǎn)生序列所希望的某些關(guān)鍵隨機(jī)特性。其中最常見(jiàn)的偽隨機(jī)序列是m 序列。而擴(kuò)頻通信調(diào)制方式一般采用頻率調(diào)制( FM) 或相位調(diào)制( PM) 的方式來(lái)進(jìn)行數(shù)據(jù)調(diào)制, 在碼分多址通信中,其調(diào)制多采用BPSK、DPSK、QPSK、MPSK 等方式。在碼分多址通信中最常用BPSK( 二相移相鍵控)。直接序列擴(kuò)頻直接序列擴(kuò)頻直接序列擴(kuò)頻就是直接用具有高碼率的擴(kuò)頻碼序列在發(fā)送端去擴(kuò)展信號(hào)的頻譜。而在接收端, 用相同的擴(kuò)頻碼序列去進(jìn)行解擴(kuò), 將展寬的擴(kuò)頻信號(hào)還原成原始的信息。直擴(kuò)通信系統(tǒng)原理如圖1 所示。在發(fā)送端輸入的信息先經(jīng)信息調(diào)制形成調(diào)頻或調(diào)相數(shù)字信號(hào), 然后由擴(kuò)頻碼發(fā)生器產(chǎn)生的擴(kuò)頻碼序列去調(diào)制數(shù)
7、字信號(hào)以展寬信號(hào)的頻譜, 再將展寬后的寬帶信號(hào)調(diào)制到射頻發(fā)送出去。在接收端, 接收機(jī)接收到寬帶射頻信號(hào)后, 首先將其變頻至中頻, 然后通過(guò)同步電路捕捉發(fā)送來(lái)的擴(kuò)頻碼的準(zhǔn)確相位, 由此產(chǎn)生與發(fā)送來(lái)的偽隨機(jī)碼相位完全一致的接收用的偽隨機(jī)碼, 作為擴(kuò)頻解調(diào)用的本地?cái)U(kuò)頻碼序列, 最后經(jīng)信息解調(diào), 恢復(fù)成原始信息輸出。由此可見(jiàn), 直擴(kuò)通信系統(tǒng)要進(jìn)行三次調(diào)制和相應(yīng)的解調(diào), 分別為信息調(diào)制、擴(kuò)頻調(diào)制和射頻調(diào)制, 以及相應(yīng)的信息解調(diào)、解擴(kuò)和射頻解調(diào)。與一般通信系統(tǒng)比較, 擴(kuò)頻通信就是多了擴(kuò)頻調(diào)制和解擴(kuò)部分。1.31.3 WALSHWALSH 函數(shù)函數(shù)WALSH 函數(shù)是一種非正弦的完備正交函數(shù)系, 具有理想的互
8、相關(guān)特性, 兩兩之間的互相關(guān)函數(shù)為0, 亦即它們是正交的。因而在碼分多址同心中,WALSH 函數(shù)可以作為地址碼使用。在本設(shè)計(jì)中,就使用了WALSH碼。它僅有可能的取值:1和1(或0和1) ,比較適合于用來(lái)表達(dá)和處理數(shù)字信號(hào)。1.4 BPSK二進(jìn)制移相鍵控(BPSK) 調(diào)制是載波相位按基帶脈沖變化的一種數(shù)字調(diào)制方式。 BPSK 的信號(hào)形式一般表示為e0 ( t) = nang ( t - nT s) co sXc t (6)(2)這里, g ( t) 是脈寬為T s 的單個(gè)矩形脈沖, 而an 的統(tǒng)計(jì)特性為an =+1, 概率為P-1, 概率為(1- P )絕對(duì)移相BPSK 存在相位模糊, 因此實(shí)
9、際應(yīng)用中多采用相對(duì)移相2DPSK 的調(diào)制方式。這只要在信號(hào)源后加一個(gè)碼變換, 且在解調(diào)端的抽樣判決器后加一個(gè)碼反變換器。BPSK 信號(hào)產(chǎn)生的方法有調(diào)相法和相位選擇法兩大類。 在具體實(shí)現(xiàn)時(shí), 我們?nèi)∶看a元兩個(gè)載波, 每載波抽樣16 個(gè)點(diǎn), 即每碼元抽樣32 點(diǎn)。因此, 用調(diào)相法實(shí)現(xiàn)時(shí), 我們可以方便地用數(shù)字乘法器實(shí)現(xiàn), 具體方法見(jiàn)圖2。圖2 調(diào)相法高斯加性白噪聲(AWNG)白噪聲是指功率譜密度在整個(gè)頻域內(nèi)均勻分布的噪聲。即其功率譜密度:(為常數(shù)),(3)白噪聲的自相關(guān)函數(shù):因?yàn)椋云渥韵嚓P(guān)函數(shù)為:(4)由式(4)可知,白噪聲的自相關(guān)函數(shù)僅在時(shí)才不為零;而對(duì)于其他任意的,它都為零。這說(shuō)明只有在時(shí)
10、才相關(guān),而它在任意兩個(gè)時(shí)刻上的隨機(jī)變量都是不相關(guān)的。但是帶限的白噪聲就不是這樣的自相關(guān)函數(shù)了, 因?yàn)槠涔β首V密度是窗函數(shù) (線段) ,而不是一條直線。加性高斯白噪聲(AWGN)從統(tǒng)計(jì)上而言是隨機(jī)無(wú)線噪聲,其特點(diǎn)是其通信信道上的信號(hào)分布在很寬的頻帶范圍內(nèi)。 高斯白噪聲的概念。白指功率譜恒定; “高斯”指幅度取各種值時(shí)的概率 p (x)是高斯函數(shù); “加性”指 噪聲獨(dú)立于有用信號(hào),不隨信號(hào)的改變而改變。2.MATLAB 仿真2根據(jù)選題的設(shè)計(jì)要求,我們采用四個(gè)用戶的數(shù)據(jù),首先在發(fā)送端將四個(gè)用戶的數(shù)據(jù)分別進(jìn)行調(diào)制(包括 Walsh 擴(kuò)頻調(diào)制和 BPSK 調(diào)制) ,然后再將已調(diào)用戶信號(hào)進(jìn)行相加,輸入帶有
11、 AWNG 高斯加性白噪聲的信道中。在接收端,將從信道送出的信號(hào)進(jìn)行解調(diào)(包括 BPSK 解調(diào)和 Walsh 解調(diào)) 。最后,通過(guò)判決器輸出還原后的信號(hào),將還原信號(hào)和原始信號(hào)進(jìn)行比較,用誤碼計(jì)數(shù)器統(tǒng)計(jì)誤碼個(gè)數(shù)。方框圖如圖 3User1User4Walsh 擴(kuò)頻Walsh 擴(kuò)頻BPSK 調(diào)制BPSK 調(diào)制相加信道BPSK 調(diào)制Walsh 擴(kuò)頻判決User計(jì)數(shù)圖 3 仿真系統(tǒng)框圖2.2 程序模塊Walsh 函數(shù)的產(chǎn)生產(chǎn)生 Walsh 函數(shù)的源代碼如下:function A=walsh(x)H2=1 1;1 -1;%2階哈達(dá)碼NH2=H2*(-1);H4=H2 H2;H2 NH2;%4階哈達(dá)碼NH4
12、=-1*H4;H8=H4 H4;H4 NH4;%8階哈達(dá)碼NH8=-1*H8;H16=H8 H8;H8 NH8;%16階哈達(dá)碼NH16=-1*H16;H32=H16 H16;H16 NH16;%32階哈達(dá)碼NH32=-1*H32;H64=H32 H32;H32 NH32;%64階哈達(dá)碼NH64=-1*H64;H128=H64 H64;H64 NH64;%128階哈達(dá)碼NH128=-1*H128;switch xcase 2A=H2;case 4A=H4;case 8A=H8;case 16A=H16;case 32A=H32;case 64A=H64;case 128A=H128;otherw
13、isedisp(error);end在本實(shí)驗(yàn)中我們采用 16 階哈達(dá)碼對(duì)用戶數(shù)據(jù)進(jìn)行 Walsh 擴(kuò)頻調(diào)制,只要調(diào)用函數(shù)N=16;B=walsh(N),即可產(chǎn)生擴(kuò)頻增益為 N16 的擴(kuò)頻碼。發(fā)送端實(shí)驗(yàn)中我們把發(fā)送端的各個(gè)子模塊寫在一個(gè)函數(shù)中,由 main 函數(shù)進(jìn)行調(diào)用,發(fā)送模塊的函數(shù)名為 send_module(nA,N,m,B),其中 nA 為用戶 A 通過(guò)調(diào)用 MATLAB 自帶的fix(unifrnd(0,255)函數(shù),產(chǎn)生一個(gè)字節(jié)的隨機(jī)信號(hào);N 為哈達(dá)碼的階數(shù);m 為 N 階哈達(dá)碼的第 m 行,即 Walsh 擴(kuò)頻碼。函數(shù)返回兩組值,nA_2,ChannelA中 nA_2 表示用戶 A
14、數(shù)據(jù)從十進(jìn)制轉(zhuǎn)換為二進(jìn)制,并分解為適合電路傳輸?shù)碾p極性數(shù)字基帶信號(hào)(例如,nA=112,則 nA_2=+1 +1 +1 -1 -1 -1 -1 -1) ,可以做為誤碼計(jì)數(shù)器的原始比較信號(hào)。而 ChannelA 表示用戶 A 數(shù)據(jù)調(diào)制后的最終數(shù)據(jù)。圖 4 是用戶 A 調(diào)制過(guò)程的各個(gè)波形。發(fā)送端函數(shù)調(diào)用的源代碼如下:for i=1:4switch icase 1%nA=input(用戶 A 數(shù)據(jù) nA=);nA=fix(unifrnd(0,255);%產(chǎn)生一個(gè)字節(jié)隨機(jī)信號(hào)m=i+1;figure(1);nA_2,ChannelA=send_module(nA,N,m);case 2%nB=inpu
15、t(用戶 B 數(shù)據(jù) nB=);nB=fix(unifrnd(0,255);%產(chǎn)生一個(gè)字節(jié)隨機(jī)信號(hào)m=i+1;figure(2);nB_2,ChannelB=send_module(nB,N,m);case 3%nC=input(用戶 C 數(shù)據(jù) nC=);nC=fix(unifrnd(0,255);%產(chǎn)生一個(gè)字節(jié)隨機(jī)信號(hào)m=i+1;figure(3);nC_2,ChannelC=send_module(nC,N,m);case 4%nD=input(用戶 D 數(shù)據(jù) nD=);nD=fix(unifrnd(0,255);%產(chǎn)生一個(gè)字節(jié)隨機(jī)信號(hào)m=i+1;figure(4);nD_2,Channel
16、D=send_module(nD,N,m);otherwisedisp(error);endi=i+1;end圖 4 用戶 A 直接序列擴(kuò)頻通信調(diào)制圖 5 用戶 B 直接序列擴(kuò)頻通信調(diào)制圖 6 用戶 C 直接序列擴(kuò)頻通信調(diào)制圖 7 用戶 D 直接序列擴(kuò)頻通信調(diào)制信道如圖 8 所示,是信道兩端信號(hào)的波形。將用戶 A、B、C、D 已調(diào)信號(hào)相加后,送入傳輸信道中,用高斯加性白噪聲對(duì)信道中的信號(hào)進(jìn)行干擾。本實(shí)驗(yàn)調(diào)用 MATLAB 自帶的awgn(Channel,snr,measured)函數(shù),其中,Channel 是所有用戶已調(diào)信號(hào)的和,snr 是信道的信噪比。信道傳輸?shù)脑创a如下:figure(5)
17、;Channel=ChannelA+ChannelB+ChannelC+ChannelD;q=1:1:128*8;subplot(2,1,1);plot(q,Channel);title(發(fā)射信號(hào))axis(1 1024 -4.4 4.4)snr=0.00001;%信道的信噪比,單位dBy = awgn(Channel,snr,measured) ;subplot(2,1,2);plot(q,y);axis(1 1024 -4.4 4.4)title(接收信號(hào))圖 8 awng 信道發(fā)送端和接收端波形接收端接收函數(shù)的函數(shù)名為 receive_module(N,y,m),其中 N 為哈達(dá)碼的階數(shù)
18、,y 為接收信號(hào),m 為 N 階哈達(dá)碼的第 m 行,即 Walsh 擴(kuò)頻碼。返回值 receiveA 表示接收對(duì)用戶 A 發(fā)送的信號(hào)進(jìn)行解調(diào)后還原的信號(hào),作為最后差錯(cuò)計(jì)數(shù)器還原比較信號(hào)。接收端解調(diào)過(guò)程的具體源代碼如下:for i=1:4;switch icase 1m=i+1;figure(6);receiveA=receive_module(N,y,m);case 2m=i+1;figure(7);receiveB=receive_module(N,y,m);case 3m=i+1;figure(8);receiveC=receive_module(N,y,m);case 4m=i+1;fi
19、gure(9);receiveD=receive_module(N,y,m);otherwisedisp(error);endi=i+1;end如圖 9 所示,是接收端信號(hào)解調(diào)過(guò)程中各個(gè)子模塊的波形圖。圖 9 用戶 A 直接序列擴(kuò)頻通信解調(diào)圖 10 用戶 B 直接序列擴(kuò)頻通信解調(diào)圖 11 用戶 C 直接序列擴(kuò)頻通信解調(diào)圖 12 用戶 D 直接序列擴(kuò)頻通信解調(diào)for i=1:4;switch icase 1m=i+1;figure(6);receiveA=receive_module(N,y,m);case 2m=i+1;figure(7);receiveB=receive_module(N,y
20、,m);case 3m=i+1;figure(8);receiveC=receive_module(N,y,m);case 4m=i+1;figure(9);receiveD=receive_module(N,y,m);otherwisedisp(error);endi=i+1;end2 差錯(cuò)計(jì)數(shù)器將 4 個(gè)用戶的發(fā)送函數(shù)和接收函數(shù)的返回值逐位進(jìn)行比較。 差錯(cuò)計(jì)數(shù)器源代碼如下:send=nA_2;nB_2;nC_2;nD_2%發(fā)送端用戶原始數(shù)據(jù)receive=receiveA;receiveB;receiveC;receiveD %接收端還原后的數(shù)據(jù)count=0;%統(tǒng)計(jì)誤碼個(gè)數(shù)for i=1
21、:32if send(i)=receive(i)count=count+1;endenddisp(誤碼個(gè)數(shù));3 仿真結(jié)果分析3.1 誤碼率在數(shù)字通信中,誤碼率是一項(xiàng)主要的性能指標(biāo)。在實(shí)際測(cè)量數(shù)字通信系統(tǒng)的誤碼率時(shí),一般測(cè)量結(jié)果與信源送出信號(hào)的統(tǒng)計(jì)特性有關(guān)。通常認(rèn)為二進(jìn)制信號(hào)中 0 和 1 是以等概率隨機(jī)出現(xiàn)的,所以測(cè)量誤碼率時(shí)最理想的信源應(yīng)是隨機(jī)信號(hào)發(fā)生器。由于 Walsh 函數(shù)是周期性的偽隨機(jī)序列,因而可作為一種較好的隨機(jī)信源。擴(kuò)頻序列通過(guò)終端機(jī)和信道后,輸出仍為擴(kuò)頻序列。在接收端,本地產(chǎn)生一個(gè)同步的擴(kuò)頻碼,與收碼序列逐位相乘再求規(guī)格化內(nèi)積,再與發(fā)送端信源碼進(jìn)行比較,一旦有錯(cuò),誤碼計(jì)數(shù)器加
22、一。誤碼率的數(shù)學(xué)表達(dá)式為:100%eES(5)其中 S 是信碼個(gè)數(shù),e 是誤碼個(gè)數(shù),E 就是誤碼率。信噪比信噪比測(cè)量通信系統(tǒng)的性能時(shí),常常要使用噪聲發(fā)生器,由它給出具有所要求的統(tǒng)計(jì)特性和頻率特性的噪聲,并且可以隨意控制其強(qiáng)度,以便得到不同信噪比條件下的系統(tǒng)性能。在實(shí)際測(cè)量中,往往需要用到帶限高斯白噪聲。本實(shí)驗(yàn)中的噪聲主要有兩類,一類是用戶間相互干擾的噪聲,由于用戶信息經(jīng)過(guò)擴(kuò)頻具有偽隨機(jī)性,所以又可稱為偽噪聲;另一類是我們自己添加到信道的高斯加性白噪聲 AWNG,它獨(dú)立于信源信號(hào)。信噪比計(jì)算是數(shù)學(xué)表達(dá)式為:222210log10log10log)sssnnsrESNRE (6)其中sE為信碼發(fā)射
23、功率,nE為噪聲功率,s為信源碼,r為信宿碼,計(jì)算結(jié)果單位為dB。本實(shí)驗(yàn)設(shè)計(jì),為了更好的驗(yàn)證系統(tǒng)性能,我們特意增加噪聲幅度,在用戶為四不變的前提下,減小 awng 的信噪比,我們把 awng (Channel,snr,measured)函數(shù)中的信噪比 snr 取值在-1010,-10(-4)范圍內(nèi)。只運(yùn)行用戶 A 的誤碼率和信噪比得圖 13.從圖13 可以看到系統(tǒng)的誤碼率隨信道信噪比的變化,有遞減的趨勢(shì),當(dāng)信噪比接近于 0 時(shí),系統(tǒng)誤碼率接近于 0;當(dāng)信噪比接近負(fù)無(wú)窮時(shí),系統(tǒng)誤碼率接近于 100。如圖 13圖 13 用戶 A 的誤碼率與信噪比關(guān)系曲線(1)BPSK 解調(diào)按照傳統(tǒng)方法,對(duì)于式子:
24、11( )(cos()cos()cos()cos(2)22cacacaz tw tw tw t(6)如果要獲得cos()a,要用低通濾波器,濾除高頻信號(hào)cos(2)caw t,但是濾波器算法復(fù)雜,并且實(shí)現(xiàn)起來(lái)往往不太理想,不能確保有用信號(hào)不被濾除,噪聲信號(hào)不會(huì)殘留。于是,利用 MATLAB 強(qiáng)大的運(yùn)算能力,用數(shù)學(xué)的方法反推出cos()a。從信道接收到的信號(hào)用數(shù)學(xué)式子表示為:cos()( )caw tn t,其中cos()caw t表示用戶 A 已調(diào)信號(hào),( )n t為信道噪聲,包括其它用戶信號(hào)和高斯加性白噪聲。為了方便計(jì)算,我們舍去了噪聲部分( )n t,然后將接收到的信號(hào)( )y t直接代入
25、計(jì)算。具體數(shù)學(xué)推導(dǎo)過(guò)程如下:( )cos()(cos()( )cos()ccacy tw tw tn tw t11121cos()*cos()( )11cos()cos(2)( )2211cos()cos(2)cos()sin(2)sin()( )2211cos()cos(2)cos()sin(2) 1cos ()( )2211cos()cos(2)cos()22cacacaacacaacacaacaw tw tn tw tn tw tw tn tw tw tn tw t2sin(2) 1cos ()caw t(7)從(7)式中可以看出,只要解方程求出cos()a,即可實(shí)現(xiàn) BPSK 的解調(diào)。
26、這里,我們利用 MATLAB 強(qiáng)大的運(yùn)算功能,采用符號(hào)函數(shù)進(jìn)行求反運(yùn)算。具體實(shí)現(xiàn)源代碼如下:syms wc t x;%y為接收信號(hào),wc為載波頻率,t為時(shí)間,x為解調(diào)信號(hào),即cos()ay=x/2+cos(2*wc*t)*x-sin(2*wc*t)*sqrt(1-x2)/2;fi=finverse(y,x) %finverse為求反函數(shù)運(yùn)算結(jié)果得到為:fi=(x*sin(2*wc*t)+1/2*(4*x2*sin(2*wc*t)2-2*cos(2*wc*t)*sin(2*wc*t)2+2*sin(2*wc*t)2+8*x2*cos(2*wc*t)-8*x2)(1/2)/sin(2*wc*t)(
27、8)替換符號(hào)后如下:cos()a=(y*cos(wc*t)*sin(2*wc*t)+1/2*(4*y*cos(wc*t)2*sin(2*wc*t)2-2*cos(2*wc*t)*sin(2*wc*t)2+2*sin(2*wc*t)2+8*y*cos(wc*t)2*cos(2*wc*t)-8*y*cos(wc*t)2)(1/2)/sin(2*wc*t)(9)注意,在 MATLAB 中數(shù)組之間的運(yùn)算,符號(hào)“*、/、”應(yīng)該換成“.*、./、.” 。(2)Walsh 解擴(kuò)我們知道,在現(xiàn)代通信系統(tǒng)中,大多采用數(shù)字通信。而對(duì)于直接序列擴(kuò)頻系統(tǒng),大都需要在接收端末端加上一個(gè)積分器,利用 Walsh 函數(shù)的正
28、交性進(jìn)行解擴(kuò)。在數(shù)字通信系統(tǒng)中, 積分器轉(zhuǎn)換為累加器, 我們?cè)?CDMA 通信原理中找到了理論依據(jù),通過(guò)求規(guī)格化內(nèi)積,求一個(gè)用戶碼片內(nèi)所有擴(kuò)頻碼累加以后求平均值。于是,我們得到了一個(gè)比較平整的解調(diào)波形。4. 仿真程序(1)%*main.m*clearclc%N=input(walshN=);N=16;for i=1:4switch icase 1%nA=input(AnA=);nA=fix(unifrnd(0,255);%m=i+1;figure(1);nA_2,ChannelA=send_module(nA,N,m);case 2%nB=input(BnB=);nB=fix(unifrnd(
29、0,255);%m=i+1;figure(2);nB_2,ChannelB=send_module(nB,N,m);case 3%nC=input(CnC=);nC=fix(unifrnd(0,255);%m=i+1;figure(3);nC_2,ChannelC=send_module(nC,N,m);case 4%nD=input(DnD=);nD=fix(unifrnd(0,255);%m=i+1;figure(4);nD_2,ChannelD=send_module(nD,N,m);otherwisedisp(error);endi=i+1;endfigure(5);Channel=C
30、hannelA+ChannelB+ChannelC+ChannelD;q=1:1:128*8;subplot(2,1,1);plot(q,Channel);title()axis(1 1024 -5 5)snr=0000.1;y = awgn(Channel,snr,measured) ;subplot(2,1,2);plot(q,y);axis(1 1024 -15.5 15.5)title()for i=1:4;switch icase 1m=i+1;figure(6);receiveA=receive_module(N,y,m);case 2m=i+1;figure(7);receive
31、B=receive_module(N,y,m);case 3m=i+1;figure(8);receiveC=receive_module(N,y,m);case 4m=i+1;figure(9);receiveD=receive_module(N,y,m);otherwisedisp(error);endi=i+1;end%send=nA_2;nB_2;nC_2;nD_2;receive=receiveA;receiveB;receiveC;receiveD;count=0;for i=1:32if send(i)=receive(i)count=count+1;endenddisp();(
32、2)function A=walsh(x)H2=1 1;1 -1;%2階哈達(dá)碼NH2=H2*(-1);H4=H2 H2;H2 NH2;%4階哈達(dá)碼NH4=-1*H4;H8=H4 H4;H4 NH4;%8階哈達(dá)碼NH8=-1*H8;H16=H8 H8;H8 NH8;%16階哈達(dá)碼NH16=-1*H16;H32=H16 H16;H16 NH16;%32階哈達(dá)碼NH32=-1*H32;H64=H32 H32;H32 NH32;%64階哈達(dá)碼NH64=-1*H64;H128=H64 H64;H64 NH64;%128階哈達(dá)碼NH128=-1*H128;switch xcase 2A=H2;case 4
33、A=H4;case 8A=H8;case 16A=H16;case 32A=H32;case 64A=H64;case 128A=H128;otherwisedisp(error);end(3)functiondata_2,I=send_module(n,N,unum)B=walsh(N);data=dec2base(n,2);data_2=ones(1,8)*(-1);for i=1:8;da=n/2;n=fix(da);if (da-n)0 ;data_2(i)=1;else data_2(i)=-1;endi=i+1;endC=ones(1,128);i=1;for k=1:8;for
34、u=(k-1)*128+1:k*128;D(u)=data_2(k).*C(i);u=u+1;i=i+1;endk=k+1;i=1;endq=1:1:128*8;subplot(5,1,1)plot(q,D);%生成用戶數(shù)據(jù)的波形axis(1 1024 -1.2 1.2)title(直接序列擴(kuò)頻通信調(diào)制部分)ylabel(用戶m(t))n2=128/N;n3=ones(1,n2);n6=1;for n4=1:Nfor n5=(n4-1)*n2+1:n4*n2;E(n5)=B(unum,n4).*n3(n6);n5=n5+1;n6=n6+1;endn4=n4+1;n6=1;endF=E E E
35、E E E E E;subplot(5,1,2)plot(q,F);%循環(huán)生成Walsh碼axis(1 1024 -1.2 1.2)ylabel(Walsh碼p(t);G=D.*F*(-1);subplot(5,1,3)plot(q,G);%直接序列擴(kuò)頻axis(1 1024 -1.2 1.2)ylabel(c(t)=m(t)*p(t);T=n2;w=2*pi/T;H=sin(w*q);subplot(5,1,4)plot(q,H);axis(1 1024 -1.2 1.2)ylabel(載波);I=H.*G*(-1);subplot(5,1,5)plot(q,I);axis(1 1024 -
36、1.2 1.2)ylabel(BPSK已調(diào)波);(3) receivefunction receive_signal=receive_module(N,y,unum);K=walsh(N);q=1:1:128*8;n2=128/N;T=n2;w=2*pi/T;L=sin(w*q);subplot(5,1,1)plot(q,L);axis(1 1024 -1.2 1.2)ylabel(載波);title(直接序列擴(kuò)頻通信解調(diào)部分)R=y.*L;P=1./2./(16+9.*sin(2.*w.*q).*sin(2.*w.*q).*(12.*sin(2.*w.*q).*cos(2.*w.*q).*R
37、+20.*sin(2.*w.*q).*R+4.*sqrt(9.*sin(2.*w.*q).*sin(2.*w.*q).*cos(2.*w.*q).*cos(2.*w.*q).*R.*R+48.*sin(2.*w.*q).*sin(2.*w.*q).*cos(2.*w.*q).*R.*R-41.*R.*R.*sin(2.*w.*q).*sin(2.*w.*q)-32.*cos(2.*w.*q).*sin(2.*w.*q).*sin(2.*w.*q)+66.*sin(2.*w.*q).*sin(2.*w.*q).*sin(2.*w.*q).*sin(2.*w.*q)+32.*sin(2.*w.*q
38、).*sin(2.*w.*q)+32.*R.*R.*cos(2.*w.*q)-32.*R.*R-18.*sin(2.*w.*q).*sin(2.*w.*q).*sin(2.*w.*q).*sin(2.*w.*q).*cos(2.*w.*q)+27.*sin(2.*w.*q).*sin(2.*w.*q).*sin(2.*w.*q).*sin(2.*w.*q).*sin(2.*w.*q).*sin(2.*w.*q)-27.*sin(2.*w.*q) .*sin(2.*w.*q).*sin(2.*w.*q) .*sin(2.*w.*q).*R.*R)./sin(2.*w.*q);subplot(5,
39、1,2)plot(q,P);%BPSK解調(diào)axis(1 1024 -1.5 1.5)ylabel(BPSK解調(diào));n3=ones(1,n2);n6=1;for n4=1:Nfor n5=(n4-1)*n2+1:n4*n2;E(n5)=K(unum,n4).*n3(n6);n5=n5+1;n6=n6+1;endn4=n4+1;n6=1;endF=E E E E E E E E;%F為對(duì)應(yīng)用戶的Walsh碼序列V=P.*F;subplot(5,1,3)plot(q,V);axis(1 1024 -1.5 1.5)ylabel(Walsh解擴(kuò));sum=0;for n7=1:8;for n8=1:1
40、28sum=sum+V(n8+(n7-1)*128)/128;n8=n8+1;endR(n7)=sum;sum=0;n7=n7+1;endS=ones(1,128);n7=0;for n7=1:8;for n8=(n7-1)*128+1:n7*128;for n9=1:128;U(n8)=S(n9).*R(n7);n9=n9+1;endn8=n8+1;endn7=n7+1;endsubplot(5,1,4)plot(q,U);%利用Walsh函數(shù)的正交性求規(guī)格化內(nèi)積axis(1 1024 -1 1)ylabel(解調(diào));for n10=1:128*8if U(n10)=0W(n10)=1;el
41、se W(n10)=-1;endn10=n10+1;endsubplot(5,1,5)plot(q,W);%判決器axis(1 1024 -1.2 1.2)ylabel(判決器);%接收端還原后信號(hào)i=0;for n7=1:8;receive_signal(n7)=W(n7+i*128);i=i+1;end(4)SNRfunction count=SNR(snr)%N=input(walshN=);N=16;for i=1:4switch icase 1%nA=input(AnA=);nA=fix(unifrnd(0,255);%m=i+1;nA_2,ChannelA=send_module(
42、nA,N,m);case 2%nB=input(BnB=);nB=fix(unifrnd(0,255);%m=i+1;nB_2,ChannelB=send_module(nB,N,m);case 3%nC=input(CnC=);nC=fix(unifrnd(0,255);%m=i+1;nC_2,ChannelC=send_module(nC,N,m);case 4%nD=input(DnD=);nD=fix(unifrnd(0,255);%m=i+1;nD_2,ChannelD=send_module(nD,N,m);otherwisedisp(error);endi=i+1;endChan
43、nel=ChannelA+ChannelB+ChannelC+ChannelD;q=1:1:128*8;y = awgn(Channel,snr,measured) ;for i=1:4;switch icase 1m=i+1;%figure(6);receiveA=receive_module(N,y,m);case 2m=i+1;receiveB=receive_module(N,y,m);case 3m=i+1;receiveC=receive_module(N,y,m);case 4m=i+1;receiveD=receive_module(N,y,m);otherwisedisp(e
44、rror);endi=i+1;end%send=nA_2receive=receiveA;receiveB;receiveC;receiveDcount=0;for i=1:8;if send(i)=receive(i)count=count+1;endenddisp();count(5)用戶A誤碼率計(jì)算clearclccount=0;for i=-4:10for k=1:10snr=-10icount=count+SNR(snr);k=k+1;endEBR=count/1200;ebr(i+5)=EBR;figure(10);loglog(snr,EBR,b*);grid on;hold o
45、n;i=i+1;endebrsnr=-10(-4) -10(-3) -10(-2) -10(-1) -100 -101 -102 -103 -104 -105 -106-107 -108 -109 -1010;plot (snr,ebr,r:);title(誤碼率與信噪比關(guān)系曲線)xlabel(信噪比(dB);ylabel(誤碼率);hold off經(jīng)過(guò)本次課程設(shè)計(jì),我們對(duì) Matlab 和移動(dòng)通信相關(guān)知識(shí)點(diǎn)更加熟悉了解。尤其是matlab 程序編程的使用。經(jīng)過(guò)查閱了大量的文獻(xiàn)和不斷的實(shí)踐,由一開始的不知從何入手到漸漸理解了整個(gè)設(shè)計(jì)的原理和具體設(shè)計(jì)的思路,并且一遍又一遍的重復(fù)實(shí)踐,直到我們期望
46、的結(jié)果實(shí)現(xiàn),那種解決一個(gè)難題的成就感不是一個(gè)兩個(gè)詞能夠形容的,可以說(shuō),痛并快樂(lè)著。在團(tuán)隊(duì)合作方面,我們團(tuán)隊(duì)有比較明確的分工,例如,上網(wǎng)和到圖書館查找資料,設(shè)計(jì)原理框圖,編寫、調(diào)試程序,撰寫設(shè)計(jì)報(bào)告等等。而且有時(shí)候不能只是做自己的任務(wù),還要充分了解其他成員的任務(wù)和情況,一起討論遇到的問(wèn)題,共同思考出方案。這次實(shí)習(xí)使我們充分認(rèn)識(shí)到團(tuán)隊(duì)合作的重要性和必然性!更重要的是,這次課程設(shè)計(jì)的內(nèi)容是我們以后從事通信系統(tǒng)研究和工作的基礎(chǔ)。在畢業(yè)前的這次練筆,無(wú)疑也是一次鞏固知識(shí)的機(jī)會(huì)。在各種專業(yè)面試中更增加了一個(gè)籌碼。Design of spread spectrum communication system based on MATLABAbst
溫馨提示
- 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ù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 學(xué)法得分考試試題及答案
- 廣州會(huì)計(jì)考試試題及答案
- 公司安全考試試題及答案
- 初三歷史考試試題及答案
- 工地安全員c證考試試題及答案
- bim建模技術(shù)應(yīng)用考試試題及答案
- g1實(shí)操考試試題及答案
- 2025-2030中國(guó)公務(wù)車租賃行業(yè)市場(chǎng)發(fā)展現(xiàn)狀及競(jìng)爭(zhēng)格局與投資前景研究報(bào)告
- 2025委托檢測(cè)合同協(xié)議范文
- 對(duì)員工的不足評(píng)語(yǔ)
- GB/T 15544.1-2023三相交流系統(tǒng)短路電流計(jì)算第1部分:電流計(jì)算
- GB/T 90.3-2010緊固件質(zhì)量保證體系
- GB/T 18799-2020家用和類似用途電熨斗性能測(cè)試方法
- 科技公司涉密計(jì)算機(jī)軟件安裝審批表
- GA/T 1369-2016人員密集場(chǎng)所消防安全評(píng)估導(dǎo)則
- GA 1517-2018金銀珠寶營(yíng)業(yè)場(chǎng)所安全防范要求
- FZ/T 64014-2009膜結(jié)構(gòu)用涂層織物
- 衛(wèi)生統(tǒng)計(jì)學(xué)-回歸與相關(guān)
- 德國(guó)政治制度簡(jiǎn)介課件
- 高考試卷命題設(shè)計(jì)的技巧 課件24張
- 合格供應(yīng)商審查表
評(píng)論
0/150
提交評(píng)論