現(xiàn)代通信技術(shù)實(shí)驗(yàn)指導(dǎo)說(shuō)明書(shū)實(shí)驗(yàn)_第1頁(yè)
現(xiàn)代通信技術(shù)實(shí)驗(yàn)指導(dǎo)說(shuō)明書(shū)實(shí)驗(yàn)_第2頁(yè)
現(xiàn)代通信技術(shù)實(shí)驗(yàn)指導(dǎo)說(shuō)明書(shū)實(shí)驗(yàn)_第3頁(yè)
已閱讀5頁(yè),還剩21頁(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、現(xiàn)代通信技術(shù)實(shí)驗(yàn)指導(dǎo)書(shū)實(shí)驗(yàn)實(shí)驗(yàn)一 數(shù)字通信 Matlab 程序仿真一、實(shí)驗(yàn)?zāi)康?、掌握 Matlab 程序設(shè)計(jì)的基本方法;2、掌握 Matlab 通信仿真的基本原理;3、掌握信源產(chǎn)生、信道編碼、調(diào)制、信道傳輸、解調(diào)、信道譯碼、差錯(cuò)比較等通信過(guò) 程的仿真方法;4、掌握仿真結(jié)果的圖形化表示方法;5、仿真比較幾種 2FSK、2PSK、QPSK、DQPSK 、16PSK、16QAM 等調(diào)制方法的性能;6、仿真比較 Hamming 碼不同碼型的糾錯(cuò)性能。二、實(shí)驗(yàn)原理仿真是衡量系統(tǒng)性能的工具,它通過(guò)仿真橫型的仿真結(jié)果來(lái)推斷原系統(tǒng)的性能,從而 為新系統(tǒng)的建立或原系統(tǒng)的改造提供可靠的參考。 通過(guò)仿真,可以降低

2、新系統(tǒng)失敗的可能性, 消除系統(tǒng)中潛在的瓶頸, 防止對(duì)系統(tǒng)中某些功能部件造成過(guò)量的負(fù)載, 優(yōu)化系統(tǒng)的整體性能。實(shí)際的通信系統(tǒng)是一個(gè)功能結(jié)構(gòu)相當(dāng)復(fù)雜的系統(tǒng),對(duì)這個(gè)系統(tǒng)做出的任何改變(如改變某個(gè)參數(shù)的設(shè)置,改變系統(tǒng)的結(jié)構(gòu)等 )都可能影響到整個(gè)系統(tǒng)的性能和穩(wěn)定。因此,在對(duì)原 有的通信系統(tǒng)做出改進(jìn)或建立一個(gè)新系統(tǒng)之前 通常需要寸這個(gè)系統(tǒng)進(jìn)行建模和仿真, 通過(guò) 仿真結(jié)果衡量方案的可行性, 從中選擇最合理的系統(tǒng)配置和參數(shù)設(shè)置, 然后再應(yīng)用于實(shí)際系 統(tǒng)中。這個(gè)過(guò)程就是通信仿真。通信仿真是衡量通信系統(tǒng)性能的工具。通信仿真可以分成離散事件仿真和連續(xù)仿真。 在離散事件仿真中, 仿真系統(tǒng)只對(duì)離散事件做出響應(yīng), 而在連

3、續(xù)仿真中, 仿真系統(tǒng)對(duì)輸入信 號(hào)產(chǎn)生連續(xù)的輸出信號(hào); 離散事件仿真是對(duì)實(shí)際通信系統(tǒng)的種簡(jiǎn)化, 它的仿真建模比較簡(jiǎn) 單,整個(gè)仿真過(guò)程需要花費(fèi)的時(shí)間出比連續(xù)仿真少。 雖然離散事件仿真舍棄了一些仿真細(xì)節(jié), 在有些場(chǎng)合顯得不夠具體,但仍然是通信仿真的主要形式。與一般的仿真過(guò)程類(lèi)似在對(duì)通信系統(tǒng)實(shí)施仿真之前,首先需要研究通信系統(tǒng)的特性, 通過(guò)歸納和抽象建立通信系統(tǒng)的仿真模型。下圖所示是關(guān)于通信系統(tǒng)仿真流捏的一個(gè)示意 圖。從圖中可以看到,通信系統(tǒng)仿真是一個(gè)循環(huán)往復(fù)的過(guò)程, 它從當(dāng)前系統(tǒng)出發(fā), 通過(guò)分析 建立起一個(gè)能夠在一定程度上描述原通信系統(tǒng)的仿真模型, 然后通過(guò)仿真實(shí)驗(yàn)得到相關(guān)的數(shù) 據(jù),通過(guò)對(duì)仿真數(shù)掂的分

