王 驥,林杰華,謝仕義
(廣東海洋大學信息學院,廣東湛江524088)
無線傳感網絡WSN(Wireless Sensor Networks)是由大量小體積、低成本,具有無線通信能力、也能采集和處理相關數據的傳感器節點組成[1]。WSN涉及多個專業領域的理論,同樣也在多個工程領域中受到了廣泛的關注[2]。WSN的產生和高速發展得益于現代網絡技術、無線通信技術、傳感器技術和嵌入式系統技術的快速發展[3-4]。由于WSN能夠準確、快速地獲取客觀物理信息,在軍事國防、工農業控制、智能家居、生物醫療和環境監控等多個領域得到了廣泛應用[5]。
ZigBee是一種新興的短距離、低功耗、低成本、低復雜度的短距離無線網絡通信技術,它基于IEEE802.15.4標準,主要應用于低速傳輸,適合作無線傳感器網絡的通信協議[6-7]。ZigBee協議棧呈分層結構,每層為其上層提供特定的服務。ZigBee技術是構建在IEEE 802.15.4標準之上,IEEE 802.15.4標準僅定義了物理層(PHY)和媒體訪問控制層(MAC)的規范[8]。ZigBee在802.15.4標準之上指定了網絡層和應用層規范[9]。ZigBee協議的體系結構如圖1所示。

圖1 ZigBee協議的體系結構
ZigBee網絡設有三種邏輯設備類型:協調器、路由器和終端設備,每個ZigBee網絡都是由網關節點、若干個路由器和終端設備節點組成[10-11]。如圖2所示,ZigBee的網絡拓撲類型有3種:星型、樹型和網狀型[12]。

圖2 ZigBee的網絡拓撲結構
本文研究目的是利用ZigBee技術結合WSN設計安全高效的、個性化的環境監測系統。許多本領域學者已經利用WSN設計了一些環境監測系統,代表性的成果有:雷旭等利用無線傳感器網絡設計了隧道環境信息監測系統。系統以STM32微控制器為核心設計了低功耗網絡節點與網絡匯聚節點設計了B/S模式訪問的監控中心軟件[13];梅海彬等提出了一種基于Arduino開放平臺與XBee Pro增強通信距離的無線傳感器網絡,對近海環境進行了實時監測[14];陳克濤等設計了以CC2530為核心處理器的無線傳感器網絡農業環境監測網關節點[15-16];王德麾等提出一種基于無線傳感器網絡和3G/4G的遠程環境監測系統[17];孫紀敏等研究了WSN接入In?ternet的 方 法[18];Arch Rock Corp 等 研 究 了IPV6WSN[19];另外,針對農田土壤參數(諸如溫濕度等)的精確采集系統設計上,很多學者研究了土壤WSN精確化應用系統與實現的關鍵技術[20~23]。諸如此類,這些都是典型的WSN環境監測系統與關鍵技術研究的文獻成果。概括這些目前WSN環境監測領域文獻共性特點,大多是針對農業、海洋等某一領域設計的應用系統,缺乏共性通用的系統平臺設計思想;另外由于缺乏目前云計算、Android等最先進的新技術植入,缺乏先進與人性化設計理念。針對這些弱點,本文進行了研究改進。實踐證明本文設計的系統,用戶隨時隨地都可以了解監測場所的環境信息,如:溫度、濕度、可燃有毒氣體及其濃度、火災、光線明暗程度等數據。此外,系統利用數據融合技術實時閉環環境信息的預警決策,能根據信息特點實現對環境的智能化管理,如環境安全指數超標會做出決策并采取一些措施。
整體系統框圖如圖3所示。本文環境監控系統分為三大部分:WSN終端節點、GPRS網關(控制/管理中心)和服務器/手機端APP/計算機端網頁。
為了充分實現設計任務要求,優化現有WSN環境監測系統,本文系統智能網關系統設計為分為兩部分:以CC2530為微控制器的控制中心與以STM32為微控制器的管理中心。而且主要在網關設計上利用軟硬件優化實現系統的先進性與人性化理念。
網關設計時技術上考慮與WSN節點、移動4G網絡的雙向交互并將二者無縫結合實現WSN遠程有效通信。具體如下:①控制中心負責ZigBee網絡的組建,接收來自傳感器節點的傳感數據,并將來自管理中心的指令發送到傳感器節點或LED燈節點,同時還要將傳感器數據發送到管理中心。②管理中心負責將來自控制中心的數據利用LCD顯示屏實時顯示并用SD卡保存,同時實現GPRS遠程通信,即通過SIM900A將數據以GPRS的方式發送到服務器,或請求讀取服務器上的數據。當然,用戶是可以通過管理中心實現對傳感網絡中傳感器節點的設置與管理。如:設置傳感器節點采集傳感數據的周期、信息融合、預警決策等。

