




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
第8章通信工具箱8.1MATLAB信源編/譯碼方法8.2差錯(cuò)控制編/譯碼方法8.3調(diào)制與解調(diào)8.4通信系統(tǒng)性能仿真8.5實(shí)驗(yàn)九通信系統(tǒng)仿真實(shí)驗(yàn)在MATLAB的CommunicationToolbox(通信工具箱)中提供了許多仿真函數(shù)和模塊,用于對(duì)通信系統(tǒng)進(jìn)行仿真和分析。主要包括兩部分內(nèi)容:通信函數(shù)命令和Simulink的CommunicationsBlockset(通信模塊集)仿真模塊。用戶既可以在MATLAB的工作空間中直接調(diào)用工具箱中的函數(shù),也可以使用Simulink平臺(tái)構(gòu)造自己的仿真模塊,以達(dá)到擴(kuò)充工具箱的內(nèi)容。通信工具箱中的函數(shù)名稱和內(nèi)容列表,其內(nèi)容包含:SignalSources(信號(hào)源函數(shù));SignalAnalysisfunction(信號(hào)分析函數(shù));SourceCoding(信源編碼);ErrorControlCoding(差錯(cuò)控制編碼函數(shù));LowerLevelFunctionforErrorControlCoding(差錯(cuò)控制編碼的底層函數(shù));Modulation/Demodulation(調(diào)制/解調(diào)函數(shù))SpecialFilters(特殊濾波器設(shè)計(jì)函數(shù));LowerLevelFunctionforSpecialsFilters(設(shè)計(jì)特殊濾波器的底層函數(shù));ChannelFunctions(信道函數(shù));GalosiFieldComputation(有限域估計(jì)函數(shù));Utilities(實(shí)用工具函數(shù))。在MATLAB通信工具箱中提供了兩種信源編譯碼的方法:標(biāo)量量化和預(yù)測(cè)量化。
1.標(biāo)量量化(1)信源編碼中的
律或A律壓擴(kuò)計(jì)算函數(shù)compand()
格式:out=compand(in,param,V,method)功能:實(shí)現(xiàn)
律或A律壓擴(kuò),其中param為
值,V為峰值。壓擴(kuò)方式由method指定。
8.1MATLAB信源編/譯碼方法2.預(yù)測(cè)量化根據(jù)過去發(fā)送的信號(hào)來估計(jì)下一個(gè)將要發(fā)送的信號(hào)值。(1)差分脈沖調(diào)制編碼函數(shù)dpcmenco()格式:indx=dpcmenco(sig,codebook,partition,predictor)功能:返回DPCM編碼的編碼索引indx。其中參數(shù)sig為輸入信號(hào),predictor為預(yù)測(cè)器傳遞函數(shù),其形式為[0,t1,…,tm]。預(yù)測(cè)誤差的量化參數(shù)由partition和predictor指定。(2)信源編碼中的DPCM解碼函數(shù)dpcmdeco()格式:sig=dpcmdeco(indx,codebook,predictor)功能:根據(jù)DPCM信號(hào)編碼索引indx進(jìn)行解碼。predictor為指定的預(yù)測(cè)器,codebook為碼本。(3)用訓(xùn)練數(shù)據(jù)優(yōu)化差分脈沖調(diào)制參數(shù)的函數(shù)dpcmopt()格式:predictor=dpcmopt(training_set,ord)
功能:對(duì)給定訓(xùn)練集的預(yù)測(cè)器進(jìn)行估計(jì),訓(xùn)練集及其順序由training_set和ord指定,預(yù)測(cè)器由predictor輸出。例8.3用訓(xùn)練數(shù)據(jù)優(yōu)化DPCM方法,對(duì)一個(gè)鋸齒波信號(hào)數(shù)據(jù)進(jìn)行預(yù)測(cè)量化MATLAB程序如下:clccleart=[0:pi/50:2*pi];x=sawtooth(3*t);%Originalsignalinitcodebook=[-1:.1:1];%Initialguessatcodebook%Optimizeparameters,usinginitialcodebookandorder1.[predictor,codebook,partition]=dpcmopt(x,1,initcodebook);%QuantizexusingDPCM.encodedx=dpcmenco(x,codebook,partition,predictor);%Trytorecoverxfromthemodulatedsignal.[decodedx,equant]=dpcmdeco(encodedx,codebook,predictor);distor=sum((x-decodedx).^2)/length(x)%Meansquareerrorplot(t,x,t,equant,'*');圖8.3DPCM預(yù)測(cè)量化誤差8.2差錯(cuò)控制編/譯碼方法在通信系統(tǒng)中,差錯(cuò)控制編/譯碼技術(shù)被廣泛地用于檢查和糾正信息在傳遞過程中發(fā)生的錯(cuò)誤。在發(fā)送端,差錯(cuò)控制編碼添加了一定的冗余碼元到信源序列;接收時(shí)就利用這些冗余信息來檢測(cè)和糾正錯(cuò)誤。糾錯(cuò)編碼主要有分組碼和卷積碼兩種類型。MATLAB通信工具箱提供了一系列函數(shù)用于有限域計(jì)算。概率解碼中最常用的是Viterbi解碼,用于卷積碼解碼。常用的糾錯(cuò)編碼方法包括線性分組碼、海明碼、循環(huán)碼、BCH碼、Reed-Solomon碼和卷積碼。1.糾錯(cuò)編碼函數(shù)encode()及譯碼函數(shù)decode()格式:code=encode(msg,N,K,method,opt)功能:用method指的方法完成糾錯(cuò)編碼。其中msg代表信息碼元;method是允許的編碼方法,包括hamming
、linear等,opt是一個(gè)可選擇的優(yōu)化參數(shù)。格式:msg=decode(code,n,k,method)功能:用指定的method方式進(jìn)行譯碼。為了正確地復(fù)制出信源序列,編碼和譯碼的調(diào)用方式必須相同。2.卷積糾錯(cuò)編碼函數(shù)convenc()格式:code=convenc(msg,trellis)功能:利用poly2trellis函數(shù)定義的格形trellis結(jié)構(gòu),對(duì)二進(jìn)制矢量信息msg進(jìn)行卷積編碼。編碼器的初始狀態(tài)為零狀態(tài)。3.將卷積編碼多項(xiàng)式轉(zhuǎn)換成格形(trellis)結(jié)構(gòu)函數(shù)poly2trellis()格式:trellis=poly2trellis(constrainlength,codegenerator)功能:將前向反饋卷積編碼器的多項(xiàng)式轉(zhuǎn)換成一格形(trellis)結(jié)構(gòu)。4.利用Viterbi算法譯卷積碼函數(shù)vitdec()格式:decoded=vitdec(code,trellis,tblen,opmode,dectype)
功能:利用Viterbi算法譯卷積碼。Code為poly2trellis函數(shù)或istrellis函數(shù)定義的格形trellis結(jié)構(gòu)的卷積碼。參數(shù)tblen取正整數(shù),表示記憶(traceback)深度。參數(shù)opmode代表解碼操作模型。codehamming2=encode(msg,n,k,'linear/decimal',genmat);ifcodehamming==codehamming2disp('The''linear''methodcancreateHammingcode.')endcodecyclic=encode(msg,n,k,'cyclic/decimal');%Decodetorecovertheoriginalmessage.decodedhamming=decode(codehamming,n,k,'hamming/decimal');decodedcyclic=decode(codecyclic,n,k,'cyclic/decimal');if(decodedhamming==msg&decodedcyclic==msg)disp('Alldecodingworkedflawlesslyinthisnoiselessworld.')end程序運(yùn)行結(jié)果如下:The'linear'methodcancreateHammingcode.Alldecodingworkedflawlesslyinthisnoiselessworld.8.3調(diào)制與解調(diào)根據(jù)調(diào)制信號(hào)的不同,可將調(diào)制分為模擬調(diào)制和數(shù)字調(diào)制。模擬調(diào)制的輸入信號(hào)為連續(xù)變化的模擬量,數(shù)字調(diào)制的調(diào)制信號(hào)是離散的數(shù)字量。在對(duì)調(diào)制進(jìn)行仿真模擬有帶通的和基帶的兩種選擇。帶通仿真的載波信號(hào)包含于傳輸模型中。由于載波信號(hào)的頻率遠(yuǎn)高于輸入信號(hào),根據(jù)抽樣定理,抽樣頻率必須至少大于兩倍的載波頻率才能正確地恢復(fù)信號(hào),因此對(duì)高頻信號(hào)的模擬仿真效率低、速度慢。為了加速模擬仿真,一般使用基帶仿真,也稱為低通對(duì)等方法。基帶仿真使用帶通信號(hào)的復(fù)包絡(luò)。[例8.7]
使用MATLAB對(duì)一信號(hào)進(jìn)行幅度調(diào)制。
MATLAB程序如下:Fs=100; %采樣頻率Fc=15; %載波頻率t=0:0.025:2; %采樣時(shí)間x=sin([pi*t',2*pi*t']); %信號(hào)y=ammod(x,Fc,Fs); z=amdemod(y,Fc,Fs); plot(t,x(:,1),'-',t,z(:,1),'--') %繪制調(diào)制信號(hào)hold;plot(t,x(:,2),‘-o’,t,z(:,2),‘--*’) %繪制調(diào)制信號(hào)圖程序運(yùn)行結(jié)果如圖8.4所示。3.模擬頻率調(diào)制函數(shù)fmmod和解調(diào)函數(shù)fmdemody=fmmod(x,Fc,Fs,freqdev),使用頻率調(diào)制對(duì)信號(hào)x進(jìn)行調(diào)制,載波信號(hào)頻率為Fc(Hz),采樣速率為Fs(Hz),F(xiàn)s必須大于或等于2*Fc,freqdev為調(diào)制信號(hào)的頻率偏離常數(shù)。y=fmmod(x,Fc,Fs,freqdev,ini_phase),指定調(diào)制信號(hào)的初始相位,以弧度為單位。z=fmdemod(y,Fc,Fs,freqdev),使用頻率解調(diào)從載波信號(hào)中對(duì)信號(hào)y解調(diào),載波信號(hào)頻率為Fc(Hz),采樣速率為Fs(Hz),Fs必須大于或等于2*Fc,freqdev為調(diào)制信號(hào)的頻率偏離常數(shù)。z=fmdemod(y,Fc,Fs,freqdev,ini_phase),指定調(diào)制信號(hào)的初始相位,以弧度為單位。例8.8以下代碼對(duì)兩信道輸出信號(hào)進(jìn)行頻率調(diào)制和解調(diào)Fs=8000;%SamplingrateofsignalFc=3000;%Carrierfrequencyt=[0:Fs]'/Fs;%Samplingtimess1=sin(2*pi*300*t)+2*sin(2*pi*600*t);%Channel1s2=sin(2*pi*150*t)+2*sin(2*pi*900*t);%Channel2x=[s1,s2];%Two-channelsignaldev=50;%Frequencydeviationinmodulatedsignaly=fmmod(x,Fc,Fs,dev);%Modulatebothchannels.z=fmdemod(y,Fc,Fs,dev);%Demodulatebothchannels.例8.9對(duì)一模擬信號(hào)進(jìn)行相位調(diào)制,經(jīng)信道AWGN(即疊加高斯白噪聲),解調(diào)并繪制原始信號(hào)與解調(diào)后信號(hào)波形。MATLAB程序如下:%Preparetosampleasignalfortwoseconds,%atarateof100samplespersecond.Fs=100;%Samplingratet=[0:2*Fs+1]'/Fs;%Timepointsforsampling%Createthesignal,asumofsinusoids.x=sin(2*pi*t)+sin(4*pi*t);Fc=10;%Carrierfrequencyinmodulationphasedev=pi/2;%Phasedeviationforphasemodulationy=pmmod(x,Fc,Fs,phasedev);%Modulate.y=awgn(y,10,'measured',103);%Addnoise.z=pmdemod(y,Fc,Fs,phasedev);%Demodulate.%Plottheoriginalandrecoveredsignals.figure;plot(t,x,'k-',t,z,'g-');legend('Originalsignal','Recoveredsignal');程序運(yùn)行結(jié)果如圖8.5所示。圖8.5相位調(diào)制解調(diào)信號(hào)例8.10以下代碼解調(diào)一個(gè)上邊帶和下邊帶信號(hào)。MATLAB程序如下:Fc=12000;Fs=270000;t=[0:1/Fs:0.01]';s=sin(2*pi*300*t)+2*sin(2*pi*600*t);y1=ssbmod(s,Fc,Fs,0);%Lower-sidebandmodulatedsignaly2=ssbmod(s,Fc,Fs,0,'upper');%Upper-sidebandmodulatedsignals1=ssbdemod(y1,Fc,Fs);%Demodulatelowersidebands2=ssbdemod(y2,Fc,Fs);%Demodulateuppersideband%Plotresultstoshowthatthecurvesoverlap.figure;plot(t,s1,'r-',t,s2,'k--');legend('Demodulationofuppersideband','Demodulationoflowersideband')程序運(yùn)行結(jié)果如圖8.6所示。圖8.6單邊帶幅度調(diào)制和解調(diào)信號(hào)例8.11對(duì)一隨機(jī)信號(hào)進(jìn)行頻率鍵控調(diào)制經(jīng)信道AWGN后解調(diào),計(jì)算其誤碼率。MATLAB程序如下:M=2;k=log2(M);EbNo=5;Fs=16;nsamp=17;freqsep=8;msg=randint(5000,1,M);%Randomsignaltxsig=fskmod(msg,M,freqsep,nsamp,Fs);%Modulate.msg_rx=awgn(txsig,EbNo+10*log10(k)-10*log10(nsamp),...'measured',[],'dB');%AWGNchannelmsg_rrx=fskdemod(msg_rx,M,freqsep,nsamp,Fs); %Demodulate[num,BER]=biterr(msg,msg_rrx)%BiterrorrateBER_theory=berawgn(EbNo,'fsk',M,'noncoherent') %TheoreticalBER程序運(yùn)行結(jié)果如下:num= 512BER= 0.1024BER_theory= 0.1029例8.12使用函數(shù)modnorm傳輸一個(gè)具有1W峰值功率的幅度調(diào)制信號(hào)MATLAB程序如下:M=16;%Alphabetsizeconst=qammod([0:M-1],M);%Generatetheconstellation.x=randint(1,100,M);scale=modnorm(const,'peakpow',1);%Computescalefactor.y=scale*qammod(x,M);%Modulateandscale.ynoisy=awgn(y,10);%Transmitalongnoisychannel.ynoisy_unscaled=ynoisy/scale;%Unscaleatreceiverend.z=qamdemod(ynoisy_unscaled,M);%Demodulate.%Seehowscalingaffectsconstellation.h=scatterplot(const,1,0,'ro');%Unscaledconstellationholdon;%Nextplotwillbeinsamefigurewindow.scatterplot(const*scale,1,0,'bx',h);%Scaledconstellationholdoff;程序運(yùn)行結(jié)果如圖8.7所示。7.AWGN信道函數(shù)awgn該函數(shù)格式如下。y=awgn(x,snr),向功率為0dB的信號(hào)x添加高斯白噪聲,輸出y的信噪比為參數(shù)snr,單位為dB。如果信號(hào)x為復(fù)信號(hào),則添加復(fù)噪聲。y=awgn(x,snr,sigpower),信號(hào)的功率大小為sigpower,當(dāng)sigpower為'measured'時(shí),該函數(shù)先對(duì)信號(hào)的功率進(jìn)行測(cè)試,再疊加高斯白噪聲。y=awgn(...,powertype),說明信噪比snr和信號(hào)功率sigpower的單位。有兩種選擇:powertype='db'或powertype='linear',后者功率的單位為W。例8.13給
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025綜合物流服務(wù)合同范本
- 2025屆高三數(shù)學(xué)“8+3+3”小題期末專項(xiàng)練(10)復(fù)數(shù)與平面向量(新高考地區(qū)專用)解析版
- 2025贈(zèng)與合同協(xié)議書范本
- 2025租賃合同終止的方法
- 2025年農(nóng)科院作物學(xué)筆試題
- 2025年牙科綜合治療機(jī)合作協(xié)議書
- 2025年高、低能校正磁鐵項(xiàng)目合作計(jì)劃書
- 2025年麻疹、風(fēng)疹、腮腺炎聯(lián)合疫苗合作協(xié)議書
- 2025年金融擔(dān)保服務(wù)項(xiàng)目合作計(jì)劃書
- 2025年碳纖維預(yù)浸布項(xiàng)目合作計(jì)劃書
- 湖北省武漢市部分學(xué)校2025屆高三第三次模擬考試數(shù)學(xué)試卷含解析
- 《宜家在華門店擴(kuò)張戰(zhàn)略實(shí)施環(huán)境及實(shí)施途徑研究》9700字(論文)
- 華為鴻蒙系統(tǒng)應(yīng)用開發(fā)H14-231 V1.0備考試題庫(kù)(含答案)
- JGJT46-2024《施工現(xiàn)場(chǎng)臨時(shí)用電安全技術(shù)標(biāo)準(zhǔn)》條文解讀
- 2024年江蘇泰州市第四人民醫(yī)院招考聘用高層次人才11人管理單位遴選500模擬題附帶答案詳解
- 火災(zāi)現(xiàn)場(chǎng)危險(xiǎn)隱患培訓(xùn)
- 2024ESC心房顫動(dòng)管理指南解讀
- 晨檢課件完整版本
- 美術(shù)教室裝修合同模板
- 少年羽毛球教學(xué)課程設(shè)計(jì)
- 安裝護(hù)眼燈合同范本(2篇)
評(píng)論
0/150
提交評(píng)論