4、析可以得且相應(yīng)的結(jié)論, 然后把這個(gè)結(jié)論應(yīng)用到對(duì)當(dāng)前通信系統(tǒng)的 改造中, 如果改造后通信系統(tǒng)的性能并不像仿真結(jié)果那樣令人滿意, 還需要重新實(shí)施通信系 統(tǒng)仍真,這時(shí)候改造后的通信系統(tǒng)就成了當(dāng)前系統(tǒng),并且開(kāi)始新一輪的通信系統(tǒng)仿真過(guò)程。I1Tk1.仿真實(shí)驗(yàn)通信系統(tǒng)仿真的模型Matlab仿真中,程序在命令窗口( Comma nd Win dow )中按照代碼的順序解釋執(zhí)行,運(yùn)行的初值、中間結(jié)果及輸出形成數(shù)據(jù)流。程序中的函數(shù)按照數(shù)據(jù)流的順序依次執(zhí)行,這意味著處理的數(shù)據(jù)首先要經(jīng)過(guò)一個(gè)運(yùn)算階,然后再激活下一個(gè)運(yùn)算階。這種仿真被稱(chēng)為數(shù)據(jù)流仿真。Matlab仿真可在命令窗口逐行輸入命令(函數(shù)),逐步完成仿真。也可

5、在文本編輯器中先全部編寫(xiě)完成全部代碼,形成M文件,再運(yùn)行該文件執(zhí)行仿真。對(duì)Matlab來(lái)說(shuō),兩者沒(méi)有差別。只是 M文件執(zhí)行時(shí),中間不需要不斷的向命令窗口輸入,比較方便而已。Matlab通信工具箱包含了大量應(yīng)用于通信領(lǐng)域的庫(kù)函數(shù)。這些庫(kù)函數(shù)是完成通信程序 仿真的基礎(chǔ),大大方便了研究人員。這些庫(kù)函數(shù)包括:(1) 信號(hào)源函數(shù);ran derrGe nerate bit error patter nsrandin tGe nerate matrix of uni formly distributed ran dom in tegers ran dsrcGe nerate ran dom matrix

6、using prescribed alphabet wgnGen erate white Gaussia n no ise(2) 性能估計(jì)函數(shù)berawg nBit error rate (BER) for un coded AWGN cha nn elsbercodi ngBit error rate (BER) for coded AWGN cha nn elsberc onfin tBER and con fide nee in terval of Monte Carlo simulatio nberfad in gBit error rate (BER) for Rayleigh fa

7、di ng cha nn els berfitFit a curve to non smooth empirical BER data bers yn cBit error rate (BER) for imperfect synchroni zati on biterrCompute nu mber of bit errors and bit error rate distspecCompute the dista nee spectrum of a con voluti onal code eyediagramGe nerate an eye diagram no isebwEquival

8、e nt no ise ban dwidth of a filter scatterplotGe nerate a scatter plotsemia nalyticCalculate bit error rate using the semia nalytic tech nique symerrCompute nu mber of symbol errors and symbol error rate( 3) 信源編譯碼函數(shù); 略。Reed-Solomon( 4) 差錯(cuò)控制編碼函數(shù); bchdecBCH decoderbchencBCH encoder bchgenpolyGenerator

9、 polynomial of BCH code convencConvolutionally encode binary data cyclgenProduce parity-check and generator matrices for cyclic code cyclpolyProduce generator polynomials for a cyclic code decodeBlock decoder encodeBlock encoder gen2parConvert between parity-check and generator matrices gfweightCalc

10、ulate the minimum distance of a linear block code hammgenProduce parity-check and generator matrices for Hamming code rsdecReed-Solomon decoder rsdecofDecode an ASCII file that was encoded using codersencReed-Solomon encoder rsencofEncode an ASCII file using Reed-Solomon code rsgenpolyGenerator poly

11、nomial of Reed-Solomon code syndtableProduce syndrome decoding table vitdecConvolutionally decode binary data using the Viterbi algorithm ( 5) 調(diào)制 /解凋函數(shù); 模擬: amdemodAmplitude demodulation ammodAmplitude modulation fmdemodFrequency demodulation fmmodFrequency modulation pmdemodPhase demodulation pmmod

12、Phase modulation ssbdemodSingle sideband amplitude demodulation ssbmodSingle sideband amplitude modulation 數(shù)字:dpskdemodDifferential phase shift keying demodulation dpskmodDifferential phase shift keying modulation fskdemodFrequency shift keying demodulation fskmodFrequency shift keying modulation ge

13、nqamdemodGeneral quadrature amplitude demodulation genqammodGeneral quadrature amplitude modulation modnormScaling factor for normalizing modulation output mskdemodMinimum shift keying demodulation mskmodMinimum shift keying modulation oqpskdemodOffset quadrature phase shift keying demodulation oqps

14、kmodOffset quadrature phase shift keying modulation pamdemodPulse amplitude demodulation pammodPulse amplitude modulationpskdemodPhase shift keying demodulation pskmodPhase shift keying modulation qamdemodQuadrature amplitude demodulation qammodQuadrature amplitude modulation ( 6) 發(fā)送 /接收濾波器函數(shù) 略。( 7)

