李浩銘 鄢社鋒* 徐立軍 季 飛
①(中國科學院聲學研究所 北京 100190)
②(中國科學院大學 北京 100049)
③(華南理工大學 廣州 510641)
隨著海洋探索需求增強,水下傳感網(wǎng)絡技術正在得到越來越多的關注,而為水下傳感節(jié)點提供定位與導航服務正是水下傳感網(wǎng)絡的主要任務之一[1]。對于水下傳感網(wǎng)絡定位技術,近年來國內(nèi)外學者的關注點主要集中在各節(jié)點間是否需要時鐘同步[2]、是否考慮聲速分布不均勻因素[3–6]、定位協(xié)議[7–9]以及定位算法的附加功能[3,4,10,11]等方面。文獻[2]提出了一種各節(jié)點時鐘同步情況下基于雙程時間測量的水聲定位算法,該算法在常聲速梯度假設下,采用高斯-牛頓法對目標位置進行估計。文獻[3]提出了聯(lián)合解決水下傳感網(wǎng)絡中定位和時鐘同步的算法,待定位節(jié)點與信標節(jié)點間采用應答方式獲取雙程傳播時延,并引入一個積分常數(shù)來修正聲速分層的影響。文獻[4]提出了基于雙程時延測量的位置和時鐘聯(lián)合估計方法,采用等效常梯度聲速剖面來解決聲速分布不均帶來的定位誤差,但定位過程較復雜,周期較長。文獻[5]提出了各節(jié)點間時鐘已同步條件下考慮聲線彎曲的水下傳感網(wǎng)絡定位算法,通過卡爾曼濾波優(yōu)化接收到的時延信息,再采用凸優(yōu)化方法對待定位節(jié)點位置進行估計。文獻[6]提出了基于雙程時延測量并結合聲線跟蹤的定位算法,采用高斯-牛頓法估計最優(yōu)的待定位節(jié)點位置,但在信標節(jié)點布陣不佳時,算法發(fā)散。文獻[7]提出了基于移動預測的水下傳感網(wǎng)絡定位算法(Scalable Localization scheme with Mobility Prediction, SLMP),待定位節(jié)點根據(jù)自身的運動模型對自身位置進行預測,并通過信標節(jié)點的信息進行位置和運動模型的更新。文獻[8,9]提出了通過單信標測距對水下潛器進行定位的方法,潛器通過自身配備的慣性導航設備獲取自身軌跡,再結合行進時獲取的與信標間到達時間(Time Of Arrival, TOA)或到達角(Angle Of Arrival,AOA)信息,采用虛擬長基線方法估計出自身絕對位置。文獻[10]提出了通過最小二乘聯(lián)合估計所有節(jié)點的時鐘信息和待定位節(jié)點與各信標節(jié)點間距離,進而獲取待定位節(jié)點位置的算法。文獻[11]提出了一種分布式逐級網(wǎng)絡節(jié)點定位的方法,通過對已定位節(jié)點的定位誤差進行評估以將其升級為新的信標節(jié)點,從而擴大定位范圍。
上述方法考慮了水下傳感網(wǎng)絡定位中的大部分情形,但均需要待定位節(jié)點反復與信標節(jié)點通信。在需要對多個待定位節(jié)點同時進行定位服務,或待定位節(jié)點因任務需求需要靜默的情況下,上述方法均不適用。針對這些情況,文獻[12]首次提出靜默定位(Underwater Positioning Scheme, UPS)算法,該算法不需節(jié)點間時鐘同步且待定位節(jié)點可全程處于靜默接收狀態(tài),但該算法未考慮聲速不均勻分布問題,且算法通過降階法對待定位節(jié)點位置進行求解,存在定位盲區(qū)的問題。文獻[13]采用增加信標節(jié)點的方式解決UPS算法的定位盲區(qū)的問題,但增加信標節(jié)點無疑會大大提高算法的應用成本。文獻[14]對UPS算法進行了復現(xiàn),并通過實驗加以驗證。雖然后續(xù)的研究人員在靜默定位方面做出了很大的努力,但并沒有解決最初的問題,即聲速分布不均勻?qū)PS算法的影響,且沒有從本質(zhì)上解決定位盲區(qū)的問題。盡管在無線傳感網(wǎng)絡定位領域,文獻[15]已經(jīng)解決了定位盲區(qū)的問題,然而對于水下傳感網(wǎng)絡,此方法所需的通信量和計算量依然很大,這也導致其無法直接在水下傳感網(wǎng)絡中使用。
本文針對現(xiàn)有UPS算法的不足,提出了一種新的靜默式水下傳感網(wǎng)絡定位算法。通過聲線跟蹤技術,解決了聲速不均勻分布的問題。采用高斯-牛頓法估計最優(yōu)的待定位節(jié)點位置,解決了UPS算法存在定位盲區(qū)的問題。同時針對水下傳感網(wǎng)絡各參考節(jié)點布放時容易出現(xiàn)的定位陣型不佳問題,引入了改進的Tikhonov正則化方法,根據(jù)迭代效果反饋控制正則化參數(shù),提高了算法的穩(wěn)健性。最后通過仿真分析,討論了各個步驟的必要性和各項誤差對算法性能的影響,驗證了算法的有效性。
假設信標節(jié)點A為定位發(fā)起節(jié)點,該網(wǎng)絡內(nèi)信息傳遞的順序為A-B-C-D。在檢測到待定位節(jié)點T處于該區(qū)域內(nèi)時,信標節(jié)點A周期性廣播定位數(shù)據(jù)包,其中包括其當前的時鐘、經(jīng)緯度和深度等信息,待定位節(jié)點T于自身時鐘時刻 ta接收到來自信標節(jié)點A的定位發(fā)起信號。后面的信標節(jié)點依次在接收到前一信標節(jié)點發(fā)出的信號的一段時間τi,i=b,c,d后,廣播其自身的定位數(shù)據(jù)包和處理
圖1 水下傳感網(wǎng)絡靜默定位流程
下面對所提算法進行仿真,并與相關算法進行對比。
設置4個信標節(jié)點的位置分別為(–2500, 2500,3000) m, (–2500, –2500, 2010) m, (2500, –2500,4000) m和(2500, 2500, 1050) m。為不失一般性,設置待定位節(jié)點實際位置坐標為(1000, 500, 100) m。設置按照Munk典型聲速剖面設置水體聲速,水深5000 m。在100 m深度平面上的目標函數(shù)‖G(X)‖2分布如圖3(a)所示;在y =x ?500的坐標平面上的目標函數(shù)分布如圖3(b)所示。
由圖3可見,理想布陣情況下目標函數(shù)在全空間內(nèi)存在唯一最小值點,即為待定位節(jié)點真實位置,不存在多解情況。相比于UPS算法降階方程組所帶來的局限性導致其在信標節(jié)點附近存在定位盲區(qū),且需要人工排除多解的情況,本文算法既可獲得唯一解,又可在4信標通信范圍內(nèi)任意位置對待定位節(jié)點進行定位。
圖2 基于射線聲學的水下傳感網(wǎng)絡靜默定位算法流程圖
圖3 布陣區(qū)域內(nèi)目標函數(shù)分布情況
由本文第2節(jié)算法原理可以看出,本文算法定位精度的主要影響因素包括信標節(jié)點位置誤差、測時誤差和水下環(huán)境失配等。下面采用上述仿真條件,對算法涉及的各輸入?yún)?shù)引入一定的高斯隨機誤差,并進行200次蒙特卡洛仿真,以分析各參數(shù)的誤差對本文算法性能的影響,并與其他算法進行對比。
3.3.1 信標節(jié)點位置誤差
對水下待定位節(jié)點定位前,需對各信標節(jié)點的位置進行標校,以得到信標節(jié)點的精確位置,包含水平位置和深度信息兩方面。因此,信標節(jié)點位置誤差對本文算法的影響,需要分信標節(jié)點的水平位置誤差和深度誤差兩個方面進行討論。
信標節(jié)點深度一般由配備的深度傳感器測得,因此其深度誤差來源于配備的深度傳感器誤差。本算法和UPS算法受信標節(jié)點深度誤差影響如圖5(a)所示。
水下信標節(jié)點的水平位置需要由測量船事先標校獲得,一般地,測量船繞信標節(jié)點布放位置以圓形等對稱航跡航行,期間多次對信標節(jié)點進行應答式測距,再結合測量船自身GPS信息,采用反轉(zhuǎn)長基線原理等完成對信標節(jié)點水平位置的標校[17]。信標節(jié)點的水平位置誤差來源于多方面,包括信標節(jié)點深度誤差、測量船測時誤差、聲速誤差等。本文算法和UPS算法受信標節(jié)點的水平位置誤差影響如圖5(b)所示。
可以看出,隨著信標水平位置誤差和深度誤差的增大,本文算法的定位誤差也隨之增大。由于UPS算法定位誤差遠大于本文算法,相比之下,其對于信標的水平位置誤差和深度誤差均不十分敏感。
可見,信標節(jié)點位置的準確性將直接影響本文算法的定位精度。因此,在應用本文算法前,獲取信標節(jié)點的錨定準確位置,并考慮信標節(jié)點在水下位置的隨機擺動,對于提高本文算法的定位精度是十分必要的。
圖4 定位陣型不佳時本文算法迭代情況
圖5 各誤差來源對定位結果影響
3.3.2 測時誤差
本文算法屬于基于時間測量的定位算法,信號到達時間的測量誤差會直接影響算法的定位誤差。
本文算法中,采用雙曲調(diào)頻(Hyperbolic Frequency Modulated, HFM)信號通過匹配濾波實現(xiàn)對信號到達時間的測量。匹配濾波器的時間估計精度為1 /B,其中B為信號的帶寬,并且,各節(jié)點間的多普勒和水聲信道的多途效應也會對到達時間測量精度造成一定的影響。信號到達時間測量誤差對本文算法和UPS算法的影響如圖5(c)所示??梢钥闯觯S著測時誤差增大,本文算法定位誤差也隨之 增大,但誤差仍顯著小于UPS算法。
3.3.3 水下環(huán)境參數(shù)失配
本文算法中聲線跟蹤部分依賴于相對準確的水下環(huán)境參數(shù)輸入,考慮到水下傳感網(wǎng)絡的應用場景主要在深海中,水底地形較為平坦,因此聲速剖面的誤差成為影響本文算法精確度的主要因素。
聲速剖面的誤差分為與深度無關的測量誤差和與深度相關的時變偏差。此處引入剖面等效誤差概念來表征聲速剖面的失配程度[19],令
對算法中使用的1000 m以上水深的聲速剖面加入一定的測量誤差和時變誤差,其最終的定位誤差隨剖面等效誤差的變化如圖6所示。可見,本文算法對聲速剖面誤差較為敏感,后續(xù)研究將針對此問題進一步展開。
圖6 定位誤差隨剖面等效誤差變化關系
針對已有靜默定位算法存在定位盲區(qū)、多解以及未考慮聲速不均勻帶來的影響等問題,本文提出了一種改進的靜默式水下傳感網(wǎng)絡定位方法。算法通過融合聲線跟蹤技術和高斯-牛頓迭代方法使得算法可以在信標陣列通信范圍內(nèi)任意位置獲得唯一的待定位節(jié)點最優(yōu)位置,且修正了聲速分層分布對定位結果帶來的影響。同時,采用引入反饋控制機制的Tikhonov正則化方法,使得算法在信標陣型不佳的情況下,仍然保持較好的定位性能。仿真結果表明:該算法較已有的UPS算法具有更好的性能,且輸入?yún)?shù)存在一定誤差的情況下,仍能保持較好的定位效果,同時算法對信標布放陣型具有一定的穩(wěn)健性。