孫豐剛 蘭鵬
【摘 要】針對通信原理類課程的教學特點以及基于硬件實驗教學過程中存在的問題,討論了將MATLAB軟件引入到通信系統(tǒng)仿真教學的必要性。以單/雙極性不歸零碼為例,分別從理論分析和編程仿真兩個方面給出了兩種碼型在高斯信道中的誤碼性能分析,并給出了仿真結(jié)果。將MATLAB軟件引入到通信系統(tǒng)仿真教學中,可增強所學理論知識點的直觀性和生動性,增加學生的學習興趣,提高了學生的知識理解能力和編程能力,改善了教學效果。
【關(guān)鍵詞】通信系統(tǒng)仿真;MATLAB;不歸零碼;誤碼率
中圖分類號: G642;TN911-4;TP391.9-4 文獻標識碼: A 文章編號: 2095-2457(2018)06-0017-002
【Abstract】According to the teaching property of communications principles and the difficulties in the hardware based experiments teaching,we have discussed the necessaries to introduce the MATLAB software into the communications systems simulations courses.Taking the single/double polarity not return zero(NRZ) code as an example,we derived the bit error rate performance by considering the two codes over the additive Gaussian channels,and provided the corresponding simulation results.By introducing MATLAB into communications systems simulations,it can enhance the intuition and vividness of the theoretical knowledge,increase the students learning interest and programming ability,and raise the teaching effects of courses.
【Key words】Communications Systems Simulations;MATLAB;Not Return to Zero Code;Bit Error Rate
0 前言
通信原理課程是高等院校電子信息類專業(yè)學生所面臨的一門專業(yè)核心課,是許多專業(yè)課如移動通信、信息論與編碼等課程的先修課。該課程的學習情況將會對后續(xù)課程的學習產(chǎn)生重要影響。然而因其理論性強、概念抽象、數(shù)學基礎(chǔ)要求高等特點[1],學習難度較大。為提升教學效果,通常采用實驗箱作為實驗教學環(huán)節(jié)的手段,但卻存在設(shè)備有限且易損壞、維護困難及實驗內(nèi)容不夠靈活的問題。為此,有必要引入通信系統(tǒng)仿真教學環(huán)節(jié)。
MATLAB作為可實現(xiàn)算法開發(fā)、數(shù)據(jù)可視化、數(shù)據(jù)分析及數(shù)值計算的一種高級技術(shù)語言,為科學研究、工程設(shè)計等諸多領(lǐng)域提供了一種全面的解決方案[2][3]。利用MATLAB軟件來實現(xiàn)通信系統(tǒng)仿真,可提供形式更加靈活、內(nèi)容更加豐富的實踐方式。仿真過程要求學生對所學理論知識有著清晰的理解,同時培養(yǎng)了學生的編程能力。
下面以通信單/雙極性非歸零碼的誤碼性能為例進行分析。
1 單/雙極性不歸零碼介紹
數(shù)字信號基帶傳輸中可不經(jīng)過調(diào)制和解調(diào)過程,而直接傳輸未經(jīng)調(diào)制的基帶信號。不歸零碼指的是在一個碼元周期內(nèi)電壓始終保持不變的碼字。其中,單極性不歸零碼分別用二進制數(shù)字“1”和“0”表示正電平和零電平,雙極性不歸零碼分別用二進制數(shù)字“1”和“0”表示正、負電平。與單極性編碼方式相比,雙極性編碼在“0”“1”等概率時無直流分量,譯碼過程不易受到信道特性變化的影響,抗干擾能力也較強[4]。
2 誤碼性能分析
2.1 誤碼性能理論分析
2.2 誤碼性能仿真分析
本次實驗所采用的算法流程如圖1所示。該算法共分為四個階段:碼字產(chǎn)生、加入高斯白噪聲、信號譯碼及信號比對等。
各部分重點實現(xiàn)如下:
(1)產(chǎn)生單/雙極性非歸零碼字
rand1=rand(1,N);%產(chǎn)生N個均勻分布隨機數(shù)
binX=(rand1>0.5); %產(chǎn)生等概率的0、1序列
SingPolar=sqrt(2)*binX;%單極性,功率歸一化
DoubPolar=2*binX-1;%雙極性
(2)加入高斯白噪聲
x1=SingPolar+sqrt(1/snr/2)*(randn(1,N)+1i*randn(1,N));%信噪比為snr時加入高斯白噪聲
x2=DoubPolar+sqrt(1/snr/2)*(randn(1,N)+1i*randn(1,N));%信噪比為snr時加入高斯白噪聲
(3)信號譯碼
x1_r=(real(x1)>sqrt(1/2)); %單極性譯碼
x2_r=(real(x2)>0); %雙極性譯碼
(4)信號比對及誤碼率計算
N_er1=sum(xor(binX,x1_r));%單極性錯碼個數(shù)
P1=N_er1/N; %單極性誤碼率
N_er2=sum(xor(binX,x2_r));%雙極性錯碼個數(shù)
P2=N_er2/N; %雙極性誤碼率
2.3 結(jié)果分析
圖2中給出了單/雙極性非歸零碼在高斯信道中的理論及仿真誤比特性能??梢钥闯?,理論值和仿真值結(jié)果重合,從而證明了理論結(jié)果和仿真結(jié)果的正確性。此外,雙極性的誤碼性能優(yōu)于單極性編碼。當誤碼率為10-1時,雙極性碼和單極性碼所需要的信噪比分別為-1分貝和2分貝。當誤碼率為10-2時,雙極性碼和單極性碼所需要的信噪比分別為4分貝和7分貝。可以看出,雙極性碼相比于單極性碼能獲得3分貝的優(yōu)勢,這也與理論分析結(jié)果(3)和(4)相吻合。
3 結(jié)論
利用MATLAB實現(xiàn)通信系統(tǒng)仿真,可有效克服傳統(tǒng)實驗教學中存在的實驗內(nèi)容單一及設(shè)備昂貴等問題。MATLAB的引入,進一步豐富了實驗內(nèi)容,增強了實驗教學的直觀性和生動性,可有效加深學生對理論知識的理解能力,提高學生的學習興趣,有利于學生動手能力和創(chuàng)新能力的培養(yǎng)。
【參考文獻】
[1]王忠禮,張海一.通信原理課程的微課程教學模式開發(fā)與設(shè)計[J].科技視界,2017(17):16-17.
[2]任秋潔,呂治國.MATLAB在通信系統(tǒng)仿真教學中的應用研究[J].科技視界,2017(20):79-80.
[3]關(guān)雪梅,陳純鍇.基于Matlab的通信原理實驗教學的研究[J].實驗技術(shù)與管理,2008,25(5):99-101.
[4]樊昌信,曹麗娜.通信原理(第7版)[M].國防工業(yè)出版社,2012.