15、 信道函數(shù); awgnAdd white Gaussian noise to a signal bscModel a binary symmetric channel filter (channel)Filter signal with channel object rayleighchanConstruct a Rayleigh fading channel object reset (channel)Reset channel object ricianchanConstruct a Rician fading channel object ( 8) 多址接入函數(shù); 略。( 9) 同步函數(shù)

16、: 略。( 10) 實(shí)用函數(shù)。 bi2deConvert binary vectors to decimal numbers de2biConvert decimal numbers to binary vectors istrellisTrue for a valid trellis structure marcumqGeneralized Marcum Q function mask2shiftConvert mask vector to shift for a shift register configuration oct2decConvert octal numbers to dec

17、imal numbers poly2trellisConvert convolutional code polynomials to trellis description qfuncQ functionqfuncinvInverse Q function shift2maskConvert shift to mask vector for a shift register configuration vec2matConvert a vector into a matrix這些通信仿真函數(shù),可在 Matlab 幫助系統(tǒng)中查詢并學(xué)習(xí)使用。如我們需要查詢正交幅 度調(diào)制( QAM )函數(shù)的使用方法

18、,可在命令行輸入:>> help qammod 則 Matlab 會(huì)在下面顯示如下的該函數(shù)的使用方法: QAMMOD Quadrature amplitude modulationY = QAMMOD(X,M) outputs the complex envelope of the modulation of the message signal X using quadrature amplitude modulation. M is the alphabet size and must be an integer power of two. The message signal

19、 must consist of integers between 0 and M-1. The signal constellation is a rectangular constellation. For two-dimensional signals, the function treats each column as 1 channel.Y = QAMMOD(X,M,INI_PHASE) specifies a phase offset (rad).See also qamdemod, genqammod, genqamdemod, pammod, pamdemod, modnor

20、m.Reference page in Help browser doc qammod如需進(jìn)一步查詢?cè)摵瘮?shù)的相關(guān)內(nèi)容可在 Matlab 幫助瀏覽器中的左邊查詢欄按 index 查 詢輸入:qammod。下面會(huì)列出與此相關(guān)的內(nèi)容,其中有qammod function,點(diǎn)擊后右邊窗口會(huì)顯示與上述內(nèi)容差不多的內(nèi)容:Communications ToolboxqammodQuadrature amplitude modulationSyntaxy = qammod(x,M)y = qammod(x,M,ini_phase)Descriptiony = qammod(x,M) outputs the c

21、omplex envelope y of the modulation of the message signal x using quadrature amplitude modulation. M is the alphabet size and must be an integer power of 2. The message signal must consist of integers between 0 and M-1. The signal constellation is rectangular or cross-shaped, and the nearest pair of

22、 points in the constellation is separated by 2. If x is a matrix with multiple rows, then the function processes the columns independently.y = qammod(x,M,ini_phase) specifies the initial phase of the modulated signal in radians.ExamplesExamples using this function are in Computing the Symbol Error R

23、ate and Examples of Signal Constellation Plots.See Alsoqamdemod, genqammod, genqamdemod, pammod, pamdemod, modnorm, Modulation可以看出對(duì) qammod 函數(shù)的解釋大同小異。如果再點(diǎn)擊相關(guān)的例子,還可以查看 符號(hào) 誤比特率的計(jì)算 和信號(hào)星座圖的繪制方法 。如果我們需要繪出 16QAM 的信號(hào)星座圖,可按如下的辦法進(jìn)行:>> M = 16; %16 進(jìn)制x = 0:M-1;%數(shù)據(jù)源y = qammod(x,M);%QAM 調(diào)制scatterplot(y); %

24、繪制星座圖 可得到如下的圖形:Figure 1; Scatter PloteVItle 內(nèi)Insert Tools Desktop Window Help 毆Q霽辿唱0 IH1 口Scatter plot-2-10 1In-Phase3 2 10 alrqraJPmn 口可以看出,該圖的缺點(diǎn)是其幅度沒(méi)有進(jìn)行規(guī)一化處理,如果我們對(duì)其按峰值功率 進(jìn)行規(guī)一化處理:>> scale = modno rm(y,'peakpow',1);y = scale*y; % 規(guī)一化再次輸出星座圖:>> scatterplot(y);% 繪制星座圖但此時(shí)還有不盡如人意的地方,

