基于Zigbee技術的無線傳感器網絡協議的設計
1 引言
本文引用地址:http://www.104case.com/article/158175.htm無線傳感器網絡是由多個無線網絡傳感器構成,這些傳感器集傳感器執行、控制器和通信裝置于一體,集傳感與驅動控制能力、計算能力、通信能力于一身的資源受限的嵌入式設備。由這些微型傳感器構成的無線傳感器網絡能夠實時監測、感知和采集網絡分布區域內的各種監測對象信息,并對這些信息進行處理,傳送給需要這些信息的用戶。無線傳感器網絡具有自組織、自愈、多跳等特點,并且節點放置位置大多固定。由于有些無線傳感器現場工作環境比較惡劣,因此在設計無線傳感器網絡協議的時候就必須充分考慮傳感器節點的節能問題和采集數據的實時性傳輸問題。
ZigBee技術是一個具有統一技術標準的短距離無線通信技術,其PHY層和MAC層協議為IEEE802.15.4協議標準。本文提出的無線傳感器網絡工作在全球通用的ISM(Industrial,Scientific and Medica1)免付費頻段2.4GHz上,其數據傳輸速率為250Kb/s,劃分為16個信道。與藍牙或802.11b等同屬短距離無線通信技術相比,ZigBee技術具有先天的優勢。ZigBee設備為低功耗設備,具有能量檢測和鏈路質量指示的功能。同時,由于采用了碰撞避免機制(CSMA―CA),避免了發送數據時的沖突。在網絡安全方面,采用了密鑰長度為128位的加密算法,對所傳輸的數據信息進行加密處理,保證了數據傳輸時的高可靠性和安全性。
用ZigBee技術組成的無線傳感器網絡結構簡單、體積小、性價比高、放置靈活、擴展簡便、成本低、功耗低、安全可靠,這種新興的無線傳感器網絡必將有廣泛的應用前景。
2 Zigbee無線傳感器網絡
目前,zigbee技術在國外已經在家庭網絡、控制網絡、手機移動終端等領域有了一定的應用,但是現有zigbee技術構成的網絡都是僅限于zigbee技術的無線個域網(WPN)拓撲結構,每個接入點所能接納的傳感器的節點數遠遠低于協議所標稱的255個,為了達到傳感器網絡密集覆蓋的目的,就必須進行復雜的組網,這不僅增加了網絡的復雜性,還增加了網絡整體的功耗,傳感器節點的壽命大大降低。本文提出的是構建簇樹形拓撲結構的無線傳感器網絡。網絡示意圖如圖1:
圖 1 簇形傳感網絡示意圖
在此網絡中鄰近區域內的節點構成了一個簇,每個簇有且僅有一個簇頭,相鄰的簇頭又循環構成了另一個簇,這樣依次反復,構成了一個樹形結構的傳感網絡。在此結構中,樹根節點作為整個網絡的協調器可以和PC機相連,接收傳感器所采集的數據,并對數據進行顯示和處理。
3 網絡協議的設計
3.1網絡的自組織
無線傳感器網絡最初是由全功能設備(FFD)的節點發起并建立,無線傳感器網絡建立后,此發起設備就作為整個網絡協調器,該協調器可以通過串行接口和PC相連接,處理接收到的各種數據,也可以和其他異種網絡進行數據交換。節點自發建網過程如下:FFD節點首先進行信道能量檢測(ED),選取檢測到的能量峰值最小的那個信道作為要建立的無線傳感器網絡的數據傳輸信道;然后在此信道上發送跨網信標(beacon)請求幀,用以獲取節點操作范圍內其他無線傳感器網絡信息參數,在接收到beacon幀后,選擇未被使用的網絡標號,最后根據已確定的網絡信道號、網絡標號及其他相關參數來設定硬件中相關寄存器的值,至此無線傳感網中網絡協調器就形成了。圖2是設備自發建網示意圖。
圖 2 設備自發建網示意圖
當一個節點要申請加入已經建好的無線傳感器網絡的時候,此節點首先預設好網絡標號和使用的信道,然后發送網內beacon請求廣播幀,在接收到多個帶有鏈路質量信號參數的beacon幀后,選取鏈路質量較好、剩余能量較多的節點進行連接,向相應的協調器發送入網請求命令幀,協調器允許后會分配網內短地址給該節點。每個節點都有一張鄰居表,并且對其動態維護。在該鄰居表中含有一個父節點地址(除了根節點)和多個子節點地址(除了葉結點)。依次重復這樣的過程,所有的節點就可以自組成一個簇樹狀的無線傳感網。圖3是節點入網握手示意圖:
圖 3 節點入網握手示意圖 圖 4 節點出網握手示意圖
同理,一個節點要離開網絡的話,只要向其父節點發送請求命令幀,父節點在接收到請求后會做出相應的操作并發送響應幀給于回應。圖4是節點出網握手示意圖。
3.2網絡的自愈合和自節能
無線傳感器網絡除了節點有自組網能力外,還具有自愈和自節能的特點。當某一節點因為某種客觀環境原因或是原傳感網參數發生變化,導致此節點和傳感網脫離,脫離節點可以發送孤立(orphan)顯示請求幀給協調器,協調器在接收到請求幀后確定此節點是不是自己原先的孩子節點,在做出判定后向該節點發送響應幀,以確定是否重新接收該節點為自己的孩子節點。圖5 為orphan請求的握手示意圖。
圖5 節點orphan請求的握手示意圖
由于無線傳感器網絡中的協調器具有多跳的功能,那么充當協調器的節點就會為轉發接收到的數據而耗費額外的能量開銷。因此,我們設定一個最低能量極限值,并且使節點周期性的檢測當前所剩余的能量值,當檢測到本節點的剩余能量低于此極限值時,則此協調器向其所有孩子節點發送出網命令幀,隨之,各子節點相繼執行入網的相關操作后,脫離了原先的父節點,而依附于新的協調器節點。此時原先的協調器節點就成為了葉節點,不用承擔數據轉發的責任,從而達到減小能耗的要求,增加了該節點使用壽命,進而提高了整個無線傳感器網絡的使用年限。
3.3 幀的形成和轉發
每個節點通過傳感裝置所獲取到的數據,經過節點處理后形成幀,而后將此幀發向其父節點,依次循環,最終由網絡協調器獲得,隨后交由PC來處理。
Zigbee協議定義了四種幀,分別是:命令幀,數據幀,beacon幀,確認幀。通用幀的格式如表1所示:
表 1通用幀格式
幀控制域中主要包括了幀類型和源、目的地址模式。
4.結束語
在測試中,我們使用三個無線傳感器節點來構建對等網絡。其中,有一個節點通過串口和PC相連,作為網絡協調器,通過它可以將采集到的數據交給PC機。無線傳感器節點主要以Philips公司的p89lpc932單片機為核心,無線數據收發芯片采用Ubec公司的基于zigbee協議的UZ2400,節點硬件概況圖如下。通常情況下節點一般處于休眠狀態,當有中斷請求時激活節點工作,接收數據。
圖6 無線傳感器節點硬件概況圖
初步實驗結果表明:由PC機向網絡協調器發送自組網指令后,其他兩個無線傳感器節點都能正常的入網,各節點之間能夠正常的發送和接收數據。同時,網絡協調器可以把自身采集的數據或是由其他傳感器傳送過來的數據交由PC機處理。
由于,相比使用其他無線設備來構建傳感網,所花費的成本要低,自組網能力強,相信利用此種技術來構建無線傳感網的前景將非常樂觀。
評論