歡迎您光臨本站 登入註冊首頁

概述

   集成了感測器、微機電系統和網路技術而形成的感測器網路是一種全新的信息獲取和處理系統。本文在簡要介紹無線感測器網路體系結構的基礎上.設計了一種基於Zigbee協議的無……

    集成了感測器、微機電系統和網路技術而形成的感測器網路是一種全新的信息獲取和處理系統。本文在簡要介紹無線感測器網路體系結構的基礎上.設計了一種基於Zigbee協議的無線感測器網路節點,詳細討論了此種感測器節點的硬體組成和軟體流程。實驗表明,設計的系統具有較好的穩定性和較高的通信效率。

1  引言
  無線感測器網路(Wireless Sensor Network,WSN)是一種特殊的Ad-hoc網路,是由許多無線感測器節點協同組織起來的。這些微型節點具有無線通信、數據採集和處理、協同合作等功能,可應用於布線和電源供給困難或人員不能到達的區域(如受到污染、環境不能被破壞或敵對區域)和一些臨時場合等。無線感測器網路的節點可以隨機或者特定地布置在目標環境中,它們之間通過特定的協議自組織起來,能夠獲取周圍環境的信息並且相互協同工作完成特定任務。在軍事、國防、工農業、城市管理、生物醫療、環境監測、搶險救災、防恐反恐、危險區域遠程控制等許多重要領域都有潛在的實用價值,具有十分廣闊的應用前景。
    本文在簡要介紹感測器網路體系結構的基礎上。設計了一種基於Zigbee協議的無線感測器網路節點,詳細討論了感測器節點的硬體組成和軟體設計。

2 Zigbee協議和無線感測器網路
2.1 Zigbee協議
    lEEE802.15.4規範是一種經濟、高效、低數據速率、工作在2.4 GHz和868/928 MHz的短距離無線技術,用於個人區域網和對等網狀網路,是ZigBee應用層和網路層協議的基礎。ZigBee是一種新興的近距離、低複雜度、低功耗、低數據速率、低成本的無線網路技術,主要用於近距離無線連接。它依據lEEE無線個人區域網(Wireless Personal Area Network,WPAN)工作組的一項標準——IEEE802.15.4標準,在許多個微小的感測器節點之間相互協調實現通信。這些感測器節點只需要很少的能量,以接力的方式通過無線電波將數據從一個感測器傳到另一個感測器,從這個意義上說,它們有較高的通信效率。

2.2無線感測器網路
    無線感測器網路典型的體系結構如圖1所示,包括分散式感測器節點(群)、網關、互聯網和監控中心等。節點具有感測、信號處理和無線通信功能,它們既是信息包的發起者。也是信息包的轉發者。通過網路自組織和多跳路由,將數據向網關發送。網關可以使用多種方式與外部網路通信,如lnternet、衛星或移動通信網路等,大規模的應用可能使用多個網關。
 
    在不同應用中,感測器網路節點的組成不盡相同,但一般主要包括感測單元(包括感測器和模數轉換模塊)、電源、微處理器(包括CPU、存儲器和嵌入式操作系統等)和通信單元(由無線通信射頻模塊組成)等,能完成數據採集、信號監測和傳送信息的任務 。此外,可以選擇的其他功能單元包括:定位系統、移動系統以及電源自供電系統等,典型無線感測器節點結構圖如圖2所示。被監測物理信號的形式決定了感測器的類型,節點採用電池供電,一旦電源耗盡,節點就失去了工作能力。為了最大限度地節約電源,在硬體設計方面,要盡量採用低功耗器件,處理器通常選用嵌入式CPU,射頻單元主要由低功耗、短距離的無線通信模塊組成。
 

3 基於Zigbee協議的無線感測器網路節點總體方案
    整個網路由若干無線感測器節點和監控中心組成,其中,無線感測器節點分佈於需要監測的區域內,執行數據採集、處理和通信等工作。監控中心由1台計算機和1個無線感測器節點組成,可以在固定建築物內,也可以是一個移動的平台。
    無線感測器網路節點是一個微型化的嵌入式系統,構成了無線感測器網路的基礎支持平台。目前。國內外已經出現了許多種網路節點的設計,它們在實現原理上是相似的,只是分別採用了不同的微處理器或者不同的通信或協議方式,例如採用自定義協議、IEEE802.11協議、Zigbee協議、藍牙協議以及UWB通信方式等。典型的節點有SensoriaWINS、SmatNesh Dust mote、lntel iMote以及Intel XSale nodes,ICTCAS/HKuST的BUDS 等。下面著重介紹本文設計的一種基於Zigbee協議的無線感測器網路節點。
    這種基於Zigbee協議的無線感測器網路節點由下列部件組成:低功耗微處理器、低功耗通信模塊、電源、複位電路等,節點功能模塊示意圖如圖3所示。
 