25、就是:(1 )、信號(hào)點(diǎn)沒(méi)有給出序號(hào)注釋?zhuān)?2)、信號(hào)點(diǎn)太靠近邊緣,幅度相位的坐標(biāo)范圍需要擴(kuò)大。 為此,給出下面的代碼:>> %給定輸出坐標(biāo)范圍,語(yǔ)法axis(xmin xmax ymin ymax)axis(-1 1-1 1);%繪制序號(hào)注釋使其靠近信號(hào)點(diǎn)hold on; %可以連續(xù)繪圖而不去掉原來(lái)的圖形for j=1:le ngth(y)% 每個(gè)點(diǎn)循環(huán)text(real(y(j),imag(y(j),' ' num2str(j-1); en d%循環(huán)結(jié)束hold off;可以看到圖形變成了下面的形狀:Figure 1: Scatter PlotF'le E

26、dit View Insert Tools Desktop Window Help Q B k 觀® <7® 疑 0 S B nScatter ploto)n:IBPBnG'-O0*4*8*12*1*5*13-2*6-1014*3*7*11*150.500.5In-Phase至此,星座圖繪制完成。其中text語(yǔ)句的內(nèi)容可通過(guò)查閱幫助知道:>>help textTEXT Text anno tati on.TEXT(X,Y,'string') adds the text in the quotes to location (X,Y)

27、on the current axes, where (X,Y) is in units from the currentplot. If X and Y are vectors, TEXT writes the text at all locations give n. If 'stri ng' is an array the same nu mber of rows as the len gth of X and Y , TEXT marks each point with the corresp onding rowof the 'stri ng' arr

28、ay.意思是:把'string'中的內(nèi)容繪制在(X,Y)所代表的坐標(biāo)上。本例中,正交幅度調(diào)制QAM后的信號(hào)坐標(biāo)點(diǎn)在圖中是一個(gè)復(fù)數(shù),實(shí)部是相位,虛部是幅度。real(y(j),imag(y(j)就是取第j個(gè)信號(hào)點(diǎn)的實(shí)部和虛部。num2str(j-1)是先輸出一個(gè)空格,以讓出點(diǎn)的位置,再在其右邊 輸出j-1所代表的數(shù)字字符串。三、實(shí)驗(yàn)內(nèi)容1、學(xué)習(xí)Matlab使用環(huán)境、圖形輸出的一般方法;2、學(xué)習(xí)掌握信源產(chǎn)生、信道編碼、調(diào)制、信道傳輸、解調(diào)、信道譯碼、差錯(cuò)比較等通 信過(guò)程常用函數(shù)的使用;3、學(xué)習(xí) plot、semilogy、title、 xlabel、ylabel、axis、axes

29、、hold、lege nd、subplot、scatter、 scatterplot等圖形輸出函數(shù)的使用方法;4、仿真比較幾種 2FSK、2PSK、QPSK、16PSK、16QAM等調(diào)制方法在不同信道參數(shù) 下的誤碼性能;5、仿真比較Hamming碼不同碼型的糾錯(cuò)性能,分析提高通信系統(tǒng)抗誤碼能力的方法。四、實(shí)驗(yàn)步驟圖所示:1、打開(kāi)Matlab程序,點(diǎn)擊幫助菜單上的Matlab Help欄,或按F1打開(kāi)程序幫助,如2、 熟悉 Matlab 程序環(huán)境,練習(xí) plot、semilogy、title、xlabel、ylabel、axis、axes、 hold、lege nd、subplot、scatte

30、r、scatterplot 等圖形輸出函數(shù)的使用方法。3、通過(guò)在命令行輸入 help Comma nd'和在幫助系統(tǒng)查詢的方法學(xué)習(xí)下列函數(shù)的使用:(1)rand、randint、wgn(2)biterr(3)encode、decode convene、vitdec、hammgen(4)dpskdemod、dpskmod、fskdemod、fskmod、genqamdemod、genqammod、modnorm、 pskdemod、pskmod、qamdemod、qammod4、 采用下列簡(jiǎn)化的通信系統(tǒng)模型建立Matlab仿真模型,對(duì)比不同調(diào)制解調(diào)方式在相同信道噪聲功率下的誤碼率。調(diào)制方

31、式有:2FSK、2PSK、QPSK、16PSK、16QAM等。例如,我們需要仿真對(duì)比2FSK、2PSK調(diào)制抗噪聲性能,可編寫(xiě)如下程序:clear; %清除內(nèi)存變量M = 2;Fs = 16;n samp = 17;freq_sep = 8;x = ran di nt(5000,1,M);y_fsk = fskmod(x,M,freq_sep ,n samp,Fs);y_psk = pskmod(x,M);N=10;for j=1:NSNR=j;y_fsk_noise = awg n(y_fsk,SNR-10*log10(Fs),'measured','dB');

32、 y_psk_ no ise = awg n( y_psk,SNR,'measured','dB');z_fsk = fskdemod(y_fsk_ no ise,M,freq_sep ,n samp,Fs); z_psk = pskdemod(y_psk_ no ise,M);nu m_fsk(j),ber_fsk(j) = biterr(x,z_fsk);nu m_psk(j),ber_psk(j) = biterr(x,z_psk);endsemilogy(1:N,ber_fsk,'*-b');hold on;semilogy(1:N,be

33、r_psk,'d-k');title('不同信噪比下2FSK和2PSK誤碼性能仿真'); lege nd('FSK','PSK');xlabel('SNR dB');ylabel('BER')hold off可以看到輸出結(jié)果為:根據(jù)上述例子,通過(guò)閱讀Matlab幫助,完成其它調(diào)制形式的性能仿真。5、設(shè)通信系統(tǒng)采用 QPSK調(diào)制,Hamming碼糾錯(cuò),仿真分析(7, 4)、( 15,11)、( 31, 26) Hamming碼在不同信噪比下的糾錯(cuò)性能。仿真方法是在數(shù)據(jù)調(diào)制之前,先進(jìn)行糾錯(cuò)編 碼。語(yǔ)法為

34、:編碼: code = en code(msg, n, k, 'ham min g')譯碼: msg = decode(code, n, k, 'ham min g')五、實(shí)驗(yàn)報(bào)告要求1、 寫(xiě)出每個(gè)仿真程序的原理及其信號(hào)框圖,給出完整的代碼,注釋?xiě)?yīng)占整個(gè)代碼2/3 以上,仿真結(jié)果要用圖形表示出來(lái),圖中應(yīng)有明確的注釋。2、對(duì)仿真結(jié)果應(yīng)利用所學(xué)知識(shí)給出完整、準(zhǔn)確的分析。3、實(shí)驗(yàn)報(bào)告中除圖形外,其余全部手寫(xiě)。實(shí)驗(yàn)二數(shù)字通信Simulink仿真、實(shí)驗(yàn)?zāi)康?、掌握Simulink通信仿真的基本原理和基本方法。2、掌握信源產(chǎn)生、信道編碼、調(diào)制、信道傳輸、解調(diào)、信道譯碼、差錯(cuò)

35、比較等通信過(guò)程的 Simulink 仿真方法。二、實(shí)驗(yàn)原理Simulink 是 Matlab 提供的用于對(duì)動(dòng)態(tài)系統(tǒng)進(jìn)行建模、仿真和分析的工具包。 Simulink 提供了專(zhuān)門(mén)用于顯示輸出信號(hào)的模塊,可以在仿真過(guò)程中隨時(shí)觀察仿真結(jié)果。同時(shí),通過(guò) Simulink 的存儲(chǔ)模塊, 仿真數(shù)據(jù)可以方便地以各種形式保存到工作區(qū)或文件中, 供用戶在仿 真結(jié)束之后對(duì)數(shù)據(jù)進(jìn)行分析和處理。另外,si Simulink把具有特定功能的代碼組織成模塊的方式,并且這些模塊可以組織成具有等級(jí)結(jié)構(gòu)的子系統(tǒng),因此具有內(nèi)在的模塊化設(shè)計(jì)要求。 基于上述優(yōu)點(diǎn), Simulink 成為一種通用的仿真建模工具, 廣泛應(yīng)用于通信仿真、

36、數(shù)字信號(hào)處 理、模糊邏輯、神經(jīng)網(wǎng)絡(luò)機(jī)械控制和虛擬現(xiàn)實(shí)等領(lǐng)域。通過(guò)使用 Simulink、Stateflow、DSPBIocksets,用戶可以快速、準(zhǔn)確地仿真系統(tǒng)中每一 部分的行為,包括實(shí)時(shí) DSP 算法、數(shù)字、模擬和混合信號(hào)處理硬件、控制邏輯、通信協(xié)議 和同步循環(huán),還可以考慮信道、聲學(xué)和其他物理效應(yīng)。在使用 Simulink 的同時(shí),用戶可以隨時(shí)利用 MATLAB 進(jìn)行算法開(kāi)發(fā), 分析和顯示數(shù)據(jù)。 MATLAB 工具箱提供的先進(jìn)的算法賦與用戶無(wú)從倫比的分析和設(shè)計(jì)能力,包括信號(hào)生成、 濾波器設(shè)計(jì)及實(shí)現(xiàn)等等。以往測(cè)試和驗(yàn)證通常要花去設(shè)計(jì)周期的 2/3 的時(shí)間, 手工代碼錯(cuò)誤也拖延了時(shí)間。通過(guò) R

37、eal-timeWorkshop , Stateflow coder 用戶可以自動(dòng)生成可靠?jī)?yōu)化的代碼,對(duì)用戶的設(shè)計(jì)在硬 件上進(jìn)行測(cè)試和驗(yàn)證。Simulink 它使用戶把精力從編程轉(zhuǎn)向模型的構(gòu)造。隨著實(shí)驗(yàn)的不斷深入,你們會(huì)發(fā)現(xiàn)它 為用戶省去了許多重復(fù)的代碼編寫(xiě)工作,用戶就不必一步一步地從最底層開(kāi)始編寫(xiě)。如果把動(dòng)態(tài)系統(tǒng)建模仿真過(guò)程比作建造房子,那么用高級(jí)語(yǔ)言或Matlab 語(yǔ)言編寫(xiě)的仿真程序的方式就如同是從一堆沙子開(kāi)始造房子。 這不但麻煩, 而且有許多重復(fù)操作, 建造者 的精力會(huì)大量地浪費(fèi)在一些相同地例如把沙子變成成磚塊酌事情上,以及如何把它們組在一起變成房子這些技術(shù)性的事情 而不能把更多的精力集

