【導讀】無線傳感器網絡(Wireless Sensor Network, WSN)具有信息采集、傳輸、處理的功能和動態的拓撲結構。微小型傳感器節點具有計算能力、通信能力,將其部署在監控區域內,構成可以自主完成自組織特定任務的WSN智能網絡信息系統,無線傳感器節點在監控區域內實現自定位。
為了實現無線傳感器網絡節點內部、節點與節點之間的有效通信,在采用Atmel公司的ATZB-900-B0在無線通信硬件模塊和IEEE 802.15.4 MAC協議棧的基礎上,根據定位網絡的應用需求以及數據命令的用途,制定節點消息格式、消息類型和消息內容,明確消息的具體走向,確定節點的應用層框架結構。通過超聲波相關的測距定位算法來對網絡節點的測距性能和定位系統性能進行實驗分析。定位實驗結果表明,節點的平均定位誤差為0.27m,最大定位誤差為0.76m。
引言
無線傳感器網絡(Wireless Sensor Network, WSN)具有信息采集、傳輸、處理的功能和動態的拓撲結構。微小型傳感器節點具有計算能力、通信能力,將其部署在監控區域內,構成可以自主完成自組織特定任務的WSN智能網絡信息系統,無線傳感器節點在監控區域內實現自定位。無線傳感器節點不僅要能夠實現自身定位,還要能夠在監控區域內出現入侵者時,有效地安排適當的節點來消滅入侵者,起到自主防御的作用。
當前,國內外的高校、科研機構以及其他組織已經開發出很多成熟的WSN定位系統。如Active Badge、Active Bat系統、AHLos系統、SpiderBat系統等。其中,國內關于定位方法和技術的研究比較多,國外的研究開展的比較早,很多定位系統已經走出實驗室,投入商業化應用。但仍存在節點測距范圍有限、定位精度不高等關鍵技術問題。目前,常用的定位技術主要是基于紅外測距、RSSI檢測、聲波以及超聲波測距的定位技術,主要是室內環境中應用。紅外信號的穿透性差,容易受到環境因素的影響,傳輸距離短,需要大量的傳感器節點,定位系統的成本較高。因此,在完成測距定位的同時,開發一個簡單實用、操作便捷的定位監控系統也非常重要。
針對上述問題,本文以節點高精度系統定位為目標,研究基于DSP的相關定位技術,設計并實現了基于超聲波相關檢測定位系統,系統界面友好,可以為WSN提供更好的節點自身定位服務支持。
一.定位系統結構
根據定位系統的實際要求,設計了WSN定位系統,系統的基本結構如圖1所示。該系統主要由兩部分組成:定位網絡和監控系統。定位網絡中節點的位置隨機進行部署,其位置不確定,節點通過超聲波相關測距技術,使用相關檢測算法計算節點之間的距離,通過無線方式將距離信息轉發傳遞至Sink節點。上位機監控系統部分又分為Sink節點信息處理和終端界面顯示兩個子部分,Sink節點根據收集到的節點距離信息來計算節點的坐標位置,終端界面顯示網絡拓撲結構及節點坐標。
1.傳感器節點架構
根據具體應用場景的不同,節點的總體框架主要由DSP、RAM、ATZB-900-B0無線傳輸模塊、射頻收發天線、溫度測量模塊、A/D采樣模塊、超聲波收發電路以及電源模塊組成。本設計中無線數據通信模塊選用Atmel公司的ATZB-900-B0模塊,它是一個靈敏度高、功耗低、超緊湊型的IEEE 802.15.4/ZigBee模塊。定位系統的網絡組建以及節點間的消息傳輸都是通過ZigBee技術來實現的。
2.節點傳感器模塊
超聲波測距傳感器是一種以超聲波為載體的微小型測距雷達,其具有結構簡單、體積小、能耗低、信息處理簡單可靠、價格低廉的特點,不受光照、電磁、粉塵以及煙霧等因素的干擾。為了解決單一超聲波傳感器方向指向性唯一的問題,本文采用六元陣列的方法,將六組超聲波收發探頭均勻分布在正六邊形的邊上,如圖2所示,保證超聲信號的二維平面全向收發。
3.節點處理器模塊
由于節點要在野外環境中,無法進行電源的供給,節點需要保持盡可能長時間的工作狀態或者處于待機狀態,這也就要求處理器的能量消耗要盡可能小,延長節點的壽命。所以選取高性能、低功耗的控制器在節點設計中至關重要。TMS320C6748TM DSP是TI公司生產的一款新型低功耗浮點型DSP處理器,屬于C6000系列,采用了超長指令字(Very Long Instruction Word, VLIW)結構,為DSP的高效運行提供了保障。它融合了TMS320C67xTM DSP 和TMS320C64xTM DSP 的指令集架構,支持DSP的高數字信號處理性能和精簡指令計算機(Reduced Instruction Set Computer, RISC)技術,滿足當前的應用場景需求。除高速處理能力、極低的功耗以及豐富的外設接口外,還具有音頻、視頻等多媒體能力以及高速STAT硬盤和SD接口的外部存儲器接口等,由于這些不是本論文關注的焦點,在此不贅述。
二.節點通信消息設計
在傳感器網絡中,采用ZigBee通信協議時,節點被分為Coordinator、Router以及End Device三種。Coordinator負責系統的初始化工作,選擇網絡的信道等參數建立網絡,供其他節點加入;Router負責節點之間命令消息的路由轉發實現;End Device負責任務是消息的發送和接收,只能和父節點進行數據通信,不具有路由轉發的功能。在本系統中,Sink節點主要負責監控網絡的建立、上位機命令的分析處理和操作、數據的收集等任務,是整個網絡的數據存儲和處理中心,在上位機和監控網絡之間起到橋梁的作用,是系統應用中的Coordinator。監控網絡區域內的待定位節點要具備消息轉發與路由其他節點的能力,需要可以給所有節點發送消息,也可以接收到所有節點的消息,是系統應用中的Router。每個節點由無線數據傳輸模塊和主控DSP模塊組成,同一節點的兩個模塊之間通過UART總線進行通信。節點之間通過無線RF射頻方式進行通信。Sink節點與上位機使用UART總線進行通信,未知節點的通信方式中并不包含該通信方式。節點的通信方式如圖3所示。
1.Sink節點任務設計
Sink節點(Coordinator)的任務主要包括節點的初始化、建立網絡以及應用層任務命令。這里將Sink節點的無線模塊和DSP模塊看作一個整體,Sink節點程序流程圖如圖4所示。應用層任務命令包括檢測和分析上位機下發的命令以及根據上位機命令做出相應的處理操作。應用層命令主要是Sink節點分別和上位機、定位網絡之間的交互。
三.定位系統實驗及結果分析
節點的測距性能主要通過節點的測距精度直觀反映,而節點的測距性能又直接影響系統的定位性能。本文對已經研究設計的定位節點進行一系列的測距定位實驗。首先進行節點的測距性能實驗,然后進行節點的定位性能實驗。本實驗的實測環境是實驗室外走廊,實驗場景如圖5所示,實驗環境溫度為14~18℃,使用一個Sink節點和兩個未知節點進行實驗。通過多次測量,取測量結果的平均值作為最終結果的方式來減小測距誤差。實驗過程中,Sink節點可以自由移動,以無線方式控制兩個未知節點進行測距。Sink節點通過串口線與PC端連接,使用上位機軟件進行命令的發送和距離測量數據的收集顯示。將一個未知節點設置為超聲信號接收節點,放置在一個固定的位置;另一個設置為超聲信號源節點,等間距移動測量。超聲信號源節點從距離接收節點1m處開始測量,每隔1m進行一組測量,每個測量點測50次,取這50次測距結果的平均值作為該測量點的測距結果。
四.結束語
本文設計了節點的通信方式及消息,在統一的消息格式內,根據所要執行的任務的不同,具體設計各種應用消息;其次,根據系統需求和節點類型的不同,設計并說明了不同節點的程序流程;同時設計了良好的人機交互定位界面;最后,對網絡節點的測距性能和定位性能進行實驗分析,驗證了系統基本滿足對測距范圍和測距精度要求和節點定位的技術要求。