專利名稱:一種在無(wú)線傳感器網(wǎng)絡(luò)中基于無(wú)線信號(hào)強(qiáng)度的節(jié)點(diǎn)室內(nèi)定位方法
技術(shù)領(lǐng)域:
本發(fā)明涉及在大規(guī)模無(wú)線傳感器網(wǎng)絡(luò)中節(jié)點(diǎn)的自身位置定位的領(lǐng)域,主要利用分布式計(jì) 算技術(shù)來(lái)解決無(wú)線傳感器網(wǎng)絡(luò)的節(jié)點(diǎn)自身定位問(wèn)題,屬于分布式計(jì)算技術(shù)和無(wú)線傳感器網(wǎng)絡(luò) 技術(shù)的交叉領(lǐng)域。特別提供了一種在大規(guī)模無(wú)線傳感器網(wǎng)絡(luò)中基于無(wú)線信號(hào)強(qiáng)度的節(jié)點(diǎn)室內(nèi) 定位方法。
背景技術(shù):
近年來(lái)微機(jī)電系統(tǒng)(MEMS)和低功耗高集成數(shù)字設(shè)備的發(fā)展,導(dǎo)致了低成本、低功耗、 微體積傳感器節(jié)點(diǎn)的出現(xiàn)。隨著傳感器技術(shù)和通信技術(shù)的發(fā)展,無(wú)線傳感器網(wǎng)絡(luò)技術(shù)開始提 出,并因?yàn)槠鋺?yīng)用的廣泛性而得到越來(lái)越多的高度重視。無(wú)線傳感器網(wǎng)絡(luò)是由一組傳感器節(jié) 點(diǎn)通過(guò)無(wú)線介質(zhì)連接構(gòu)成的無(wú)線網(wǎng)絡(luò),通過(guò)節(jié)點(diǎn)的協(xié)同工作來(lái)采集和處理網(wǎng)絡(luò)覆蓋區(qū)域中的 目標(biāo)信息,并將這些信息以自組多跳的網(wǎng)絡(luò)方式傳送到用戶終端,從而實(shí)現(xiàn)物理世界、計(jì)算世 界以及人類社會(huì)三元世界的連通。無(wú)線傳感器網(wǎng)絡(luò)在軍事國(guó)防、工農(nóng)業(yè)、城市管理、生物醫(yī) 療、環(huán)境監(jiān)測(cè)、搶險(xiǎn)救災(zāi)、防恐反恐、危險(xiǎn)區(qū)域遠(yuǎn)程控制等許多方面都具有廣泛的應(yīng)用前景。 可以說(shuō)無(wú)線傳感器網(wǎng)絡(luò)是信息感知和采集的一場(chǎng)革命,是21世紀(jì)最重要的技術(shù)之一。傳感器節(jié)點(diǎn)的自身定位在傳感器網(wǎng)絡(luò)應(yīng)用中扮演著基礎(chǔ)地位。例如目標(biāo)監(jiān)測(cè)與跟蹤、基 于位置信息的路由、智能交通、物流管理等許多應(yīng)用都要求網(wǎng)絡(luò)節(jié)點(diǎn)預(yù)先知道自身的位置, 并在通信和協(xié)作過(guò)程中利用位置信息完成應(yīng)用要求。而且由于傳感器網(wǎng)絡(luò)規(guī)模大,節(jié)點(diǎn)成本 低廉的特點(diǎn)使得人工布置網(wǎng)絡(luò)或者為每個(gè)傳感器安裝GPS模塊這些傳統(tǒng)定位手段并不實(shí)際。 因此傳感器節(jié)點(diǎn)的自身定位問(wèn)題成為無(wú)線傳感器領(lǐng)域一個(gè)熱點(diǎn)問(wèn)題。一般依據(jù)定位所需信息的粒度可將定位方法分為兩類根據(jù)信號(hào)強(qiáng)度或時(shí)間等來(lái)度量與 錨節(jié)點(diǎn)距離的稱為細(xì)粒度定位方法;根據(jù)與錨節(jié)點(diǎn)的接近度(proximity)來(lái)度量的稱為粗粒度 定位方法。其中細(xì)粒度定位又可細(xì)分為基于距離和基于方向性測(cè)量?jī)深?。例如到達(dá)時(shí)間差 (TD0A)、到達(dá)角度(A0A)等等。另外,應(yīng)用在RadioCamera定位系統(tǒng)中的信號(hào)模式匹配技 術(shù)(signal pattern matching)也屬于細(xì)粒度定位。粗粒度定位的原理是利用某種物理現(xiàn)象來(lái) 感應(yīng)是否有目標(biāo)接近一個(gè)已知的位置,如Active Badge、凸規(guī)劃、Xeror的ParcTAB系統(tǒng)、 佐治亞理工學(xué)院的Smart Floor、 DV-H0P算法、APIT算法等但現(xiàn)有的這些定位方法存在著很多局限性,包括設(shè)備成本過(guò)高(TD0A),不適合室內(nèi)環(huán)境 (GPS),前期訓(xùn)練過(guò)于復(fù)雜(RADAR ),精度不高(APIT)等等,無(wú)法適應(yīng)現(xiàn)實(shí)生活中室內(nèi) 定位的需要。發(fā)明內(nèi)容本發(fā)明的目的是設(shè)計(jì)出一種在無(wú)線傳感器網(wǎng)絡(luò)中基于無(wú)線信號(hào)強(qiáng)度的節(jié)點(diǎn)室內(nèi)定位法。 本發(fā)明要解決的技術(shù)問(wèn)題是現(xiàn)有定位方法存在諸如設(shè)備成本過(guò)高(TD0A),不適合室內(nèi)環(huán)境(GPS),前期訓(xùn)練過(guò)于復(fù)雜(RADAR ),精度不高(APIT)等等,無(wú)法適應(yīng)現(xiàn)實(shí)生活中室內(nèi)定位需要的。本發(fā)明針對(duì)上述需要解決的技術(shù)問(wèn)題,根據(jù)大規(guī)模無(wú)線傳感器網(wǎng)絡(luò)的特殊性、兼顧減少 節(jié)點(diǎn)位置計(jì)算過(guò)程中產(chǎn)生的網(wǎng)絡(luò)數(shù)據(jù)流量和數(shù)據(jù)計(jì)算量,提出的一種在大規(guī)模無(wú)線傳感器網(wǎng) 絡(luò)中基于無(wú)線信號(hào)強(qiáng)度的節(jié)點(diǎn)室內(nèi)定位方法,主要步驟為步驟l:通過(guò)實(shí)驗(yàn)訓(xùn)練,得出無(wú)線信號(hào)強(qiáng)度(RSS)與距離的關(guān)系曲線(簡(jiǎn)稱RSS曲線), 對(duì)每個(gè)錨點(diǎn)訓(xùn)練RSS曲線;步驟2:由訓(xùn)練RSS曲線計(jì)算錨點(diǎn)與目標(biāo)之間的距離,根據(jù)錨點(diǎn)個(gè)數(shù)動(dòng)態(tài)選擇定位算法求 出目標(biāo)節(jié)點(diǎn)的坐標(biāo);步驟3:利用物理坐標(biāo)(x,y),提供告警服務(wù);利用符號(hào)坐標(biāo),根據(jù)路由算法和地址鏈提 供導(dǎo)航服務(wù)。上述步驟1中通過(guò)實(shí)驗(yàn)訓(xùn)練信號(hào)強(qiáng)度與距離關(guān)系的過(guò)程如圖1,具體為1) SINK節(jié)點(diǎn)發(fā)送TRAIN消息給訓(xùn)練節(jié)點(diǎn),每個(gè)預(yù)置距離一次。2) 訓(xùn)練節(jié)點(diǎn)發(fā)送ASK消息給錨點(diǎn),要求錨點(diǎn)應(yīng)答;3) 錨點(diǎn)應(yīng)答ANS呢R消息,每個(gè)距離應(yīng)答50次;4) 訓(xùn)練節(jié)點(diǎn)記錄每個(gè)RSS采樣值,并計(jì)算均值;5) 訓(xùn)練節(jié)點(diǎn)發(fā)送STORE消息給錨點(diǎn),要求錨點(diǎn)將(距離、RSS)存儲(chǔ)于本地ROM中;6) 訓(xùn)練節(jié)點(diǎn)發(fā)送RESULT消息給SINK節(jié)點(diǎn),反饋距離、RSS數(shù)據(jù)對(duì)。 在本發(fā)明中對(duì)每個(gè)錨點(diǎn)進(jìn)行獨(dú)立訓(xùn)練,減少環(huán)境對(duì)距離計(jì)算的影響,同時(shí)避免類似RADAR方法中對(duì)目標(biāo)區(qū)域大量的訓(xùn)練,便于對(duì)大范圍布置節(jié)點(diǎn)。同時(shí)我們根據(jù)RSS曲線的特性,提 出有效無(wú)線信號(hào)強(qiáng)度(ERSS)的概念,可以將距離計(jì)算誤差控制在可接受的范圍內(nèi)。上述步驟2中測(cè)量距離和計(jì)算坐標(biāo)的過(guò)程如圖2,具體為1)目標(biāo)節(jié)點(diǎn)廣播WHERE消息(10次/秒);2) 附近的錨點(diǎn)接收到該消息,測(cè)量RSS值,計(jì)算平均值,根據(jù)本地RSS曲線將RSS均值 轉(zhuǎn)換為距離。并通過(guò)REPLY包,將目標(biāo)節(jié)點(diǎn)到該錨點(diǎn)的距離傳回目標(biāo)節(jié)點(diǎn)。3) 根據(jù)錨點(diǎn)個(gè)數(shù)動(dòng)態(tài)選擇定位算法(ERSS篩選+極大似然估計(jì)、三角定位、近似距離估 計(jì))求出目標(biāo)節(jié)點(diǎn)的坐標(biāo)。4) 目標(biāo)節(jié)點(diǎn)發(fā)送LocateMSG給SINK節(jié)點(diǎn),傳回自身坐標(biāo)。5) SINK節(jié)點(diǎn)將數(shù)據(jù)傳給中心服務(wù)器。上述步驟3中由中心服務(wù)器提供告警服務(wù)或者導(dǎo)航服務(wù)的過(guò)程,具體為1) 中心服務(wù)器記錄各個(gè)目標(biāo)節(jié)點(diǎn)坐標(biāo);2) 根據(jù)目標(biāo)節(jié)點(diǎn)申請(qǐng)業(yè)務(wù)類型,提供基于位置的服務(wù)i. 告警服務(wù)節(jié)點(diǎn)A (成人)與節(jié)點(diǎn)B (兒童)位置超過(guò)10米; ii. 導(dǎo)航服務(wù)目標(biāo)節(jié)點(diǎn)從錨點(diǎn)AOl (201展位)到錨點(diǎn)F02 (大廳)需要經(jīng)過(guò)哪些錨 點(diǎn)路徑。本發(fā)明的有益效果本發(fā)明方法基于無(wú)線信號(hào)強(qiáng)度曲線的特性,在大規(guī)模無(wú)線傳感器網(wǎng) 絡(luò)中,提出了一種節(jié)點(diǎn)自身位置確定的新方法,主要用于解決大規(guī)模無(wú)線傳感器網(wǎng)絡(luò)中節(jié)點(diǎn) 自身定位的問(wèn)題,通過(guò)這種方法,不需要給傳感器節(jié)點(diǎn)添加額外的硬件,并且可以減少傳感 器節(jié)點(diǎn)之間的通信消耗、降低計(jì)算量、提高傳感器節(jié)點(diǎn)的定位精度。下面我們給出具體的說(shuō) 明1. 本發(fā)明對(duì)每個(gè)錨點(diǎn)進(jìn)行獨(dú)立訓(xùn)練,獨(dú)立存儲(chǔ)RSS曲線,充分減少環(huán)境對(duì)距離計(jì)算的影 響,同時(shí)避免類似RADAR方法中對(duì)目標(biāo)區(qū)域大量的訓(xùn)練,便于對(duì)大范圍布置節(jié)點(diǎn)。2. 根據(jù)實(shí)驗(yàn)訓(xùn)練得出的信號(hào)強(qiáng)度與距離的關(guān)系曲線,本發(fā)明提出有效無(wú)線信號(hào)強(qiáng)度(ERSS)的概念,即在某個(gè)特定無(wú)線信號(hào)強(qiáng)度內(nèi)距離的測(cè)量值與真實(shí)值的誤差在可 接受的范圍內(nèi),進(jìn)一步提高定位的精度。3. 本發(fā)明根據(jù)錨點(diǎn)個(gè)數(shù)動(dòng)態(tài)決定位算法當(dāng)錨點(diǎn)個(gè)數(shù)大于3時(shí),通過(guò)ERSS篩選和極大 似然估計(jì)的方法,減小測(cè)距誤差對(duì)定位的影響;當(dāng)錨點(diǎn)個(gè)數(shù)僅為3個(gè)時(shí),通過(guò)三角 定位的方法計(jì)算目標(biāo)節(jié)點(diǎn)坐標(biāo);當(dāng)錨點(diǎn)個(gè)數(shù)小于3個(gè)時(shí),采用近似位置估計(jì)的方法,給出符號(hào)位置。這種動(dòng)態(tài)的算法決定,充分利用節(jié)點(diǎn)資源,并在有限的資源里提供 相對(duì)精確的坐標(biāo)。4. 在本發(fā)明中所有錨點(diǎn)提供物理坐標(biāo)和符號(hào)坐標(biāo),中心服務(wù)器根據(jù)目標(biāo)節(jié)點(diǎn)所注冊(cè)的業(yè) 務(wù)類型,提供告警服務(wù)、導(dǎo)航服務(wù)。
圖1為本發(fā)明給出的訓(xùn)練信號(hào)強(qiáng)度與距離關(guān)系的示意圖。圖2為本發(fā)明給出的測(cè)量目標(biāo)節(jié)點(diǎn)到錨點(diǎn)距離和計(jì)算坐標(biāo)的示意圖。圖3為本發(fā)明給出的經(jīng)典無(wú)線信號(hào)強(qiáng)度與距離關(guān)系模型圖。圖4為本發(fā)明給出的訓(xùn)練節(jié)點(diǎn)流程示意圖。圖5為本發(fā)明給出的錨點(diǎn)訓(xùn)練流程示意圖。圖6為本發(fā)明給出的實(shí)際實(shí)驗(yàn)訓(xùn)練的無(wú)線信號(hào)強(qiáng)度與距離關(guān)系曲線圖。 圖7為本發(fā)明給出的目標(biāo)節(jié)點(diǎn)定位流程示意圖。 圖8為本發(fā)明給出的錨點(diǎn)定位流程示意圖。
具體實(shí)施方式
下面結(jié)合附圖及實(shí)施例對(duì)本發(fā)明作進(jìn)一步的說(shuō)明。本發(fā)明的體系結(jié)構(gòu),在本發(fā)明的無(wú)線傳感器網(wǎng)絡(luò)中的節(jié)點(diǎn)主要有如下四類 標(biāo)準(zhǔn)位置節(jié)點(diǎn)(錨點(diǎn))這類節(jié)點(diǎn)通過(guò)GPS(全球定位系統(tǒng))定位或人工設(shè)置等手段已經(jīng)預(yù)先知道自己的精確位置,為無(wú)線傳感器網(wǎng)絡(luò)中其他需要定位的節(jié)點(diǎn)提供位置計(jì)算參考。這類節(jié)點(diǎn)必須事先散布在無(wú)線傳感器網(wǎng)絡(luò)中。未知位置節(jié)點(diǎn)(目標(biāo)節(jié)點(diǎn))不知道自己的位置,需要參考標(biāo)準(zhǔn)位置節(jié)點(diǎn)或者已知位置節(jié)點(diǎn)的位置信息。SINK節(jié)點(diǎn)通過(guò)無(wú)線傳感器網(wǎng)絡(luò)收集多個(gè)目標(biāo)節(jié)點(diǎn)的坐標(biāo)信息,并對(duì)目標(biāo)節(jié)點(diǎn)提供相應(yīng) 的基于位置的服務(wù)。訓(xùn)練節(jié)點(diǎn)在實(shí)驗(yàn)訓(xùn)練中,用于接收SINK節(jié)點(diǎn)命令,反饋測(cè)量數(shù)據(jù),并配合錨點(diǎn)學(xué)習(xí)信號(hào)強(qiáng)度與距離的關(guān)系曲線(RSS曲線)的傳感器節(jié)點(diǎn)。本發(fā)明的提出的一種在大規(guī)模無(wú)線傳感器網(wǎng)絡(luò)中基于無(wú)線信號(hào)強(qiáng)度的節(jié)點(diǎn)室內(nèi)定位方法具體步驟如下步驟l:通過(guò)實(shí)驗(yàn)訓(xùn)練,得出信號(hào)強(qiáng)度與距離的關(guān)系曲線。在步驟1中訓(xùn)練信號(hào)強(qiáng)度與距離的關(guān)系曲線是本發(fā)明的技術(shù)核心之一,因?yàn)闊o(wú)線信號(hào)在 室內(nèi)傳播時(shí)會(huì)發(fā)生反射、衍射、散射等現(xiàn)象,尤其是多徑效應(yīng),目標(biāo)節(jié)點(diǎn)在室內(nèi)移動(dòng),其接 收信號(hào)的強(qiáng)度將由各直射波和反射波疊加合成,這種合成及可能加強(qiáng)信號(hào)強(qiáng)度也可能衰弱信 號(hào)強(qiáng)度,導(dǎo)致RSS曲線在一個(gè)平均值之間上下波動(dòng)。如圖2,在經(jīng)典的無(wú)線信號(hào)強(qiáng)度模型中信號(hào)衰落主要由大尺度衰落和小尺度衰落組成。大尺度衰落包括由于信號(hào)傳輸?shù)穆窂綋p耗 (path loss)和由于被墻、地板等物體吸收的而產(chǎn)生的遮蔽(shadowing)。這部分衰落使 RSS曲線呈指數(shù)衰減,是可以預(yù)測(cè)的;然而小尺度衰落主要是多徑效應(yīng),導(dǎo)致RSS曲線無(wú)規(guī) 律的波動(dòng),難以預(yù)測(cè)。在理想情況下信號(hào)強(qiáng)度和距離的關(guān)系可有以下公式表示/ d 、Pr.祖(d)代表接收信號(hào)強(qiáng)度,Pt.dB代表發(fā)送信號(hào)強(qiáng)度,PU(d)代表傳輸d距離的路徑損耗,d。代 表參考距離,q代表路徑損耗指數(shù),X。.dB代表一個(gè)平均值為O標(biāo)準(zhǔn)偏差為o的高斯分布隨機(jī) 變量。1. 本發(fā)明的采用實(shí)驗(yàn)訓(xùn)練的方法,學(xué)習(xí)信號(hào)強(qiáng)度與距離的關(guān)系曲線,每個(gè)錨點(diǎn)位置訓(xùn)練一 次,并記錄在當(dāng)前錨點(diǎn)的ROM中。具體過(guò)程如下將訓(xùn)練節(jié)點(diǎn)與錨點(diǎn)相隔特定距離,從 0-300cm,每隔20cm向PC端發(fā)送一次TRAIN消息。2. 當(dāng)訓(xùn)練節(jié)點(diǎn)收到TRAIN消息后開始工作,具體流程如圖4所示,訓(xùn)練節(jié)點(diǎn)首先加電,自動(dòng) 初始化微控制器和接受器部分,然后等待消息,當(dāng)接收到消息后首先判斷消息類型,如 果為TRAIN消息,啟動(dòng)訓(xùn)練過(guò)程,即發(fā)送ASK消息給錨點(diǎn),然后等待錨點(diǎn)的應(yīng)答,當(dāng)接收 到錨點(diǎn)的ANSWER消息后,提取相應(yīng)的RSS采樣,累加RSS和計(jì)數(shù)器,當(dāng)累計(jì)收到ANSWER消 息50次后,計(jì)算RSS采樣平均值,并向錨點(diǎn)發(fā)送包含(距離,RSS)的STORE消息,向PC端 發(fā)送RESULT命令,反饋所有RSS采樣值。之后清空計(jì)數(shù)器和均值,返回等待消息狀態(tài)。手 動(dòng)增加訓(xùn)練節(jié)點(diǎn)和錨點(diǎn)間距離20cm,之后重新發(fā)送TRAIN命令,重復(fù)上述過(guò)程。3. 錨點(diǎn)訓(xùn)練流程如圖5所示,,通訓(xùn)練節(jié)點(diǎn)一樣,首先完成加點(diǎn)、初始化,進(jìn)入等待消息狀 態(tài),當(dāng)錨點(diǎn)收到訓(xùn)練節(jié)點(diǎn)發(fā)來(lái)的ASK消息后,啟動(dòng)訓(xùn)練過(guò)程,向訓(xùn)練節(jié)點(diǎn)發(fā)送ANSWER消息 50次,之后進(jìn)入等待狀態(tài);當(dāng)錨點(diǎn)收到STORE消息時(shí),提取其中的(距離,RSS)數(shù)據(jù)對(duì), 寫入ROM中;對(duì)于受到WHERE將在定位流程中描述。在訓(xùn)練實(shí)驗(yàn)中,對(duì)每個(gè)錨點(diǎn)訓(xùn)練16次,之后繪出無(wú)線信號(hào)強(qiáng)度和距離的關(guān)系曲線,如圖 6所示,從多次重復(fù)試驗(yàn)中我們發(fā)現(xiàn)無(wú)線信號(hào)強(qiáng)度的衰落整體上符合大尺度衰落的指數(shù)變化 規(guī)律,同時(shí)隨著距離的增大,距離的測(cè)量值與真實(shí)值之間的誤差越來(lái)越大。例如在50cm和 200cra處比較距離誤差,同樣的RSS誤差導(dǎo)致不同的距離誤差。由于在對(duì)RSS的測(cè)量上存在 系統(tǒng)誤差6dBra,不可消除,為了使距離的測(cè)量值與真實(shí)值的誤差在可接受的范圍內(nèi),我們提出有效無(wú)線信號(hào)強(qiáng)度的概念(Effective RSS , ERSS),即假設(shè)RSS-f(d) l/dn (0《d《d丄 距離誤差范圍±d y ,RSS測(cè)量誤差范圍±RSSn。ise,最大測(cè)量距離d皿。當(dāng)RSS》某一 RSS時(shí),f (RSSn。iJ《cL。u,成立。那么這一特定RSS稱為有效無(wú)線信號(hào)強(qiáng)度。步驟2:由訓(xùn)練RSS曲線計(jì)算錨點(diǎn)與目標(biāo)之間的距離,根據(jù)錨點(diǎn)個(gè)數(shù)動(dòng)態(tài)選擇定位算法 (ERSS篩選+極大似然估計(jì)、三角定位、近似位置估計(jì))求出目標(biāo)節(jié)點(diǎn)的坐標(biāo)。在步驟2中消除距離測(cè)量帶來(lái)的定位誤差是本發(fā)明的另一個(gè)核心,基本原理為三角定位 算法,當(dāng)參考錨點(diǎn)個(gè)數(shù)為3個(gè)時(shí),目標(biāo)節(jié)點(diǎn)提取三個(gè)錨點(diǎn)的坐標(biāo)(Ol(xl,yl), 02(x2,y2), 03(x3,y3))和測(cè)量距離(d" d2, d3),根據(jù)兩點(diǎn)間距離公式可得方程組<formula>formula see original document page 9</formula>有上述方程組(1),目標(biāo)節(jié)點(diǎn)坐標(biāo)(x, y)為<formula>formula see original document page 9</formula>(2)然而當(dāng)參考錨點(diǎn)個(gè)數(shù)大于3個(gè)時(shí),根據(jù)上述每三個(gè)錨點(diǎn)可以計(jì)算出一個(gè)目標(biāo)節(jié)點(diǎn)坐標(biāo),實(shí)驗(yàn) 發(fā)現(xiàn)這些坐標(biāo)分布在一個(gè)范圍之內(nèi),為了充分利用節(jié)點(diǎn)資源,且修正定位誤差,我們首先利 用ERSS,將測(cè)量距離誤差大的錨點(diǎn)排除在外,對(duì)剩下的節(jié)點(diǎn)釆用極大似然估計(jì)的方法,具體 如下設(shè)目標(biāo)節(jié)點(diǎn)坐標(biāo)為(x。, y。),參考錨點(diǎn)坐標(biāo)為Kxb y丄, (Xi, yj, , (x , y )}, ch 表示(xo, y。)與(Xi, yi)之間的真實(shí)距離,艮卩測(cè)量距離A和真實(shí)距離《之間的誤差表示為P,二",一《(4),那么求(x。, y。)得問(wèn)題變成求minimizes的問(wèn)題。整理(4)式和(5)式,得 備。-J+U+A (6)。展開(3)式,變化得<formula>formula see original document page 9</formula> (7),將第N個(gè)等式減去前面N-1個(gè)等式,得^ + X2 - ^ 一 乂 - "f +《2 = 20,. - X")X。 + 2(X - y》。(8) 即可以化為矩陣^ = 5 (9)其中A為(n-1) X2的矩陣,A的第i行尾[2(x,-" 2(乂-少 )], 3f為代表目標(biāo)節(jié)點(diǎn)坐標(biāo)的 向量[jc。 y。:T , B為(n-l)向量,B的第i項(xiàng)為x,2 +乂2 -x 2 -乂 -《+《。實(shí)際的問(wèn)題是我們 不確定向量B,能夠得到了只有測(cè)量值向量6 (類似B中J,代替di),對(duì)(9)應(yīng)用最小二 乘法可得到估計(jì)值f為minimizes ^f-》,即f = (JTJ)—1 JT》(10).2當(dāng)參考錨點(diǎn)小于3個(gè)時(shí),無(wú)法得到物理坐標(biāo),利用位置估計(jì)方法,給出目標(biāo)節(jié)點(diǎn)的符號(hào) 坐標(biāo),例如在錨點(diǎn)A和錨點(diǎn)C之間等。在定位過(guò)程中目標(biāo)節(jié)點(diǎn)的具體流程如圖7:加電,初始化,每秒10次廣播WHERE消息, 等待錨點(diǎn)應(yīng)答,當(dāng)收到錨點(diǎn)應(yīng)答消息后,判斷參考錨點(diǎn)個(gè)數(shù),并根據(jù)錨點(diǎn)個(gè)數(shù)動(dòng)態(tài)決定位算 法當(dāng)錨點(diǎn)個(gè)數(shù)大于3時(shí),通過(guò)ERSS篩選和極大似然估計(jì)的方法,減小測(cè)距誤差對(duì)定位的影 響;當(dāng)錨點(diǎn)個(gè)數(shù)僅為3個(gè)時(shí),通過(guò)三角定位的方法計(jì)算目標(biāo)節(jié)點(diǎn)坐標(biāo);當(dāng)錨點(diǎn)個(gè)數(shù)小于3個(gè) 時(shí),釆用近似位置估計(jì)的方法,得出目標(biāo)節(jié)點(diǎn)的符號(hào)位置。最后通過(guò)LocateMSG消息發(fā)送給 SINK節(jié)點(diǎn)。錨點(diǎn)的定位流程如圖8:錨點(diǎn)起初為等待消息狀態(tài),當(dāng)接受WHERE消息,采樣RSS,累計(jì) 10次,計(jì)算平均值,然后根據(jù)RSS曲線轉(zhuǎn)換為從目標(biāo)節(jié)點(diǎn)到錨點(diǎn)的距離,最發(fā)送REPLY消息 給目標(biāo)節(jié)點(diǎn),并清除計(jì)數(shù)器和均值,返回等待消息狀態(tài)。步驟3:利用物理坐標(biāo)(x,y),提供告警服務(wù)。利用符號(hào)坐標(biāo)(例如在大廳),根據(jù)路由算 法和地址鏈提供導(dǎo)航服務(wù)。在步驟3中,告警服務(wù)即根據(jù)兩點(diǎn)目標(biāo)坐標(biāo)(主節(jié)點(diǎn)、副節(jié)點(diǎn)),計(jì)算兩節(jié)點(diǎn)間距離,當(dāng) 距離大于特定值時(shí),中心服務(wù)器通過(guò)無(wú)線傳感器通知主節(jié)點(diǎn)這個(gè)警告消息。導(dǎo)航服務(wù)即根據(jù) 及目標(biāo)節(jié)點(diǎn)坐標(biāo)和目的地,通過(guò)路由協(xié)議返回從目標(biāo)節(jié)點(diǎn)到目的地的地址連。以上所述的具體實(shí)施例,對(duì)本發(fā)明的目的、技術(shù)方案和有益效果進(jìn)行了進(jìn)一步詳細(xì)說(shuō)明, 所應(yīng)理解的是,以上所述僅為本發(fā)明的具體實(shí)施例而已,并不用于限制本發(fā)明,凡在本發(fā)明 的精神和原則之內(nèi),所做的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之 內(nèi)。
權(quán)利要求
1、一種在無(wú)線傳感器網(wǎng)絡(luò)中基于無(wú)線信號(hào)強(qiáng)度的節(jié)點(diǎn)室內(nèi)定位方法,其特征在于通過(guò)實(shí)驗(yàn)訓(xùn)練得出信號(hào)強(qiáng)度與距離的關(guān)系曲線,并根據(jù)參考錨點(diǎn)的個(gè)數(shù)動(dòng)態(tài)決定定位算法,最終完成無(wú)線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)的自身定位,具體步驟為步驟1)通過(guò)實(shí)驗(yàn)訓(xùn)練,得出無(wú)線信號(hào)強(qiáng)度(RSS)與距離的關(guān)系曲線,簡(jiǎn)稱RSS曲線;步驟2)由訓(xùn)練RSS曲線計(jì)算錨點(diǎn)與目標(biāo)之間的距離;根據(jù)錨點(diǎn)個(gè)數(shù)動(dòng)態(tài)選擇定位算法求出目標(biāo)節(jié)點(diǎn)的坐標(biāo);步驟3)利用物理坐標(biāo)(x,y),提供告警服務(wù);利用符號(hào)坐標(biāo),根據(jù)路由算法和地址鏈提供導(dǎo)航服務(wù)。
2. 根據(jù)權(quán)利要求1所述的在無(wú)線傳感器網(wǎng)絡(luò)中基于無(wú)線信號(hào)強(qiáng)度的節(jié)點(diǎn)室內(nèi)定位方法, 其特征在于在步驟l)中,實(shí)驗(yàn)訓(xùn)練信號(hào)強(qiáng)度與距離的關(guān)系曲線過(guò)程的具體步驟如下11) SINK節(jié)點(diǎn)發(fā)送TRAIN消息給訓(xùn)練節(jié)點(diǎn),每個(gè)預(yù)置距離一次。12) 訓(xùn)練節(jié)點(diǎn)發(fā)送ASK消息給錨點(diǎn),要求錨點(diǎn)應(yīng)答;13) 錨點(diǎn)應(yīng)答ANSWER消息,每個(gè)距離應(yīng)答50次;14) 訓(xùn)練節(jié)點(diǎn)記錄每個(gè)RSS采樣值,并計(jì)算均值;15) 訓(xùn)練節(jié)點(diǎn)發(fā)送STORE消息給錨點(diǎn),要求錨點(diǎn)將距離、RSS存儲(chǔ)于本地ROM中;16) 訓(xùn)練節(jié)點(diǎn)發(fā)送RESULT消息給SINK節(jié)點(diǎn),反饋距離、RSS數(shù)據(jù)對(duì)。
3. 根據(jù)權(quán)利要求1所述的在無(wú)線傳感器網(wǎng)絡(luò)中基于無(wú)線信號(hào)強(qiáng)度的節(jié)點(diǎn)室內(nèi)定位方法, 其特征在于在步驟2)中具體的過(guò)程為1) 目標(biāo)節(jié)點(diǎn)廣播冊(cè)ERE消息(10次/秒);2) 附近的錨點(diǎn)接收到該消息,測(cè)量RSS值,計(jì)算平均值,根據(jù)本地RSS曲線將RSS均值 轉(zhuǎn)換為距離,并通過(guò)REPLY包,將目標(biāo)節(jié)點(diǎn)到該錨點(diǎn)的距離傳回目標(biāo)節(jié)點(diǎn);3) 根據(jù)錨點(diǎn)個(gè)數(shù)動(dòng)態(tài)選擇定位算法求出目標(biāo)節(jié)點(diǎn)的坐標(biāo);4) 目標(biāo)節(jié)點(diǎn)發(fā)送LocateMSG給SIM節(jié)點(diǎn),傳回自身坐標(biāo);5) SINK節(jié)點(diǎn)將數(shù)據(jù)傳給中心服務(wù)器。
4. 根據(jù)權(quán)利要求1所述的在無(wú)線傳感器網(wǎng)絡(luò)中基于無(wú)線信號(hào)強(qiáng)度的節(jié)點(diǎn)室內(nèi)定位方法, 其特征在于在步驟2)根據(jù)錨點(diǎn)個(gè)數(shù)動(dòng)態(tài)選擇定位算法,具體為1)當(dāng)參考錨點(diǎn)個(gè)數(shù)為3個(gè)時(shí),目標(biāo)節(jié)點(diǎn)提取三個(gè)錨點(diǎn)的坐標(biāo)(Ol(xl,yl), 02(x2,y2), 03(x3,y3))和測(cè)量距離(dl, d2, d3),根據(jù)兩點(diǎn)間距離公式可得方程組A :備。-A)2+(^。-yi)2<formula>formula see original document page 3</formula>(1)有上述方程組(1),目標(biāo)節(jié)點(diǎn)坐標(biāo)(x, y)為<formula>formula see original document page 3</formula>2) 當(dāng)參考錨點(diǎn)個(gè)數(shù)大于3個(gè)時(shí),我們首先利用有效無(wú)線信號(hào)強(qiáng)度(ERSS),將測(cè)量距離 誤差大的錨點(diǎn)排除在外,對(duì)剩下的節(jié)點(diǎn)采用極大似然估計(jì)的方法,目標(biāo)節(jié)點(diǎn)坐標(biāo)估計(jì)為:f =(力)-1 W3) 當(dāng)參考錨點(diǎn)小于3個(gè)時(shí),無(wú)法得到物理坐標(biāo),利用位置估計(jì)方法,給出目標(biāo)節(jié)點(diǎn)的符 號(hào)坐標(biāo)。
5. 根據(jù)權(quán)利要求3所述的在無(wú)線傳感器網(wǎng)絡(luò)中基于無(wú)線信號(hào)強(qiáng)度的節(jié)點(diǎn)室內(nèi)定位方法, 其特征在于在2)中的有效無(wú)線信號(hào)強(qiáng)度具體為假設(shè)RSS:f(d) 1/dn (0《d《d陽(yáng)),距離誤差范圍士daccuracy , RSS測(cè)量誤差范圍: 土RSSnoise,最大測(cè)量距離dmax;當(dāng)RSS》某一RSS時(shí),f (RSSnoise)《daccuracy成立, 那么這一特定RSS稱為有效無(wú)線信號(hào)強(qiáng)度。
6. 根據(jù)權(quán)利要求1所述的在無(wú)線傳感器網(wǎng)絡(luò)中基于無(wú)線信號(hào)強(qiáng)度的節(jié)點(diǎn)室內(nèi)定位方法, 其特征在于在步驟3)中由中心服務(wù)器提供告警服務(wù)或者導(dǎo)航服務(wù)的過(guò)程,具體為1) 中心服務(wù)器記錄各個(gè)目標(biāo)節(jié)點(diǎn)坐標(biāo);2) 根據(jù)目標(biāo)節(jié)點(diǎn)申請(qǐng)業(yè)務(wù)類型,提供基于位置的服務(wù)i. 告警服務(wù)節(jié)點(diǎn)A (成人)與節(jié)點(diǎn)B (兒童)位置超過(guò)10米;ii. 導(dǎo)航服務(wù)目標(biāo)節(jié)點(diǎn)從錨點(diǎn)A01到錨點(diǎn)F02需要經(jīng)過(guò)哪些錨點(diǎn)路徑。%-萄
全文摘要
本發(fā)明屬于大規(guī)模無(wú)線傳感器網(wǎng)絡(luò)中節(jié)點(diǎn)自身定位的領(lǐng)域,公開了一種基于無(wú)線信號(hào)強(qiáng)度的節(jié)點(diǎn)室內(nèi)定位方法。主要包括通過(guò)實(shí)驗(yàn)訓(xùn)練,得出信號(hào)強(qiáng)度與距離的關(guān)系曲線,并且提出了有效無(wú)線信號(hào)強(qiáng)度(Effective RSS,ERSS)的概念;由訓(xùn)練RSS曲線計(jì)算錨點(diǎn)與目標(biāo)之間的距離,根據(jù)錨點(diǎn)個(gè)數(shù)動(dòng)態(tài)選擇定位算法(ERSS篩選+極大似然估計(jì)、三角定位、近似位置估計(jì))求出目標(biāo)節(jié)點(diǎn)的坐標(biāo);利用物理坐標(biāo)(x,y),提供告警服務(wù),利用符號(hào)坐標(biāo)(例如在大廳),根據(jù)路由算法和地址鏈提供導(dǎo)航服務(wù)。利用本發(fā)明可以在較低成本、簡(jiǎn)單初始配置的情況下實(shí)現(xiàn)對(duì)室內(nèi)目標(biāo)的精確定位,并可以提供多種基于位置的服務(wù)。
文檔編號(hào)G01S5/02GK101247650SQ200810061190
公開日2008年8月20日 申請(qǐng)日期2008年3月20日 優(yōu)先權(quán)日2008年3月20日
發(fā)明者劉海濤, 鄭 姚, 鋒 張, 張寶賢, 冬 李, 壯 趙, 雪 高 申請(qǐng)人:中科院嘉興中心微系統(tǒng)所分中心