圖3 系統框圖
本系統設計時考慮了4類傳感節點,分別采集不同類型的環境信息。傳感器節點實現對其環境信息的采集后,通過ZigBee無線傳感網絡節點協作將環境數據發送到控制中心并最終送達管理中心。系統的WSN節點既能夠在用戶需要時采集環境數據,也能按照所設定的采集周期長度來實現環境數據自動采集和發送,即工作方式采取主動與被動式隨機選擇的模式。而且當傳感器節點設置為路由節點時,可以同時實現數據包的中轉,從而擴大WSN的覆蓋范圍與數據傳輸能力。
為了實現更大程度的智能化,系統采用了開放的物聯網云平臺Yeelink,通過GPRS將數據上傳到Yeelink的服務器,用戶就能通過安卓應用軟件(An?droid App)和計算機網頁查看數據,同時還可以設置相關監測目標數據與閾值,當超越了閾值就觸發自動發微博功能來通知用戶,保證用戶快速有效地接收到信息并處理。實現了系統對環境監測的網絡化、智能化。
在本設計中,下位機部分包括GPRS智能網關、4類傳感節點和LED燈節點,各類傳感器網絡節點硬件電路除了傳感器的不一樣外,其他部分(CC2530最小系統、電源穩壓模塊)基本上一致,雖然涉及節點種類多,但都只在傳感器模塊的傳感器種類上有區別。
傳感節點主要包括電源穩壓模塊、時鐘/復位單元、射頻天線單元、按鍵/LED單元和傳感器模塊等等,傳感節點的系統結構圖如圖4所示。

圖4 傳感節點的系統結構圖
網關功能特點如下:控制中心負責ZigBee網絡的組建和相關控制,接收節點數據,發送命令到各節點,與管理中心實現數據交互;管理中心完成ZigBee網絡的管理工作,計算機和管理中心采用USB和UART1的通訊方式可以對ZigBee網絡完成相關配置,同時完成配置使用按鍵與LCD顯示屏與WSN的功能結合。傳感器的數據除了可以發送到服務器外,還可以保存到SD卡,保存周期可以按需設置。智能網關的硬件結構組成如圖5所示。

圖5 智能網關硬件結構
溫度傳感器產生與環境絕對溫度成正比輸出電壓。這個電壓和溫度的關系如方程(1)所示。

其中,uT為傳感器輸出電壓,單位:mV,T為攝氏溫度值。uT不是直接輸出的電壓,而是將其輸入到ADC產生線性的二進制編碼。編碼如式子(2)所示。

其中C為ADC輸出碼;G為ADC傳輸函數(增益),本文實驗中假設為2(隨機);uREF為參考電壓值,電源3V時,實驗測試擬合約為2.43V。則得到傳感器輸出溫度值T計算式(3)。

在本設計中,軟件設計是重中之重。由于網絡規模不大,終端節點設計沒考慮復雜的數據處理算法,其軟件只需要實現節點與節點、節點與協調器、協調器與網關之前的接力通信即可。傳感器數據通過點對點的單播方式發送到協調器,而協調器是通過廣播的方式直接將命令數據包廣播給所有節點,節點根據需要有選擇地接收命令。這種通信方式的優點是各個節點復位后短地址的變化不影響正常通信。節點通信的數據包格式如下:

傳感器節點中數據的發送一般放在定時的事件中執行,而這個定時的時間是可以通過網關的管理中心進行設置。數據發送算法流程如圖6所示。

圖6 傳感器數據發送流程
多個WSN節點數據融合可以看成是一個帶有約束條件的多變量目標函數[24-25]。為便于研究,本文設為:

約束條件

對目標函數求αi的偏導數


由式(2)、式(4)得

由式(4)、式(5)可以得

由式(1)、式(2)得可以得出二次加權平均值

