基于MATLAB的數(shù)字調(diào)制_第1頁(yè)
基于MATLAB的數(shù)字調(diào)制_第2頁(yè)
基于MATLAB的數(shù)字調(diào)制_第3頁(yè)
基于MATLAB的數(shù)字調(diào)制_第4頁(yè)
基于MATLAB的數(shù)字調(diào)制_第5頁(yè)
已閱讀5頁(yè),還剩21頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

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

文檔簡(jiǎn)介

1、2ASK、2FSK、2PSK數(shù)字調(diào)制系統(tǒng)的Matlab實(shí)現(xiàn)及性能分析與比較引言:數(shù)字帶通傳輸系統(tǒng)為了進(jìn)行長(zhǎng)距離傳輸,克服傳輸失真,傳輸損耗,同時(shí)保證帶內(nèi)特性。必須對(duì)數(shù)字信號(hào)進(jìn)行載波調(diào)制,將信號(hào)頻譜搬移到高頻段才能在信道中傳輸,因而現(xiàn)代通信系統(tǒng)采取數(shù)字調(diào)制技術(shù)。通過(guò)數(shù)字基帶信號(hào)對(duì)載波某些參量進(jìn)行控制,使之隨機(jī)帶信號(hào)的變化而變化。根據(jù)控制載波參量大的不同,數(shù)字調(diào)制有調(diào)幅(ASK),調(diào)頻(FSK),調(diào)相(PSK) 三種基本形式。Matlab用于仿真,分析和修改,還可以應(yīng)用圖形界面功能GUI能為仿真系統(tǒng)生成一個(gè)人機(jī)交互界面,便于仿真系統(tǒng)的操作,因此采用matlab對(duì)數(shù)字系統(tǒng)進(jìn)行仿真。通過(guò)對(duì)系統(tǒng)的仿真,

2、我們可以更加直觀的了解數(shù)字調(diào)制系統(tǒng)的性能()及影響性能的因素,從而便于改進(jìn)系統(tǒng),獲得更佳的傳輸性能。 關(guān)鍵詞: 數(shù)字 . 系統(tǒng). 性能. ASK. FSK. PSK. Matlab. 仿真.一 .數(shù)字調(diào)制與解調(diào)原理1.1 2ASK(1)2ASK2ASK就是把頻率、相位作為常量,而把振幅作為變量,信息比特是通過(guò)載波的幅度來(lái)傳遞的。由于調(diào)制信號(hào)只有0或1兩個(gè)電平,相乘的結(jié)果相當(dāng)于將載頻或者關(guān)斷,或者接通,它的實(shí)際意義是當(dāng)調(diào)制的數(shù)字信號(hào)"1時(shí),傳輸載波;當(dāng)調(diào)制的數(shù)字信號(hào)為"0"時(shí),不傳輸載波。公式為:1.2 2FSK2FSK可以看做是2個(gè)不同頻率的2ASK的疊加,其調(diào)制

3、與解調(diào)方法與2ASK差不多,主要頻率F1和F2,不同的組合產(chǎn)生所要求的2FSK調(diào)制信號(hào)。公式如下:1.3 2PSK2PSK以載波的相位變化為基準(zhǔn),載波的相位隨數(shù)字基帶序列信號(hào)的1或者0而改變,通常用已經(jīng)調(diào)制完的載波的0或者表示數(shù)據(jù)1或者0,每種相位與之一一對(duì)應(yīng)。二數(shù)字調(diào)制技術(shù)的仿真實(shí)現(xiàn)本課程設(shè)計(jì)需要借助MATLAB的M文件編程功能,對(duì)2ASK.2PSK.2FSK進(jìn)行調(diào)制與解調(diào)的設(shè)計(jì),并繪制出調(diào)制與解調(diào)后的波形,誤碼率的情況分析,軟件仿真可在已有平臺(tái)上實(shí)現(xiàn)。1.2ASK代碼主函數(shù)close allclear alln=16;fc=1000000; bitRate=1000000;N=50;%no

