程遠國 陳 云 楊津驍
(海軍工程大學電子工程學院 武漢 430033)
無線傳感器網(wǎng)絡(wireless sensor networks,WSN)自組織、自適應和高冗余設計等特性使得其特別適用于目標的定位與跟蹤[1],而對目標的準確定位是目標跟蹤的前提.與傳統(tǒng)的傳感器(如雷達等)相比,WSN節(jié)點的軟硬件資源有限,要求運行其上的定位算法計算簡單、時間和空間復雜度低.目前目標定位方法主要有基于信號到達不同節(jié)點的時間的 TOA(time of arrival)方法[2]、基于信號到達不同節(jié)點的角度的DOA(direction of arrival)方法[3]、基于信號到達不同節(jié)點的時間差的 TDOA(time difference of arrival)方法[4-5].TOA方法定位精度高,但算法對時間同步要求較高,對節(jié)點的硬件和功耗的要求較高.DOA方法易受外界環(huán)境影響,且需要額外硬件,在硬件尺寸和功耗上不適用于大規(guī)模的WSN應用.TDOA方法具有較高的定位精度,且降低了時間同步的要求,不失為一種可行的WSN目標定位方法.本文采用一種基于聲傳感器節(jié)點的TDOA目標定位方法,目標發(fā)出聲信號,多個節(jié)點接收信號后,估計出信號到達的時間差TDOA,一個TDOA估計值對應的是2個傳感器節(jié)點為焦點的一對雙曲線,多個TDOA估計值對應多條雙曲線,這些雙曲線的交點即為被測信號源的位置.針對基于TDOA的目標定位問題,文獻[6]提出一種利用兩點確定聲源曲線、利用三點確定聲源范圍三角,最后采用質(zhì)心算法確定目標位置的方法.為簡化計算,其用于確定聲源曲線的兩點位于X軸上且對稱分布,這在節(jié)點隨機部署的WSN中不能得到保證.為提高算法的適應性,本文在文獻[6]的基礎上,建立絕對與相對坐標系,絕對坐標系指的是傳感器網(wǎng)絡所在區(qū)域的地理坐標,依靠節(jié)點自定位技術,每個節(jié)點能確定自己的位置.相對坐標系指的是在具體定位過程中,數(shù)量有限的幾個傳感器之間建立的局部坐標系.首先選擇2點建立相對坐標系X軸,為進一步簡化計算,選擇位于Y軸上的第三點確定聲源范圍三角.對目標的定位,是在各傳感器節(jié)點已經(jīng)知道自身絕對或相對坐標的基礎上開始的.在進行定位時,需要在相對坐標系中計算出目標位置后,再轉(zhuǎn)換到絕對坐標系,最終確定目標的位置.
為簡化計算,選擇2個節(jié)點S1,S2建立X軸,見圖1.目標T在t時刻發(fā)出聲信號,在t時刻后,節(jié)點S1,S2會相繼收到目標傳來的信號.
圖1 兩個傳感器確定目標位置曲線
聲信號傳播速度設為v,信號到達2個傳感器網(wǎng)絡節(jié)點S1,S2的時間差為Δt,則目標T到2個節(jié)點的距離之差Δd為
則目標的位置坐標就在這條雙曲線上.
1.1 中,已經(jīng)用2個已知位置坐標的傳感器確定了目標的坐標曲線,如果再建立一個范圍,那么這2個范圍的交集就是該目標t時刻的位置.如圖2所示,增加一個無線傳感器網(wǎng)絡節(jié)點S3(0,y1).
圖2 三點確定目標坐標
t時刻目標的信號在之后的不同時刻分別被節(jié)點S1,S2,S3收到,在每2個節(jié)點之間都產(chǎn)生了距離差值,分別記為ΔdS1S2,ΔdS1S3,ΔdS2S3對應的3條雙曲線分別為
在取定坐標和距離差參數(shù)時,要滿足B2-4AC≥0,才能使得方程有解.所以根據(jù)到達時間差的正負,舍去負根之后有
同理,可求得另外2個交點.理想情況下式(4)~(6)會交于一點,該點即為目標位置,但由于存在時間差測量誤差等誤差,距離差雙曲線不會相交于一點,而是兩兩相交形成三角形.這時可采用質(zhì)心算法來近似估計目標所在的位置(x,y).
在相對坐標系中解算出的目標位置需要轉(zhuǎn)換到絕對坐標系中,見圖3.XOY是由傳感器節(jié)點S1,S2,S3所確定的相對坐標系,而 X′O′Y′是整個傳感器網(wǎng)絡所在區(qū)域的絕對坐標系.其中,S1,S2,S33點的絕對坐標分別設為(xS1,yS1),(xS2,yS2),(xS3,yS3)相對坐標系原點O 的絕對坐標為(xO,yO),α是相對坐標與絕對坐標X 軸之間的夾角.
圖3 絕對與相對坐標轉(zhuǎn)換
坐標轉(zhuǎn)換可分為旋轉(zhuǎn)和平移兩個步驟.先將相對坐標系以O點為中心旋轉(zhuǎn)成坐標軸與絕對坐標系軸平行的坐標系,這里利用極坐標方程.相對坐標系的極坐標方程為
設旋轉(zhuǎn)后得到的坐標系極坐標方程為
由式(7)、(8)可得
平移時需要首先利用S1或S2,S33點的絕對坐標(xS1,yS1)或(xS2,yS2)、(xS3,yS3),求解出O的絕對坐標,由圖3可得
由式(8)和(10),就可以計算出目標T在絕對坐標系X′O′Y′下的坐標為
在Matlab中對上述坐標解算進行了模擬,傳感器監(jiān)測區(qū)域為1 000×1 000(平方單位),分成121個小方格,121個帶有聲傳感器的節(jié)點部署在這些小方格的頂點,傳感器通信模型采用文獻[7]中的概率0.9模型,通信半徑為100長度單位.坐標原點位于左邊界中點,目標運動軌跡為正弦函數(shù)曲線y=400sin(π/500vt),速度v0=50長度單位/s.波速vS為340長度單位/s,按照圖1~2原則選取3個傳感器節(jié)點來計算目標位置,目標到第i(i=1,2,3)個節(jié)點的時間差按照Si/vS計算,其中Si為目標到第i個節(jié)點的歐氏距離.分別計算t取20以內(nèi)整數(shù)目標的真實位置和計算位置,見圖4.
圖4 標解算位置與真實位置
從圖4可以看出,目標解算位置與真實位置的誤差較小,定位效果較好.
本文根據(jù)聲信號到達不同傳感器時所形成的一組時差,經(jīng)過解算確定目標位置.為簡化計算,選取了位于相對坐標系坐標軸上的3個特殊的傳感器節(jié)點來生成各自的聲源雙曲線,計算目標在相對坐標系中的位置,再通過坐標轉(zhuǎn)換,得到目標的絕對坐標系位置,從而實現(xiàn)目標定位.簡單的數(shù)值仿真表明,這種方法具有較好的定位精度.然而,需要建立更貼近實際的節(jié)點能耗和通信模型,設置較復雜的定位場景,進行進一步模擬仿真以評估算法在實時和能耗等方面的性能.
[1]王 偉.無線傳感器網(wǎng)絡若干關鍵技術研究[D].武漢:華中科技大學,2011.
[2]HARTER A,HOPPER A,STEGGLES P,et al.The anatomy of a context-aware application[C]//Proceedings of the 5th Annual ACM/IEEE International Conference on Mobile Computing and Networking,Seattle:ACM Press,1999:59-68.
[3]BULUSU N,HEIDEMANN J,ESTRIN D.GPS-Less low cost outdoor localization for very small devices[J].IEEE Personal Communications,2000,7(5):28-34.
[4]PRIYANTHA N,CHAKRABORTHY A,BALAKRISHNAN H.The cricket location-support system [C]//Proceedings of International Conference on Mobile Computing and Networking (MobiCom2000),Seattle:ACM Press,2000:32-43.
[5]陳維克,李文鋒,首 珩,等.基于RSSI的無線傳感器網(wǎng)絡加權質(zhì)心定位算法[J].武漢理工大學學報:交通科學與工程版,2006,30(2):265-268.
[6]張麗霞,汪文勇,李 炯.無線傳感器網(wǎng)絡的目標定位問題研究[J].電子科技大學學報,2006,35(2):239-241.
[7]周紅波.無線傳感器網(wǎng)絡的目標跟蹤算法研究[D].武漢:海軍工程大學,2011.