李 彤,李 闖,常 成
(裝甲兵工程學(xué)院,北京 100072)
隨著各種便攜式通信設(shè)備與家用電器設(shè)備的增加,人們對短距離的無線通信提出了新的要求。一般來講,短距離無線通信技術(shù)從數(shù)據(jù)速率上可分為高速短距離無線通信和低速短距離無線通信2 類。高速短距離無線通信的最高數(shù)據(jù)速率高于100 Mbps/s,通信距離小于10 m,典型技術(shù)有UWB;低速短距離無線通信的最低數(shù)據(jù)速率低于1 Mbps/s,通信距離小于100 m,典型技術(shù)有ZigBee、IrDA、藍牙技術(shù)。高速短距離無線通信技術(shù)目前主要應(yīng)用于連接下一代便攜式消費電器和通信設(shè)備,低速短距離無線通信技術(shù)主要用于家庭、工廠與倉庫的自動化控制、安全監(jiān)視、環(huán)境監(jiān)視、軍事行動、庫存實時跟蹤以及游戲和互動式玩具等方面的低速應(yīng)用。本文主要對低速短距離無線通信節(jié)點的設(shè)計進行研究。
ZigBee 是近幾年興起的一種短距離、低復(fù)雜度、低功耗、低數(shù)據(jù)速率、低成本的雙向無線通信技術(shù)[1-6]。ZigBee 一詞源自蜜蜂群在發(fā)現(xiàn)花粉位置時,通過跳Zigzag 形舞蹈來告知同伴,達到交換信息的目的。ZigBee 工作于2.4 GHz(全球流行)、915 MHz(美國)和868 MHz(歐洲)3 個頻段上,并分別具有250 kbps/s、40 kbps/s、20 kbps/s 的數(shù)據(jù)傳輸速率。它的傳輸距離在十幾米到一兩百米的范圍內(nèi),但還可以繼續(xù)增加。實際的傳輸距離必須根據(jù)發(fā)射功率的大小、應(yīng)用模式以及中繼節(jié)點的使用情況而定。一個ZigBee 網(wǎng)絡(luò)最多可以容納65 535 個從設(shè)備和1 個主設(shè)備,一個區(qū)域內(nèi)可以同時存在最多100 個ZigBee 網(wǎng)絡(luò)。在標(biāo)準(zhǔn)制定方面,完整的IEEE 802.15.4/ZigBee 協(xié)議由應(yīng)用層、網(wǎng)絡(luò)層、數(shù)據(jù)鏈路層(包括MAC 和LLC)和物理層組成。IEEE 802.15.4 負責(zé)物理層和鏈路層標(biāo)準(zhǔn)的制定工作,而網(wǎng)絡(luò)層、應(yīng)用層和高層應(yīng)用規(guī)范則由ZigBee 聯(lián)盟制定。
ZigBee 協(xié)議的蓬勃發(fā)展源于其顯著的特點:
1)低速率。最大只有250 kbps/s,專注于低速率傳輸應(yīng)用。
2)功耗低。一般來說,ZigBee 節(jié)點的供電電壓為2 ~4 V,工作模式下,電流為十幾至幾十毫安,休眠模式下電流可低至幾微安。
3)通信可靠性高,數(shù)據(jù)安全。ZigBee 采用了避免沖突的載波偵聽/沖突檢測(CSMA-CA),同時為需要固定帶寬的通信業(yè)務(wù)預(yù)留了專用時隙,避免了發(fā)送數(shù)據(jù)時的競爭和沖突。媒體接入層采用了完全確認(rèn)的數(shù)據(jù)傳輸機制,每個發(fā)送的數(shù)據(jù)包都必須等待接收方的確認(rèn)信息,因此通信可靠性高。
4)時延短。設(shè)備接入網(wǎng)絡(luò)快,通常時延都在15 ~30 ms。
5)網(wǎng)絡(luò)容量大。
6)成本低廉,工作頻段靈活。設(shè)備的復(fù)雜程度低,且ZigBee 協(xié)議免專利費,可以有效地降低設(shè)備成本。
根據(jù)ZigBee 技術(shù)的特點,ZigBee 技術(shù)可以應(yīng)用于符合如下條件的情況:
1)傳輸數(shù)據(jù)量不大,要求設(shè)備成本低。
2)要求數(shù)據(jù)傳輸可靠性高,安全性高。
3)設(shè)備體積很小,不便放置較大的充電電池或者電源模塊。
4)地形復(fù)雜,監(jiān)測點多,需要較大的網(wǎng)絡(luò)覆蓋。
5)現(xiàn)有移動網(wǎng)絡(luò)的覆蓋盲區(qū)。
本研究使用的是北歐集成電路公司(NORDIC)2008年10月份推出的一款帶2.4 GHz 無線收發(fā)器nRF24L01 +和增強型8051 內(nèi)核的無線收發(fā)芯片nRF24LE1。nRF24LE1 是為超低功耗無線應(yīng)用設(shè)計的單片無線收發(fā)系統(tǒng),芯片內(nèi)部集成了高性能微處理器(與8051 指令兼容)、16kBFlash 存儲器、1 Kbps 數(shù)據(jù)空間(片內(nèi)RAM)、1 Kbps NV 非易失存儲器空間、512 字節(jié)NV 非易失數(shù)據(jù)存儲(擴展壽命)、低功耗振蕩器、實時計數(shù)器、AES 硬件加密器、16 ~32 位乘法/除法協(xié)處理器(MDU)、隨機數(shù)發(fā)生器等功能模塊以及為低功耗設(shè)計的多種電源模式,支撐硬件調(diào)試和硬件支撐固件更新[7]。nRF24LE1 提供了一個理想的無線協(xié)議平臺,具有協(xié)議無縫連接、高安全性、低功耗以及高抗干擾的優(yōu)良性能。nRF24LE1 提供了SPI、2 線接口、UART、6 ~12 位ADC、PWM和一個低功耗的可作為系統(tǒng)電平喚醒的模擬比較器等外設(shè)接口,提供了3 種不同封裝形式:①具有7 個通用I/O 的超小型4 mm×4 mm 24 引腳QFN 封裝(圖1);②具有15 個通用I/O 的緊湊型5 mm×5 mm 32 引腳QFN 封裝;③具有31個通用I/O 的7 mm×7 mm 48 引腳QFN 封裝。