38、力用到房子的設(shè)計(jì)上,這在計(jì)算機(jī)仿真里,就等于是把精力廈多地投入到某一個(gè)具體的算法的設(shè)計(jì)上,而不是用到模型的設(shè)計(jì)構(gòu)造本身, Simulink 的目的就是讓用戶能化更多的精力投入到模型型設(shè)計(jì)不身。它首先提供了一些基本模塊, 這些模塊就放在上面的庫(kù)瀏覽器里 用戶可以調(diào)用這些模塊, 而不必再?gòu)淖?基本的做起。 Simulink 的每個(gè)模塊對(duì)用戶而言都是透明的, 用戶只需知道模塊的輸入輸出以 及模塊的功能, 而不必管模塊內(nèi)部是怎么實(shí)現(xiàn)。 于是, 留給用戶的事情就是如何連接這些模 塊來(lái)完成自己的仿真任務(wù)。連接的方式在 Simulink 里是很簡(jiǎn)單的,例如要連接兩個(gè)摸塊, 只需要將一個(gè)模塊的輸入和另一個(gè)模塊

39、的輸出用一根直線連起來(lái)就行了。模型構(gòu)造好之后, 用戶可以進(jìn)行仿真、 等待結(jié)果、 或者改變參數(shù), 再運(yùn)行。 至于像各個(gè)模塊在運(yùn)行時(shí)如何執(zhí)行, 時(shí)間是如何采樣 (離散系統(tǒng) ) ,事件足如何驅(qū)動(dòng)等等細(xì)節(jié)性問(wèn)題,用戶可以根本不用去關(guān)心, Simulink 都替你做好了??傊?Simulink 把那些最沒(méi)有意思、最煩人的細(xì)節(jié)都屏蔽掉了,而 留紿用戶的是一個(gè)友好的環(huán)境,讓用戶以最輕松、最有效的萬(wàn)式完成他們感興趣的東西。啟動(dòng) Simulink 的方法有很多種, 按照 Matlab 的傳統(tǒng)方式, 只要在 Matlab 的命令窗口中 鍵入:>>Simulink一個(gè)稱(chēng)為 Simulink Libra

