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