Step 1 首先對接收到的多傳感器節點中的所有傳感器信息進行處理,單個傳感器不同時刻的狀態估計值采用alman遞歸濾波算法,建立傳感器數據初始的誤差方陣P0,由遞歸公式計算出t時刻誤差方陣Pk(k=1,2,..,t),計算出mintracePk的時刻k。
Step 2 開始由初始值進行遞歸計算,根據計算t個時刻的vt,再結合Step-1的計算結果,確定k時刻的最小pk,再由式子(7)計算最優比例權重。
Step 3 對發散或估計精度差的數據,按照最優比例權重進行加權,根據公式(10),計算出加權后的狀態估計值(j=1,2,…,t)。
Step 4 由每個傳感器的方差并根據公式(9),可以計算出融合權重ai,將Step-3中的經過加權的各個傳感器的狀態估計值進行融合,再根據公式(4),計算出融合值。
Step 5 網關數據融合決策,依據設定預警閾值,判別融合后的數據與閾值關系,輸出預警等級結果。
網關協調器接收的數據包源頭有網絡內各節點和網關管理中心。網關管理中心的數據包一般是命令數據包,需要廣播到各個節點;終端節點的數據包除了傳感器數據,還有按鍵命令等命令數據,傳感器數據會發送到STM32控制的管理中心,命令數據經處理后會廣播到各節點,協調器也可以結合多個傳感器的數據廣播相關命令到各節點。協調器處理相關數據的流程如圖7所示。
協調器與管理中心串口通信的數據包格式為:

聯合體中數組databuf和結構體BUF是共享一個內存區域的,選用聯合體的原因是方便將接收到的數據復制到結構體變量,使用start[2]為數據包的頭幀是為了方便判斷數據包是否來自網關中的控制中心,而數據的類型指的是發給管理中心的傳感器類型。

圖7 協調器處理數據流程
本設計中,管理中心主要實現的功能有:①LCD顯示傳感器數據;②傳感器數據通過GPRS上傳到服務器;③傳感器數據保存到SD卡;④ZigBee網絡配置;⑤接收GSM短信命令包,將命令包發送到控制中心;⑥接收計算機數據,完成相關操作。
這些功能的實現是必須由軟件編程實現,驅動相關外設,調用相關底層驅動等等。功能實現涉及的代碼量大,管理中心主函數的流程如圖8所示。

圖8 管理中心主函數流程圖
為了全面了解系統的性能,需要對系統進行綜合測試,從而實現系統的功能。主要測試工作包括ZigBee無線網絡的數據收發與組網性能、管理中心功能完備性、環境參數管理和報警功能、網關GPRS數據上傳等等。為節約成本,項目組實物測試之前首先進行了系統仿真測試。
仿真實驗選擇NS-2軟件系統作為網絡仿真平臺,它提供了通信模型、隨機拓撲和節點移動模型生成等輔助工具。在仿真中使用的場景文件就使用了隨機模型工具實現[26]。在仿真中設置了以下的仿真情景:scene-100 n-1 p-60 m/s-120 t-1 200-1 200中的100 n表示100個節點,1 p表示到一個地方的停留時間是1 S,60 s表示節點移動的最大速度為60 m/s,100 t表示模擬場景的持續時間是120 s,50-50表示場景的大小為50 m×50 m。假設100個節點在某個隨機時刻某節點啟動一個CBR(Con?stant Bit Rate)流,該CBR流各節點間最大的連接數為25,每秒發送2個長度為256 Byte包。
①端到端的延時分析:采用網狀組網形式,端到端的延時反應應用中的時間特性,主要包含報文傳送過程中的所有時延,如發送緩沖器等待時間、接口隊列排隊時間、MAC層重傳時間、包的轉發時延等。端到端平均時延=目的結點分組接收時間-源結點分組發送時間。數據包在轉發的過程中的包時延與節點數目間的關系如圖9所示。其中三條曲線分別對應網絡中數據包個數。可以得出,節點與數據包的數量增多在本文算法下對延遲的影響小。