40、ry Browser 的窗口就會(huì)彈出,如下圖所示:Simulink Browser窗口左邊子窗口下的各個(gè)模塊庫(kù)是按照應(yīng)用進(jìn)行分類(lèi)的。在通信仿真用應(yīng)用到的模塊,除了 Simulink基本模塊庫(kù)之外,還包括 Communication Blockset、DSP Blockset 等。在Simulink Browser界面下,選擇"File”菜單下的"New”中的"Model ”選項(xiàng),彈出如圖所示的模型窗口,用戶就可以Simulink Browser中選擇不同的模塊來(lái)建立自己的模型。在建立完自己的模型后,保存模型,開(kāi)始仿真。Simulink的仿真主要就是針對(duì)瀏覽器窗口和

41、模型窗口進(jìn)行操作的。例如,要建立一個(gè)簡(jiǎn)單的隨機(jī)數(shù)據(jù)源、Hamming碼編碼、2FSK調(diào)制、AWGN信道的通信系統(tǒng),可從各個(gè)功能中拖出下列工具放到所建立的模型文件中,如下圖所示:圖中,第一個(gè)模塊為 Bernouli Binary Generator即,貝努利二進(jìn)制數(shù)產(chǎn)生模塊,產(chǎn)生隨 機(jī)分布的二進(jìn)制數(shù)。把它拖到模型文件中后,雙擊,打開(kāi)其屬性窗口,如下圖所示:E BlockParameters: Bernoulli Binary GeneratorBernoulliGenie rat or (mask) (link)Generate a Bernoulli randan binary nunberi

42、iTo generate a vector output, specify the probability as a vector ParametersProbability of a0BInitial seed:F1Sample tine:FFrame-based outputsSamples per frane:F廠 Interpret vector paranetersr as 1-D箋1CancelHelpApply選中 Frame-based outputs復(fù)選框,并在 Samples per frame 欄中填入下面的 Hamming 碼 編碼器中所用的(N , K )碼的信息元數(shù)

43、目 K的數(shù)值。如果使用(7,4)Hamming碼,則該 欄如圖所示填入4。雙擊打開(kāi)Hamming Encoder的屬性窗口: Block Parameters: Hamming EncoderHannning Encoder (mask) (link)Create a Hawins code with message length K and codeword length W. The number W Must have the forn 2PN-1 j where N is an integer greater than or equal tq 3* K nus+ equal Jf-M.

44、The input Jiusl contain exactly K elements If it is frame-based, then it nust be a colwm vectorParametersCodev-ordlencth MHesgage JLength Kz or TI-degree prinitive polyniOftiail. |gfpr ijnfd (3j ? min?)OKQans | gelp Apply I第一欄 Codeword length N為編碼長(zhǎng)度,對(duì)(7 4) Hamming碼而言就是 7。第二欄 Message length K, or M-d

