<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          關(guān) 閉

          新聞中心

          EEPW首頁 > 工控自動(dòng)化 > 設(shè)計(jì)應(yīng)用 > 無線傳感器網(wǎng)絡(luò)(WSN)定位系統(tǒng)設(shè)計(jì)

          無線傳感器網(wǎng)絡(luò)(WSN)定位系統(tǒng)設(shè)計(jì)

          作者: 時(shí)間:2010-08-18 來源:網(wǎng)絡(luò) 收藏

          是無線傳感器(WSN)網(wǎng)絡(luò)重要的支撐技術(shù),具有廣泛的應(yīng)用。技術(shù)則是一種近距離、低功耗、低數(shù)據(jù)傳輸率、低成本的雙向無線通信技術(shù),可以嵌入到各種設(shè)備中,同時(shí)支持地理功能。將技術(shù)應(yīng)用于無線傳感器網(wǎng)絡(luò)中是現(xiàn)今研究的一個(gè)重點(diǎn),相關(guān)技術(shù)的研究和應(yīng)用也受到人們廣泛的關(guān)注。

            1 WSN定位概述

            1.1 WSN定位研究現(xiàn)狀

            無線傳感器的廣泛應(yīng)用使其定位技術(shù)得到快速發(fā)展。TI公司推出一款帶硬件定位引擎的片上系統(tǒng)(SoC)解決方案CC243l,在典型應(yīng)用中可實(shí)現(xiàn)3~5 m定位精度和0.25 m的分辨率,由于定位算法被固化,導(dǎo)致其應(yīng)用缺少靈活性。另一方面,利用普通無線收發(fā)器件結(jié)合軟件算法的定位受到了廣泛關(guān)注。

            1.2 簡(jiǎn)介

            是 TI公司推出的一款2.4 GHz射頻系統(tǒng)單芯片。該器件內(nèi)部集成有射頻前端,內(nèi)存和微控制器。微控制器使用的805l內(nèi)核,內(nèi)部具有128 KB可編程閃存和8 KB的RAM,還包含A/D轉(zhuǎn)換器、定時(shí)器Timer、AESl28協(xié)同處理器、看門狗定時(shí)器、32 kHz晶振的休眠模式,定時(shí)器上電復(fù)位電路以及外部21個(gè)可編程的I/O口,在硬件上支持IEEE802.15.4規(guī)定的CSMA-CA功能。自身資源豐富和低功耗、低成本的特點(diǎn)使得其非常適用于無線傳感器網(wǎng)絡(luò)中。

            2 定位系統(tǒng)網(wǎng)絡(luò)結(jié)構(gòu)圖

            系統(tǒng)體系結(jié)構(gòu)如圖l所示。無線傳感器定位系統(tǒng)中包括3類節(jié)點(diǎn):協(xié)調(diào)器、參考節(jié)點(diǎn)和盲節(jié)點(diǎn)。參考節(jié)點(diǎn)位置已知,盲節(jié)點(diǎn)利用已知參考節(jié)點(diǎn)信息,借助一定的定位算法確定自身位置,完成自身定位。

          定位系統(tǒng)體系結(jié)構(gòu)

            一個(gè)完整的無線傳感器定位系統(tǒng)設(shè)計(jì)過程包括3個(gè)方面:硬件節(jié)點(diǎn)設(shè)計(jì)、定位節(jié)點(diǎn)軟件設(shè)計(jì)和上位機(jī)軟件設(shè)計(jì)。硬件設(shè)計(jì)為系統(tǒng)提供定位硬件平臺(tái),定位節(jié)點(diǎn)軟件設(shè)計(jì)主要完成無線收發(fā)模塊的數(shù)據(jù)傳輸流程,上位機(jī)軟件接收無線采集數(shù)據(jù),利用特定算法完成定位,并動(dòng)態(tài)顯示定位結(jié)果。

            3 WSN定位節(jié)點(diǎn)硬件設(shè)計(jì)

            3.1 總體設(shè)計(jì)

            定位節(jié)點(diǎn)硬件設(shè)計(jì)框架如圖2所示。硬件設(shè)計(jì)分為兩部分:無線通信模塊設(shè)計(jì)和無線測(cè)試模塊設(shè)計(jì)。無線通信模塊為節(jié)點(diǎn)間的無線數(shù)據(jù)提供接口,它是節(jié)點(diǎn)核心部分。無線測(cè)試模塊通過RS232串口轉(zhuǎn)換電路實(shí)現(xiàn)PC機(jī)與協(xié)調(diào)器節(jié)點(diǎn)間的數(shù)據(jù)傳輸。

          定位結(jié)點(diǎn)硬件設(shè)計(jì)框圖
          圖2定位結(jié)點(diǎn)硬件設(shè)計(jì)框圖

            3.2 硬件實(shí)現(xiàn)

            無線通信模塊包括CC2430及其相關(guān)外圍電路。由于CC2430集8051內(nèi)核與無線收發(fā)模塊于一體,從而簡(jiǎn)化了電路設(shè)計(jì)過程,省去了單片機(jī)和無線收發(fā)器件之間接口電路的設(shè)計(jì),縮短了研發(fā)周期。

            無線測(cè)試模塊的串口轉(zhuǎn)換電路采用MAX3232雙通道轉(zhuǎn)換器,工作電壓范圍為3~5.5 V,該電路主要用于協(xié)調(diào)器與PC之間的串口通信。

            對(duì)射頻電路來說,解決好器件間干擾問題是至關(guān)重要的。建議無線通信模塊采用PCB雙層板,頂層用于信號(hào)線布線,底層用于電源和地布線,在無布線的開放區(qū)域采用少量過孔相連到地。另外,務(wù)必使CC2430底部可靠接地。外圍器件尺寸盡量小,可使用0402規(guī)格阻容器件。如果使用PCB天線,為了減少板材對(duì)PCB天線的影響,使天線獲得最佳性能,可以采用RF4板材,板材介電常數(shù)為4.5,厚度為1 mm,敷銅厚度為0.35μm。無線測(cè)試模塊PCB制作無特殊要求。

            4 定位節(jié)點(diǎn)軟件設(shè)計(jì)

            無線傳感器定位網(wǎng)絡(luò)中存在3種功能類型的節(jié)點(diǎn),分別為網(wǎng)關(guān)(協(xié)調(diào)器)、參考節(jié)點(diǎn)(路由器)和盲節(jié)點(diǎn)(終端)。網(wǎng)關(guān)在整個(gè)系統(tǒng)中有著至關(guān)重要的作用,首先它要接收上位機(jī)發(fā)出的命令,開啟網(wǎng)絡(luò),等待其他類型節(jié)點(diǎn)入網(wǎng),其次還要接收各節(jié)點(diǎn)反饋的有效數(shù)據(jù)并傳輸給上位機(jī)軟件處理。參考節(jié)點(diǎn)是一類靜止的已知自身位置的節(jié)點(diǎn),它的任務(wù)是接收帶RSSI(Received Signal Strength Indicator)值的信息包并計(jì)算RSSI平均值,最終在盲節(jié)點(diǎn)打包各RSSI平均值后,將其發(fā)送給網(wǎng)關(guān),傳回上位機(jī)監(jiān)控軟件處理。盲節(jié)點(diǎn)是一類可移動(dòng)的節(jié)點(diǎn),可在參考節(jié)點(diǎn)包圍的區(qū)域內(nèi)任意移動(dòng)。盲節(jié)點(diǎn)向周圍空間廣播RSSI簇,并接收一跳范圍內(nèi)的參考節(jié)點(diǎn)平均RSSI值,打包收到的各平均RSSI值后,無線發(fā)送給協(xié)調(diào)器節(jié)點(diǎn)。圖3為整體傳感器網(wǎng)絡(luò)定位通信流程。

          感器網(wǎng)絡(luò)定位通信網(wǎng)流程
          圖3 感器網(wǎng)絡(luò)定位通信網(wǎng)流程

            考慮到網(wǎng)關(guān)節(jié)點(diǎn)除了組網(wǎng)和串口通信功能外,它可以作為參考節(jié)點(diǎn)使用,故只需要編寫兩種節(jié)點(diǎn)程序即可。網(wǎng)關(guān)節(jié)點(diǎn)特有的功能用虛線標(biāo)出。各類節(jié)點(diǎn)工作流程如圖4和圖5所示。

          盲節(jié)定點(diǎn)位流程
          圖4 盲節(jié)定點(diǎn)位流程


          圖5 網(wǎng)關(guān)節(jié)定點(diǎn)位流程

            5 上位機(jī)軟件設(shè)計(jì)

            5.1 上位機(jī)功能及其實(shí)現(xiàn)

            無線傳感器定位系統(tǒng)上位機(jī)監(jiān)控軟件中,與定位相關(guān)的功能主要包括2大類:定位工程管理和定位信息處理。定位工程管理完成加載定位區(qū)域示意圖和配置參考節(jié)點(diǎn)坐標(biāo)信息功能。定位信息處理完成參數(shù)采集、數(shù)據(jù)處理功能。具體來說,定位工程管理需要包括以下3方面:1)加載定位區(qū)域平面圖,用戶為特定定位場(chǎng)景自行選擇bmp、jpg、gif等格式的定位區(qū)域示意圖;2)配置參考節(jié)點(diǎn)信息,用戶自行配置參考節(jié)點(diǎn)并在工程中設(shè)置參考點(diǎn)號(hào),在定位區(qū)域示意圖中標(biāo)示參考節(jié)點(diǎn)位置;3)保存和修改工程,隨時(shí)保存和修改工程信息。而定位信息處理包括2個(gè)方面:1)提供PC和協(xié)調(diào)器間接口,通常使用串口與協(xié)調(diào)器進(jìn)行通信,PC機(jī)向下發(fā)送命令信息,協(xié)調(diào)器向上讀取數(shù)據(jù)。2)區(qū)域定位,根據(jù)從參考節(jié)點(diǎn)讀出的信息進(jìn)行定位并顯示和保存定位結(jié)果。

            上位機(jī)功能實(shí)現(xiàn)流程如圖6所示。其中,系統(tǒng)初始化包括:定位區(qū)域示意圖加載、區(qū)域尺寸參數(shù)設(shè)置、參考節(jié)點(diǎn)位置設(shè)置和串口相關(guān)參數(shù)設(shè)置以及串口打開等功能。

          上位機(jī)實(shí)現(xiàn)流程
          圖6 上位機(jī)實(shí)現(xiàn)流程

            5.2 定位算法選取

            基于接收信號(hào)強(qiáng)度指示(RSSI)的算法,利用RSSI與距離之間的關(guān)系,在特定定位環(huán)境采集數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行擬合,獲取二者關(guān)聯(lián)曲線,利用基于測(cè)距的定位算法實(shí)現(xiàn)未知節(jié)點(diǎn)的位置確認(rèn)。

            基于場(chǎng)地信號(hào)強(qiáng)度數(shù)據(jù)庫的算法,就室內(nèi)定位而言,要實(shí)現(xiàn)精確定位,最直接的方法是建立待定位場(chǎng)地的信號(hào)強(qiáng)度數(shù)據(jù)庫,通過數(shù)值比對(duì)確定盲節(jié)點(diǎn)位置。但數(shù)據(jù)庫的構(gòu)建費(fèi)時(shí)費(fèi)力,室內(nèi)環(huán)境改變(如室內(nèi)設(shè)施移動(dòng)了位置、改變了參考節(jié)點(diǎn)位置等)需要重新構(gòu)建采樣數(shù)據(jù)庫。為了以較小代價(jià)獲得盡可能高的精度,可以將2種定位方法進(jìn)行適當(dāng)融合。每種算法都有它的優(yōu)缺點(diǎn),根據(jù)具體應(yīng)用需要選擇合適的算法。

            6 結(jié)束語

            本文詳細(xì)介紹了無線傳感器定位系統(tǒng)的軟硬件設(shè)計(jì),該定位系統(tǒng)可以充分利用軟件方法實(shí)現(xiàn)較高的定位精度。降低對(duì)定位硬件的要求。使得無線傳感器定位系統(tǒng)維持在較低的成本上。從實(shí)際測(cè)試結(jié)果表明:該定位系統(tǒng)是切實(shí)可行的,并且實(shí)現(xiàn)簡(jiǎn)便。



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();