定位是無(wú)線(xiàn)傳感器(WSN)網(wǎng)絡(luò )重要的支撐技術(shù),具有廣泛的應用。ZigBee技術(shù)則是一種近距離、低功耗、低數據傳輸率、低成本的雙向無(wú)線(xiàn)通信技術(shù),可以嵌入到各種設備中,同時(shí)支持地理定位功能。將ZigBee技術(shù)應用于無(wú)線(xiàn)傳感器網(wǎng)絡(luò )中是現今研究的一個(gè)重點(diǎn),相關(guān)定位技術(shù)的研究和應用也受到人們廣泛的關(guān)注。 1 WSN定位概述 1.1 WSN定位研究現狀 無(wú)線(xiàn)傳感器的廣泛應用使其定位技術(shù)得到快速發(fā)展。TI公司推出一款帶硬件定位引擎的片上系統(SoC)解決方案CC243l,在典型應用中可實(shí)現3~5 m定位精度和0.25 m的分辨率,由于定位算法被固化,導致其應用缺少靈活性。另一方面,利用普通無(wú)線(xiàn)收發(fā)器件結合軟件算法的定位受到了廣泛關(guān)注。 1.2 CC2430簡(jiǎn)介 CC2430是TI公司推出的一款2.4 GHz射頻系統單芯片。該器件內部集成有ZigBee射頻前端,內存和微控制器。微控制器使用的805l內核,內部具有128 KB可編程閃存和8 KB的RAM,還包含A/D轉換器、定時(shí)器Timer、AESl28協(xié)同處理器、看門(mén)狗定時(shí)器、32 kHz晶振的休眠模式,定時(shí)器上電復位電路以及外部21個(gè)可編程的I/O口,在硬件上支持IEEE802.15.4規定的CSMA-CA功能。CC2430自身資源豐富和低功耗、低成本的特點(diǎn)使得其非常適用于無(wú)線(xiàn)傳感器網(wǎng)絡(luò )中。 2 定位系統網(wǎng)絡(luò )結構圖 系統體系結構如圖l所示。無(wú)線(xiàn)傳感器定位系統中包括3類(lèi)節點(diǎn):協(xié)調器、參考節點(diǎn)和盲節點(diǎn)。參考節點(diǎn)位置已知,盲節點(diǎn)利用已知參考節點(diǎn)信息,借助一定的定位算法確定自身位置,完成自身定位。 一個(gè)完整的無(wú)線(xiàn)傳感器定位系統設計過(guò)程包括3個(gè)方面:硬件節點(diǎn)設計、定位節點(diǎn)軟件設計和上位機軟件設計。硬件設計為系統提供定位硬件平臺,定位節點(diǎn)軟件設計主要完成無(wú)線(xiàn)收發(fā)模塊的數據傳輸流程,上位機軟件接收無(wú)線(xiàn)采集數據,利用特定算法完成定位,并動(dòng)態(tài)顯示定位結果。 3 WSN定位節點(diǎn)硬件設計 3.1 總體設計 定位節點(diǎn)硬件設計框架如圖2所示。硬件設計分為兩部分:無(wú)線(xiàn)通信模塊設計和無(wú)線(xiàn)測試模塊設計。無(wú)線(xiàn)通信模塊為節點(diǎn)間的無(wú)線(xiàn)數據提供接口,它是節點(diǎn)核心部分。無(wú)線(xiàn)測試模塊通過(guò)RS232串口轉換電路實(shí)現PC機與協(xié)調器節點(diǎn)間的數據傳輸。 圖2定位結點(diǎn)硬件設計框圖 3.2 硬件實(shí)現 無(wú)線(xiàn)通信模塊包括CC2430及其相關(guān)外圍電路。由于CC2430集8051內核與無(wú)線(xiàn)收發(fā)模塊于一體,從而簡(jiǎn)化了電路設計過(guò)程,省去了單片機和無(wú)線(xiàn)收發(fā)器件之間接口電路的設計,縮短了研發(fā)周期。 無(wú)線(xiàn)測試模塊的串口轉換電路采用MAX3232雙通道轉換器,工作電壓范圍為3~5.5 V,該電路主要用于協(xié)調器與PC之間的串口通信。 對射頻電路來(lái)說(shuō),解決好器件間干擾問(wèn)題是至關(guān)重要的。建議無(wú)線(xiàn)通信模塊采用PCB雙層板,頂層用于信號線(xiàn)布線(xiàn),底層用于電源和地布線(xiàn),在無(wú)布線(xiàn)的開(kāi)放區域采用少量過(guò)孔相連到地。另外,務(wù)必使CC2430底部可靠接地。外圍器件尺寸盡量小,可使用0402規格阻容器件。如果使用PCB天線(xiàn),為了減少板材對PCB天線(xiàn)的影響,使天線(xiàn)獲得最佳性能,可以采用RF4板材,板材介電常數為4.5,厚度為1 mm,敷銅厚度為0.35μm。無(wú)線(xiàn)測試模塊PCB制作無(wú)特殊要求。 4 定位節點(diǎn)軟件設計 無(wú)線(xiàn)傳感器定位網(wǎng)絡(luò )中存在3種功能類(lèi)型的節點(diǎn),分別為網(wǎng)關(guān)(協(xié)調器)、參考節點(diǎn)(路由器)和盲節點(diǎn)(終端)。網(wǎng)關(guān)在整個(gè)系統中有著(zhù)至關(guān)重要的作用,首先它要接收上位機發(fā)出的命令,開(kāi)啟網(wǎng)絡(luò ),等待其他類(lèi)型節點(diǎn)入網(wǎng),其次還要接收各節點(diǎn)反饋的有效數據并傳輸給上位機軟件處理。參考節點(diǎn)是一類(lèi)靜止的已知自身位置的節點(diǎn),它的任務(wù)是接收帶RSSI(Received Signal Strength Indicator)值的信息包并計算RSSI平均值,最終在盲節點(diǎn)打包各RSSI平均值后,將其發(fā)送給網(wǎng)關(guān),傳回上位機監控軟件處理。盲節點(diǎn)是一類(lèi)可移動(dòng)的節點(diǎn),可在參考節點(diǎn)包圍的區域內任意移動(dòng)。盲節點(diǎn)向周?chē)臻g廣播RSSI簇,并接收一跳范圍內的參考節點(diǎn)平均RSSI值,打包收到的各平均RSSI值后,無(wú)線(xiàn)發(fā)送給協(xié)調器節點(diǎn)。圖3為整體傳感器網(wǎng)絡(luò )定位通信流程。 圖3 感器網(wǎng)絡(luò )定位通信網(wǎng)流程 考慮到網(wǎng)關(guān)節點(diǎn)除了組網(wǎng)和串口通信功能外,它可以作為參考節點(diǎn)使用,故只需要編寫(xiě)兩種節點(diǎn)程序即可。網(wǎng)關(guān)節點(diǎn)特有的功能用虛線(xiàn)標出。各類(lèi)節點(diǎn)工作流程如圖4和圖5所示。 圖4 盲節定點(diǎn)位流程 圖5 網(wǎng)關(guān)節定點(diǎn)位流程 5 上位機軟件設計 5.1 上位機功能及其實(shí)現 無(wú)線(xiàn)傳感器定位系統上位機監控軟件中,與定位相關(guān)的功能主要包括2大類(lèi):定位工程管理和定位信息處理。定位工程管理完成加載定位區域示意圖和配置參考節點(diǎn)坐標信息功能。定位信息處理完成參數采集、數據處理功能。具體來(lái)說(shuō),定位工程管理需要包括以下3方面:1)加載定位區域平面圖,用戶(hù)為特定定位場(chǎng)景自行選擇bmp、jpg、gif等格式的定位區域示意圖;2)配置參考節點(diǎn)信息,用戶(hù)自行配置參考節點(diǎn)并在工程中設置參考點(diǎn)號,在定位區域示意圖中標示參考節點(diǎn)位置;3)保存和修改工程,隨時(shí)保存和修改工程信息。而定位信息處理包括2個(gè)方面:1)提供PC和協(xié)調器間接口,通常使用串口與協(xié)調器進(jìn)行通信,PC機向下發(fā)送命令信息,協(xié)調器向上讀取數據。2)區域定位,根據從參考節點(diǎn)讀出的信息進(jìn)行定位并顯示和保存定位結果。 上位機功能實(shí)現流程如圖6所示。其中,系統初始化包括:定位區域示意圖加載、區域尺寸參數設置、參考節點(diǎn)位置設置和串口相關(guān)參數設置以及串口打開(kāi)等功能。 圖6 上位機實(shí)現流程 5.2 定位算法選取 基于接收信號強度指示(RSSI)的算法,利用RSSI與距離之間的關(guān)系,在特定定位環(huán)境采集數據,對數據進(jìn)行擬合,獲取二者關(guān)聯(lián)曲線(xiàn),利用基于測距的定位算法實(shí)現未知節點(diǎn)的位置確認。 基于場(chǎng)地信號強度數據庫的算法,就室內定位而言,要實(shí)現精確定位,最直接的方法是建立待定位場(chǎng)地的信號強度數據庫,通過(guò)數值比對確定盲節點(diǎn)位置。但數據庫的構建費時(shí)費力,室內環(huán)境改變(如室內設施移動(dòng)了位置、改變了參考節點(diǎn)位置等)需要重新構建采樣數據庫。為了以較小代價(jià)獲得盡可能高的精度,可以將2種定位方法進(jìn)行適當融合。每種算法都有它的優(yōu)缺點(diǎn),根據具體應用需要選擇合適的算法。 6 結束語(yǔ) 本文詳細介紹了無(wú)線(xiàn)傳感器定位系統的軟硬件設計,該定位系統可以充分利用軟件方法實(shí)現較高的定位精度。降低對定位硬件的要求。使得無(wú)線(xiàn)傳感器定位系統維持在較低的成本上。從實(shí)際測試結果表明:該定位系統是切實(shí)可行的,并且實(shí)現簡(jiǎn)便。 |