圖1 4 mm×4 mm 24 引腳QFN 封裝的nRF24LE1 引腳封裝形式
本文采用2 個nRF24LE1 模塊實現(xiàn)無線數(shù)據(jù)傳輸和數(shù)據(jù)接收,其中一個作為數(shù)據(jù)接收端RX,另一個作為數(shù)據(jù)發(fā)送端TX,結(jié)構(gòu)示意圖如圖2 虛線內(nèi)所示。為了便于觀察發(fā)送端發(fā)送的數(shù)據(jù)和接收端接收的數(shù)據(jù),通過串口將PC 機與nRF24LE1 模塊相連(如圖2 所示)。PC 機作為上位機,通過串口將需要發(fā)送的數(shù)據(jù)發(fā)給nRF24LE1 發(fā)送端,nRF24LE1發(fā)送端通過無線發(fā)射傳輸?shù)絥RF24LE1 接收端,接收端將接收到的數(shù)據(jù)通過串口傳送到與之連接的計算機上。
nRF24LE1 有1 個串行接口(TXD 和RXD)。nRF24LE1的串口與計算機串口的電路如圖3 所示。nRF24LE1 采用3.3 V 的直流電壓供電,串行接口電平轉(zhuǎn)換芯片采用MAX3232。圖3 中CTS 和RTS 連接到nRF24LE1 的TXD和RXD。

圖2 無線通信結(jié)構(gòu)示意圖

圖3 nRF24LE1 和計算機串口的連接電路
2.2.1 數(shù)據(jù)包格式
nRF24LE1 射頻收發(fā)器內(nèi)核具有嵌入式協(xié)議引擎(增強型ShockBurst)。增強型ShockBurst 是一個以包為基礎(chǔ)的數(shù)據(jù)鏈路層,其功能包括包的自動裝配和設(shè)定裝配時間、自動應(yīng)答和自動重發(fā)。增強型ShockBurst 的數(shù)據(jù)包包括一個前置域、地址域、包控制域、數(shù)據(jù)載荷域和CRC 校驗域。增強型ShockBurst 數(shù)據(jù)包格式如圖4 所示,最高位在左邊。

