徐 進(jìn),趙東明,吳小軍
(武漢理工大學(xué)自動化學(xué)院,湖北武漢 430070)
無線傳感器網(wǎng)絡(luò)技術(shù)的成熟和發(fā)展帶動了新興無線業(yè)務(wù)的出現(xiàn),越來越多的應(yīng)用都需要無線自動定位服務(wù)。無線傳感器網(wǎng)絡(luò)的定位算法分為測距算法和距離無關(guān)的定位算法兩大類[1]。基于測距算法是通過物理測量獲得節(jié)點(diǎn)間的距離或角度信息,使用三邊測量、三角測量或最大似然估計等定位算法。常見的測距技術(shù)包括TOA、TDOA、AOA、RSSI等[2-3]。距離無關(guān)的定位算法則不需要距離和角度信息,算法根據(jù)網(wǎng)絡(luò)連通性等信息來實(shí)現(xiàn)節(jié)點(diǎn)定位[4]。一般來說,測距定位算法具有較高的定位精度,但對節(jié)點(diǎn)硬件要求較高?;赗SSI的定位算法由于成本低,操作簡單而受廣泛的關(guān)注[5-6]。
但是,室內(nèi)環(huán)境中相比廣闊的室外有更多的干擾因子,使得各種定位算法的定位精度降低,誤差很大。因此,如何提高室內(nèi)定位精度是一個比較有意義的問題。目前,應(yīng)用于室內(nèi)無線定位的算法也很多,比如:基于RSSI差分修正的加權(quán)質(zhì)心定位算法[7],基于RSSI測距的差分修正定位算法[8],基于RSSI的三角形質(zhì)心定位算法[9],基于RSSI的無線傳感器網(wǎng)絡(luò)距離修正定位算法[10],這些算法在一定程度上提高了定位精度,可是不夠穩(wěn)定,個別節(jié)點(diǎn)定位誤差較大。在只有4個參考節(jié)點(diǎn)的情況下,定位精度還有很大提升空間。文中則通過對無線電傳播路徑損耗模型[11]的分析,提出了一種硬件開銷小、定位精度大、定位誤差小的基于室內(nèi)定位的差分修正改進(jìn)算法。
無線定位要求硬件開銷小,定位精度高。而室內(nèi)定位存在許多干擾因素,如反射、多徑效應(yīng)、物體遮擋、氣候等,使定位難度十分大,難以達(dá)到室內(nèi)定位要求的定位精度。許多算法需要通過增加參考節(jié)點(diǎn)數(shù)量來提高定位精度,然而成本也非常高。文中在不增加節(jié)點(diǎn)硬件數(shù)量的情況下,通過RSSI的測量得到節(jié)點(diǎn)距離相關(guān)信息,以三邊測量定位算法[12]為理論基礎(chǔ),提出了一種基于RSSI測距的差分修正改進(jìn)定位算法。
1.1無線電傳播路徑損耗模型分析
常用的無線電傳播路徑損耗模型有:自由空間傳播模型、對數(shù)距離路徑損耗模型、哈它模型、對數(shù)-常態(tài)分布模型等[11]。文中采用自由空間傳播模型和對數(shù)-常態(tài)分布模型,用于分析和仿真。自由空間傳播模型如下:
PL(d0)=32.44+10n·lg(d0)+10n·lg(f)
(1)
式中:PL(d0)為自由空間損耗,dB;d0為距信源的距離,m;f為頻率,MHz;n為路徑衰減因子,其范圍一般為2~6。
在實(shí)際應(yīng)用環(huán)境中,由于多徑、繞射、遮擋物等因素,對數(shù)-常態(tài)分布模型將更加合理。對數(shù)-常態(tài)分布模型如下:
PL(d)=PL(d0)+10n·lg(d/d0)+Xδ
(2)
式中:PL(d)為經(jīng)過距離d后的路徑損耗;Xδ為平均值為0的高斯分布隨機(jī)變數(shù),其標(biāo)準(zhǔn)差范圍一般為2~10;d0為參考距離,通常取1 m,代入式(1)中,便可得到PL(d0)的值。
目標(biāo)節(jié)點(diǎn)接收到參考節(jié)點(diǎn)的信號強(qiáng)度RSSI為:
RSSI=Psend+Pamplify-PL(d)
(3)
式中:RSSI為接收到的功率;Psend為發(fā)射信號的功率;Pamplify為天線的增益;PL(d)為路徑損耗。
將式(2)代入式(3),簡化后可得式(4)。
RSSI=b-10n·lg(d)
(4)
式中:b=Pt-PL(d0)-Xδ;Pt=Psend+Pamplify.
由式(4)可知,RSSI與10×lg(d)成線性關(guān)系。
2.2三邊測量法
假設(shè)3個參考節(jié)點(diǎn)的已知固定坐標(biāo)分別為Bi(xi,yi),Bj(xj,yj),Bk(xk,yk),待確定位置的目標(biāo)節(jié)點(diǎn)坐標(biāo)為O(x,y),該節(jié)點(diǎn)到各個參考節(jié)點(diǎn)的距離分別是di、dj、dk,根據(jù)二維空間距離計算公式,可以獲得一個非線性方程組:
(5)
根據(jù)方程組(5),每兩個方程進(jìn)行求解,分別求解得到(x1,y1)、(x2,y2)、(x3,y3)。
(6)
由方程組(6),求解出質(zhì)心坐標(biāo),作為目標(biāo)節(jié)點(diǎn)的定位坐標(biāo)O(x,y),這就是三邊測量定位的基本原理[12]。
2.3傳統(tǒng)的差分修正定位算法
傳統(tǒng)差分修正定位算法模型如圖1所示,參考節(jié)點(diǎn)A(x1,y1),B(x2,y2),…N(xn,yn),未知目標(biāo)節(jié)點(diǎn)M(x,y),而參考節(jié)點(diǎn)A是離未知目標(biāo)節(jié)點(diǎn)M最近的參考節(jié)點(diǎn),也就是發(fā)送信號強(qiáng)度值最大的節(jié)點(diǎn),作為差分修正參考節(jié)點(diǎn)。差分修正參考節(jié)點(diǎn)A與其余參考節(jié)點(diǎn)的測量距離為d12,d13…d1n,未知目標(biāo)節(jié)點(diǎn)M與其余參考節(jié)點(diǎn)的測量距離為d2,d3…dn.通過其余參考節(jié)點(diǎn)對差分修正參考節(jié)點(diǎn)的定位來實(shí)現(xiàn)對未知目標(biāo)節(jié)點(diǎn)定位坐標(biāo)的修正[13]。
圖1 傳統(tǒng)差分修正示意圖
(7)
2.4算法的改進(jìn)與實(shí)現(xiàn)
在傳統(tǒng)的差分修正算法中,僅選取一個差分修正參考節(jié)點(diǎn),這對目標(biāo)節(jié)點(diǎn)定位決定權(quán)過大,并且這個點(diǎn)的選取存在一些不合理因素。要達(dá)到很好的定位效果,必須有一個參考節(jié)點(diǎn)距未知目標(biāo)節(jié)點(diǎn)十分近,在實(shí)際情況下,這個條件是很難滿足的。
因此,針對室內(nèi)定位要求,提出了一種節(jié)點(diǎn)數(shù)量少、定位精度高的定位算法。只需要A、B、C、D這4個參考節(jié)點(diǎn),將其分別作為差分修正參考節(jié)點(diǎn)對未知目標(biāo)節(jié)點(diǎn)進(jìn)行定位。首先以A為差分修正參考節(jié)點(diǎn),B、C、D作為輔助參考節(jié)點(diǎn)。
(8)
(9)
便可根據(jù)上式求得偏移量(ΔxA,ΔyA),其中dAB,dAC,dAD分別表示A點(diǎn)到B、C、D的測量距離。然后利用B、C、D對未知目標(biāo)節(jié)點(diǎn)M進(jìn)行定位。
(10)
(11)
可求解到修正參考坐標(biāo)(xMA1,yMA1。同理,分別以B、C、D作為差分修正參考節(jié)點(diǎn)對M點(diǎn)定位,便可得到差分修正參考坐標(biāo)(xMB1,yMB1),(xMC1,yMC1)、(xMD1,yMD1)。
在傳統(tǒng)差分修正定位算法中,只表現(xiàn)出差分修正參考節(jié)點(diǎn)對目標(biāo)點(diǎn)定位的決定權(quán),而忽略了其余參考節(jié)點(diǎn)對目標(biāo)節(jié)點(diǎn)定位的影響力,因此也影響了定位精度。改進(jìn)的差分修正定位算法中,利用迭代次數(shù)r[14],求得各個差分修正參考節(jié)點(diǎn)的所對應(yīng)的r個修正坐標(biāo),然后分別取其均值:
(12)
(13)
迭代次數(shù)的應(yīng)用減小了個別誤差較大點(diǎn)對最終定位的影響力,明顯提高了定位精度。
最后通過加權(quán)算法[15],將測量距離均值的倒數(shù)和作為權(quán)重,更好地體現(xiàn)了各個差分參考節(jié)點(diǎn)對未知節(jié)點(diǎn)的定位影響力。計算出M點(diǎn)的定位坐標(biāo),如下式所示:
(14)
在Matlab平臺上,分別對傳統(tǒng)的差分修正定位算法和改進(jìn)后的算法進(jìn)行仿真。仿真條件是在一個10 m×10 m的正方形區(qū)域內(nèi),傳播路徑損耗模型選擇經(jīng)典的自由空間模型和對數(shù)-常態(tài)模型。在該定位區(qū)域內(nèi),放置4個參考節(jié)點(diǎn),其坐標(biāo)已知。未知目標(biāo)節(jié)點(diǎn)的坐標(biāo)由Matlab隨機(jī)生成函數(shù)來生成,在該區(qū)域內(nèi)隨機(jī)分布,一共生成10個未知目標(biāo)節(jié)點(diǎn)。然后根據(jù)RSSI值與距離的關(guān)系,由式(1)~式(3)生成RSSI數(shù)據(jù),并在數(shù)據(jù)中添加均值為0,標(biāo)準(zhǔn)差為3的高斯噪聲,作為RSSI的隨機(jī)分量,以模擬實(shí)際環(huán)境中的反射、多徑效應(yīng)、物體遮擋、氣候等帶來的影響。路徑衰減系數(shù)n=4,按照上述的算法來對上述兩種算法進(jìn)行仿真定位。改進(jìn)的定位算法中分別以迭代次數(shù)r=3和r=10進(jìn)行仿真,圖2~圖4是兩種算法的Matlab仿真結(jié)果圖。
一是設(shè)置間接費(fèi)用,大幅度提高項(xiàng)目參與單位、特別是項(xiàng)目承擔(dān)單位在項(xiàng)目預(yù)算中可自由支配的額度和開支范圍。以一個預(yù)算經(jīng)費(fèi)為500萬元的項(xiàng)目為例,政策調(diào)整前,所有項(xiàng)目單位只能提取28萬元用于對使用本單位現(xiàn)有儀器設(shè)備及房屋,日常水、電、氣、暖消耗,以及其他有關(guān)管理費(fèi)用的補(bǔ)助支出,且受到各個項(xiàng)目單位承擔(dān)項(xiàng)目經(jīng)費(fèi)額度的限制;調(diào)整后,同樣一個500萬元的項(xiàng)目,項(xiàng)目單位可以提取100萬元用于管理費(fèi)和績效支出,且項(xiàng)目承擔(dān)單位對間接費(fèi)用的使用具有分配權(quán)?!锻ㄖ愤€明確規(guī)定,績效支出由所在單位按國家有關(guān)規(guī)定統(tǒng)籌安排,甚至可以用于與項(xiàng)目關(guān)聯(lián)性不大的科研支出,具有獎勵性質(zhì)。
圖2 傳統(tǒng)定位效果圖
圖3 r=3時改進(jìn)定位效果圖
圖4 r=10時改進(jìn)效果圖
從上圖可以看出,改進(jìn)后的差分修正定位算法的定位精度明顯比傳統(tǒng)差分修正定位算法的大,表1則說明改進(jìn)后的定位誤差較小,仿真結(jié)果綜合說明定位精度有明顯的提高。
表1 傳統(tǒng)與改進(jìn)后的結(jié)果比較
該改進(jìn)算法在不增加額外的參考節(jié)點(diǎn)數(shù)量的同時,減小了個別誤差較大節(jié)點(diǎn)對定位的影響力,提高了定位精度,更好地體現(xiàn)了各個參考節(jié)點(diǎn)對未知節(jié)點(diǎn)的定位決定權(quán)。根據(jù)仿真結(jié)果可以發(fā)現(xiàn)迭代次數(shù)r越大,定位就越穩(wěn)定,且定位精度越高,但考慮到定位的實(shí)時性,經(jīng)過多次試驗(yàn)仿真,r=3時較為合適,更加符合室內(nèi)實(shí)時定位的要求。該改進(jìn)算法雖然大大提高了定位精度,但是室內(nèi)存在的許多干擾因子,如多徑效應(yīng)、遮擋物等是難以模擬的,依舊存在改進(jìn)空間。如需有更大的改進(jìn)可以從校正路徑損耗系數(shù)n進(jìn)行考慮。
參考文獻(xiàn):
[1]彭宇,王丹.無線傳感器網(wǎng)絡(luò)定位技術(shù)綜述.電子測量與儀器學(xué)報,2011,389-399.
[2]熊小華,何通能.無線傳感器網(wǎng)絡(luò)節(jié)點(diǎn)定位算法的研究綜述.機(jī)電工程,2009,13-17.
[3]王琦.基于RSSI測距的室內(nèi)定位技術(shù).電子科技,2012,(6):64-66.
[4]彭勃.基于RSSI測距誤差補(bǔ)償?shù)臒o線傳感器網(wǎng)絡(luò)定位算法研究.[學(xué)位論文].大連:大連理工大學(xué),2008.
[5]ARIAS J,MALGUKI A Z.An RSSI based Ad hoc location algorithm.Microprocessors and Microsystems,2004(28):403-405.
[6]ALIREZA N,JACEK I.A testbed for localizing wireless LAN devices using received signal strength.Proceedings of 6thAnnual Communication Networks and Service Research Conference(CNSR 2008).Halifax,2008:481-487.
[7]花超,吉小軍,蔡萍.基于RSSI差分修正的加權(quán)質(zhì)心定位算法.傳感器與微系統(tǒng),2012(5):139-144.
[8]任維政,徐連明,鄧中亮.基于RSSI測距的差分修正定位算法.傳感技術(shù)學(xué)報,2008(7):1247-1250.
[9]林瑋,陳傳峰.基于RSSI的無線傳感器網(wǎng)絡(luò)三角形質(zhì)心定位算法.現(xiàn)代電子技術(shù),2009(289):180-182.
[10]陳昌祥,達(dá)維,周潔.基于RSSI的無線傳感器網(wǎng)絡(luò)距離修正定位算法.通信技術(shù),2011(2):65-69.
[11]高國勝,陳俊杰,李剛.基于RSSI測距的信標(biāo)節(jié)點(diǎn)自校正定位算法.測控技術(shù),2009(8):93-97.
[12]高雷,鄭相全,張鴻.無線傳感器網(wǎng)絡(luò)中一種基于三邊測量法和質(zhì)心算法的節(jié)點(diǎn)定位算法.重慶工學(xué)院學(xué)報,2009(7):138-141.
[13]岳菲菲,關(guān)維國,鄒德君.基于RSSI差分修正的WSN定位算法.遼寧工業(yè)大學(xué)學(xué)報,2012(6):364-367.
[14]易平,鐘俊,石家駿.無線傳感器網(wǎng)絡(luò)中基于MDS的迭代定位算法優(yōu)化.傳感器與微系統(tǒng),2010(12):48-50.
[15]楊萍,李智.一種基于RSSI的權(quán)重值選擇及加權(quán)定位算法.信息與電子工程,2012(2):148-151.