4、ise=ti;noise=10;signal=source(n,N); %生成二進(jìn)制代碼transmittedSignal=askModu(signal,bitRate,fc,N);%調(diào)制后信號(hào)signal1=gussian(transmittedSignal,noise);%加噪聲configueSignal=demoASK(signal1,bitRate,fc,n,N);source代碼function sendSignal=source(n,N) sendSignal=randint(1,n) bit=; for i=1:length(sendSignal) if sendSignal(

5、i)=0 bit1=zeros(1,N); else bit1=ones(1,N); end bit=bit,bit1; end figure(1) plot(1:length(bit),bit),title('transmitting of binary'),grid on; axis(0,N*length(sendSignal),-2,2);endaskModu代碼function transmittedSignal=askModu(signal,bitRate,fc,N)%signal為輸入信號(hào),bitrate為bit速率,fc調(diào)制信號(hào)頻率,N %signal=0 0 1

6、 0 1 1 0 1;% bitRate=1000000;% fc=1000000;% N=32; t=linspace(0,1/bitRate,N); c=sin(2*pi*t*fc); transmittedSignal=; for i=1:length(signal) transmittedSignal=transmittedSignal,signal(i)*c; endfigure(2) %畫(huà)調(diào)制圖plot(1:length(transmittedSignal),transmittedSignal);title('Modulation of ASK');grid on;