45、egree primitive polynomial 為信息碼長(zhǎng)度, 對(duì)(7, 4) Hamming 碼而言就是 4。 或者是M階本原多項(xiàng)式,函數(shù)gfprimfd(),為產(chǎn)生該多項(xiàng)式的函數(shù),具體參數(shù)可查閱“ >> help gfprimfd ”。與之對(duì)應(yīng)的是 Hamming Decoder模塊,該模塊的參數(shù)應(yīng)與Hamming Encoder相同。第三個(gè)模塊是M-FSK Modulator Baseband即基帶多進(jìn)制頻移鍵控調(diào)制器,其屬性窗口 如圖所示:M-ary number :調(diào)制進(jìn)制,對(duì) 2FSK而言為2; In put type輸入數(shù)據(jù)類(lèi)型可選擇 In teger 或 Bi

46、t。Frequency Separation 為頻率間隔。Phase continuity 為相位連續(xù)性。Samples per symbol 為每符號(hào)抽樣點(diǎn)數(shù)。與之對(duì)應(yīng)的是 M-FSK Demodulator Baseband模塊,參數(shù)與調(diào)制模塊應(yīng)一致。第四個(gè)模塊是AWGN Channel,為高斯白噪聲信道。下圖為其屬性圖。Block Paira meters: AW GN ChannelAKU Chtfunel(link)Add white a.usj:iaD noiit tn "th* i叩irt fignal. Th* in(put aivd output mi富ilbIj;

47、 cisn be ieaI or conplex. This block rupjwirts niultichanriel irput and output sinalj; aj: veil as f r2u-bji5ed pEoressing.¥h*n usui eithfE t&f this- Tyrian:« udes with ccaplex1 TTfUJts, the vaEiamjce values are egitally divided aunf th* real arwl inaguiaiy caarpcrnnts of the ierput ji

48、gnal.PazzunetEr?Initial聞嘏 |Sifnvl toretie <WMo)工|Eb/No (dfi):Bhiihbfir 4if blt$ p6r synlicl:Lnput ciEnal pavet (rattr);SynbDl satEiod (5);QE , J Cgnccl. Ruin | Apply |Initial Seed為產(chǎn)生隨機(jī)數(shù)的種子,相同的種子產(chǎn)生的隨機(jī)噪聲相同,以便于重復(fù)仿真。 不同的種子產(chǎn)生的隨機(jī)噪聲序列不同。Mode為噪聲產(chǎn)生的模式,共有五種可供選擇。Error Rate Calculation模塊是計(jì)算誤碼率的。Tx和Rx分別是用于比較的

49、收發(fā)信號(hào)。其屬性窗口如下:號(hào) Block Paranwters; Error Rate Cakuhtion1 氐( £-nk)tJu A-ETbr xjLte of tiu- tecaivtd d、久 by coijiAEUf it 由 dd-I vyd. va-eioh nf the- t fuuBitt ed dat a. Th* blodc c-»jtput: is a thxee-'eleajerjt vectai conaistni of the e-rr-isrfolloved by the nuiiker pf eircrs detected zrd

50、the total nuubsr afEyxbGl? ronpar«d Thij vsetor can. be spirt tG eithai thp wnihsipaca or an nirtpjt p?Et.Th* dtlvyi 監(jiān):* ipacifi«d in *qti也f of suplA-. taeixdlfeii vOiaiIu-i11a 5c-*i.ar ox -> ?bctai. Ihe lrpjt a ta ths ' Tsr arid r Ba' poeti wust be jasple-baitd scalar? oe fi