圖9 數據包的延時
分析原因,數據包的轉發在剛開始時,端到端的延時變化幅度大。當然,隨著網絡中參與數據傳輸節點的數量的增加,傳輸時延會漸漸增加,隨后隨節點數增加網絡延遲減小是因為數據“轉發節點”由軟件算法選擇,數目增多容易選擇最合適節點(近距離或能量大)進行轉發而改善了網絡性能。
②節點間的傳輸速率:隨著節點數目增加,分集信息流數也增加,研究系統的平均符號誤碼率ASEP和信道容量性能情況很重要[27]。本文用傳輸速率表示。假設節點之間有一個CBR數據流,現對節點間的數據流傳輸情況進行分析。實驗中測試,節點平均傳輸速率為 0.50 kb/s,最大的傳輸速率為 1.90 kb/s。隨后又對多個節點傳輸平均速率進行仿真分析對比,結果如圖10所示。可知數據包在整個網絡中的傳輸速率基本保持恒定,節點數目增多,速率不減反增,原因在于數據融合算法減少了數據量而減少了碰撞,所以本文研究系統適合大規模WSN應用。因此,網狀組網對WSN環境監測協調具有很好的有效性。

圖10 數據流數目與傳輸速率關系
管理中心的選取5傳感器網絡節點數據顯示和采集周期的設置界面如圖11所示。系統內4類傳感器網絡節點的數據在有效通信范圍內均能成功發送給協調器并顯示在TFT顯示屏。管理中心能對各個傳感節點的采集周期進行設置并保存到Flash,每次復位或重新啟動都會讀取保存在Flash中的采集周期,每個節點連接到ZigBee網絡后都會向協調器請求其采集周期。為保證支持低功耗工作,網關還支持屏幕休眠和數據上傳通道關閉。

圖11 傳感器顯示界面和采集周期的設置界面
①環境參數控制和報警功能測試
在本設計中,環境參數選取亮度參數作為控制實例。實現了亮度的自動控制,并能結合LED節點、人體紅外傳感器、光強度傳感器等多參數實現亮度的閉環控制,具體實現方法為:當人體紅外傳感器檢測到移動人體存在于其檢測范圍且光強度傳感器檢測的環境亮度低于一定的閾值(可自行設置)則打開繼電器控制的LED燈開關,可以推廣到應用于諸如樓梯和走廊過道的照明系統等的智能化管理;而報警功能部分則實現了火焰報警,即火焰檢測到疑似火焰情況則將網絡內的蜂鳴器打開,網關發短信通知用戶。
②GPRS數據上傳測試
串口顯示GPRS上傳濕度、溫度、光強等結果,包括數據上傳成功與否和傳感數據和數據類型。截圖如圖12所示。

圖12 傳感器網關顯示截圖
GPRS上傳的數據能夠在網頁上查看,網頁上同樣可以查看歷史數據。網頁實時顯示傳感器數據如圖13所示。