圖4 增強型ShockBurst 數(shù)據(jù)包格式
圖4中:前置域是一個用于同步接收解調(diào)器的位序列;地址域指的是接收機地址;包控制域包括6 位數(shù)據(jù)載荷長度、2 位PID(包標(biāo)識符)和1 位NO_ACK 標(biāo)志(無應(yīng)答標(biāo)志);數(shù)據(jù)載荷是用戶所定義的包的內(nèi)容;CRC(循環(huán)冗余校驗)是數(shù)據(jù)包中使用的錯誤檢測機制。9 位包控制域的格式如圖5 所示,最低位在左邊。

圖5 9位包控制域的格式
圖5中:6 位的數(shù)據(jù)載荷長度用來確定數(shù)據(jù)載荷的字節(jié)長度;2位PID 域用來確定接收到的數(shù)據(jù)包是新的還是重發(fā)的;NO_ACK位用來選擇自動應(yīng)答功能。
2.2.2 射頻收發(fā)器的工作模式
射頻收發(fā)器可以配置為掉電模式(power down)、待機模式(standby)、接收模式和發(fā)射模式(RX 和TX)。射頻收發(fā)器的工作模式配置如表1 所列。
1)接收模式。接收模式是射頻收發(fā)器作為接收機時的工作模式。在接收模式,接收機將解調(diào)無線信道所接收到的信號,而且將收到并解調(diào)的數(shù)據(jù)不斷送到基帶協(xié)議處理引擎,基帶協(xié)議處理引擎將持續(xù)搜索有效的數(shù)據(jù)包。一旦發(fā)現(xiàn)有效的數(shù)據(jù)包(檢測相匹配的地址和正確的CRC 校驗),有效的數(shù)據(jù)載荷將出現(xiàn)在RX FIFO 相應(yīng)的存儲單元中,如果RX FIFO 已滿,則所接收的數(shù)據(jù)將被丟棄。部分相關(guān)程序代碼如下:


表1 射頻收發(fā)器的工作模式配置
2)發(fā)射模式。發(fā)射模式用于發(fā)射數(shù)據(jù)包,射頻收發(fā)器將保持在發(fā)射模式,直到完成一個數(shù)據(jù)包的發(fā)送。部分相關(guān)程序代碼如下:

2.2.3 通過串口與計算機的交互
本文通過串口調(diào)試助手將待發(fā)數(shù)據(jù)傳給發(fā)送端,接收端將接受到的數(shù)據(jù)通過串口調(diào)試助手顯示到計算機顯示器上,如圖6 所示。
部分相關(guān)程序代碼如下:



圖6 接收端計算機顯示器截圖
本文介紹了基于ZigBee 協(xié)議的短距離無線通信節(jié)點的設(shè)計,通過硬件和軟件方面的設(shè)計實現(xiàn)了兩節(jié)點間的無線通信。本設(shè)計可以用于無線遙控、無線監(jiān)測等領(lǐng)域,為以后通信節(jié)點的組網(wǎng)設(shè)計打下基礎(chǔ)。
[1]黃智偉,楊案江.超低功耗單片無線系統(tǒng)應(yīng)用入門[M].北京:北京航空航天大學(xué)出版社,2011.
[2]王欽. 基于ZigBee 技術(shù)的無線傳感網(wǎng)絡(luò)研究與實現(xiàn)[J].重慶理工大學(xué)學(xué)報:自然科學(xué)版,2011,25(8):46-51.
[3]李文仲,段朝玉.短距離無線數(shù)據(jù)通信入門與實踐[M].北京:北京航空航天大學(xué)出版社,2006.
[4]余成波,張一萌,張進,等.基于ZigBee 的糧庫環(huán)境監(jiān)測系統(tǒng)[J]. 重慶理工大學(xué)學(xué)報:自然科學(xué)版,2010,24(10):51-55.
[5]孫彩云,李世中,李海軍.ZigBee 協(xié)議的研究及應(yīng)用[J].四川兵工學(xué)報,2010(1):124-126.
[6]孫弋,韓曉冰,張衡偉,等.短距離無線通信及組網(wǎng)技術(shù)[M].西安:西安電子科技大學(xué)出版社,2008.
[7]肖林榮,應(yīng)時彥.2.4GHz 射頻收發(fā)芯片nRF24LE1 及其應(yīng)用[J].信息技術(shù),2009(12):13-16,20.