51、87;fr-13-L5e>d colunri vectaijjTh? 'Stop sinultion' orjrtion rtrrps ttwivn. upwi dwtfletin( a. tarivt nenbr“f t r.* nxlual fiuabt e 斗 £旳電土 fL ,Par-uiettrsKeceive delajs曠“RpatgtiQn deday;|5CuRpijt art ion nod?; | Entire fr»eOutptrt datii; | FortReseft portI'sinuiat ianTaig毗Ef

52、 記工1"日;Tau< lht-di nu*l»r of jqmhrils :QK | 論 el | MW|i在本模型中,其 Computation mode計(jì)算模式必須選擇 Entire frame表示計(jì)算整個(gè)frame 的收發(fā)數(shù)據(jù)。frame為信源產(chǎn)生的矢量元素個(gè)數(shù),也是Hamming碼輸入信息的碼元個(gè)數(shù)。Output Date選擇Port即為通過(guò)端口輸出計(jì)算結(jié)果,否則輸出到內(nèi)存變量中,變量名可自定 義,默認(rèn)為ErrorVec,格式為矢量。Display 模塊為 Simulink 的sink功能模塊中的一個(gè)輸出顯示模塊。從Error RateCalculation

53、模塊中獲取數(shù)據(jù)并實(shí)時(shí)顯示。在完成模型布局和參數(shù)設(shè)置后, 用連線把具有輸入輸出關(guān)系的模塊連接起來(lái)。方法是在一個(gè)模塊的輸出端口按住鼠標(biāo)左鍵,并將鼠標(biāo)移動(dòng)到下一個(gè)模塊的輸入端口。如果需要從已有的連線上增加一條分支則使用如下的方式:將鼠標(biāo)移動(dòng)到需要增加的分支點(diǎn)處,同時(shí)按下Ctrl鍵和鼠標(biāo)左鍵,移動(dòng)鼠標(biāo)至輸入端口處。"configration parameters ”或按下"Ctrl + E ”鍵,得到如下窗口:Configurticin Parameters: mfsk/ConfiguratrarSelert:SclwcrDat i rnpart/Ea:-.- -Opt irii.

54、zit ldil 3"DLaEElO2Tt J.CE" I- SanplA liAfl Pats Ititeerity -CDnoeEsiaiii Coifui*ctii7it7 Cnnp#tibilit7 Hadel Rrfer-Efai dvax e 正岡lie.-HLodel Ref®i enema 3-Real-Tima ferk. .SiNuhtion tine生t act tiM;|Sdlver optionsMin step- sizetInitial stepStop tin*: 1OODD 0RelativeAbrolot e tDleraivr

55、eZtro* ciMsing cwLtro-l:Solvei;-Cownefit s -SyitbolB Oust on Cad#=Interf ice-_1JjGinzelHelpApply |修改其中的Stop time以設(shè)置仿真次數(shù)。具體數(shù)值可參照設(shè)置數(shù)據(jù)源產(chǎn)生速率的時(shí)候定 義的sample time (默認(rèn)為1,即每秒一次)。設(shè)置好之后就可以單擊"simulation ”菜單的"start”命令或按下上按鈕執(zhí)行仿真。三、實(shí)驗(yàn)內(nèi)容1、建立仿真模型,編寫(xiě)仿真程序,分析幾種調(diào)制方式( 2FSK、2PSK、QPSK、16PSK、 16QAM )在不同信噪比下的通信質(zhì)量。2、

56、 建立仿真模型,編寫(xiě)仿真程序,分析QPSK調(diào)制方式下不同信道糾錯(cuò)編碼方式在不 同信噪比下的通信質(zhì)量。(1)、( 7, 4)、( 15,11)、(31,26)Hamming 碼(2)、BCH碼+矩陣交織(不同碼型)(3)、( 2, 1, 2)卷積碼+ Vetebi 譯碼四、實(shí)驗(yàn)步驟1、打開(kāi) Matlab,在命令窗口中輸入:>> simuli nk彈出 Simulink Library Browser,選擇"File”菜單下的"New ” 中的"Model ”選項(xiàng),建 立模型文件,保存并重命名。2、按照實(shí)驗(yàn)原理中所述方法建立不同調(diào)制方式(2FSK、2PSK

57、、QPSK、16PSK、16QAM )的仿真模型。為每個(gè)調(diào)制方式的仿真模型建立一個(gè)文件,如2FSK為fsk.mdl, 2PSK為psk.mdl3、將上述幾個(gè)文件中相同的參數(shù)用Matlab變量代替,如數(shù)據(jù)源中的 Sample per frame用變量sample_per_frame表示,調(diào)制進(jìn)制 M-ary用變量M表示,信噪比用 SNR表示等。編 寫(xiě)Matlab的M文件程序,調(diào)用上述模型文件執(zhí)行仿真,比較仿真結(jié)果,并用圖形表示。調(diào) 用模型文件語(yǔ)法為:sim( 文件路徑 xxx.mdl ');“文件路徑 ”為可選內(nèi)容,默認(rèn)路徑為 Matlab 的 work 文件夾。在執(zhí)行該命令之前需要對(duì)上

58、述以變量表示的參數(shù)賦值,具體數(shù)值根據(jù)程序需要而定。4、按照實(shí)驗(yàn)內(nèi)容 2 的要求,建立仿真模型,編寫(xiě) Matlab 仿真程序,分析不同信道糾錯(cuò) 編碼方式的抗噪聲性能。五、實(shí)驗(yàn)報(bào)告要求1、給出每一個(gè)仿真模型的模型連接圖,及其關(guān)鍵參數(shù)數(shù)值。寫(xiě)出每個(gè)仿真程序完整的 代碼,注釋?xiě)?yīng)占整個(gè)代碼 2/3 以上,仿真結(jié)果要用圖形表示出來(lái)。不同的調(diào)制方式、不同的 信道編碼方式在圖中應(yīng)有明確的對(duì)比,圖中應(yīng)有明確的注釋。2、對(duì)仿真結(jié)果應(yīng)利用所學(xué)知識(shí)給出完整、準(zhǔn)確的分析。3、實(shí)驗(yàn)報(bào)告中除圖形外,其余全部手寫(xiě)。注:實(shí)驗(yàn)內(nèi)容必須全部獨(dú)立完成,不得有舞弊,一經(jīng)發(fā)現(xiàn),實(shí)驗(yàn)成績(jī)?yōu)?。實(shí)驗(yàn)三 均衡技術(shù)仿真一、實(shí)驗(yàn)?zāi)康模?、掌握均衡技術(shù)的基本原理和基本方法;2、掌握 LM

溫馨提示

  • 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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論