危厚琴 馬惜平
(北華大學電氣信息學院,吉林 吉林132021)
(1)無線傳感器網絡定位的幾個常用術語:
到達時間:信號從一個節點傳播到另一個節點所需時間。
到達時間差:不同傳播速度的信號從一個節點到達另一個基點所需要的時間之差。
到達角度:節點接收到的信號相對于自身軸線的角度。
視距關系(Light of Sight,LOS):兩個節點之間沒有障礙物,能夠直接通信。
非視距關系(Non Light of Sight,NLOS),兩個節點之間有障礙物,不能直接通信。
跳數(Hop Count),兩個節點之間的跳段之和。
(2)無線傳感器網絡定位的基本概念
無線傳感器網絡中的節點定位是指傳感器節點根據網絡中少數已知節點的位置信息,通過一定的定位技術確定網絡中其他節點的位置信息的過程。
在無線傳感器網絡中節點通常可以分為信標節點和未知節點,其中信標節點也稱為錨節點或者參考點,未知節點也稱為普通節點。信標節點是位置信息已知的節點,未知節點是未知信息未知的節點。信標節點一般所占比例很小,通常通過手工配置或者配備GPS接收器來獲取自身的位置信息。
除此之外還有一種節點稱為鄰居節點,鄰居節點是指傳感器節點通信半徑內的其他節點。
WSN定位方法有兩種:基于測距和無需測距。
1)基于測距
基于測距(Range-based):假設在傳感器網絡中某些節點位置信息已知,通過某些手段來估算其他節點的位置信息。在這里面通常有兩個步驟:測距和位置估算。
因為要通過信標節點得到未知節點的位置信息,必須先確定信標節點到未知節點的距離,才能得到未知節點的位置信息。
①通常測距的方法有4種:
A、基于到達時間(TOA)的測距
這種方法是根據已知信號的傳播速度及信號在發送節點和接收節點之間的傳播時間來估算距離,這種方法要求能夠非常精確地獲取發送節點和接收節點之間的傳播時延,這個是比較困難的,難度很大,不太適合無線傳感器網絡。
B、基于到達時間差(TDOA)的測距
這種方法中發送節點同時發送兩種不同傳播速度的信號、接收節點根據兩種信號到達的時間差和他們的傳播速度來計算距離。假若兩種信號的傳寶速度為v1和v2,到達時間分別為t1和t2,發送節點到接收節點的距離為d,則有:

可得d=(t1-t2)v1v2/(v2-v1)
C、基于到達角度(AOA)的測距
這種方法根據接收信號到達時候與自身軸線的角度來計算,這種方法對硬件成本要求很高,要求配備天線陣列,不太適合無線傳感器網絡。
D、基于接收信號強度(RSS)的測距
信號在傳播過程中會有衰減,無線信號的發射功率和接收功率存在某種映射關系,因此可以利用關系這個來估算距離。
②常用的位置估算方法有下面兩種:
A、三邊測量法
上面舉的例子中的位置估算方法就是三邊測量法,此處不再贅述。
至于某些文獻上提到的三角測量法個人覺得跟三邊測量法是一回事,就不再介紹了。
B、最大似然估計法
2)無需測距(range-free)
無需測距的定位算法不需要直接測量節點之間的距離或者角度,而是根據網絡的連通性來實現位置估計得,典型的無需測距的算法主要有以下幾種:
(1)質心算法
質心算法基于兩個假設條件:射頻信號的傳播遵循理想的圓球模型;節點的通信半徑相同且不會改變。
質心算法是一種完全基于網絡連通性的定位算法,其計算和實施難度都比較小,但是算法精度不高,并且通常要求信標節點具有較高的密度。
(2)DV-HOP(Distance Vector-Hop)算法
DV-HOP算法是為了避免對節點距離直接測量而提出的一種基于矢量路由的非測距定位算法。該算法的核心思想是通過距離矢量路由方法獲取未知節點與信標節點之間的最小跳數,并計算每跳的平均距離,然后以每跳的平均距離與最小跳數的乘積作為未知節點與信標節點的估算距離,再使用三邊測量法估算未知節點的坐標位置。
(3)APIT算法
APIT算法的基本思想同質心算法的思想類似,它利用由信標節點組成的三角形覆蓋重疊區域來確定未知節點的位置。在APIT算法中,未知節點首先在其鄰居節點中收集信標節點的信息。然后任意選取3個信標節點,判斷自己是否在這3個信標節點組成的三角形區域內,然后不斷這樣循環選取3個信標節點進行判斷,這樣,未知節點可以確定多個包含自己的三角形區域,這些三角形區域的重疊部分是一個多邊形,它確定了更小的包含未知節點的區域,然后以這個多邊形區域的質心作為未知節點的坐標。
(4)MAP算法
MAP是一種基于移動信標節點的非測距定位算法,也有稱為MAN。其基本思想是利用可移動的信標節點在監測區域中移動并周期性的廣播其當前的位置信息,然后可以確定兩條以未知節點為圓心的弦,這兩條弦的垂直平分線的交點就是圓心。
該算法有與其他非測距定位算法相比有較高的精確度,但是缺點是移動節點是必須要有足夠能量支持其在監測區域內移動,并且當未知節點的位置發生變化時,該算法有比較大的誤差。
(5)Amorphous算法
(6)凸規劃定位算法
凸規劃定位算法的核心思想是:如果兩個節點能夠直接進行通信,則它們之間的距離必定小于節點的通信半徑。
(7)Ring-Overlapping算法
上算法都是有信標節點的定位算法,曾有人提出了一些沒有信標節點的定位算法如SPA算法,這種算法主要是建立全局坐標系來估算未知節點的位置,但是這種算法復雜度非常高,不適合用于大規模網絡,也有人提出針對SPA算法的改進算法,如SDGPSN算法。
還有一部分人提出了一些其他的算法,比如AFL算法,其利用的是局部估算方法。還有人提出了基于分簇的定位算法。
無線傳感器網絡定位技術雖然在眾多領域中應用,但其應用環境來說相對單一化,也就是說每一種算法針對的只是某一個問題,或者某一種特定的場景。在實際生活中,一單環境發生變化,該算法就會出現較大誤差,甚至不再適用。因此為了適應復雜多變發的環境,我們應該研制出更多種類的定位算法或者定位系統。另外,安全隱患也是另一個需要研究的內容,一方面是需要節點的位置信息,另一方面,透露節點的位置信息,就會造成網絡安全問題。解決這一問題的最好途徑就是對信息進行加密。因此,無線傳感器定位技術的研究任重而道遠。