劉 奔, 馬昌忠, 金俊超, 靳賽州, 李喜喜
(1.中國(guó)礦業(yè)大學(xué) 自然資源部國(guó)土環(huán)境與災(zāi)害監(jiān)測(cè)重點(diǎn)實(shí)驗(yàn)室,江蘇 徐州 221116; 2.中國(guó)礦業(yè)大學(xué) 環(huán)境與測(cè)繪學(xué)院,江蘇 徐州 221116; 3.廣州南方測(cè)繪科技股份有限公司西安分公司,陜西 西安 710054)
近年來(lái),全球?qū)Ш较到y(tǒng)技術(shù)已基本能夠滿足人們?cè)谑彝猸h(huán)境下的位置服務(wù)需求。然而,由于信號(hào)遮擋、建筑物內(nèi)部結(jié)構(gòu)復(fù)雜等原因,室內(nèi)條件下定位仍存在很大限制。無(wú)線傳感器網(wǎng)絡(luò)(wireless sensor network,WSN)技術(shù)的快速發(fā)展,為室內(nèi)定位研究提供了新的方向。根據(jù)定位原理的不同,可將WSN定位技術(shù)分為測(cè)距[1]和非測(cè)距[2]2類。常用的非測(cè)距方法為指紋法,分為離線建庫(kù)和在線定位2部分;指紋定位在離線建庫(kù)階段需大量的時(shí)間、經(jīng)濟(jì)成本,且需定期維護(hù)更新。然而,測(cè)距定位基站部署方便,易于搭建定位系統(tǒng),可有效避免上述問(wèn)題。測(cè)距定位主要包括到達(dá)時(shí)間(time of arrival,TOA)算法、到達(dá)角度(angle of arrival,AOA)算法、到達(dá)時(shí)間差(time difference of arrival,TDOA)算法及基于接收信號(hào)強(qiáng)度指示(received signal strength indication,RSSI)的算法等[3-4]。與其他算法相比,RSSI定位算法成本低,易于實(shí)現(xiàn),已成為研究的熱點(diǎn)。
傳統(tǒng)RSSI測(cè)距定位方法,如三點(diǎn)定位[5]、最小二乘定位[6]等,計(jì)算過(guò)程比較復(fù)雜,且定位精度不穩(wěn)定,依賴于信號(hào)傳輸模型建立的準(zhǔn)確性。針對(duì)室內(nèi)環(huán)境的時(shí)變性且定位節(jié)點(diǎn)對(duì)環(huán)境的敏感度不相同的問(wèn)題,文獻(xiàn)[7]提出利用反向傳播(back propagation,BP)神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)對(duì)環(huán)境因子和參考信號(hào)強(qiáng)度的動(dòng)態(tài)加權(quán)計(jì)算,提高了模型參數(shù)的可靠性,并在此基礎(chǔ)上提出了六點(diǎn)質(zhì)心定位算法;文獻(xiàn)[8]通過(guò)3個(gè)錨節(jié)點(diǎn)間的相互通信,計(jì)算同時(shí)刻的信號(hào)衰減因子用于定位,避免信號(hào)傳輸模型對(duì)定位精度的影響,且衰減因子現(xiàn)求現(xiàn)用,能有效減小環(huán)境變化對(duì)定位的影響;文獻(xiàn)[9]在常用的Shadowing傳播模型的基礎(chǔ)上加入了距離相關(guān)損耗附加因子,在走廊環(huán)境下的實(shí)驗(yàn)結(jié)果表明優(yōu)化后的模型更適合室內(nèi)測(cè)距。此外,還有研究者將概率的思想融于測(cè)距定位,用以提高定位精度。文獻(xiàn)[10-11]在三點(diǎn)定位的基礎(chǔ)上將三角形重合區(qū)域進(jìn)行柵格化處理,根據(jù)參考點(diǎn)的信號(hào)強(qiáng)度計(jì)算各柵格點(diǎn)的定位概率,此方法的定位精度受柵格劃分的細(xì)粒度影響,且位于分布區(qū)域邊緣的定位點(diǎn)定位誤差相對(duì)較大;文獻(xiàn)[12]提出事先對(duì)定位區(qū)域進(jìn)行劃分,通過(guò)貝葉斯理論估計(jì)對(duì)接收信號(hào)強(qiáng)度進(jìn)行計(jì)算,判定待定點(diǎn)所屬區(qū)域,再經(jīng)過(guò)RSSI的信號(hào)距離加權(quán)進(jìn)行多點(diǎn)質(zhì)心定位;文獻(xiàn)[13]將三點(diǎn)定位與貝葉斯估計(jì)、最大似然估計(jì)相結(jié)合,首先利用三點(diǎn)定位算法估計(jì)出未知點(diǎn)的初始位置并建立二維模型作為先驗(yàn)概率,然后使用貝葉斯估計(jì)和最大似然估計(jì)算法對(duì)初始位置進(jìn)行優(yōu)化;文獻(xiàn)[14]提出通過(guò)信號(hào)傳輸模型轉(zhuǎn)換的估計(jì)距離建立概率密度函數(shù),將多個(gè)概率密度函數(shù)相乘,計(jì)算出概率最大點(diǎn)作為該點(diǎn)的估計(jì)坐標(biāo),與最小二乘定位算法相比,定位精度雖有一定提高,卻存在計(jì)算復(fù)雜度較大的問(wèn)題。
綜合分析相關(guān)研究成果可知,基于RSSI測(cè)距的定位算法在削減信號(hào)不穩(wěn)定因素干擾、建立精確的信號(hào)傳輸模型等方面還存在問(wèn)題。因此,本文提出一種概率定位算法,利用貝葉斯定理估計(jì)待定點(diǎn)的位置分布概率,優(yōu)化了室內(nèi)環(huán)境下傳統(tǒng)RSSI測(cè)距算法精度受距離轉(zhuǎn)換影響較大的問(wèn)題,極大地提高了定位的魯棒性與穩(wěn)定性,有較強(qiáng)的實(shí)用性。
無(wú)線信號(hào)強(qiáng)度衰減與傳輸距離近似呈對(duì)數(shù)函數(shù)關(guān)系,信號(hào)傳輸模型就是對(duì)多組測(cè)量信號(hào)與距離擬合從而實(shí)現(xiàn)信號(hào)強(qiáng)度與距離之間轉(zhuǎn)換的模型。距離轉(zhuǎn)換精度影響著最終定位結(jié)果,因此傳輸模型的建立需要非常準(zhǔn)確。常用的信號(hào)傳輸模型有自由空間傳輸模型、Shadowing傳播模型等[15-16]。在室內(nèi)環(huán)境下,由于存在多路徑效應(yīng)、人員擾動(dòng)等因素,自由空間傳輸模型不能滿足要求,常采用Shadowing傳播模型,即
(1)
其中:d為距離;SRSSI(d)為d處的功率,即信號(hào)強(qiáng)度;d0為參考距離;SRSSI(d0)為參考信號(hào)強(qiáng)度;n為信號(hào)衰減因子;Xσ為服從(0,σ2)分布的隨機(jī)噪聲。一般情況下,d0的取值為1,即將距離信標(biāo)節(jié)點(diǎn)1.0 m處信號(hào)強(qiáng)度作為參考值,記為A,則(1)式可以簡(jiǎn)化為:
SRSSI(d)=A-10nlgd
(2)
(2)式即為常用的信號(hào)傳輸模型,實(shí)現(xiàn)了測(cè)量信號(hào)強(qiáng)度與距離的轉(zhuǎn)換。
藍(lán)牙發(fā)射信號(hào)強(qiáng)度存在波動(dòng)現(xiàn)象,即使在一段時(shí)間內(nèi)連續(xù)采集,相鄰兩次信號(hào)值也存在較大的差距。為了使測(cè)量信號(hào)強(qiáng)度可靠性更高,通常需要對(duì)藍(lán)牙信號(hào)進(jìn)行濾波處理,去除波動(dòng)較大的異常值。常用的濾波模型有均值濾波、高斯濾波等[17-18],均值濾波法單純對(duì)所有測(cè)量信號(hào)求均值,計(jì)算結(jié)果仍受到信號(hào)異常偏差的影響,而高斯濾波可以有效剔除信號(hào)異常值,使藍(lán)牙信號(hào)更趨于實(shí)際值,故本文采用高斯濾波進(jìn)行信號(hào)預(yù)處理。
當(dāng)距離一定時(shí),信號(hào)強(qiáng)度概率分布近似滿足高斯正態(tài)分布[19],可以表示為:
(3)
其中
(4)
(5)
根據(jù)高斯分布的特性,某點(diǎn)處信號(hào)強(qiáng)度處于(μ-σ,μ+σ)區(qū)間的概率為68.2%。篩選處于此區(qū)間的RSSI值,計(jì)算其均值作為該信標(biāo)的最終RSSI值,即
(6)
由于RSSI具有時(shí)變性和環(huán)境特性[20],以及測(cè)量誤差和計(jì)算誤差的影響,計(jì)算距離與真實(shí)值之間存在一定誤差。傳統(tǒng)測(cè)距算法將估計(jì)距離直接用于計(jì)算,通過(guò)加權(quán)等方法減小距離對(duì)誤差的影響,而本文提出的算法將測(cè)量信號(hào)作為先驗(yàn)信息,采用概率統(tǒng)計(jì)的方法計(jì)算已知信號(hào)強(qiáng)度條件下估計(jì)距離的后驗(yàn)概率。通過(guò)定位信標(biāo)的自適應(yīng)篩選,依次對(duì)定位信標(biāo)進(jìn)行概率估計(jì)并求和,得到定位區(qū)域內(nèi)所有柵格點(diǎn)的定位總概率,取概率最大值點(diǎn)作為待定點(diǎn)估計(jì)位置。
(7)
篩選后的信號(hào)強(qiáng)度值概率分布仍滿足高斯分布特性,此時(shí)測(cè)量信號(hào)強(qiáng)度概率可以寫為:
(8)
(9)
(10)
(11)
由待定點(diǎn)測(cè)量的n個(gè)藍(lán)牙信標(biāo)的信號(hào)強(qiáng)度,可以反算出n個(gè)估計(jì)距離。本文所提算法通過(guò)設(shè)置距離閾值,剔除離待定點(diǎn)較遠(yuǎn)的藍(lán)牙信標(biāo),實(shí)現(xiàn)定位信標(biāo)個(gè)數(shù)t的動(dòng)態(tài)選擇,減小遠(yuǎn)距離信標(biāo)對(duì)定位的影響,具體步驟如下。
圖1 自由空間待定點(diǎn)位置分布概率三維顯示
為了更直觀地顯示,將圖1投影到二維平面上,待定點(diǎn)平面位置分布概率如圖2所示。圖2a中,中心點(diǎn)即為藍(lán)牙信標(biāo)位置,以中心點(diǎn)為圓心,距離d為半徑畫圓,圓上點(diǎn)的概率均為1。在實(shí)際定位計(jì)算時(shí),由于走廊存在長(zhǎng)寬控制,篩選處于走廊內(nèi)部的柵格點(diǎn),結(jié)果如圖2b所示。
圖2 待定點(diǎn)平面位置分布概率
(2) 依次計(jì)算待定點(diǎn)相對(duì)于所有定位信標(biāo)的概率分布并求和,得到每個(gè)柵格點(diǎn)的定位總概率:
(12)
其中:(xj,yj)為第j個(gè)柵格點(diǎn)坐標(biāo);di′為該點(diǎn)到第i個(gè)定位信標(biāo)的距離估計(jì);p(xj,yj)為該點(diǎn)定位總概率。定位區(qū)域內(nèi)所有柵格點(diǎn)的定位總概率如圖3所示,O點(diǎn)為最大值點(diǎn),即以該點(diǎn)坐標(biāo)作為待定點(diǎn)的估計(jì)坐標(biāo)。
圖3 定位區(qū)域內(nèi)所有柵格點(diǎn)的定位總概率
本文算法利用信號(hào)傳輸模型計(jì)算信標(biāo)距離,通過(guò)閾值篩選定位信標(biāo),計(jì)算待定點(diǎn)相對(duì)定位信標(biāo)的位置分布概率并求和,輸出最終概率最大值點(diǎn)坐標(biāo)。本文定位算法流程如圖4所示。
圖4 本文定位算法流程
實(shí)驗(yàn)場(chǎng)地與藍(lán)牙信標(biāo)實(shí)物圖片如圖5所示。
圖5 實(shí)驗(yàn)場(chǎng)地與藍(lán)牙信標(biāo)實(shí)物圖片
(1) 靜態(tài)定位。靜態(tài)定位實(shí)驗(yàn)數(shù)據(jù)采集場(chǎng)地設(shè)置在北京建筑大學(xué)學(xué)院樓二層樓道,樓道長(zhǎng)65 m,寬 3 m;走廊兩端布設(shè)17個(gè)藍(lán)牙信標(biāo),型號(hào)為德州儀器(上海)公司的CC2640;數(shù)據(jù)采集終端為基于Android版本9.0的vivo x21智能手機(jī),隨機(jī)設(shè)置20個(gè)待定點(diǎn),每個(gè)待定點(diǎn)采樣3 min。相同條件下,在實(shí)驗(yàn)場(chǎng)地內(nèi)選取一條長(zhǎng)為12 m 的直線,每隔 0.3 m采集1組數(shù)據(jù),共計(jì)40 組,用于擬合實(shí)驗(yàn)環(huán)境下的信號(hào)傳輸模型。
(2) 動(dòng)態(tài)定位。動(dòng)態(tài)定位實(shí)驗(yàn)數(shù)據(jù)采集場(chǎng)地設(shè)置在中國(guó)礦業(yè)大學(xué)環(huán)境與測(cè)繪學(xué)院四層樓道,樓道長(zhǎng)50 m,寬2.5 m;走廊兩側(cè)布設(shè)有16個(gè)藍(lán)牙信標(biāo),型號(hào)為上海智向科技的Mars Beacon S-400;數(shù)據(jù)采集終端為基于Android版本10.0的小米8智能手機(jī)。實(shí)驗(yàn)前在場(chǎng)地內(nèi)選取一條10 m的直線,每隔0.3 m采集1組數(shù)據(jù),每組數(shù)據(jù)采樣時(shí)間為100 s,共計(jì)33組,用于擬合實(shí)驗(yàn)環(huán)境下的信號(hào)傳輸模型。實(shí)驗(yàn)時(shí),實(shí)驗(yàn)者手持智能手機(jī),沿直線以勻速前行,采樣時(shí)間間隔設(shè)置為0.6 s。
考慮到距離對(duì)定位結(jié)果的影響,本文定位算法通過(guò)設(shè)置閾值選擇合適的藍(lán)牙信標(biāo)進(jìn)行定位,對(duì)閾值不同取值的定位誤差如圖6所示。三點(diǎn)定位、加權(quán)質(zhì)心定位和本文定位算法的定位誤差曲線如圖7所示。
圖6 不同閾值對(duì)定位的影響
圖7 靜態(tài)定位3種算法定位誤差對(duì)比
由圖6可知,當(dāng)閾值取3、4、6、7 m時(shí),部分待定點(diǎn)存在定位異常的現(xiàn)象,當(dāng)閾值取5 m時(shí),整體定位偏差較為集中,定位誤差均在3 m之內(nèi),因此本次實(shí)驗(yàn)設(shè)置距離閾值為5 m。
從圖7可以看出,本文定位算法最大誤差、最小誤差均優(yōu)于其他2種算法,其中有12個(gè)點(diǎn)位誤差有效減小。選取其中一個(gè)偏差較大的待定點(diǎn)(2號(hào)點(diǎn))查看其位置分布概率,如圖8所示。
圖8 待定點(diǎn)相對(duì)定位信標(biāo)的位置分布概率
從圖8可以看出,閾值篩選后的定位信標(biāo)有2個(gè),實(shí)心點(diǎn)為概率之和最大值點(diǎn)。由于定位信標(biāo)相距較遠(yuǎn),使得待定點(diǎn)相對(duì)兩者位置分布概率存在明顯差異,導(dǎo)致最終定位結(jié)果受近距離信標(biāo)影響較大。
依次計(jì)算20個(gè)待定點(diǎn)的坐標(biāo),采用最大距離誤差、最小距離誤差、平均距離誤差及標(biāo)準(zhǔn)誤差對(duì)5種算法精度進(jìn)行評(píng)價(jià)。本文定位算法與最近鄰法、最小二乘定位、三點(diǎn)定位、加權(quán)質(zhì)心定位的定位結(jié)果對(duì)比見(jiàn)表1所列。
表1 靜態(tài)定位5種算法的定位誤差結(jié)果 單位:m
由表1可知:本文定位算法各項(xiàng)評(píng)價(jià)指標(biāo)均有提升,平均定位精度為1.04 m,比加權(quán)質(zhì)心定位提高了22.4%;標(biāo)準(zhǔn)差為0.51 m,表明整體定位誤差分布較為集中,算法魯棒性較高。
5種定位算法的累積誤差分布如圖9所示。
圖9 靜態(tài)定位誤差累積概率分布
從圖9可以看出,本文定位算法精度明顯優(yōu)于其他4種算法,點(diǎn)位誤差均在2.5 m以內(nèi),其中定位誤差在1.5 m以內(nèi)的概率為80%,在2.0 m以內(nèi)的概率為95%。
人員在正常行進(jìn)過(guò)程中速度基本保持不變,故本次實(shí)驗(yàn)將人員視為勻速直線運(yùn)動(dòng)。行走過(guò)程中終端共進(jìn)行76次數(shù)據(jù)采集,行進(jìn)總長(zhǎng)度為48.6 m,可得到每次采集點(diǎn)的坐標(biāo)。然而由于藍(lán)牙發(fā)射信號(hào)存在時(shí)間間隔,有25次數(shù)據(jù)采集存在丟包現(xiàn)象,無(wú)法進(jìn)行定位。最近鄰法、三點(diǎn)定位、加權(quán)質(zhì)心定位及本文定位算法的定位誤差見(jiàn)表2所列,53個(gè)待定點(diǎn)的誤差曲線如圖10所示。
表2 動(dòng)態(tài)定位4種算法的定位誤差 單位:m
圖10 動(dòng)態(tài)定位4種算法定位誤差對(duì)比
由圖10和表2可知:本文定位算法精度優(yōu)于傳統(tǒng)定位方法,最小定位誤差為0.07 m;平均定位誤差為1.65 m,相比于最近鄰法、三點(diǎn)定位、加權(quán)質(zhì)心定位,精度分別提高40.2%、38.9%、21.8%;標(biāo)準(zhǔn)差為1.06 m,表明定位更穩(wěn)定。
動(dòng)態(tài)定位誤差累積概率分布如圖11所示。
圖11 動(dòng)態(tài)定位誤差累積概率分布
從圖11可以看出,本文定位算法與三點(diǎn)定位、加權(quán)質(zhì)心定位的定位精度在2.0 m以內(nèi)的概率相差不大,而在2.0~3.0 m誤差范圍內(nèi)定位效果差別迅速增大,本文定位誤差在3.0 m以內(nèi)的概率為90%。實(shí)驗(yàn)結(jié)果表明,本文提出的利用概率統(tǒng)計(jì)計(jì)算未知點(diǎn)坐標(biāo)的算法能夠有效減小定位誤差,提升定位效果和系統(tǒng)魯棒性,且對(duì)定位偏差較大的點(diǎn)效果明顯。
針對(duì)RSSI測(cè)距算法受信號(hào)傳輸模型準(zhǔn)確性、距離轉(zhuǎn)換精度限制的問(wèn)題,本文提出一種概率定位算法。該算法通過(guò)設(shè)置閾值實(shí)現(xiàn)定位信標(biāo)的動(dòng)態(tài)篩選,以測(cè)量信號(hào)強(qiáng)度作為先驗(yàn)信息,基于信號(hào)分布滿足高斯正態(tài)分布的特性,利用貝葉斯定理計(jì)算待定點(diǎn)估計(jì)位置的后驗(yàn)概率。實(shí)驗(yàn)設(shè)置靜態(tài)定位與動(dòng)態(tài)定位2個(gè)場(chǎng)景,靜態(tài)定位精度優(yōu)于1.5 m的概率為80%,優(yōu)于2.0 m的概率為95%,平均定位誤差為1.04 m,比加權(quán)質(zhì)心定位精度提高22.4%;動(dòng)態(tài)定位精度優(yōu)于3.0 m的概率為90%,比加權(quán)質(zhì)心定位精度提高21.8%。實(shí)驗(yàn)結(jié)果表明,本文定位算法的效果優(yōu)于其他測(cè)試定位算法,有效提高了走廊環(huán)境下人員準(zhǔn)確定位的精度和系統(tǒng)穩(wěn)定性,具有較強(qiáng)的實(shí)用性。
本文實(shí)驗(yàn)未完全考慮可能造成異常的全部情況,故以后將針對(duì)定位信標(biāo)的選取算法作進(jìn)一步研究。