7、figure(3)%畫(huà)頻譜實(shí)部m=0:length(transmittedSignal)-1;F=fft(transmittedSignal);plot(m,abs(real(F),title('ASK_frequency-domain analysis real');grid on;%figure(4) 畫(huà)頻譜虛部%plot(m,imag(F);title('ASK_frequency-domain analysis imag');%grid on;endCheckRatePe代碼function PeWrong=CheckRatePe(signal1,sig

8、nal2,s)rights=0;wrongs=0;for ki=1:s-2 if(signal1(ki)=signal2(ki) rights=rights+1; else wrongs=wrongs+1; endendPeWrong=wrongs/(wrongs+rights);enddemoASK代碼function bitstream=demoASK(receivedSignal,bitRate,fc,n,N) load num signal1=receivedSignal; signal2=abs(signal1); %ÕûÁ÷ signal3=

9、filter(num1,1,signal2); %LPF,°üÂç¼ì²¨ IN=fix(length(num1)/2); %ÑÓ³Ùʱ¼ä bitstream=; LL=fc/bitRate*N; i=IN+LL/2; while (i<=length(signal3) %Åоö bitstream=bitstream,signal3(i)>=0.5; i=i+LL; end f

10、igure(6) subplot(3,1,1); %接收波形 plot(1:length(signal1),signal1);title('Wave of receiving terminal(including noise)');grid on; subplot(3,1,2);%接收整流后波形 plot(1:length(signal2),signal2);title('Wave of commutate');grid on; subplot(3,1,3);%包絡(luò)檢波波形 plot(1:length(signal3),signal3);title('W

11、ave of LPF');grid on; bit=; for i=1:length(bitstream) if bitstream(i)=0 bit1=zeros(1,N); else bit1=ones(1,N); end bit=bit,bit1; end figure(7)%解調(diào)后的二進(jìn)制波形 plot(bit),title('binary of receiving terminal'),grid on; axis(0,N*length(bitstream),-2.5,2.5);endgussian代碼 %加高斯白噪聲function signal=gussia

12、n(transmittedSignal,noise) signal=sqrt(2)*transmittedSignal; signal=awgn(signal,noise); figure(5) plot(1:length(signal),signal); title('Wave including noise'),grid on;end/ fsk主函數(shù)代碼close allclear alln=16;%二進(jìn)制代碼長(zhǎng)度f(wàn)1=18000000;%頻率1f2=6000000;%頻率2bitRate=1000000;%bit速率N=50;%碼元寬度%noise=ti;noise=10

13、;%家性噪聲大小signal=source(n,N);%產(chǎn)生二進(jìn)制代碼transmittedSignal=fskModu(signal,bitRate,f1,f2,N);%調(diào)制signal1=gussian(transmittedSignal,noise);%加噪聲configueSignal=demoFSK(signal1,bitRate,f1,f2,N);%解調(diào)source代碼%二進(jìn)制信號(hào)產(chǎn)生函數(shù)function sendSignal=source(n,N) sendSignal=randint(1,n) bit=; for i=1:length(sendSignal) if sendSi

14、gnal(i)=0 bit1=zeros(1,N); else bit1=ones(1,N); end bit=bit,bit1; end figure(1) plot(bit),title('transmitting of binary'),grid on; axis(0,N*length(sendSignal),-2.5,2.5);endfskModu代碼%頻率調(diào)制函數(shù)function transmittedSignal=fskModu(signal,bitRate,f1,f2,N) t=linspace(0,1/bitRate,N); c1=sin(2*pi*t*f1);

15、%調(diào)制信號(hào)1 c2=sin(2*pi*t*f2);%調(diào)制信號(hào)2 transmittedSignal=; for i=1:length(signal)%調(diào)制 if signal(i)=1 transmittedSignal=transmittedSignal,c1; else transmittedSignal=transmittedSignal,c2; end endfigure(2) %畫(huà)調(diào)制后波形圖 plot(1:length(transmittedSignal),transmittedSignal);title('Modulation of FSK');grid on;f

16、igure(3) %畫(huà)調(diào)制后頻譜圖m=0:length(transmittedSignal)-1;F=fft(transmittedSignal);plot(m,abs(real(F),title('ASK_frequency-domain analysis real');grid on;enddemoFSK代碼function bitstream=demoFSK(receivedSignal,bitRate,f1,f2,N) load num signal1=receivedSignal; signal2=filter(gaotong,1,signal1); %通過(guò)HPF,得

17、到高通分量 signal3=abs(signal2); %整流 signal3=filter(lowpass,1,signal3); %通過(guò)低通,形成包絡(luò) bitstream=; IN1=fix(length(lowpass)/2)+fix(length(gaotong)/2); %延遲時(shí)間 bitstream1=; LL=N; %每個(gè)bit的抽樣點(diǎn)數(shù) i=IN1 +LL/2; while (i<=length(signal3) %判決 bitstream1=bitstream1,signal3(i)>=0.5; i=i+LL; end bitstream1 figure(5) s

18、ubplot(3,1,1); plot(1:length(signal1),signal1);title('Wave of receiving terminal(including noise)');grid on; subplot(3,1,2); plot(1:length(signal2),signal2);title('After Passing HPF');grid on; subplot(3,1,3); plot(1:length(signal3),signal3);title('After Passing LPF');grid on;

19、 signal4=filter(daitong,1,signal1); %通過(guò)BPF得到低頻分量 signal5=abs(signal4); %整流 signal5=filter(lowpass,1,signal5); %通過(guò)LPF,形成包絡(luò) IN2=fix(length(lowpass)/2)+fix(length(daitong)/2); %延遲時(shí)間 bitstream2=; LL=N; %每個(gè)bit的的抽樣點(diǎn)數(shù) i=IN2 +LL/2; while (i<=length(signal5) %判決 bitstream2=bitstream2,signal5(i)>=0.5; i

20、=i+LL; end bitstream2 figure(6) subplot(3,1,1); plot(1:length(signal1),signal1);title('Wave of receiving terminal(including noise)');grid on; subplot(3,1,2); plot(1:length(signal4),signal4);title('After Passing BPF');grid on; subplot(3,1,3); plot(1:length(signal5),signal5);title('

21、;After Passing LPF');grid on; for i=1:min(length(bitstream1),length(bitstream2) %判決 if(bitstream1(i)>bitstream2(i) bitstream(i)=1; else bitstream(i)=0; end end bitstream bit=; %接收端波形 for i=1:length(bitstream) if bitstream(i)=0 bit1=zeros(1,N); else bit1=ones(1,N); end bit=bit,bit1; end figure

22、(7) plot(bit),title('binary of receiving terminal'),grid on; axis(0,N*length(bitstream),-2.5,2.5); end CheckRatePe代碼function PeWrong=CheckRatePe(signal1,signal2,s)rights=0;wrongs=0;for ki=1:s-2 if(signal1(ki)=signal2(ki) rights=rights+1; else wrongs=wrongs+1; endendPeWrong=wrongs/(wrongs+rig

23、hts);endgussian代碼function signal=gussian(transmittedSignal,noise) signal=sqrt(2)*transmittedSignal; signal=awgn(signal,noise); figure(4) plot(1:length(signal),signal),title('Adding Noise'); grid on;end2psk主函數(shù)代碼close allclear alln=16;%二進(jìn)制碼長(zhǎng)fc=1000000;%載波頻率bitRate=1000000;%信息頻率N=50;%碼寬noise=10

24、;%信道加性噪聲大小signal=source(n,N);%生成二進(jìn)制代碼transmittedSignal=bpskModu(signal,bitRate,fc,N);%對(duì)信號(hào)進(jìn)行調(diào)制并進(jìn)行頻%譜分析signal1=gussian(transmittedSignal,noise)%加信道噪聲configueSignal=demoBPSK(signal1,bitRate,fc,n,N);%信號(hào)解調(diào)source代碼function sendSignal=source(n,N) sendSignal=randint(1,n) bit=; for i=1:length(sendSignal) if

25、sendSignal(i)=0 bit1=zeros(1,N); else bit1=ones(1,N); end bit=bit,bit1; end figure(1) plot(bit),title('transmitting of binary'),grid on; axis(0,N*length(sendSignal),-2.5,2.5);endbpskModu代碼function transmittedSignal=bpskModu(signal,bitRate,fc,N) t=linspace(0,1/bitRate,N); c1=sin(2*pi*t*fc); c

26、2=sin(2*pi*t*fc + pi); transmittedSignal=; for i=1:length(signal) if signal(i)=1 transmittedSignal=transmittedSignal,c1; else transmittedSignal=transmittedSignal,c2; end endfigure(2) % 畫(huà)調(diào)制圖plot(1:length(transmittedSignal),transmittedSignal);title('Modulation of BPSK');grid on;figure(3)%畫(huà)頻譜圖m

27、=0:length(transmittedSignal)-1;F=fft(transmittedSignal);plot(m,abs(real(F),title('BPSK_frequency-domain analysis real');grid on;endCheckRatePe代碼function PeWrong=CheckRatePe(signal1,signal2,s)rights=0;wrongs=0;for ki=1:s-2 if(signal1(ki)=signal2(ki) rights=rights+1; else wrongs=wrongs+1; ende

28、ndPeWrong=wrongs/(wrongs+rights);enddemoBPSK代碼function bitstream=demoBPSK(receivedSignal,bitRate,fc,n,N) load num %讀取num存儲(chǔ)的低通濾波用的數(shù)據(jù) signal1=receivedSignal; t=linspace(0,1/bitRate,N); c=sin(2*pi*t*fc); signal=; for i=1:n signal=signal,c; end signal2=signal1.*signal; %乘同頻同相sin signal3=filter(num1,1,si

29、gnal2); %LPF,包絡(luò)檢波3 IN=fix(length(num1)/2); %Ñ延遲時(shí)間 bitstream=; LL=fc/bitRate*N; i=IN+LL/2; while (i<=length(signal3) %判決 bitstream=bitstream,signal3(i)>=0; i=i+LL; end figure(5) subplot(3,1,1);%畫(huà)接收的包含噪聲的波形 plot(1:length(signal1),signal1);title('Wave of receiving terminal(including nois

30、e)');grid on; subplot(3,1,2);%相干解調(diào)波形 plot(1:length(signal2),signal2);title('After Multipling sin Fuction');grid on; subplot(3,1,3);%包絡(luò)檢波波形 plot(1:length(signal3),signal3);title('Wave of LPF');grid on; bit=; for i=1:length(bitstream) if bitstream(i)=0 bit1=zeros(1,N); else bit1=on

31、es(1,N); end bit=bit,bit1; end figure(6)二進(jìn)制接收信號(hào)波形 plot(bit);title('binary of receiving terminal');grid on; axis(0,N*length(bitstream),-2.5,2.5);endgussian代碼function signal=gussian(transmittedSignal,noise) signal=sqrt(2)*transmittedSignal; signal=awgn(signal,noise); figure(4) plot(1:length(si

32、gnal),signal),grid on; title('Adding noise')end三種調(diào)制方式的性能比較:load PeRate;load PeRatep;%補(bǔ)償誤差fpeask(15)=1e-3;fpefsk(9)=1e-3;fpepsk(24)=0.002;fpepsk(26)=1e-3;figure(1)semilogy(-6:length(fpeask)-7,fpeask,-6:length(fpefsk)-7,fpefsk,-30:length(fpepsk)-31,fpepsk),grid on;title('Analysis Of Bit Er

33、ror Rate');legend('ASK','FSK','PSK');xlabel('r/dB');ylabel('Pe'); figure(2)semilogy(-6:length(fpefsk)-7,fpeask);grid on;title('Bit Error Rate Of ASK');xlabel('r/dB');ylabel('PeASK');figure(3)semilogy(-6:length(fpefsk)-7,fpefsk);grid on;title('Bit Error Rate Of FSK');xlabel('r/dB');ylabel('PeFSK');figure(4)semilogy(-16:length(fpepsk)-17,fpepsk);grid on;title('Bit Error

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 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ì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論