基于結構化方法的無線傳感器網(wǎng)絡設計
無線傳感器網(wǎng)絡(WSN)由一些獨立、完全嵌入式操作的小體積低功耗節(jié)點組成,這些節(jié)點能夠檢測來自目標環(huán)境的數(shù)據(jù)或控制目標環(huán)境,并且相互間通過無線方式通信。檢測和控制是通過互連著的傳感器和激勵器完成的,而這些傳感器和激勵器或通過遠程、或通過嵌入式應用程序進行管理。這些節(jié)點的數(shù)量從十幾個到數(shù)千個不等,一個典型系統(tǒng)由數(shù)百個分布于整座大樓或室外空間的節(jié)點組成。
許多無線傳感器網(wǎng)絡采用私有標準實現(xiàn)無線組網(wǎng),但最近的趨勢是逐漸向標準化的低功耗無線通信發(fā)展。基于著名的802.15.4規(guī)范的ZigBee就是一種用于無線檢測和控制的標準。雖然802.15.4文檔僅描述了協(xié)議的PHY和MAC層,但基于802.15.4構建的ZigBee還提供網(wǎng)絡和應用層規(guī)范。
ZigBee具有許多優(yōu)點,包括可以實現(xiàn)多跳路由和數(shù)據(jù)發(fā)送的網(wǎng)格協(xié)議、安全規(guī)范和針對應用層互操作性的整套參數(shù)設置??傊?,ZigBee向嵌入式應用開發(fā)人員提供了管理網(wǎng)絡以及連接其它節(jié)點的更高抽象層次。
雖然本文主要討論的是ZigBee,但其中許多觀點和結論同樣也適用于采用802.15.4 MAC和PHY的其它標準。為了避免出現(xiàn)混亂,后文假設我們的目標設計涉及的是使用網(wǎng)格路由協(xié)議、802.15.4兼容調(diào)制方案和介質(zhì)訪問協(xié)議的多跳網(wǎng)絡。本文還假設讀者對ZigBee和802.15.4規(guī)范已有基本了解。
網(wǎng)絡組織和規(guī)模
網(wǎng)絡組織和規(guī)模也許是最重要的設計選項,它往往對接下來的設計過程起著告知和指導作用。它還有約束作用,因為大型網(wǎng)絡通常更難設計和維護。幸運的是,如今已經(jīng)有方法能輕松實現(xiàn)和維護非常大的網(wǎng)絡。
目前最先進的ZigBee網(wǎng)絡規(guī)模在300到500個節(jié)點之間。這個規(guī)??雌饋聿淮?,但試想一下,所有這些節(jié)點工作在同一物理信道上,彼此在同一時間發(fā)送數(shù)據(jù),根據(jù)每個節(jié)點的行為路由數(shù)據(jù),并在同一時間試圖保持整個網(wǎng)絡的完整性(通過發(fā)送周期性控制消息),這該是個很吵很擁擠的網(wǎng)絡。另外還要注意,ZigBee標準所依據(jù)的802.15.4規(guī)范使用了CSMA/CA(載波偵聽多址訪問/碰撞避免)協(xié)議,也就是說,在各自“聽力”范圍內(nèi)沒有兩個節(jié)點能同時“說話”。如果同時“說話”,都會遭遇通信失敗,必須延遲一段時間后重試。如果網(wǎng)絡已經(jīng)擁塞,那么這些重試將產(chǎn)生級聯(lián)傳輸故障,試圖發(fā)起空中訪問的節(jié)點將越來越多,從而加劇信道的擁擠。
事實上,在設計數(shù)百個節(jié)點以上的網(wǎng)絡時面臨的主要挑戰(zhàn)之一是如何有效地管理網(wǎng)絡擁塞(另外一個挑戰(zhàn)是在運行時優(yōu)化用于存儲內(nèi)部堆棧狀態(tài)的系統(tǒng)資源)。下面的小節(jié)將簡要介紹用于解決擁塞問題的三種不同策略。
圖1:基于802.15.4的ZigBee提供網(wǎng)絡層和應用層規(guī)范。
網(wǎng)絡密度
顯然,“300個節(jié)點的網(wǎng)絡”給我們提供的有關網(wǎng)絡組織的信息是很少的。由于存在上述沖突碰撞問題,網(wǎng)絡密度也是影響網(wǎng)絡健康的一個重要因素,也就是說在每個節(jié)點聽力范圍內(nèi)存在多少個節(jié)點,或者換句話說,一個普通節(jié)點可以聽到多少個其它節(jié)點?專家建議是小于5個,因為這個數(shù)量支持冗余設計和相對無阻塞的通信介質(zhì)。7個節(jié)點以上的網(wǎng)絡很可能出現(xiàn)嚴重擁塞的網(wǎng)段而加重網(wǎng)絡負擔。
一個相關的問題隨之而來,系統(tǒng)設計師該如何判斷有多少個節(jié)點能被聽到?一個顯而易見的策略是定制嵌入式應用程序。有關相鄰節(jié)點的信息實際上是ZigBee網(wǎng)絡中協(xié)議操作的一個重要部分。事實上,節(jié)點會主動廣播他們自己的信息,并且這些信息會被有效范圍內(nèi)的每個其它節(jié)點接收到。相鄰表格可以被駐留程序查詢,并計算唯一性條目的數(shù)量。然后駐留程序再將這個診斷結果發(fā)送給指定節(jié)點。很明顯,這樣做只有在網(wǎng)絡密度仍能改變的網(wǎng)絡安裝過程中才有意義。一旦網(wǎng)絡安裝完畢并開始運行,密度信息將在故障排除過程中發(fā)揮顧問的作用。
請注意,如果相鄰表格的大小小于周圍節(jié)點的數(shù)量,ZigBee堆棧將強制周期性地撤消表格條目。這種撤消也可能負面影響總體網(wǎng)絡性能,因為即使路徑中沒有節(jié)點離線,也會強制路由被重新發(fā)現(xiàn)。因此,除了限制網(wǎng)絡密度以避免擁塞外,還必須根據(jù)系統(tǒng)資源(如相鄰表格的大小)確定網(wǎng)絡密度。
在節(jié)點的物理位置由于應用要求而被固定的情況下,網(wǎng)絡密度可以方便地通過降低擁塞區(qū)域中收發(fā)器的輸出功率來得到控制。從理論上講,降低輸出功率與增加節(jié)點間距離、使它們彼此聽到的可能性變小具有相同的效果。制造商傾向于將輸出功率設為最大值,以確保最大工作范圍和最佳鏈路質(zhì)量。根據(jù)我們的經(jīng)驗,在距離性能不很重要的室內(nèi)應用場合,輸出功率可以很容易降低。根據(jù)經(jīng)驗,輸出功率降低3dBm,有效距離范圍可以縮短1.5倍。
評論