4 軟硬體設計和實現
4.1 硬體組成
    無線感測器節點的硬體組成如圖4所示,微處理器採用STC公司的單片機89LE516AD:內部有8位精度的高速A/D轉換器。可以按照I2C匯流排協議訪問: 作在3 V/5 V混合系統;內嵌有用於存儲數據的512位元組的SRAM。用於存儲程序代碼的64 K的Flash和定時器/計數器;具有在系統可編程(ISP)特性可以實現遠程下載升級,不需再有編程器,有3種模式:正常工作模式、掉電模式和空閑模式。
 
    在掉電模式下,除了內部看門狗和喚醒所必須的串口中斷邏輯外,其他電源都切斷,它可由外部中斷喚醒,中斷返回後繼續執行原程序;在空閑模式下。會停止CPU的工作,但是SRAM、定時器/計數器和中斷系統保持工作。合理利用這幾種模式,可以獲得理想的節能效果。
    值得注意的是:89LE516AD中I/O 口的P1口不要接到5 V系統,只能接3.3 V系統;對於A/D轉換寄存器,當開始轉換時需將ADC啟動控制位(ADC_START)置為1,而當轉換結束時需將ADC結束標誌位(ADC_FLAG)置為1;用外部專用複位電路時,RESET管腳不要加任何上拉/下拉電阻;另外盡量將P1.0/P1.1中的一個管腳空著,免得不需要進入系統ISP監控程序時,由於P1.0/P1.1=0/0而複位後進入系統ISP監控程序。
    通過使用STC232的RS232轉換器連接電腦直接下載程序,而不需再有編程器。一定不要用通用編程器,否則有可能將單片機內部已固化的ISP系統引導程序擦除。
    外部專用複位電路器件採用STC6345,它有3個功能:只有當電壓高於設定電平時。時鐘振蕩穩定,單片機才開始工作;確保掉電前有足夠的時間保存數據;當電壓低於設定電平時提供複位脈衝。
    無線通信模塊是節點的重要組成部分,選用Helicomm公司的基於Zigbee協議的IPLinkl200無線感測器通信模塊。IPLink1200模塊的射頻工作頻率選在2.4 GHz上,採用全雙工方式及直接序列擴頻(Direct Sequence Spread Spectrum,DSSS)技術。採用四相頻移鍵控(Quadrature Phase Shift Keying,QPSK),抗干擾能力強,最大傳輸速率可達250 kbit/s,這對於以低速率傳輸為主的無線感測器網路來說是足夠的。最大通信距離為100 m,採用串口為3.3V UART。即通用非同步接收和發送器。
    在沒有信號需要發送時,可以通過控制信號將發送部分的電源切斷,以節省電能。採用單片機串列介面與無線通信模塊連接。使用通信模塊時,必須注意:當發送完成後,一定要將發送使能引腳(GPIO4)和發送數據引腳(TXD)置為低電平,這樣既可以節約電能,也可以避免通信模塊一直發送一個載頻信號而干擾周圍節點的通信;無線通信模塊從待機狀態轉變為發送狀態之間有延時,而在延時期間通信模塊的數據是不能被正確發送的,所以在發送之前應提前將發送使能引腳置為高電平。

4.2 軟體設計
    在網路中,每個節點都有一個固定的地址。數據的傳送採用主從節點方式。與計算機連接的無線感測器節點作為主節點,採用I/O引腳模擬串列介面與計算機通信。其他感測器節點作為從節點,可以向主節點發送中斷請求。無線感測器網路中。傳送的基本上都是短消息(Message)。信息的格式如圖5所示,包括幀頭、目的地址、數據大小、數據內容和校驗位。其中,目的地址可以是一個指定的感測器節點 主節點或者廣播地址。採用比較簡單的異或校驗,當信息包出現校驗錯誤時,只是簡單地將出錯信息包丟棄,而不執行任何的糾錯,主節點可以根據響應結果要求從節點重新發送或報錯。
 
    感測器節點打開電源,初始化、建鏈后直接進於休眠模式。當主節點收到中斷請求時觸發中斷,激活節點,發送或接收信息包,處理完畢後繼續進入休眠狀態,等待有請求時再次激活。若有多個從節點同時向主節點發送請求,主節點來不及響應處理而丟掉一些請求,則從節點在發現自己的請求沒有得到響應後幾秒鐘再次發出請求直到得到主節點的響應為止。
    節點採用串列口通信模式,在程序設計中主要是採用中斷的方法來完成數據的接收和發送。整個軟體系統模塊大致分為主程序處理模塊、初始化模塊、查詢模塊、建鏈模塊、處理模塊、打包發送模塊、中斷接收模塊等。主程序處理模塊用來調用其它模塊完成應該實現的功能;初始化模塊用來初始化單片機串口、JPLinkl200模塊,包括內部各種寄存器的設置、工作模式的設置(如波特率的設置);查詢模塊用來查詢鄰設備的信息;建鏈模塊用來建立主、從節點問的數據鏈;處理模塊用來接收並分析無線感測器節點發來的事件,然後做出處理;打包發送模塊是當信息打包后需要發送時,利用串列口中斷可以將信息包逐位元組發送出去:中斷接收模塊是用來接收串列口發來的數據,信息包接收完成後執行校驗,並根據校驗結果決定是丟棄該幀還是做出相應的反應。節點主程序處理流程如圖6所示。

節點的串列口初始化程序如下:
SCON=0x50; //0101,0000,8位數據位,無奇偶校驗
T2CON=0x34;//0011。0100,由T2作為波特率發生器
RCAP2H=0xFF://時鐘11.0592Hz,9600波特率
RCAP2L=0xDB:
ES=1: //允許串口中斷
發送一個位元組程序如下:
do
{TI=0; //清零串13發送中斷標誌
SBUF=one_byte;}
while(TI==0);
TI=0: //清零串口發送中斷標誌

5 結束語
    在系統研製中。我們構造了10個節點和1個中心的小型網路。無線感測器節點在硬體組成上採用無線通信模塊JPLinkl200進行通信。以低功耗51單片機為核心。採用主從節點方式,一般處於休眠狀態。當有中斷請求時激活節點工作,採用串列中斷的方法接收和發送數據。初步實驗結果表明:採用這種模式建立的無線感測器網路具有較好的穩定可靠性和較高的通信效率。


[admin via 研發互助社區 ] 基於ZIGBEE協議的無線感測器網路節點的研製已經有1769次圍觀

http://cocdig.com/docs/show-post-44837.html