本發(fā)明涉及無線定位領(lǐng)域,特別是一種基于分布式選舉的移動錨點定位方法。
背景技術(shù):
由于障礙物遮擋等原因,全球定位系統(tǒng)GPS表現(xiàn)出了很大缺陷,特別是在室內(nèi)環(huán)境中,其對移動用戶的定位率和定位精度已經(jīng)遠遠不能滿足人們的需求。近年來,無線定位技術(shù)在諸如移動電子商務(wù)、緊急救援、工業(yè)、軍事、無線傳感器等領(lǐng)域的應(yīng)用越來越廣泛。在這些領(lǐng)域中,對移動中的用戶進行定位是一個重要的應(yīng)用。例如,在自然災(zāi)害發(fā)生時,受災(zāi)人員位置信息的不確定性給救援工作帶來了很大的不便。因此若能通過一定的定位技術(shù)快速地確定受災(zāi)人員的位置信息能在最大限度上保障人民的生命財產(chǎn)安全。這對傳統(tǒng)的定位技術(shù)提出了更高的要求,一方面對于移動中的用戶只能通過無線定位的方式,然而無線定位的信號不穩(wěn)定、易受環(huán)境干擾等性質(zhì)導(dǎo)致傳統(tǒng)定位方法定位效果較差。另一方面,在室內(nèi)等環(huán)境中,傳統(tǒng)GPS信號不可到達,固定錨點的信號也易受障礙物遮擋,導(dǎo)致傳統(tǒng)定位方法定位率大大降低。
無線定位主要分為基于測距和非基于測距兩種方法。由于非基于測距方法的定位精度較低,不能滿足需要,因此基于測距的定位方法成為人們研究的重點。傳統(tǒng)的基于測距的定位方法的主要過程是通過測量信號從移動用戶到位置已知的固定錨點的信號到達時間(TOA)、信號到達時間差(TDOA)、信號到達角度(AOA)以及信號強度指示(RSSI)等信息得到移動用戶和錨點之間的距離或角度信息,再通過三邊定位法、最小二乘法等定位算法得到移動用戶的位置信息。但是這種方法存在一些問題,一是當環(huán)境中錨節(jié)點較少時很難實現(xiàn)對用戶的定位,例如障礙物遮擋了錨點的信號,移動用戶無法同時獲取3個以上錨點的信號則無法用傳統(tǒng)定位方法定位;二是在室內(nèi)環(huán)境中存在諸如多徑效應(yīng),無線信號干擾等的影響使得定位精度較低。針對傳統(tǒng)對移動用戶進行定位的方法存在的種種弊端,一些研究提出了協(xié)作式定位方案,利用已經(jīng)定位的移動用戶的位置信息來對其它移動用戶進行定位,即將一定出的移動用戶作為“移動錨點”來定位其它移動用戶。這種方法在移動程度上提高了用戶的定位率,但是用戶之間的大量通信造成大量無線信號之間的相互干擾,帶來較大的通信代價。
技術(shù)實現(xiàn)要素:
本發(fā)明的主要目的在于克服現(xiàn)有技術(shù)中的上述缺陷,提出一種低成本、高定位率的基于分布式選舉的移動錨點定位方法。
本發(fā)明采用如下技術(shù)方案:
一種基于分布式選舉的移動錨點定位方法,其特征在于,包括如下步驟:
1)移動用戶判斷其能接收到的固定錨點的錨點信息數(shù)量,若大于三個,則根據(jù)其到固定錨點的距離進行定位并成為候選錨點,若否,則進入步驟2);
2)移動用戶通過分布式選舉選出的周圍的候選錨點作為移動錨點,獲取至少三個錨點信息,計算其到移動錨點和/或固定錨點的距離進行定位。
優(yōu)選的,所述的分布式選舉具體如下
2.1)將時間槽T平均劃分成q個小時間槽,采用哈希函數(shù)為周圍的每個候選錨點劃分一個小時間槽以發(fā)送錨點信號;
2.2)在時間槽T中的候選錨點依次發(fā)送信號,后續(xù)的候選錨點依次判斷其到當前發(fā)送信號的候選錨點距離,若小于預(yù)設(shè)的閾值,則該后續(xù)的候選錨點和對應(yīng)的小時間槽從時間槽T中刪除;
2.3)時間槽T內(nèi)剩下的候選錨點即為被選舉出來的移動錨點,該移動錨點在自己的小時間槽內(nèi)廣播錨點信號。
優(yōu)選的,所述錨點信號包括自身位置信息和時間戳信息。
所述移動用戶到固定錨點或移動錨點的距離,通過下式得到
dij=10(rssi-A)/(10*γ),
其中:dij為移動用戶i和固定錨點或移動錨點j之間的距離,rssi為移動用戶接收到的錨點信號強度,A為距離固定錨點或移動錨點1米處的信號強度,γ為路徑損耗指數(shù)。
由上述對本發(fā)明的描述可知,與現(xiàn)有技術(shù)相比,本發(fā)明具有如下有益效果:
1.定位概率高:本發(fā)明利用選舉出來的已定位用戶作為移動錨點,增加其它移動用戶的定位參考信息,大大提高其定位率。
2.通信量少:本申請將選舉出的已定位用戶作為移動錨點,避免了使用所有已定位用戶作為移動錨點而引起的網(wǎng)絡(luò)通信量較大的問題。
附圖說明
圖1為移動無線定位示意圖;
圖2為通過哈希函數(shù)為已定位用戶分配時間槽示意圖;
圖3選舉移動錨點示意圖;
圖4為定位率示意圖;
圖5為網(wǎng)絡(luò)通信量對比圖。
具體實施方式
以下通過具體實施方式對本發(fā)明作進一步的描述。
一種基于分布式選舉的移動錨點定位方法,假設(shè)環(huán)境區(qū)域內(nèi)有少量位置已知的固定錨節(jié)點、位置未知的移動用戶、候選錨點,該后續(xù)錨點為已知未知的移動用戶。該位置未知的移動用戶可采用如下方法實現(xiàn)定位:
1)移動用戶判斷其能接收到的固定錨點的錨點信息數(shù)量,若大于三個,則通過接收到的錨點的信號強度(RSSI),結(jié)合公式1:dij=10(rssi-A)/(10*γ),dij為移動用戶i和固定錨點或移動錨點j之間的距離,rssi為移動用戶接收到的錨點信號強度,A為距離固定錨點或移動錨點1米處的信號強度,γ為路徑損耗指數(shù),計算其到固定錨點的距離進行定位,并成為候選錨點,若否,則進入步驟2);
2)移動用戶通過分布式選舉選出的周圍的候選錨點作為移動錨點,獲取至少三個錨點信息(包括來自固定錨點和移動錨點的錨點信息,或全部來自于移動錨點的錨點信息),根據(jù)公式1:dij=10(rssi-A)/(10*γ),計算其到移動錨點和固定錨點的距離進行定位。該分布式選舉具體操作如下:
2.1)將時間槽T平均劃分成q個小時間槽,采用哈希函數(shù)為周圍的每個候選錨點劃分一個小時間槽以發(fā)送錨點信號,即先對已定位的移動用戶進行標號,然后通過一個哈希函數(shù)將這些標號對應(yīng)的移動用戶隨機映射到各個小時間槽中。該錨點信號包括自身位置信息和時間戳信息。
2.2)在時間槽T中的候選錨點依次發(fā)送信號,后續(xù)的候選錨點依次判斷其到當前發(fā)送信號的候選錨點距離,若小于預(yù)設(shè)的閾值,則該后續(xù)的候選錨點對應(yīng)的小時間槽從時間槽T中刪除。
2.3)時間槽T內(nèi)剩下的候選錨點即為被選舉出來的移動錨點,該移動錨點在自己的小時間槽內(nèi)廣播錨點信號。
如圖1所示,U1到U3為移動用戶,A1,A2,A3和A4為固定錨點。且對于U2,其可以與錨點A1,A2,A3和A4通信,進而根據(jù)公式1求得其與這些錨點之間的距離,進一步求得U2的位置。而對于U1和U3,其分別只能與錨點A1,A2和A3,A4直接通信。采用本發(fā)明的方法,通過利用已經(jīng)定位出的U2充當U1和U3的移動錨點,這樣就能大大增加它們的可參考錨點數(shù)量,提高其定位率。圖2是為每個已定位的移動用戶通過哈希函數(shù)分配一個小時間槽的示意圖?,F(xiàn)有的移動用戶的微處理器的信號處理速度大約為10MHZ以上,即每秒鐘能進行107次運算。無線收發(fā)芯片的工作頻率保持在1GHZ以上,信號傳播速度為3*108m/s,則信號傳播100m的時間為0.3*10-6s。選取0.1s作為時間槽T,移動用戶的移動速度選取1.5m/s,則其在這段時間內(nèi)移動的距離為0.15m,其在誤差的允許范圍之內(nèi)。移動用戶在每一個小時間槽內(nèi)要完成發(fā)射信號,信號傳播,其它用戶接收信號和進行判斷處理四個操作,假設(shè)每個過程要進行10000次運算,一個用戶所需要的小時間槽的時間小于:104*10-9(發(fā)射信號時間)+0.3*10-6(信號傳播時間)+104*10-9(接收信號時間)+104*10-7(判斷處理時間)≈10-3s,則一共可以劃分100個時間槽。
圖3是選舉移動錨點的示意圖,假設(shè)已定位的移動用戶在T中的順序為:U2,U4,U5,U9,U1,U6,U3,U7,和U8。首先U2先廣播一個信號,在T中的后續(xù)用戶根據(jù)接收信號強度判斷他們之間的距離,且和U2的距離小于閾值d的用戶U5,U1和U3所對應(yīng)的小時間槽從T中移除,同時U5,U1和U3不再是候選錨點。然后,U4廣播信號,U7對應(yīng)的小時間槽從T中移除且U7不再是候選錨點。U9廣播信號,移除U8對應(yīng)的小時間槽。則最終被選為移動錨點的已定位用戶有:U2,U4,U9和U6。通過這個過程我們可以看出被選舉為移動錨點的已定位用戶減少,其在一定程度上能夠降低用戶之間的通信量,減少無線信號之間的干擾。
本發(fā)明利用選舉出來的已定位用戶作為移動錨點,增加其它用戶的定位參考信息,大大提高其定位率。通過對其進行仿真得出的定位率結(jié)果如圖4所示,其中LEMA(Localization based on Elected Mobile Anchors)為本發(fā)明提出的方法,LFA(Localization based on Fixed Anchors)為傳統(tǒng)的基于固定錨點的方法,R為通信半徑。通過結(jié)果可以看出,本發(fā)明方法定位率提高了30%~50%。避免了使用所有已定位用戶作為移動錨點而引起的網(wǎng)絡(luò)通信量較大的問題。如圖5所示是網(wǎng)絡(luò)通信量結(jié)果圖,其中LLMA(Localization based on Localized Mobile Anchors)是將所有已定位用戶作為移動錨點的方法。通過結(jié)果可以看出本發(fā)明方法的通信量相對于傳統(tǒng)基于固定錨點的方法只有少量的增加,而相對于LLMA通信量減少了40%~65%。
上述僅為本發(fā)明的具體實施方式,但本發(fā)明的設(shè)計構(gòu)思并不局限于此,凡利用此構(gòu)思對本發(fā)明進行非實質(zhì)性的改動,均應(yīng)屬于侵犯本發(fā)明保護范圍的行為。