基于CC2430的ZigBee無線傳感器網(wǎng)絡設計與實現(xiàn)
引言
ZigBee這個名字來源于蜂群的通信方式,蜜蜂之間通過跳Zigzag形狀的舞蹈來交互消息,以便共享食物源的方向、位置和距離等信息。ZigBee是-種新興的短距離、低速率無線網(wǎng)絡技術,主要用于近距離無線連接。它有自己的無線電標準,在數(shù)千個微小的傳感器之間相互協(xié)調(diào)實現(xiàn)通信。這些傳感器只需要很少的能量,以接力的方式通過無線電波將信息從一個傳感器傳到另一個傳感器,因此有著非常高的通信效率。
1 ZigBee無線傳感器網(wǎng)絡系統(tǒng)結(jié)構(gòu)
1.1 ZigBee的技術特點
ZigBee的技術特點如下:
(1) 設備工作周期很短并且ZigBee采用了多種節(jié)能模式,其功耗極低,2節(jié)五號電池可以支持長達6個月到2年的使用時間。
(2) ZigBee協(xié)議免專利費,簡單協(xié)議、低數(shù)據(jù)傳輸速率和小的存儲空間大大降低了ZigBee的成本。另外,ZigBee的工作頻段均為免執(zhí)照頻段。
(3) 接入網(wǎng)絡快,時延短,設備搜索時延典型值為30ms,設備接入時延為15ms,休眠啟動時延為15ms,接入網(wǎng)絡和傳送數(shù)據(jù)時延短,適合監(jiān)控應用。
(4) ZigBee加密算法采用AES-128,同時提供了數(shù)據(jù)完整性檢査和鑒權功能,可以靈活確定各個應用的安全屬性。
(5) ZigBee網(wǎng)絡的形成和自動修復無需人工干預,設備節(jié)點可以通過信息交互知道其他設備節(jié)點的存在,確定相互之間的關系。
1.2 ZigBee的無線傳輸優(yōu)勢
1.2.1 Wi-Fi
Wi-Fi(WirelessFidelity)是目前WLAN的主要技術標準,可實現(xiàn)幾Mbps到幾十Mbps的無線局域網(wǎng)接入。Wi-Fi依賴TCP/IP作為網(wǎng)絡層,規(guī)定了協(xié)議的物理層和媒體接入控制層,便攜性良好但卻耗能高,大多Wi-Fi裝置都需要較高的電能儲備和常規(guī)充電,限制了其在工業(yè)場合的推廣和應用。
1.2.2 藍牙
藍牙是以IEEE802.15.1為基礎,工作頻率為2.4GHz,傳輸距離較短,有效范圍一般在10m之內(nèi),信道帶寬為1MHz,異步非對稱連接最高數(shù)據(jù)速率為723.2Kb/s。系統(tǒng)的抗干擾能力不強,成本和集成復雜性高。
1.2.3 紅外線數(shù)據(jù)通信
IrDA是一種利用紅外線進行點對點通信的技術,IrDA標準的無線設備傳輸速率已發(fā)展到4Mb/s,16Mb/s。目前,其軟硬件技術成熟,已經(jīng)廣泛應用在小型移動設備上(如PDA、手機)。但問題在于IrDA只能在2臺設備之間連接,連接設備必須對準且中間不能有障礙物遮擋,一般不應用于工業(yè)網(wǎng)絡。
通過對以上無線傳輸技術的比較,可以看出:ZigBee技術適合用于幾點數(shù)密集、對能量要求低的網(wǎng)絡;可以在其有效物理范圍100m內(nèi)實現(xiàn)通信,目前一些產(chǎn)品的加強型,可以將有效范圍擴大至1km以上;工作射頻2.4GHz的工業(yè)頻段,免除申請的麻煩;2.4GHz時傳輸速率為250Kb/s,對于工業(yè)中傳輸量低的場合,滿足其應用要求。
1.3 ZigBee網(wǎng)絡協(xié)議棧
隨著通信技術的迅速發(fā)展,人們提出了在自身附近幾米范圍內(nèi)通信的要求,因此就出現(xiàn)了個人區(qū)域網(wǎng)絡和無線個人區(qū)域網(wǎng)絡的概念。IEEE802.15.4是IEEE針對低速率無線個人區(qū)域(LR-WPAN)指定的無線通信標準,該標準把低能量消耗、低速率傳輸、低成本作為重點目標。在IEEE802.15.4中定義了13個物理層服務原語和35個MAC層服務原語。
ZigBee技術具有統(tǒng)一的技術標準,主要由IEEE802.15,4I作組與ZigBee聯(lián)盟分別制定。IEEE802.15.4工作組制定了這項技術的核心,物理層(PHY)和媒體接入控制(MAC)層;ZigBee聯(lián)盟在IEEE802.15.4的基礎上定義了網(wǎng)絡層(NWK)和應用層(APL)和安全服務規(guī)范。
ZigBee可由多達65000個無線數(shù)傳模塊組成的一個無線數(shù)傳網(wǎng)絡平臺,在整個網(wǎng)絡范圍內(nèi),每個ZigBee網(wǎng)絡數(shù)傳模塊之間可以相互通信,每個網(wǎng)絡節(jié)點間的距離可以從標準的75m到幾百米甚至幾千米。ZigBee協(xié)議棧結(jié)構(gòu)如圖1所示。
PHY層主要負責數(shù)據(jù)的調(diào)制與解調(diào)、發(fā)送和接收,向下直接操作物理傳輸介質(zhì)(無線射頻),向上為MAC層提供服務。MAC層負責為一個節(jié)點和它的直接鄰居之間提供可靠的通信鏈路,提供沖突避免以提高通信效率,負責組裝和分解MAC層幀。NWK層決定設備連接和斷開網(wǎng)絡時所采用的機制;執(zhí)行設備間的路由發(fā)現(xiàn)和路由維護;完成一跳(one-hop)范圍內(nèi)的鄰居設備的發(fā)現(xiàn)和相關信息的存儲;創(chuàng)建新網(wǎng)絡;為新入網(wǎng)設備分配網(wǎng)絡地址等。
圖1 ZigBee協(xié)議棧結(jié)構(gòu)
2 ZigBee無線傳感器網(wǎng)絡設計
2.1 硬件部分(主控CC2430片上系統(tǒng)(SoC))
早期的ZigBee硬件都是微控制器(MCU)和IEEE802.15.4射頻芯片分離的。隨著計算機硬件技術的不斷發(fā)展,出現(xiàn)了系統(tǒng)級芯片(SoC)和系統(tǒng)級封裝(SiP),即把多個硬件模塊集成到一個單芯片中去。目前,ZigBee硬件也發(fā)展到了這個階段,在一個芯片內(nèi)部集成了MCU和射頻芯片。這樣不但降低了ZigBee開發(fā)者對硬件射頻電路的要求,加速了ZigBee系統(tǒng)的開發(fā),同時也對ZigBee系統(tǒng)的穩(wěn)定性、可靠性、芯片體積等方面帶來了積極影響。
CC2430是TI的第二代ZigBee平臺和真正的SoC解決方案。它兼容IEEE802.15.4標準,在單個芯片上整合了ZigBee射頻(RF)前端、內(nèi)存和微控制器。它使用1個8位MCU(8051),具有128KB可編程閃存和8KBRAM,還包含模擬數(shù)字轉(zhuǎn)換器(ADC)、幾個定時器(Timer)、AES128協(xié)同處理器、看門狗定時器(Watchdogtimer).32kHz晶振的休眠模式定時器、上電復位電路(PowerOnResel)、掉電檢測電路(Brownoutdetection),以及21個可編程I/O引腳。CC2430芯片采用0.18gmCMOS工藝生產(chǎn);在接收和發(fā)射模式下,電流損耗分別低于27mA和25mA。CC2430的休眠模式和轉(zhuǎn)換到主動模式的超短時問的特性,特別適合那些要求電池壽命非常長的應用,傳感器網(wǎng)絡節(jié)點框架框圖如圖2所示。
2.2 軟件部分(ZigBee組網(wǎng)設計)
ZigBee定義了三種設備:協(xié)調(diào)器、路由器、終端設備。規(guī)定了一個ZigBee網(wǎng)絡中只能有一個協(xié)調(diào)器,若干路由器和終端設備。協(xié)調(diào)器的主要功能是啟動網(wǎng)絡的建立,包括選擇一個信道,確定惟一的PAN地址并廣播建立網(wǎng)絡信息。路由器主要功能是在多跳網(wǎng)絡中作為中繼節(jié)點協(xié)助數(shù)據(jù)向上一級路由器傳遞,給子節(jié)點分配地址,終端設備主要功能是采集數(shù)據(jù)并向上級路由器發(fā)送。協(xié)調(diào)器通過NIME-NETWORK.FORMATION,request原語來啟動一個新網(wǎng)絡。
ZigBee主節(jié)點工作流程如圖3所示。
首先,ZigBee網(wǎng)絡中主節(jié)點MCU發(fā)起信道掃描,經(jīng)通道能量掃描檢測APL選擇可用通道并建立WAN,創(chuàng)建一個從機相關信息的注冊表。注冊表內(nèi)容有從機的ID號、連接狀態(tài)、是否喚醒等信息。主控節(jié)點接入后,先對注冊表進行檢查,若發(fā)現(xiàn)網(wǎng)絡中有未分配的ID,則主機發(fā)搜索命令,如果有從機回應,則為其分配此ID號,然后由主機切換到工作信道,等待從機發(fā)回應答包,若ID號匹配,則分配成功,主機更新注冊信息列表。主機分別對注冊信息列表中的有效ID發(fā)送數(shù)據(jù)請求,以獲取傳感器(如溫度、濕度、煙霧含量)相關數(shù)據(jù)信息。若某ID在最大允許通信時間內(nèi)沒有發(fā)送應答信息,主機將再次更新該ID的注冊信息列表,如果確認與從機失去聯(lián)系,則將該1D號予以注銷。從機節(jié)點上電后首先監(jiān)聽默認信道,如果收到主機發(fā)送的搜索命令,則回應主機,并附上自己的隨機碼。在收到主機的注冊命令后,先對比隨機碼,進行匹配時則切換到工作信道,并使用注冊命令中分配的ID號發(fā)送應答包,以完成注冊。隨后傳感器采集相關數(shù)據(jù),等待主機呼叫傳感器的命令,數(shù)據(jù)發(fā)送完成后進入休眠,一定時間后喚醒再次進行數(shù)據(jù)釆集,如此循環(huán),中間釆集到的數(shù)據(jù)量可以通過液晶等方式進行直觀的顯示,并可以設定刷新時間頻率,達到一定精確及時的控制。直到主節(jié)點發(fā)出完成命令,整個過程完成。
3結(jié)語
主要介紹由CC2430片上系統(tǒng)為主控的ZigBee無線傳感器網(wǎng)絡設計,以及主節(jié)點組網(wǎng)軟件設計流程,實驗測試中驗證了ZigBee無線網(wǎng)絡具備的低功耗,易擴展,較穩(wěn)定等優(yōu)點,可靠實現(xiàn)了數(shù)據(jù)的傳輸,有效通信距離達到100m。