基于EM250的ZigBee無線傳感器網(wǎng)絡(luò)解決方案
掃描二維碼
隨時隨地手機(jī)看文章
本文介紹了ZigBee的協(xié)議框架、各層的功能及ZigBee無線網(wǎng)絡(luò)的組成,闡述了基于Ember公司EM250片上系統(tǒng)的無線傳感器網(wǎng)絡(luò)解決方案,對系統(tǒng)的硬軟件組成及設(shè)計進(jìn)行了仔細(xì)的說明。
ZigBee協(xié)議框架
ZigBee協(xié)議是一種低成本、低功耗、低速率嵌入式設(shè)備互相間及與外界網(wǎng)絡(luò)通信的組網(wǎng)解決方案,它是ZigBee聯(lián)盟基于IEEE 802.15.4技術(shù)標(biāo)準(zhǔn)物理層和媒體訪問控制層(MAC層)協(xié)議對網(wǎng)絡(luò)層協(xié)議和API進(jìn)行標(biāo)準(zhǔn)化而制定的無線局域網(wǎng)組網(wǎng)、安全和應(yīng)用軟件方面的技術(shù)標(biāo)準(zhǔn)
ZigBee協(xié)議棧結(jié)構(gòu)如圖1所示
ZigBee協(xié)議物理層和媒體訪問控制層采用了IEEE 802.15.4 2003協(xié)議規(guī)范物理層無線頻段為全世界通用的 2.4GHz、歐洲適用的868MHz、美國適用的915MHz,使用直接序列擴(kuò)頻技術(shù),提供27個信道,20Kb/s、40Kb/s、250Kb/s三種數(shù)據(jù)速率用于數(shù)據(jù)收發(fā)物理層功能包括了激活和休眠射頻收發(fā)器、信道能量檢測、信道接收數(shù)據(jù)包的鏈路質(zhì)量指示、空閑信道評估、收發(fā)數(shù)據(jù)等
圖1 ZigBee協(xié)議棧結(jié)構(gòu)
ZigBee的MAC層負(fù)責(zé)設(shè)備間無線數(shù)據(jù)鏈路的建立、維護(hù)和結(jié)束,確認(rèn)模式的數(shù)據(jù)傳送和接收,采用載波偵聽多址/沖突避免接入方式,數(shù)據(jù)包的最大長度為127字節(jié),每個數(shù)據(jù)包均由頭字節(jié)和16位CRC校驗值組成
網(wǎng)絡(luò)層為ZigBee協(xié)議棧的核心部分,實現(xiàn)節(jié)點(diǎn)接入或離開網(wǎng)絡(luò)、路由查找及傳送數(shù)據(jù)等功能,支持星形、樹形、網(wǎng)絡(luò)三種拓?fù)浣Y(jié)構(gòu),網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu)根據(jù)具體的ZigBee應(yīng)用來選擇節(jié)點(diǎn)按功能分為全功能設(shè)備(FFD)、簡化功能設(shè)備(RFD)、協(xié)調(diào)器(ZCRD)和路由器,協(xié)調(diào)器與路由器通常也是全功能設(shè)備
ZigBee的應(yīng)用層包括了應(yīng)用支持子層(APS)、ZigBee設(shè)備對象(ZDO)和制造商制訂的應(yīng)用對象應(yīng)用支持子層負(fù)責(zé)維護(hù)綁定表,根據(jù)服務(wù)和需求在兩個綁定實體間傳遞信息ZDO負(fù)責(zé)定義設(shè)備節(jié)點(diǎn)在網(wǎng)絡(luò)中的角色,并負(fù)責(zé)網(wǎng)絡(luò)設(shè)備的發(fā)現(xiàn),決定提供何種應(yīng)用服務(wù),還負(fù)責(zé)初始化或響應(yīng)綁定請求及建立網(wǎng)絡(luò)設(shè)備間安全關(guān)系
ZigBee網(wǎng)絡(luò)采用多點(diǎn)接入,有使能信標(biāo)網(wǎng)絡(luò)或不使能信標(biāo)網(wǎng)絡(luò)兩種類型使能信標(biāo)的網(wǎng)絡(luò)中,協(xié)調(diào)器在預(yù)定義的時隙周期性發(fā)送信標(biāo)幀用于節(jié)點(diǎn)關(guān)聯(lián)、加入網(wǎng)絡(luò)、同步傳送數(shù)據(jù)在不使能信標(biāo)的網(wǎng)絡(luò)中,協(xié)調(diào)器也周期性發(fā)送信號,但這只用于終端設(shè)備并檢測協(xié)調(diào)器的存在,設(shè)備要隨時準(zhǔn)備好進(jìn)行點(diǎn)對點(diǎn)通信,通過發(fā)送數(shù)據(jù)請求和應(yīng)答進(jìn)行通信
ZigBee支持兩種類型的數(shù)據(jù)格式:KVP關(guān)鍵值對及MSG消息幀一般KVP幀采用命令響應(yīng)機(jī)制,用于傳輸一個簡單的屬性變量值;而MSG幀還沒有一個具體格式上的規(guī)定,通常用于多信息,復(fù)雜信息的傳輸,其支持二進(jìn)制數(shù)據(jù)傳輸,數(shù)據(jù)大小受支持的幀大小限制
圖2 參考設(shè)計功能圖
在安全方面,ZigBee采用IEEE 802.15.4媒體訪問控制子層的安全模型,其規(guī)范了四個方面的安全服務(wù),即訪問控制、數(shù)據(jù)加密、幀完整性檢查及采用順序更新值防止幀重放
ZigBee單芯片方案——EM250
EM250是Ember公司推出的ZigBee片上系統(tǒng),它集成了一個符合IEEE 802.15.4標(biāo)準(zhǔn)的2.4GHz射頻收發(fā)器和一個功能強(qiáng)大的高速率16位微處理器,支持網(wǎng)絡(luò)級的調(diào)試,系統(tǒng)的軟件開發(fā)簡便微處理器主頻為12MHz,滿足作為協(xié)調(diào)器、全功能設(shè)備或簡化功能設(shè)備的要求
圖3 協(xié)調(diào)器軟件功能模塊設(shè)計
EM250可以進(jìn)入三種不同的狀態(tài):工作狀態(tài)、待機(jī)狀態(tài)和深度睡眠狀態(tài)在工作狀態(tài)時可執(zhí)行程序代碼,典型情況電流為8.5mA在待機(jī)狀態(tài),處理器不再工作,但允許中斷喚醒,外圍器件及射頻收發(fā)器正常工作在深度睡眠狀態(tài),處理器和射頻收發(fā)器都不再工作,直至有外部中斷或定時中斷喚醒,典型情況電流僅為1.5μA深度睡眠狀態(tài)不適用于全功能設(shè)備,但對于簡化功能設(shè)備節(jié)省耗電而言,則必不可少
EM250具有4路模路轉(zhuǎn)換,兩路可用作數(shù)據(jù)轉(zhuǎn)換單元的模擬信號捕捉數(shù)字中斷可在睡眠或待機(jī)狀態(tài)接收一位的數(shù)字?jǐn)?shù)據(jù)其通用同步和異步串行接收器及轉(zhuǎn)發(fā)器模塊可配置成為通用異步接收器/發(fā)送器或串行外圍接口SPI及I2C總線接口
圖4 全功能設(shè)備的軟件功能模塊圖
EM250集成的射頻收發(fā)器支持四種功率工作模式,即爆發(fā)模式、高功率模式、正常模式和最小功率模式,可根據(jù)設(shè)備類型及相鄰節(jié)點(diǎn)距離,利用功率管理來合適設(shè)置工作模式
硬件組成及設(shè)計
EM250集成了MCU、射頻收發(fā)器、內(nèi)存以及通信端口,只需要極少的外圍元器件就可構(gòu)成ZigBee網(wǎng)絡(luò)節(jié)點(diǎn)硬件,以作為全功能設(shè)備、簡化功能設(shè)備以及協(xié)調(diào)器參考設(shè)計功能模塊見圖2
外圍元器件包括:射頻不平衡到平衡轉(zhuǎn)換器(RF BALUN 50/200Ω)、諧波濾波、晶振與負(fù)載電容構(gòu)成的振蕩器、電源去耦電容電路、電源板阻容濾波、上拉和下拉電阻、異步復(fù)位信號的阻容濾波、諧波濾波的輸出端外接的 50Ω非平衡天線等
圖5 簡化功能設(shè)備的軟件功能模塊設(shè)計
網(wǎng)絡(luò)節(jié)點(diǎn)采用Future技術(shù)設(shè)備公司USB轉(zhuǎn)UART芯片F(xiàn)T232R作為與PC通信接口FT232R無須編程即可完成USB協(xié)議到RS232串口通信協(xié)議的轉(zhuǎn)換,F(xiàn)T232R驅(qū)動可以支持在以PC端建立起虛擬通信端口(VPC),VPC驅(qū)動將完成USB信號與RS232信號的自動轉(zhuǎn)換系統(tǒng)的電源可由3~3.3V直流源提供或由USB接口5V電源經(jīng)FT232R轉(zhuǎn)換為3.3V電源提供,3~3.3V直流源可以是電池或AC/DC變換器兩種電源可由跳線來進(jìn)行選擇
系統(tǒng)的軟件設(shè)計
一個ZigBee只能有唯一的協(xié)調(diào)器,其主要功能是初始化及維護(hù)整個ZigBee網(wǎng)絡(luò),其維護(hù)著所有直接連接的節(jié)點(diǎn)及未直接連接但允許加入網(wǎng)絡(luò)的節(jié)點(diǎn)的表,加入到此ZigBee網(wǎng)絡(luò)的設(shè)備必須得到協(xié)調(diào)器的批準(zhǔn)協(xié)調(diào)器需要不間斷地監(jiān)聽其他節(jié)點(diǎn)加入或退出網(wǎng)絡(luò)請求及消息,在不發(fā)送消息時就需進(jìn)入接收狀態(tài),因此協(xié)調(diào)器不能進(jìn)入“睡眠”模式典型的協(xié)調(diào)器軟件功能模塊設(shè)計見圖3
ZigBee網(wǎng)絡(luò)中的路由器為全功能設(shè)備,它完成各個全功能設(shè)備、簡化功能設(shè)備、協(xié)調(diào)器等節(jié)點(diǎn)間數(shù)據(jù)的路由,是構(gòu)建網(wǎng)絡(luò)結(jié)構(gòu)ZigBee網(wǎng)絡(luò)所必須的,同協(xié)調(diào)器一樣,全功能設(shè)備也維護(hù)著網(wǎng)絡(luò)中節(jié)點(diǎn)的相關(guān)信息表,且由于它必須連續(xù)不斷的監(jiān)聽路由消息,所以也不可進(jìn)入“睡眠”模式全功能設(shè)備的軟件功能模塊設(shè)計見圖4
簡化功能設(shè)備是ZigBee網(wǎng)絡(luò)的終端設(shè)備,它可以同協(xié)調(diào)器和路由器進(jìn)行通信,但不能作為中間路由器,RFD可以進(jìn)入睡眠模式,以減少功率消耗,大大延長電源使用時間
在簡化功能設(shè)備進(jìn)入睡眠模式時,相鄰的協(xié)調(diào)器或路由器會緩存發(fā)送它的相關(guān)數(shù)據(jù)在退出睡眠模式時,它會向相鄰的協(xié)調(diào)器或路由器詢問是否有發(fā)送到它的數(shù)據(jù),相鄰的協(xié)調(diào)器或路由器則返回是否有其數(shù)據(jù)包的響應(yīng)簡化功能設(shè)備在處理完發(fā)送到它的數(shù)據(jù)后,可重新進(jìn)入睡眠模式簡化功能設(shè)備的軟件功能模塊設(shè)計見圖5
各節(jié)點(diǎn)的管理可采用超級終端撥號到相連的單個節(jié)點(diǎn)或用統(tǒng)一的集中網(wǎng)絡(luò)管理界面來完成集中網(wǎng)絡(luò)管理界面安裝于與協(xié)調(diào)器相連接的PC,用于用戶同ZigBee網(wǎng)絡(luò)進(jìn)行交互,主要功能有網(wǎng)絡(luò)拓?fù)滹@示、節(jié)點(diǎn)狀態(tài)顯示、節(jié)點(diǎn)數(shù)據(jù)、告警信息、網(wǎng)絡(luò)日志等
小結(jié)
ZigBee無線傳感器網(wǎng)絡(luò)具有廣泛的應(yīng)用前景,已越來越得到業(yè)界的重視并逐步開始廣泛應(yīng)用基于EM250實現(xiàn)的ZigBee無線傳感器網(wǎng)絡(luò)具有實現(xiàn)簡易、方便,同時利用Ember的InSight集成開發(fā)環(huán)境,可快速地進(jìn)行系統(tǒng)的開發(fā)、調(diào)試、編譯,具有很強(qiáng)的實際應(yīng)用價值