如何開發(fā)更具魯棒性的ZigBee解決方案
ZigBee在無線傳感器網(wǎng)絡(luò)領(lǐng)域中受到了人們的密切關(guān)注,主要是由于ZigBee承諾能為可靠、高性價(jià)比和低功率的無線通信提供全球性統(tǒng)一規(guī)范。并且在目前的無線設(shè)備市場中,ZigBee聯(lián)盟經(jīng)過不懈地努力已經(jīng)將ZigBee的地位提升了一大步。僅僅用了幾年的時(shí)間,該聯(lián)盟就發(fā)展了200多家聯(lián)盟成員。ZigBee芯片組和協(xié)議棧已經(jīng)可以很容易地從許多供貨商那里得到。去年市場上已經(jīng)出現(xiàn)第一套ZigBee終端產(chǎn)品。
本文引用地址:http://m.butianyuan.cn/article/83400.htm通過精心地定義ZigBee規(guī)范中的網(wǎng)絡(luò)和應(yīng)用層,ZigBee聯(lián)盟希望獨(dú)立的設(shè)備制造商能夠開發(fā)出可以互操作的優(yōu)秀終端產(chǎn)品。成員們對ZigBee芯片組給予了很高的期望,希望能夠幫助OEM制造商進(jìn)一步降低成本,從而為系統(tǒng)集成商和終端用戶提供低成本的終端產(chǎn)品。
隨著市場需求的增長以及大量的志愿者投入研究ZigBee規(guī)范,現(xiàn)在已經(jīng)到了將一個(gè)低成本、低功率的無線網(wǎng)絡(luò)的可行性方案提供給人們的時(shí)候了。本文將討論設(shè)計(jì)和集成一個(gè)ZigBee方案時(shí)應(yīng)該考慮的一些重要因素。文中的許多內(nèi)容來自MaxStream公司在研發(fā)其首套ZigBee認(rèn)證產(chǎn)品——XBee OEM無線模塊過程中所獲取的經(jīng)驗(yàn)。
ZigBee一覽
1. ZigBee網(wǎng)絡(luò)
ZigBee定義了三種節(jié)點(diǎn)類型:協(xié)調(diào)器、路由器和終端設(shè)備。協(xié)調(diào)器可以通過選擇網(wǎng)絡(luò)的工作信道和個(gè)域網(wǎng)識別標(biāo)志(PAN ID)來啟動一個(gè)ZigBee網(wǎng)絡(luò)。一旦網(wǎng)絡(luò)啟動,路由器和終端設(shè)備就能加入網(wǎng)絡(luò)。協(xié)調(diào)器和路由器都能通過網(wǎng)絡(luò)發(fā)射和路由數(shù)據(jù),并且允許其它的路由器和終端設(shè)備加入。終端設(shè)備不能參與路由數(shù)據(jù),因此在不發(fā)射和接收數(shù)據(jù)時(shí)可以休眠。當(dāng)設(shè)備加入ZigBee PAN時(shí),設(shè)備間的父子關(guān)系即形成,加入的設(shè)備為子,允許加入的設(shè)備為父。一個(gè)簡單的ZigBee網(wǎng)絡(luò)如圖1所示。
2. ZigBee尋址
ZigBee設(shè)備支持兩種地址類型:一種是64位IEEE地址,另一種是16位網(wǎng)址。64位地址在所有ZigBee設(shè)備之中是唯一,其中包含一個(gè)由IEEE分配、也是全球唯一的24位制造商特定組織識別符(OUI)。
當(dāng)設(shè)備加入ZigBee個(gè)域網(wǎng)時(shí),它可以從允許其加入的父設(shè)備上獲取16位網(wǎng)址。該網(wǎng)址在個(gè)域網(wǎng)內(nèi)被規(guī)定為唯一。該網(wǎng)址用于數(shù)據(jù)傳輸和數(shù)據(jù)包路由。用于路由數(shù)據(jù)包的路由表存放著各個(gè)目標(biāo)設(shè)備和下一跳設(shè)備的網(wǎng)絡(luò)地址。因此個(gè)域網(wǎng)的各設(shè)備都必須有明確且唯一的網(wǎng)絡(luò)地址,以保證數(shù)據(jù)能到達(dá)正確的設(shè)備。
圖1:簡單的ZigBee網(wǎng)絡(luò)。
然而,在有些條件下一個(gè)設(shè)備的地址可能會改變,或者是多個(gè)節(jié)點(diǎn)可能接收到同一個(gè)地址。例如,如果終端設(shè)備被移除或失去與父設(shè)備的聯(lián)系,它就必須重新連接網(wǎng)絡(luò),這可能導(dǎo)致它接收到一個(gè)新的地址。另外,如果協(xié)調(diào)器被一臺新設(shè)備所替換,新協(xié)調(diào)器會不知道哪些地址是之前的協(xié)調(diào)器分發(fā)的。新協(xié)調(diào)器分發(fā)給設(shè)備的地址很容易與已有的網(wǎng)址重疊。
ZigBee聯(lián)盟正在加緊研究解決這些地址問題的對策,并將解決方案整合到ZigBee規(guī)范中去。但是,一些協(xié)議棧和模塊提供者,譬如MaxStream公司已經(jīng)研發(fā)出解決這些問題的方法。
3. ZigBee路由
ZigBee包括一個(gè)用于AODV網(wǎng)狀路由的基本框架。如果一個(gè)設(shè)備需要向其它設(shè)備發(fā)送數(shù)據(jù),它首先需要發(fā)現(xiàn)一條可能要經(jīng)過多臺路由器才能到達(dá)目標(biāo)設(shè)備的路由。網(wǎng)狀路由允許動態(tài)地建立、修改或替換傳輸路徑,從而保持設(shè)備間有一條可靠的路徑。
然而,除網(wǎng)狀路由之外,ZigBee規(guī)范還經(jīng)常依賴樹狀路由。在樹狀路由中,數(shù)據(jù)將在源設(shè)備和目標(biāo)設(shè)備之間的“樹”狀路由上嚴(yán)格地按照從父到子或從子到父的路徑傳輸。
圖2:樹狀路由(左)和網(wǎng)狀路由(右)的演示。
當(dāng)節(jié)點(diǎn)移動或刪除時(shí)路由可能出現(xiàn)問題。這時(shí)如果單個(gè)節(jié)點(diǎn)無法從一條路由中隔離開來,那么整個(gè)樹狀路由就無法定位故障點(diǎn)。而網(wǎng)狀網(wǎng)絡(luò)就能在現(xiàn)有路由發(fā)生故障時(shí)發(fā)現(xiàn)一條新路由。
ZigBee協(xié)議棧按照規(guī)范采用樹狀和網(wǎng)狀路由的ZigBee 1.0標(biāo)準(zhǔn)而建立。兩種路由之間的交互是相當(dāng)復(fù)雜的,而且協(xié)議棧之間的交互也是不斷變化的。但是,增強(qiáng)型ZigBee規(guī)范(2006)增加了一個(gè)nwkUseTreeRouting功能,該功能可以使整個(gè)樹狀路由徹底斷開,再由(NLME)路由發(fā)現(xiàn)請求(route-discovery-request)原語根據(jù)需要強(qiáng)制進(jìn)行路由發(fā)現(xiàn)。這些功能可以解決與樹狀路由相關(guān)的問題,并且允許開發(fā)商充分發(fā)揮網(wǎng)狀路由的優(yōu)勢。
圖3:當(dāng)所建通道上的一個(gè)節(jié)點(diǎn)失效時(shí)樹狀路由(左)和網(wǎng)狀路由(右)的性能。
4. ZigBee互操作性
ZigBee規(guī)范包括一些可以用來定義各種網(wǎng)絡(luò)的配置功能。開發(fā)商可以很容易地配置以下參數(shù):目標(biāo)系統(tǒng)中的路由器和/或終端設(shè)備數(shù)量;安全級別;路由表和鄰居表規(guī)模;網(wǎng)絡(luò)最大深度(從協(xié)調(diào)器到最遠(yuǎn)派生設(shè)備的連接深度);協(xié)調(diào)器/父路由器允許的子路由器和終端設(shè)備的最大數(shù)量。
ZigBee聯(lián)盟研發(fā)出了為這些不同協(xié)議棧建立通用設(shè)置的公共框架-可配置參數(shù)表。為了完成框架(如家庭控制協(xié)議??蚣芫投x了開燈、關(guān)燈、或切換一個(gè)燈光的簇ID)內(nèi)的共同任務(wù),該框架還定義了一些稱作簇ID的接口。
終端設(shè)備必須圍繞可互操作的同一框架來設(shè)計(jì)。因此,應(yīng)用開發(fā)商必須設(shè)置他們的協(xié)議棧參數(shù)以匹配公共框架所規(guī)定的參數(shù)值,從而確保與采用同一框架的其它解決方案的互操作性。另外,開發(fā)商也可以為了滿足其設(shè)計(jì)而通過采用專用(定制)的框架來自由修改協(xié)議棧參數(shù)。不過,在專用框架中所定義的簇ID不具備與基于公共框架的設(shè)備互操作的能力。
由于開發(fā)商具有選擇框架的靈活性,從而并非所有的ZigBee設(shè)備都能互操作。雖然這種靈活性一開始會在市場上引起一些混亂,但允許開發(fā)商決定其產(chǎn)品是否要與其他供應(yīng)商的設(shè)備進(jìn)行互操作。在不需要互操作性的場合,功能強(qiáng)大的ZigBee可以圍繞一個(gè)專用框架進(jìn)行開發(fā),并剪裁協(xié)議棧參數(shù)來滿足特殊應(yīng)用需求。
5. ZigBee認(rèn)證
經(jīng)認(rèn)證的ZigBee硬件平臺(芯片組和模塊)和軟件層(PHY層、MAC層和網(wǎng)絡(luò)層)必須做ZigBee驗(yàn)證平臺(ZCP)測試。通過ZCP認(rèn)證的硬件平臺和軟件協(xié)議棧表明適用于ZigBee終端產(chǎn)品的研發(fā)。
在ZigBee兼容平臺上開發(fā)的終端產(chǎn)品可以直接做產(chǎn)品認(rèn)證測試。終端產(chǎn)品認(rèn)證允許產(chǎn)品出現(xiàn)在ZigBee認(rèn)證產(chǎn)品列表中,并打上ZigBee標(biāo)識。ZigBee聯(lián)盟已經(jīng)開發(fā)了相關(guān)測試標(biāo)準(zhǔn)來認(rèn)證基于公共和專用框架的終端產(chǎn)品是否是合格的ZCP產(chǎn)品。
路由器相關(guān)文章:路由器工作原理
路由器相關(guān)文章:路由器工作原理
評論