基于LabVIEW的通信仿真(圖)
關(guān)鍵詞:移相鍵控(psk);信噪比
---美國ni公司推出的labview語言是一種優(yōu)秀的面向?qū)ο蟮膱D形化編程語言,使用圖標(biāo)代替文本代碼創(chuàng)建應(yīng)用程序,擁有大量與其他應(yīng)用程序通信的vi庫。labview作為目前國際上應(yīng)用最廣的數(shù)據(jù)采集和控制開發(fā)環(huán)境之一,在測(cè)試與測(cè)量、數(shù)據(jù)采集、儀器控制、數(shù)字信號(hào)分析、通信仿真等領(lǐng)域獲得了廣泛的應(yīng)用。本文主要研究基于labview的通信仿真。
labview程序結(jié)構(gòu)
---labview程序主要包括兩部分:前面板(即人機(jī)界面)和方框圖程序。前面板用于模擬真實(shí)儀器的面板操作,可設(shè)置輸入數(shù)值、觀察輸出值以及實(shí)現(xiàn)圖表、文本等顯示??驁D程序應(yīng)用圖形編程語言編寫,相當(dāng)于傳統(tǒng)程序的源代碼。其用于傳送前面板輸入的命令參數(shù)到儀器以執(zhí)行相應(yīng)的操作。labview的強(qiáng)大功能在于層次化結(jié)構(gòu),用戶可以把創(chuàng)建的vi程序當(dāng)作子程序調(diào)用,以創(chuàng)建更復(fù)雜的程序,而且,調(diào)用階數(shù)可以是任意的。labview編程方法與傳統(tǒng)的程序設(shè)計(jì)方法不同,它擁有流程圖程序設(shè)計(jì)語言的特點(diǎn),擺脫了傳統(tǒng)程序語言線性結(jié)構(gòu)的束縛。labview的執(zhí)行順序依方塊圖間數(shù)據(jù)的流向決定,而不像一般通用的編程語言逐行執(zhí)行。在編寫方塊圖程序時(shí),只需從功能模塊中選用不同的函數(shù)圖標(biāo),然后再以線條相互連接,即可實(shí)現(xiàn)數(shù)據(jù)的傳輸。
仿真過程
---信號(hào)源產(chǎn)生的是模擬信號(hào),必須首先對(duì)它進(jìn)行數(shù)字處理。在仿真過程中,用100hz的正弦信號(hào)作為信號(hào)源。按照一般語音通信的要求,這里采用8khz速率對(duì)100hz的正弦號(hào)進(jìn)行抽樣,得到的是間隔為125μs的離散抽樣值。信號(hào)的幅度為歸一化幅度,最小幅度為-1,最大幅度為1,再進(jìn)行32級(jí)(4bit)pcm量化編碼。再將每一個(gè)樣值轉(zhuǎn)化成4bit的二進(jìn)制的pcm代碼流,其速率為32kbps。對(duì)pcm編碼的數(shù)據(jù)流進(jìn)行漢明編碼,得到的是56kbps的糾錯(cuò)編碼后的數(shù)據(jù)流。隨后進(jìn)行調(diào)制,在發(fā)送端對(duì)碼流進(jìn)行4psk數(shù)字編碼調(diào)制,采用的載波是400khz的正弦波,然后送上信道進(jìn)行傳輸。信道是最常見的高斯加性白噪聲信道,信號(hào)傳輸過程中受到高斯噪聲的干擾。在接收端對(duì)接受到的碼流進(jìn)行數(shù)字解調(diào)、漢明碼解碼,最后pcm信號(hào)恢復(fù)所發(fā)送的信號(hào)。
---這里所使用的仿真環(huán)境為labview軟件。下文中主要針對(duì)4psk的仿真進(jìn)行敘述。
● 抽樣、量化和編碼
---在發(fā)送端,源(source)子vi產(chǎn)生一個(gè)100hz的正弦信號(hào)作為信號(hào)源,通過量化(quantify)子vi對(duì)它進(jìn)行抽樣和量化。對(duì)信號(hào)源進(jìn)行8khz的抽樣,抽樣產(chǎn)生的離散抽樣值歸一化為絕對(duì)值小于等于1的數(shù)據(jù)流。量化器把-1~1的范圍等分為32個(gè)小區(qū)間,每一個(gè)區(qū)間用0~31之間的一個(gè)整數(shù)表示,每個(gè)樣值通過它被量化成32個(gè)值中的某一個(gè)值,再轉(zhuǎn)化成元素為0、1的矢量,即c端輸出的源信息流。這時(shí)輸出的是長(zhǎng)度為4的矢量,進(jìn)入到編碼(coding)子vi。在信號(hào)傳輸?shù)倪^程中,為了提高信號(hào)的傳輸效率,降低誤碼率,采用了糾錯(cuò)編碼技術(shù)。這里采用的是(4,7)漢明糾錯(cuò)編碼技術(shù)。對(duì)8ksps的矢量信號(hào)中,每個(gè)矢量加入3bit的控制位,但所占的時(shí)間長(zhǎng)度仍為原來4位矢量的時(shí)間長(zhǎng)度。接著,將7位的矢量信號(hào)進(jìn)行串行化,產(chǎn)生56kbps的0、1數(shù)據(jù)流輸出到a端,如圖1所示。
● 調(diào)制、解調(diào)和信道傳輸
---從a端輸出的二進(jìn)制數(shù)據(jù)流在調(diào)制(modulation)子vi中進(jìn)行4psk數(shù)字調(diào)制。4psk是受0~3這4個(gè)數(shù)據(jù)調(diào)制的,這四個(gè)值是用連續(xù)兩個(gè)二進(jìn)制位表示的。這里進(jìn)行的調(diào)制是基帶調(diào)制,調(diào)制子vi輸出的調(diào)制過后的基帶信號(hào)。采用多個(gè)控件實(shí)現(xiàn)對(duì)調(diào)制的一些基本參數(shù)的設(shè)定,如字符速率、每個(gè)字符的采樣數(shù)、波形形成濾波器的類型及參數(shù)。輸出的基帶信號(hào)通過上變頻(upconverter)vi實(shí)現(xiàn)上變頻,把基帶信號(hào)搬移到400khz的頻率段。對(duì)應(yīng)實(shí)際中的信號(hào),就可以直接發(fā)射到信道上了。仿真過程中,采用的是一個(gè)簡(jiǎn)單的加性高斯白噪聲信道模型。通過對(duì)信噪比(eb/no)控件的設(shè)置,實(shí)現(xiàn)對(duì)信道信噪比參數(shù)的選擇。接受端收到一個(gè)被信道噪聲損傷的信號(hào),通過相逆過程實(shí)現(xiàn)解調(diào)功能。經(jīng)過下變頻(downconverter)vi程序下變頻的基帶信號(hào)進(jìn)入到解調(diào)(demodulation)子vi。在解調(diào)中進(jìn)行相位檢測(cè),將4個(gè)不同的相位檢測(cè)出來,映射成0~3的4個(gè)不同的量值,然后轉(zhuǎn)換為2bit的二進(jìn)制比特流從b端輸出。所述實(shí)現(xiàn)了調(diào)制解調(diào)和高斯白噪聲信道的傳輸,如圖2所示。
● 解碼和信號(hào)恢復(fù)
---b端輸出的二進(jìn)制比特流進(jìn)入到解碼(decode)子vi,其完成數(shù)據(jù)流的漢明碼譯碼的功能。解碼vi將比特流組成七維的矢量數(shù)組,經(jīng)漢明距離的判斷,再把七維矢量糾錯(cuò)轉(zhuǎn)化為四維矢量,即d端輸出的接受信息流,完成糾錯(cuò)譯碼的功能。四維的矢量數(shù)組由to dwave子vi化為數(shù)字波形進(jìn)行顯示,接下來通過數(shù)模轉(zhuǎn)換vi恢復(fù)到模擬的信號(hào),如圖3所示。
● 信號(hào)的同步
---為了實(shí)現(xiàn)信號(hào)的同步,避免信道延遲帶來的影響,在整個(gè)傳輸過程中引入了保護(hù)信號(hào)和同步信號(hào)。生成的保護(hù)和同步信號(hào)從e端輸出。在信息比特進(jìn)入調(diào)制子vi之前,就在信息比特的前面加上了保護(hù)信號(hào)和同步信號(hào),e端和a端輸出的信號(hào)合為一路信號(hào),然后再進(jìn)行調(diào)制。在接受方通過把同步信號(hào)映射為字符,再與接受的字符流進(jìn)行比較,確定同步信號(hào)的位置,實(shí)現(xiàn)接受和發(fā)射的同步。同步信號(hào)的產(chǎn)生和輸出,如圖4所示。
● 誤碼率的計(jì)算
---為了計(jì)算誤碼率,c端的源信息流和d端的接受信息流通過一個(gè)比較(compare)子vi進(jìn)行比較,計(jì)算出誤碼的個(gè)數(shù),從而計(jì)算出誤碼率,如圖5所示。
● 性能分析
---4psk數(shù)字相位調(diào)制波形可表示為
---其向量表達(dá)式為
---4psk符號(hào)錯(cuò)誤概率為
---由于進(jìn)行了(7,4)漢明碼糾錯(cuò)編碼,然后進(jìn)行4psk調(diào)制,并且 比特符號(hào)對(duì)相應(yīng)信號(hào)相位映射中采用格雷(gray)碼,因而編碼比特能量可以用信息比特能量表示為
---且
---程序采用的模擬加性高斯白噪聲信道,設(shè)定信道的信噪比則為 ,可得
---圖6為仿真生成和理論生成的誤碼率的對(duì)照?qǐng)D。信道信噪比超過7db以后,要求樣本數(shù)很大,由于計(jì)算機(jī)內(nèi)存的限制,使得仿真的結(jié)果與理論的結(jié)果有一定偏差。在7db之前,仿真誤比特率和理論值很接近,擬合得很好。
結(jié)論
---作為應(yīng)用最廣的數(shù)據(jù)采集和控制開發(fā)環(huán)境之一,labview在通信仿真中有著重要的作用。由于labview有很強(qiáng)的儀器控制功能,相對(duì)于matlab等其他仿真軟件,labview能更有效地把仿真試驗(yàn)移植到實(shí)際中。labview只需要用實(shí)際的發(fā)射和接受機(jī)及實(shí)際的信道來替換模擬的發(fā)射和接受機(jī)及模擬的信道,但也要進(jìn)行一定量的相應(yīng)改動(dòng)。這樣就能很好地把labview在仿真和儀器控制兩方面的功能有機(jī)結(jié)合起來,更好地發(fā)揮labview在虛擬儀器中的作用。
參考文獻(xiàn)
1 田麗華編著.編碼理論.西安電子科技大學(xué)出版社.2004
2 john g. proakis. digital communication. fourth edition. mcgraw-hill companies. 2001
3 曹志剛,錢亞生編著.現(xiàn)代通信原理.清華大學(xué)出版社. 2002
評(píng)論