圖13 網絡中心網頁顯示
本文設計的ZigBee網狀組網的環境監測系統中節點數據收發情況與組網性能進行了完整測試。由于實驗中傳感節點沒有使用CC2530前端射頻功率放大,因此傳輸距離比較短,無障礙下10 m內丟包率為0,距離增加丟包率直線上升,15 m就會斷開連接,有障礙時傳輸距離更短,丟包率更高。但本系統設計了網關數據融合算法改善了網絡數據碰撞擁塞情況,所以WSN環境監測系統大規模應用的條件得到了改善,而且安卓與云計算技術的引入是系統在人性化與數據存貯方面相比現有系統是一個大的閃光點。后續研究中會在改善節點的傳輸能力的方向與物聯網化方向深化系統功能,使其更加實用化、工程化。
本文的理論研究與實踐證明,ZigBee技術的強大組網能力和低功耗等特點使得惡劣環境監測的發展前景更加廣闊,本文系統設計中植入了云計算與Android技術,使基于WSN環境監測系統管理與工作模式更加高度智能化、人性化和安全化;另一方面,本文設計的系統中利用傳感器拾取的數據與控制技術相互結合,實現了對環境信息的有效監測與控制,同時智能網關以GPRS的通訊方式將傳感器數據發送至服務器,用戶可以通過網頁等途徑查看,所以,移動通信(可升級至4G/5G)等技術的融入使得本系統的更具實用性與先進性。
[1]任豐原,黃海寧,林闖.無線傳感器網絡[J].軟件學報,2003,14(7):1282-1291.
[2]馬祖長,孫怡寧,梅濤.無線傳感網絡綜述[J].通信學報,2004,25(4):114-124.
[3]Wang K,Xu Y,Huang L S,et al.GPS based location oriented routing protocol for MANET[J].Chinese Journal of Electronics,2006,15(1):173-178.
[4]LanemanJ.N.,TseD.N.C.WornellG.W.Cooperative diversity in wireless networks:efficient protocols and outage behavior[J].IEEE Transactions onInformation Theory,2004,50(12):3062-3080.
[5]Truman Chiu-Yam Ng,Wei Yu.Joint optimization of relay strate?gies and resource allocations in cooperative cellular networks[J].IEEE Journal onSelected Areas in Communications,2007,25(2):328-339.
[6]Yi Zhihang,Kim Il-Min.Diversity order analysis of the decode-and forward cooperative networks with relay selection[J].IEEE Trans?actions onWireless Communications,2008,7(5):1792-1799.
[7]Bletsas A.,Khisti A.,Reed D.P.,et al.A simple cooperative diver?sity method based on network path selection[J].IEEE Journal on?Selected Areas in Communications,2006,24(3):659-672.
[8]Hao Zhu,Guohong Cao.rDCF:a relay-enable medium access con?trol protocol for wireless ad hoc networks[J].IEEE Transactions onMobile Computing,2005,5(9):1201-1214.
[9]Liu Pei,Tao Zhifeng,Lin Zinan,et al.Special issue-advancesin smart antennas-cooperative wireless communications:a cross-lay?er approach[J].IEEE Wireless Communications,2006,13(4):84-93.
[10]Bin Zhao,ValentiM.C.Practical relay networks:a generalization of hybrid-ARQ[J].IEEE Journal on Selected Areas in Communi?cations,,2005,23(1):7-18.
[11]Zhang Wenshu,DuanDongliang,Yang Liuqing.Relay selection from a battery energy efficiency perspective[J].IEEE Transac?tions onCommunications,2011,59(6):1525-1529.
[12]D.Duan,F.Qu,L.Yang,A.Swami,and J.C.Principe.Modulation Selection from a Battery Power Efficiency Perspective[J].IEEET?ransactions on Communications,vol.58,no.7,pp.1907-1911,Ju?ly 2010.
[13]雷旭,李陽,李思慧.基于WSN的長大隧道環境監測系統設計與實現[J].計算機工程與設計,2013,(08):2675-2679.
[14]梅海彬,張明華,黃冬梅.基于無線傳感器網絡的實時近海環境監測系統設計[J].計算機應用與軟件,2015(1):110-113.
[15]陳克濤,張海輝,張永猛.基于CC2530的無線傳感器網絡網關節點的設計[J].西北農林科技大學學報(自然科學版),2014(5):183-188.
[16]王曉喃,錢煥延,唐振民.6Lowpan網關的設計與實現[J].傳感器技術學報,2009:22(5):717-721.
[17]王德麾,馮軍帥,宋海亮.基于無線傳感器網絡和3G/4G的遠程環境監測系統研究[J].物聯網技術,2015(3):17-18.
[18]孫紀敏,沈玉龍,孫玉.傳感器網絡接入internet體系結構和服務提供方法[J].通信學報,2008:29(4):84-88.
[19]Arch Rock Corp.,San Francisco.IPv6 in Low-Power Wireless Net?works[J].Proceedings of the IEEE,2010;98(11):1865-1878.
[20]劉卉,汪懋華,王躍宣,等.基于無線傳感器網絡的農田土壤溫濕度監測系統的設計與開發[J].吉林大學學報(工學版),2008,38(3):604-608.
[21]張榮標,谷國棟,馮友兵,等.基于IEEE 802.15.4的溫室無線監控系統的通信實現[J].農業機械學報,2008,39(8):119-122.
[22]馮友兵,張榮標,沈敏.面向精確灌溉的無線傳感器網絡構建[J].農業機械學報,2009,40(1):56-59.
[23]李震,Wang Ning,洪添勝等.農田土壤含水率監測的無線傳感器網絡系統設計[J].農業工程學報,2010,26(2):212-217.
[24]陳輝,鄧記才,吳曉輝,宋楊.多傳感器信息融合在輪式機器人運動控制中的應用[J].傳感技術學報,2011,24(6):915-918.
[25]房衛東,張小瓏,石志東,孫彥贊,單聯海.基于二項分布的無線傳感器網絡信任管理系統[J].傳感技術學報,2015,28(5):703-708.
[26]Riliskis,L.Osipov,E.Symphony.A Framework for Accurate and Holistic WSN Simulation[J].Sensors,2015,15:4677-4699.
[27]徐凌偉張浩呂婷婷施威GulliverTA.移動無線傳感器網絡系統在n-Rayleigh信道下的性能分析[J].傳感技術學報,2015,28(2):265~270.