杜佳星,陳亞偉,張 靜
(天津大學(xué)電子信息工程學(xué)院,天津 300072 )
室內(nèi)定位是指采用無線通訊、基站定位、慣性導(dǎo)航定位等多種技術(shù),在室內(nèi)環(huán)境中實(shí)現(xiàn)位置定位,從而實(shí)現(xiàn)對(duì)室內(nèi)人員、物體等的位置監(jiān)控。人們的日常生活和工作大多處于室內(nèi),隨著移動(dòng)互聯(lián)網(wǎng)和智能設(shè)備的快速發(fā)展,室內(nèi)定位技術(shù)成為O2O、智能家居、室內(nèi)機(jī)器人等應(yīng)用的瓶頸,基于室內(nèi)定位技術(shù)的應(yīng)用有著迫切的需求和廣泛的應(yīng)用前景。
目前主流的室內(nèi)定位技術(shù)可以分為兩大類:基于非測(cè)距和測(cè)距的定位算法[1]。前者主要是通過節(jié)點(diǎn)間的連通性和多條路由來對(duì)距離進(jìn)行估算,對(duì)硬件要求比較高,主要有質(zhì)心算法[2]、DV-Hop算法[3]、近似三邊內(nèi)角測(cè)試算法APIT(Approximation Point-In-Triangulation Test)[4]等;基于測(cè)距的算法主要是通過測(cè)量相鄰傳感器節(jié)點(diǎn)的距離、方位角度等信息,使用三邊測(cè)量、三角測(cè)量、最大似然估計(jì)等定位算法建立數(shù)學(xué)模型,估算出節(jié)點(diǎn)位置,從而獲得未知節(jié)點(diǎn)的實(shí)際位置信息?;诜菧y(cè)距的定位算法只是停留在理論研究階段,且大都是在仿真環(huán)境下進(jìn)行的,需要假設(shè)很多不確定因素,而這些因素在實(shí)際應(yīng)用中往往不能滿足,因此在實(shí)際應(yīng)用中通常采用測(cè)距算法。常采用的測(cè)距技術(shù)包括RSSI(Received Signal Strength Indicator)[5]、AOA(Angle Of Arrival)[6]、TOA(Time Of Arrival)[7]和TDOA(Time Difference On Arrival)[7]等。其中,基于RSSI測(cè)距定位算法具有成本低、功耗低且復(fù)雜度低的優(yōu)勢(shì),被廣泛采用。
在實(shí)際應(yīng)用中,由于受多徑衰減、環(huán)境噪音、信號(hào)傳輸?shù)姆瓷洹⒗@射、衍射現(xiàn)象以及天線增益等問題的影響,傳統(tǒng)的RSSI測(cè)距方法存在較大缺陷,且算法對(duì)于測(cè)距精度的容錯(cuò)能力有限,若后續(xù)定位算法基于該測(cè)距方法,最終定位結(jié)果必然導(dǎo)致較大誤差。并且,現(xiàn)有的定位算法大部分在Matlab、NS2等仿真軟件下完成性能測(cè)試,極少在實(shí)際環(huán)境中實(shí)現(xiàn),不能完全體現(xiàn)定位算法[8],尤其是基于RSSI方案在復(fù)雜的室內(nèi)環(huán)境下的真實(shí)性。
針對(duì)以上問題,本文提出了一種基于聚類算法分析的高斯混合濾波的藍(lán)牙4.0 RSSI信號(hào)處理優(yōu)化策略和優(yōu)化權(quán)值及距離修正的四邊質(zhì)心定位算法,從測(cè)距和定位兩方面對(duì)傳統(tǒng)的RSSI定位算法進(jìn)行優(yōu)化處理,從而有效提高了室內(nèi)定位精度,并在實(shí)際環(huán)境中進(jìn)行了應(yīng)用。
RSSI測(cè)距原理是,無線信號(hào)隨距離的增加傳播信號(hào)強(qiáng)度也隨之發(fā)生衰減,根據(jù)無線信號(hào)傳輸中普遍采用的理論模型——Shadowing 模型,其具有對(duì)數(shù)衰減特性,公式如下:
(1)
其中,d0為參考距離(一般為1 m);RSSI0是距離為d0時(shí)接收到的信號(hào)強(qiáng)度;d是實(shí)際距離;RSSI為距離為d時(shí)接收到的信號(hào)強(qiáng)度;n為與環(huán)境密切相關(guān)的無線信號(hào)衰減因子;ε為一個(gè)均值為零的高斯隨機(jī)變量。
在無線信號(hào)傳輸?shù)膶?shí)際過程中,很容易受到環(huán)境因素的干擾,比如多徑、繞射、障礙物、溫濕度變化等因素的影響。為了使RSSI測(cè)距模型盡可能真實(shí)地反映室內(nèi)實(shí)驗(yàn)環(huán)境的傳播特性,本文采用最小二乘法對(duì)不同距離下的信號(hào)強(qiáng)度RSSI值,進(jìn)行二次回歸擬合得到最適應(yīng)該環(huán)境的對(duì)數(shù)路徑損耗模型公式,提高實(shí)驗(yàn)環(huán)境中的測(cè)距精度。
利用RSSI測(cè)距時(shí),由于室內(nèi)環(huán)境中干擾的存在以及多徑效應(yīng)、非視距等影響,同一信標(biāo)同一距離處的RSSI值往往會(huì)出現(xiàn)較大波動(dòng),如圖1所示,這些異常值會(huì)干擾定位精度[9]。本文設(shè)計(jì)了基于聚類算法分析的高斯混合濾波的RSSI信號(hào)處理優(yōu)化策略,濾除因多徑效應(yīng)、非視距等產(chǎn)生的噪聲,排除信號(hào)散射、多路徑等因素給實(shí)驗(yàn)結(jié)果帶來的誤差,以提高測(cè)距精度,增強(qiáng)定位信息的準(zhǔn)確性。
Figure 1 Distribution of RSSI samples 圖1 RSSI采樣值分布情況
高斯混合濾波優(yōu)化策略是對(duì)同一藍(lán)牙信標(biāo)節(jié)點(diǎn)在同一距離處采樣RSSI值,利用聚類算法中的最大期望算法M-Step(Maximization Step)對(duì)采樣數(shù)據(jù)進(jìn)行聚類分布,即使用高斯混合濾波模型GMM(Gaussian Mixture Model)分析采樣數(shù)據(jù),將采樣數(shù)據(jù)分解為若干高斯概率密度函數(shù)的模型,之后通過赤池信息量準(zhǔn)則AIC(Akaike Information Criterion)選擇適合RSSI采樣數(shù)據(jù)分布情況的分簇方式優(yōu)化采樣值,并對(duì)優(yōu)化的采樣值進(jìn)行均值計(jì)算。
根據(jù)實(shí)際測(cè)試的經(jīng)驗(yàn),高斯混合濾波模型選取最多包含三種高斯概率密度函數(shù)的模型,即采樣值分布濾波模型包含三種情況:一個(gè)Component、兩個(gè)Component和三個(gè)Component。在實(shí)際實(shí)驗(yàn)中采樣值分布多于三個(gè)Component的情況屬于小概率事件,且該情況使用三個(gè)Component模型處理的效果理想。
(1)一個(gè)Component的高斯混合濾波模型。
高斯模型的分布密度函數(shù):
(2)
其中,
(3)
(4)
根據(jù)實(shí)際測(cè)試的經(jīng)驗(yàn),選取經(jīng)驗(yàn)值RSSI∈[0.15σ+μ,μ+3.09σ]的數(shù)據(jù)值,并對(duì)該范圍中的RSSI值求均值作為優(yōu)化后精確的RSSI值。
(2)兩個(gè)Component的高斯混合濾波模型。
對(duì)于使用多個(gè)Component的高斯混合濾波模型,依據(jù)聚類算法中的最大期望EM(Expectation Maximization)算法對(duì)獲取到的RSSI數(shù)據(jù)進(jìn)行聚類分簇,即使用EM算法中的E-Step(Expectation Step)和M-Step(Maximization Step),對(duì)每個(gè)RSSI采樣值計(jì)算后驗(yàn)概率和相對(duì)應(yīng)的概率密度函數(shù),并根據(jù)后驗(yàn)概率對(duì)數(shù)據(jù)進(jìn)行重新估計(jì)聚類分布,不斷重復(fù)迭代兩種算法,使得聚類數(shù)據(jù)的似然性最大。
①E-Step算法。
E-Step算法的作用是計(jì)算數(shù)據(jù)的后驗(yàn)概率,即分別求出每個(gè)RSSIi屬于每個(gè)Component的后驗(yàn)概率。
使用兩個(gè)Component的E-step聚類算法如下:
RSSIi屬于Component1的概率:
γ1(RSSIi)=
(5)
RSSIi屬于Component2的概率:
γ2(RSSIi)=
(6)
RSSIi屬于哪個(gè)Component的概率最高,再次遍歷時(shí)將會(huì)被分配在這個(gè)Component中。
②M-Step算法。
M-Step算法的作用是重新估計(jì)分布參數(shù),以使得數(shù)據(jù)的似然性最大。其主要用來計(jì)算不同Component相對(duì)應(yīng)的均值μ、方差σ2以及概率密度函數(shù)f(RSSIi;μ,σ2)。
(3)三個(gè)Component的高斯混合濾波模型。
(4)高斯混合濾波模型的AIC選取評(píng)估。
對(duì)采集到的RSSI采樣值利用聚類算法,分別使用一個(gè)Component、兩個(gè)Component和三個(gè)Component的高斯混合濾波模型進(jìn)行處理后,利用赤池最小信息準(zhǔn)則AIC進(jìn)行濾波模型的選取。AIC準(zhǔn)則可以權(quán)衡所估計(jì)模型的復(fù)雜度和此模型擬合數(shù)據(jù)的優(yōu)良性,是信號(hào)處理中對(duì)多種模型作選擇的判別方法。
AIC表示為:
AIC=2k-2ln(L)
(7)
其中,k是參數(shù)的數(shù)量,L是似然函數(shù)。
赤池信息準(zhǔn)則的方法是尋找可以最好地解釋數(shù)據(jù)但包含最少自由參數(shù)的模型,即優(yōu)先考慮的模型應(yīng)是AIC值最小的那一個(gè)。
(8)
(9)
(10)
(11)
(12)
(13)
分別計(jì)算三種分布的AIC值,取AIC值最小的那個(gè)分布作為RSSI采樣值篩選優(yōu)化機(jī)制的濾波分布,并求該Component的均值,作為優(yōu)化校正的RSSI值代入無線信號(hào)對(duì)數(shù)衰減模型公式(1)中進(jìn)行RSSI-距離轉(zhuǎn)換。
基于無線信號(hào)傳播模型即可利用RSSI值求得藍(lán)牙信標(biāo)節(jié)點(diǎn)到移動(dòng)終端間的距離,當(dāng)移動(dòng)終端獲取到了至少三個(gè)藍(lán)牙信標(biāo)節(jié)點(diǎn)的距離值后,就可以采用質(zhì)心定位算法進(jìn)行位置估算,獲得移動(dòng)終端位置信息。本文對(duì)傳統(tǒng)質(zhì)心算法、加權(quán)質(zhì)心算法進(jìn)行分析,優(yōu)化權(quán)值因子,并在此基礎(chǔ)上對(duì)定位算法進(jìn)行距離修正,提高了定位算法在實(shí)際應(yīng)用中的適應(yīng)性和精確度。
質(zhì)心算法[10]是一種與距離無關(guān)、基于連接性的簡(jiǎn)單算法,根據(jù)節(jié)點(diǎn)接收到的信號(hào)強(qiáng)度和連通性進(jìn)行定位。假設(shè)三個(gè)信標(biāo)節(jié)點(diǎn)坐標(biāo)為:(xA,yA),(xB,yB),(xC,yC),則傳統(tǒng)質(zhì)心算法未知節(jié)點(diǎn)坐標(biāo)為:
(14)
這種質(zhì)心算法所需的設(shè)備簡(jiǎn)單,易于實(shí)現(xiàn),受環(huán)境的影響小。但是,這種算法忽略了信標(biāo)節(jié)點(diǎn)對(duì)未知移動(dòng)終端的影響,即當(dāng)每個(gè)信標(biāo)節(jié)點(diǎn)接收到的RSSI值不同時(shí),信標(biāo)節(jié)點(diǎn)坐標(biāo)對(duì)未知節(jié)點(diǎn)的決定權(quán)大小也不相同。
針對(duì)傳統(tǒng)質(zhì)心算法的缺陷,文獻(xiàn)[11]提出了一種加權(quán)質(zhì)心算法。加權(quán)質(zhì)心算法通過RSSI值來計(jì)算每個(gè)信標(biāo)節(jié)點(diǎn)對(duì)未知節(jié)點(diǎn)貢獻(xiàn)的權(quán)值。具體算法是:由于RSSI值易受環(huán)境干擾以及電磁場(chǎng)信號(hào)無規(guī)律衰減等因素的影響,轉(zhuǎn)化成距離時(shí)必然存在誤差,因此信標(biāo)節(jié)點(diǎn)的感知交集不是一個(gè)點(diǎn),而是一個(gè)區(qū)域,未知節(jié)點(diǎn)就在該區(qū)域內(nèi)。如圖2所示,已知三個(gè)信標(biāo)節(jié)點(diǎn)分別為:O1(x1,y1)、O2(x2,y2)、O3(x3,y3),D點(diǎn)為未知節(jié)點(diǎn),D點(diǎn)到三個(gè)信標(biāo)節(jié)點(diǎn)的測(cè)距距離為r1、r2、r3。根據(jù)未知節(jié)點(diǎn)到信標(biāo)節(jié)點(diǎn)的距離與坐標(biāo)的數(shù)學(xué)模型:
Figure 2 Trilateral location algorithm圖2 三邊定位算法
(15)
兩兩圓求交點(diǎn),得到交點(diǎn)A(xA,yA)、B(xB,yB)、C(xC,yC),未知節(jié)點(diǎn)就在三角形ABC區(qū)域內(nèi)。加權(quán)質(zhì)心算法在每次定位估計(jì)中引入一個(gè)權(quán)值來防止信息淹沒現(xiàn)象(即信標(biāo)節(jié)點(diǎn)的相關(guān)信息對(duì)質(zhì)心坐標(biāo)估算的影響因素)。該權(quán)值與距離相關(guān),利用距離因子來體現(xiàn)信標(biāo)節(jié)點(diǎn)對(duì)未知節(jié)點(diǎn)未知的影響程度(即信標(biāo)節(jié)點(diǎn)與未知節(jié)點(diǎn)越遠(yuǎn),位置估計(jì)時(shí)所占比重越小),而每個(gè)頂點(diǎn)由兩個(gè)距離確定,故權(quán)值選擇為1/(r2+r3)(以圓O1為例,r2、r3為圓O2、O3半徑),由此得到未知節(jié)點(diǎn)坐標(biāo)為:
(16)
加權(quán)質(zhì)心算法利用RSSI相關(guān)數(shù)據(jù)信息,提高了定位算法的精度,但該權(quán)值的選擇存在很大的不合理性,假設(shè)ra>rb,即rb距離未知節(jié)點(diǎn)距離較近,對(duì)其未知節(jié)點(diǎn)的作用效果大;但若采用1/(ra+rb)為權(quán)值,使ra起了主導(dǎo)作用,rb對(duì)未知節(jié)點(diǎn)的作用效果減弱,這與加權(quán)質(zhì)心定位算法的意圖相違背。
文獻(xiàn)[12]指出RSSI測(cè)距與誤差存在如下關(guān)系:
φ(x)=εx+δ
(17)
其中,ε是一次誤差系數(shù),δ是常誤差系數(shù)。
由此可見誤差與距離存在一定的線性關(guān)系,經(jīng)過轉(zhuǎn)化得到:
φ(x)-δ=εx
(18)
(19)
本文對(duì)權(quán)值因子進(jìn)行如下優(yōu)化:
(20)
其中,da、db分別為未知節(jié)點(diǎn)到信標(biāo)節(jié)點(diǎn)的距離。
如此優(yōu)化后,da、db就可根據(jù)自身距離大小對(duì)未知節(jié)點(diǎn)進(jìn)行相應(yīng)權(quán)值的貢獻(xiàn),符合加權(quán)質(zhì)心定位原理的理論。優(yōu)化后加權(quán)質(zhì)心算法的未知節(jié)點(diǎn)坐標(biāo)如式(21)所示:
(21)
使用上述三種定位算法,于6 m*8 m的會(huì)議室中,使用三個(gè)藍(lán)牙信標(biāo)節(jié)點(diǎn)圍成等腰三角形區(qū)域,節(jié)點(diǎn)坐標(biāo)分別為(0,2.5)、(5,5)和(5,0),將移動(dòng)終端放置在該區(qū)域內(nèi)10個(gè)不同位置進(jìn)行定位實(shí)驗(yàn),得到三種定位算法對(duì)應(yīng)的定位平均誤差,如圖3所示。
Figure 3 Average error of different localization algorithms圖3 定位算法平均誤差圖
加權(quán)質(zhì)心算法同傳統(tǒng)質(zhì)心算法相比并沒有明顯的定位精度的提升,平均誤差僅僅提高了0.256 m,而采用優(yōu)化權(quán)值的質(zhì)心算法的定位精度提高了0.825 m,遠(yuǎn)高于其他算法,較大提高了定位系統(tǒng)的精度。
由于多徑衰減、障礙物等噪聲的干擾,信號(hào)強(qiáng)度值往往會(huì)出現(xiàn)較大的波動(dòng),使得RSSI值轉(zhuǎn)換出的距離值誤差較大,導(dǎo)致基于RSSI測(cè)距方法得到的未知節(jié)點(diǎn)到信標(biāo)節(jié)點(diǎn)的距離遠(yuǎn)遠(yuǎn)偏差于實(shí)際距離,以致三個(gè)圓無法滿足兩兩相交,加權(quán)質(zhì)心定位算法失效。本文針對(duì)這一問題提出了一種基于距離修正的加權(quán)質(zhì)心定位算法,在圓與圓之間不相交的情況下能夠準(zhǔn)確進(jìn)行節(jié)點(diǎn)定位,提高在室內(nèi)環(huán)境中定位算法的容錯(cuò)能力、適應(yīng)性及精確度。
圓與圓之間存在兩種位置關(guān)系會(huì)導(dǎo)致定位算法失效:兩圓相離以及兩圓內(nèi)含。
(1)兩圓相離。
當(dāng)圓與圓之間存在兩圓相離的情況時(shí),即兩圓無交點(diǎn),如圖4所示。本文使用的RSSI距離修正原理是:以距離因子作為權(quán)值分別增大兩圓的半徑,使圓與圓兩兩相交,形成一個(gè)重疊的區(qū)域,且使用該方法可保證增大后的半徑比與之前半徑比保持不變,即距離因子對(duì)未知節(jié)點(diǎn)所占權(quán)重不變。再使用加權(quán)質(zhì)心三邊定位算法求得未知節(jié)點(diǎn)坐標(biāo)。
Figure 4 Separation of two circles圖4 兩圓相離
半徑增大方案如式(22)所示:
(22)
其中,r1、r2為兩圓O1、O2半徑,d為兩圓圓心距離。
(2)兩圓內(nèi)含。
當(dāng)兩圓之間呈現(xiàn)內(nèi)含的情況時(shí),如圖5所示。本文通過減小半徑較大的圓的半徑使之與半徑較小的圓相切或相交來糾正RSSI距離,使圓與圓獲得公共交點(diǎn)。具體修正方案如式(23)所示:
(23)
Figure 5 Inclusion of two circles圖5 兩圓內(nèi)含
其中,r1、r2分別為圓O1、O2的半徑,且r1>r2,d為兩圓圓心距離。使用該方法可以在盡量減小兩圓偏移量的基礎(chǔ)上保證兩圓半徑比變化盡可能小。
傳統(tǒng)的加權(quán)質(zhì)心三邊定位算法是使用三個(gè)信標(biāo)節(jié)點(diǎn)進(jìn)行定位,得到的定位結(jié)果有較大誤差,為了進(jìn)一步提高未知節(jié)點(diǎn)的定位精度,通過理論與實(shí)際應(yīng)用分析,本文提出四邊測(cè)距定位算法,即在三邊定位算法基礎(chǔ)上增加一個(gè)信標(biāo)節(jié)點(diǎn)進(jìn)行定位。
設(shè)增加未知節(jié)點(diǎn)為O4(x4,y4),根據(jù)圓的參數(shù)方程幾何關(guān)系,三三自由組合,求得交點(diǎn)坐標(biāo),可分別得出,通過O1O2O3三圓得到估計(jì)位置A(xA,yA),通過O1O2O4三圓得到估計(jì)位置B(xB,yB),通過O1O3O4三圓得到估計(jì)位置C(xC,yC),O2O3O4三圓得到估計(jì)位置D(xD,yD),對(duì)ABCD四組估計(jì)位置求質(zhì)心得到更加精確的未知節(jié)點(diǎn)坐標(biāo)O(x,y),如式(24)所示:
(24)
根據(jù)以上提出的優(yōu)化距離修正策略的四邊加權(quán)質(zhì)心定位算法偽代碼如下:
AlgorithmIndoorPosition()
{
/*獲取當(dāng)前偵測(cè)到周圍的四個(gè)藍(lán)牙信標(biāo)節(jié)點(diǎn)發(fā)送的UUID、RSSI、POWER信息*/
info[infoIndex].UUID,Power,Rssi;
If (同一UUID獲取到的Rssi值數(shù)目大于100)
{
/*對(duì)100個(gè)RSSI值進(jìn)行聚類分析的高斯混合濾波算法進(jìn)行篩選,得到優(yōu)化的RSSI值*/
對(duì)100個(gè)RSSI值分別使用包含一個(gè)Component、兩個(gè)Component和三個(gè)Component的高斯混合濾波模型中,使用聚類算法進(jìn)行分簇處理,并求出相應(yīng)收斂參數(shù)。使用AIC準(zhǔn)則對(duì)三種濾波模型進(jìn)行評(píng)估,選擇最優(yōu)濾波模型,求濾波后RSSI均值。
/*利用對(duì)數(shù)路徑損耗模型將RSSI值轉(zhuǎn)換成距離d*/
d=distanceRSSI(Power,Rssi);}
Else {/*繼續(xù)獲取藍(lán)牙信標(biāo)節(jié)點(diǎn)信息*/}
/*依次求兩個(gè)藍(lán)牙信標(biāo)節(jié)點(diǎn)為圓心的圓的交點(diǎn)*/
If (兩圓無交點(diǎn))
{ /*使用距離修正方案修改半徑距離*/
revise(circles[].center.x,circles[].center.y,circles[].r);}
Else(兩圓存在交點(diǎn))
{/*根據(jù)圓的幾何關(guān)系,求兩圓交點(diǎn)*/
insect(circles[0].center.x,circles[0].center.y,circles[0].r,circles[1].center.x,circles[1].center.y,circles[1].r)
}
/*利用求得的交點(diǎn),進(jìn)行四邊加權(quán)質(zhì)心定位算法運(yùn)算*/
computer(info[infoIndex].UUID,Power,Rssi,d);
}//END
本系統(tǒng)由四個(gè)藍(lán)牙信標(biāo)節(jié)點(diǎn)和一個(gè)移動(dòng)智能終端樹莓派組成。其中藍(lán)牙信標(biāo)節(jié)點(diǎn)核心控制器為TI公司的CC2540藍(lán)牙芯片,該芯片使用了最新的藍(lán)牙4.0技術(shù),具有功耗小、時(shí)延低、傳輸距離遠(yuǎn)的特點(diǎn),最大限度地滿足了高精度室內(nèi)定位技術(shù)的要求。移動(dòng)終端樹莓派是一款基于ARM的微型電腦主板,其支持Linux系統(tǒng)。移動(dòng)終端樹莓派通過藍(lán)牙模塊接收到藍(lán)牙信標(biāo)節(jié)點(diǎn)發(fā)送的與位置相關(guān)的UUID、RSSI值和POWER值(距離終端1 m處的RSSI值),通過加權(quán)質(zhì)心定位算法即可定位未知節(jié)點(diǎn)坐標(biāo)?;谒{(lán)牙信標(biāo)節(jié)點(diǎn)和樹莓派的定位實(shí)驗(yàn)原理如圖6所示
Figure 6 Localization experiment principle based on bluetooth beacon nodes and Raspberry圖6 基于藍(lán)牙信標(biāo)節(jié)點(diǎn)和樹莓派的定位實(shí)驗(yàn)原理圖
本實(shí)驗(yàn)選擇了一個(gè)6 m*8 m的會(huì)議室作為實(shí)驗(yàn)場(chǎng)地,該會(huì)議室為真實(shí)工作環(huán)境,其中內(nèi)置桌椅,該環(huán)境中的內(nèi)置物皆會(huì)對(duì)無線信號(hào)產(chǎn)生多徑效應(yīng)等影響。首先進(jìn)行測(cè)距實(shí)驗(yàn):固定樹莓派在房間中,然后分別在距離該樹莓派0.5 m、1 m、…、8 m處設(shè)置藍(lán)牙信標(biāo)節(jié)點(diǎn),共有16個(gè)測(cè)試點(diǎn)。在每個(gè)測(cè)試點(diǎn)上,通過樹莓派進(jìn)行RSSI值采樣,藍(lán)牙信標(biāo)節(jié)點(diǎn)每0.1 s廣播一次,測(cè)試中每個(gè)測(cè)試點(diǎn)采樣20 s,獲取到200個(gè)RSSI樣本點(diǎn)。然后對(duì)采集到的數(shù)據(jù)進(jìn)行高斯濾波和均值濾波處理,剔除RSSI波動(dòng)較大的值,最終獲得較為準(zhǔn)確的RSSI值。對(duì)16個(gè)測(cè)試點(diǎn)進(jìn)行測(cè)量后,得到的適應(yīng)該實(shí)驗(yàn)環(huán)境的無線信號(hào)傳輸模型如圖7所示。
Figure 7 RSSI-distance logarithmic fitting formula圖7 RSSI-距離對(duì)數(shù)擬合公式
對(duì)該測(cè)試曲線使用RSSI=RSSI0+10nlg(d/d0)+ε對(duì)數(shù)模型進(jìn)行擬合,最終得到該曲線擬合函數(shù)如式(25)所示。
RSSI=-6.661ln(d)+power+8.711
(25)
本文的測(cè)試程序是基于Linux下的bluz協(xié)議棧,使用智能終端樹莓派、藍(lán)牙信標(biāo)節(jié)點(diǎn)以及一套C開發(fā)的上位機(jī)程序作為開發(fā)平臺(tái),選擇了一個(gè)3 m*7 m的空曠走廊作為實(shí)驗(yàn)場(chǎng)地,實(shí)驗(yàn)布局如圖8所示。其中AB側(cè)為墻壁(內(nèi)部為金屬結(jié)構(gòu),易造成多徑效應(yīng))、CD側(cè)為空曠視野。將四個(gè)藍(lán)牙信標(biāo)節(jié)點(diǎn)分別置于實(shí)驗(yàn)區(qū)域的(0,0)、(7,0)、(7,3)、(0,3)坐標(biāo)位置,使用移動(dòng)終端樹莓派進(jìn)行RSSI采樣、濾波處理,得到優(yōu)化的RSSI值,根據(jù)4.1節(jié)中擬合出的適應(yīng)該環(huán)境的對(duì)數(shù)距離損耗模型,計(jì)算出RSSI對(duì)應(yīng)的距離值。
Figure 8 Optimization of RSSI experiment layout圖8 RSSI值優(yōu)化實(shí)驗(yàn)布局
移動(dòng)終端樹莓派依次經(jīng)過3個(gè)指定位置進(jìn)行測(cè)距實(shí)驗(yàn),RSSI信號(hào)處理優(yōu)化策略分別使用傳統(tǒng)高斯濾波及本文提出的基于聚類算法分析的高斯混合濾波模型兩種方式,分別處理四個(gè)信標(biāo)節(jié)點(diǎn)A、B、C、D到樹莓派位置1、2、3的RSSI值,本實(shí)驗(yàn)中樹莓派每個(gè)位置采集來自每個(gè)信標(biāo)節(jié)點(diǎn)的10組RSSI值,每組100個(gè)采樣值進(jìn)行濾波計(jì)算。將使用不同濾波方法優(yōu)化的RSSI代入到式(26)中,得到其對(duì)應(yīng)的距離值測(cè)距誤差公式為:
△d=|d-dt|
(26)
其中,d為測(cè)量距離,dt為真實(shí)距離。
兩種濾波方法實(shí)驗(yàn)結(jié)果的平均測(cè)距誤差分析如表1和表2所示。
Table 1 Average distance error of point A、D to the positon 1、2、3
Table 2 Average distance error of point B、C to the positon 1、2、3
由表1和表2可知,基于聚類算法分析的高斯混合濾波優(yōu)化機(jī)制明顯優(yōu)于傳統(tǒng)高斯濾波方法,其平均測(cè)距誤差為0.162 m,測(cè)距精度較傳統(tǒng)高斯濾波方法提高了52.02%,并且可看出,CD邊為空曠地帶,無障礙物干擾,信標(biāo)節(jié)點(diǎn)A、B廣播的信號(hào)比較純凈、無雜波,因此A、B信標(biāo)節(jié)點(diǎn)使用兩種濾波方式的精度相差不大;而AB邊為墻壁,信標(biāo)節(jié)點(diǎn)C、D廣播的信號(hào)出現(xiàn)多徑效應(yīng)、散射等干擾,移動(dòng)端獲取到的RSSI分布比較復(fù)雜。而由表2 可以看出,使用本文提出的高斯混合濾波方法有效濾除了因復(fù)雜室內(nèi)環(huán)境所導(dǎo)致RSSI異常值,測(cè)距精度大大提高,提高了室內(nèi)定位的適應(yīng)性。
關(guān)于定位的實(shí)驗(yàn)測(cè)試,選擇了一個(gè)6 m*8 m的會(huì)議室作為實(shí)驗(yàn)場(chǎng)地,該會(huì)議室為真實(shí)工作環(huán)境,其中內(nèi)置桌椅,該環(huán)境中的內(nèi)置物皆會(huì)對(duì)無線信號(hào)產(chǎn)生多徑效應(yīng)等影響。實(shí)驗(yàn)現(xiàn)場(chǎng)如圖9所示。將四個(gè)藍(lán)牙信標(biāo)節(jié)點(diǎn)分別置于房間的(0,0)、(0,6)、(0,6)、(6,6)坐標(biāo)位置,使用移動(dòng)終端樹莓派進(jìn)行對(duì)RSSI采樣、濾波處理,擬合出適應(yīng)該環(huán)境的對(duì)數(shù)距離損耗模型,之后通過基于距離修正策略的四邊測(cè)距定位算法得出移動(dòng)終端樹莓派的坐標(biāo)位置。
Figure 9 Experimental site layout圖9 實(shí)驗(yàn)現(xiàn)場(chǎng)布局
移動(dòng)終端樹莓派依次經(jīng)過5個(gè)指定位置進(jìn)行定位測(cè)試,分別使用加權(quán)質(zhì)心算法及本文提出的基于距離修正的加權(quán)質(zhì)心定位算法兩種方式,每5 s反饋一次定位信息,在每個(gè)測(cè)試點(diǎn)記錄10次定位點(diǎn)的坐標(biāo),每次然后計(jì)算定位的相對(duì)精度,即定位誤差。定位誤差公式為:
(27)
其中,(x,y)為移動(dòng)終端樹莓派定位得到的位置信息,(xe,ye)為真實(shí)位置。兩種定位算法實(shí)驗(yàn)結(jié)果的定位誤差最大值、最小值和平均值如表3所示。
Table 3 Experimental results of the two localization algorithms
由此得到加權(quán)質(zhì)心算法和修正距離的加權(quán)質(zhì)心算法的平均誤差如圖10所示。由圖10可以得出,在相同測(cè)試環(huán)境下,優(yōu)化方法的平均定位誤差明顯小于原始定位方法產(chǎn)生的誤差,測(cè)試中,使用加權(quán)質(zhì)心算法的平均定位誤差約為0.750 m,而采用本文提出的距離修正的加權(quán)質(zhì)心定位算法的平均定位誤差僅為0.483 m,性能提高約35.6%。
Figure 10 Average error comparison chart圖10 平均誤差對(duì)比圖
針對(duì)室內(nèi)復(fù)雜的環(huán)境使無線信號(hào)出現(xiàn)多徑效應(yīng)的現(xiàn)象,本文提出了基于聚類分析優(yōu)化的距離修正室內(nèi)定位算法,使用基于聚類分析的高斯混合模型的優(yōu)化策略,提高了測(cè)距精度。并且在傳統(tǒng)定位算法基礎(chǔ)上考慮因RSSI測(cè)距誤差導(dǎo)致三邊定位算法失效的情況,利用距離修正方案,提高定位的相對(duì)精度,即減小了定位誤差。實(shí)驗(yàn)結(jié)果表明,利用聚類分析的高斯混合濾波RSSI篩選策略可以減小室內(nèi)復(fù)雜環(huán)境影響和多徑效應(yīng)干擾對(duì)RSSI測(cè)距帶來的誤差,以及使用距離修正的加權(quán)四邊質(zhì)心定位算法相對(duì)于傳統(tǒng)方法獲得了更高定位精度以及更好的容錯(cuò)能力(即加權(quán)質(zhì)心定位算法失效情況),可以更好地應(yīng)用于室內(nèi)定位。但是,本文提出的定位算法仍無法實(shí)現(xiàn)智能終端在移動(dòng)狀態(tài)下實(shí)時(shí)定位,該機(jī)制將作為后續(xù)研究發(fā)展的主要方向。
[1] Dang Xiao-chao, Li Xiao-yan.Weighted correction model in wireless sensor network localization [J].Journal of Computer Applications,2012,32(2):355-358.(in Chinese)
[2] Pawel K,Javier A,Esteban E,et al.Angle-of-arrival localization based on antenna arrays for wireless sensor networks [J].Computers and Electrical Engineering,2010,36(6):1181-1186.
[3] Kumar S,Lobiyal D K.An advanced DV-hop localization algorithm for wireless sensor networks [J].Wireless Personal Communications,2013,71(2):1365-1385.
[4] Li X F, Chen L F, Wang J P,et al.Fuzzy system and improved APIT (FIAPIT) combined range-free localization method for WSN [J].KSII Transactions on Internet and Information Systems,2015,9(7):2414-2434.
[5] Oliveira L,Li H B,Almeida L,et al.RSSI-based relative localisation for mobile robots [J].AD HOC Networks,2013,13:321-335.
[6] Liu Hsin-chin, Hsuan Cheng-wei. AOA estimation for coexisting UWB signals with multipath channels [C]∥Proc of 2014 International Conference on Telecommunications and Multimedia,2014:173-178.
[7] Le T N,Kim J,Shin Y.TDOA localization based on particle swarm optimization in UWB systems [J].IEICE Transactions on Communications,2011,E94.B(7):2013-2021.
[8] Wang Qian,Jin Guang,Niu Jun.A hybrid localization algorithm based on RSSI [J].Chinese Journal of Sensors and Actuators,2015,12(12): 1823-1829.(in Chinese)
[9] Shi Wei,Gao Jun.An improved weighted centroid localization algorithm based on RSSI for wireless sensor network [J].Computer Appications and Software,2015,12(12): 68-70.(in Chinese)
[10] Ding En-jie, Qiao Xin, Chang Fei,et al.Improvement of weighted centroid localization algorithm for WSNs based on RSSI [J].Transducer and Microsystem Technologies,2013,32(7): 53-56.(in Chinese)
[11] Zhu Xiao-juan, Meng Xiang-rui. An algorithm of mobile node localization based on weighted centroid for wireless sensor networks [J].Computer Engineering & Science,2011,33(11):15-19.(in Chinese)
[12] Peng Bo.RSSI-based range error compensation localization algorithm in WSN [D].Dalian:Dalian University of Technology,2014: 28-30.(in Chinese)
附中文參考文獻(xiàn):
[1] 黨小超,李小艷.無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位加權(quán)校正模型[J].計(jì)算機(jī)應(yīng)用,2012,32(2):355-358.
[8] 王千,金光,鈕俊.一種基于RSSI的混合定位算法[J].傳感技術(shù)學(xué)報(bào),2015,12(12):1823-1829.
[9] 施偉,高軍.無線傳感器網(wǎng)絡(luò)中基于RSSI的改進(jìn)加權(quán)質(zhì)心定位算法[J].計(jì)算機(jī)應(yīng)用與軟件,2015,12(12):68-70.
[10] 丁恩杰,喬欣,常飛,等.基于RSSI的WSNs加權(quán)質(zhì)心定位算法的改進(jìn)[J].傳感器與微系統(tǒng),2013,32(7):53-56.
[11] 朱曉娟,孟祥瑞.基于加權(quán)質(zhì)心的無線傳感器網(wǎng)絡(luò)移動(dòng)節(jié)點(diǎn)定位算法[J].計(jì)算機(jī)工程與科學(xué),2011,33(11):15-19.
[12] 彭渤.基于RSSI測(cè)距誤差補(bǔ)償?shù)臒o線傳感器網(wǎng)絡(luò)定位算法研究[D].大連:大連理工大學(xué),2014:28-30.