黃小娟,王福明
(中北大學,機械工程與自動化學院,山西,太原 030051)
CDMA(Code Division Multiple Access)是在數(shù)字通信技術的分支擴頻通信的基礎上發(fā)展起來的一項技術。它主要用于利用相互正交(或者盡可能正交)的不同編碼分配給不同用戶調(diào)制信號,實現(xiàn)多用戶同時使用同一頻率接入系統(tǒng)和網(wǎng)絡的通信。本文針對CDMA碼分多址技術設計1個4路用戶傳輸系統(tǒng),省去了載波調(diào)制部分,把CDMA擴頻系統(tǒng)中傳輸?shù)男盘柡喕癁閿?shù)字基帶信號,并做出一個與之相應的擴頻編碼調(diào)制收發(fā)系統(tǒng),系統(tǒng)采用Walsh函數(shù)正交碼作為地址碼調(diào)制原數(shù)據(jù)信號,選用m序列作為擴頻的偽隨機碼。
開發(fā)工具軟件采用Altera公司的EDA工具MAX+PlusII。利用MAX+P1usII中提供的編程語言設計方法和圖形設計方法實現(xiàn)系統(tǒng)各部分的功能。
CDMA技術基于擴頻通信的基本原理,將要傳送的具有一定信號帶寬的信息數(shù)據(jù),用一個帶寬遠大于信號帶寬的高速偽隨機編碼信號去調(diào)制它,使原信息數(shù)據(jù)信號的帶寬被大大擴頻,再經(jīng)載波調(diào)制后發(fā)射出去。接收端則使用完全相同的偽隨機碼,與接收的帶寬信號做相關處理,把寬帶信號變換成信息數(shù)據(jù)的窄帶信號(解擴)實現(xiàn)數(shù)據(jù)通信。這種擴頻通信的明顯特點是采用編碼調(diào)制、頻譜擴頻和相關處理技術。使用擴頻編碼調(diào)制易于保密也可供多用戶使用。另外,對信息數(shù)據(jù)的頻譜擴展,使功率譜密度明顯降低,既不容易被別人發(fā)現(xiàn)又不容易干擾別人。CDMA通信多址干擾的大小決定于擴頻編碼間的互相關值,如果該值非常小乃至可以忽略,那么接收調(diào)解輸出結(jié)果就只有原數(shù)據(jù)信號和噪聲。所以CDMA可在同一載波頻率上同時傳送多個用戶的信息、數(shù)據(jù)、實現(xiàn)多址通信。編碼之間的互相關值越小,多址通信用戶就越多。
整體框圖如圖1所示。
表1 觸發(fā)時鐘分頻
實現(xiàn)的3分頻電路模塊圖為圖2所示。
圖2 3分頻電路模塊
實現(xiàn)24分頻電路的模塊圖為圖3所示。
圖3 24分頻電路的模塊圖
實現(xiàn)了96分頻電路的模塊圖為圖4所示。
圖4 96分頻電路的模塊圖
本收發(fā)系統(tǒng)主要由調(diào)制器和解調(diào)器兩部分組成。它們完成的功能如下:
(a)調(diào)制器:內(nèi)嵌于編碼器中的信息信號發(fā)生器產(chǎn)生的4路輸入信號,經(jīng)Walsh調(diào)制、PN擴頻、基帶求和與并串變換成為1路信號,完成調(diào)制。
(b)解調(diào)器:接收端將收到的1路信號首先進行串并變換,在取得同步的基礎上進行PN解擴和Walsh解調(diào),恢復出4路輸入信息。
Walsh函數(shù)是一種非正弦的完備正交函數(shù)集。由于它采用的是數(shù)字系統(tǒng),比較適合于用來表達和處理數(shù)字信號。
考慮到是數(shù)字基帶系統(tǒng),本系統(tǒng)采用的Walsh碼組應為:
W1={1,1,1,1}; W2={1,0,1,0};
W3={1,1,0,0}; W4={1,0,0,1}。
該發(fā)生器利用MAX+PlusII編程實現(xiàn)較簡單,在Walsh碼時鐘(全局時鐘的24分頻)的控制下,每出現(xiàn)一次時鐘跳變事件,輸出端以4為周期依次輸出1111,1010,1100和1001的碼序列。
沃爾什(Walsh)碼是正交碼,經(jīng)常被用作碼分多址系統(tǒng)的地址碼,Walsh碼產(chǎn)生模塊作為擴頻傳輸?shù)牡刂反a,并且具有檢測使用中的兩路Walsh碼是否正交的功能。本設計中使用Walsh,存儲在發(fā)射端數(shù)據(jù)寄存器中,擴頻過程中根據(jù) Walsh碼的地址控制信號。抽取兩路 Walsh碼分別對兩路消息碼進行擴頻。接收端截獲串行的數(shù)字信息流后 ,從接收端的數(shù)據(jù)寄存器中取出Walsh碼對接收信號進行解擴。Walsh碼電路的設計思路運用了譯碼的原理來實現(xiàn)。
3.1.1 生成Walsh碼調(diào)制(地址編碼)的模塊圖
Walsh碼調(diào)制所生成的模塊圖為圖5所示。
Walsh碼調(diào)制的仿真圖為圖6所示。
圖6 Walsh碼調(diào)制的仿真圖
利用7個D觸發(fā)器相互級聯(lián)實現(xiàn)周期為127的PN序列。具體構(gòu)成依據(jù)m序列特征多項式,由MAX+PlusII提供圖形設計方法實現(xiàn)。PN碼時鐘為全局時鐘的3分頻。
信息碼的產(chǎn)生則只需在信息碼時鐘的控制下,從同樣的級聯(lián)中引出4路信號作為信息碼,信息碼時鐘為全局時鐘的96分頻。
3.2.1 生成PN擴頻的模塊圖
由PN擴頻所生成的模塊圖為圖7所示。
在數(shù)字基帶系統(tǒng)中,Walsh碼調(diào)制可以簡單地用同或門來實現(xiàn),而PN擴頻則可通過簡單的異或門實現(xiàn)。
在實現(xiàn)Walsh碼解調(diào)與解擴時,PN解擴只需在接收端加1異或門。下面著重介紹一下Wlash碼解調(diào)的方法— —相關檢測。
相關檢測原理舉例解釋(見表2)。
表2 相關原理檢測舉例解釋
Walsh調(diào)制碼即原信息碼與Walsh碼同或,所得4路碼統(tǒng)計所得1的個數(shù)并轉(zhuǎn)化成相應3比特并行碼,例如表中Walsh編碼的第1列轉(zhuǎn)化為010,第2列為100。在接收端則根據(jù)傳遞來的接收信息逐路進行相關檢測。相關檢測規(guī)則列于表3中。
表3 相關檢測規(guī)則
2.2.3 數(shù)據(jù)的發(fā)送和接收
1)當多點的溫度被讀取完之后,溫度數(shù)據(jù)被存儲在相應的寄存器內(nèi),然后,單片機通過SPI通信,把數(shù)據(jù)發(fā)送給NRF905的發(fā)射緩沖區(qū);完成發(fā)射任務后,單片機進行下一輪的溫度采集。
2)另一邊的NRF905檢測到所設定的發(fā)射頻率所發(fā)出的信息,進行地址校正后,開始接收數(shù)據(jù)。數(shù)據(jù)按順序存放在單片機的寄存器內(nèi),用于數(shù)碼管顯示。由于數(shù)碼管顯示是用動態(tài)的掃描顯示,在時間的處理上,單片機的內(nèi)部程序的延時要恰當,否則會出現(xiàn)數(shù)碼管跳動顯示或者只顯示其中一個的情況。
本實驗用到5個DS18B20,為了驗證數(shù)據(jù)的正確性,首先將各個傳感器按順序進行編號。把5個傳感器放在一個恒溫箱內(nèi)(本實驗恒溫箱為20℃),另一邊的接收數(shù)據(jù)顯示的溫度都是同樣的溫度。這樣做的目的是保證整個系統(tǒng)的采集是正確的。用手捏住第一個傳感器,進過幾秒鐘之后,檢測接收數(shù)據(jù),第一個的數(shù)據(jù)為32.5℃,明顯高于其他4個。接著放開手,用手捏住第二個傳感器,并以此類推,可以分別得到用手捏的溫度為33.0℃, 32.5℃,32℃, 32.5℃。由于手捏的時間和手溫不一定一致,會有一個很小的誤差,對于本設計來說,可以忽略。實驗證明,本系統(tǒng)是確實可行的。
[1]趙麗娟,邵欣,房世平.基于單片機的溫度監(jiān)控系統(tǒng)的設計與實現(xiàn)[J].機械制造,2006(01).
[2]徐姍姍,楊福寶.基CC1000的無線通信系統(tǒng)設計[J].中國水運,2007,12(5):1-4.
[3]辛潔, 孫運強, 張倫.基于ATmega16和nRF2401的無線射頻收發(fā)系統(tǒng)設計[J].電子測試, 2009(4):2-3.
[4]涂兵,肖洪祥.無線測溫在電子產(chǎn)品中的應用研究[J].電子測試,2008(7).
[5]DS18B20數(shù)據(jù)手冊 http://www.aterlin.com/upload/files/2008/10/20081017153504555.pdf.
[6]莢慶,王代華,張志杰.基于NRF905的無線數(shù)據(jù)傳輸系統(tǒng)[J].國外電子元器件,2008(01).
[7]NRF905數(shù)據(jù)手冊http://wt.down.elecfans.com/dm/elec/nRF905%20CN.PDF.
[8]楊光松.基于NRF905的無線溫度數(shù)據(jù)采集系統(tǒng)[J].微計算機信息,2008 (22).