李 昂,陳姝君,王 艷
(南京理工大學(xué)紫金學(xué)院 ,江蘇 南京 210023)
近期,水下傳感網(wǎng)絡(luò)(underwater sensor networks,UWNs)在海域環(huán)境感測(cè)、軍事勘察等領(lǐng)域得到廣泛應(yīng)用[-2]。UWNs主要由浮標(biāo)和傳感節(jié)點(diǎn)組成。浮標(biāo)浮于水面,收集水下傳感節(jié)點(diǎn)的數(shù)據(jù)。而傳感節(jié)點(diǎn)位于下水,實(shí)時(shí)感測(cè)數(shù)據(jù),并以聲通信方式傳輸至浮標(biāo)。收集數(shù)據(jù)后,浮標(biāo)再以無線方式傳輸至控制中心。典型的UWNs 拓?fù)浣Y(jié)構(gòu)如圖1所示。
圖1 典型的UWNs 拓?fù)浣Y(jié)構(gòu)
而傳感節(jié)點(diǎn)位置信息對(duì)傳感節(jié)點(diǎn)所感測(cè)的數(shù)據(jù)有重要影響。若感測(cè)的數(shù)據(jù)沒有相應(yīng)的位置信息,則該數(shù)據(jù)無任何意義。目前,研究人員對(duì)無線傳感網(wǎng)絡(luò)的節(jié)點(diǎn)定位算法進(jìn)行大量的研究[3]。然而,針對(duì)UWNs的水下測(cè)距定位研究較少。
然而,由于水域通信對(duì)聲通信的快速衰減[4],如散射、反射、多徑衰落,僅通過簡單測(cè)量節(jié)點(diǎn)間距離難以獲取高的定位精度。
現(xiàn)存的測(cè)距方案遭受了聲速波動(dòng)的影響[5-6]。文獻(xiàn)[5]提出基于射線彎曲的定位算法(ray bending-based localization, RBL)。RBL算法依據(jù)節(jié)點(diǎn)的深度-聲速剖面(depth-dependent sound profile, SSP)信息估計(jì)節(jié)點(diǎn)位置。然而,該算法只考慮了射線彎曲情況(如散射),并沒有考慮反射。類似地,文獻(xiàn)[6]提出基于射線的根搜索(root finding, RF)測(cè)距(ray-based root finding ranging, RRFR)算法。相比于RBL,RRFR不僅考慮散射的直線路徑,也考慮了具有散射、反射的變化聲射線模型。此外,該算法引用壓力傳感器精確地測(cè)量了傳感節(jié)點(diǎn)的深度。當(dāng)獲取了兩個(gè)節(jié)點(diǎn)的深度以及射線到達(dá)時(shí)間(Time of Arrival, ToA),RRFR算法就利用根搜索算法計(jì)算垂直距離。
然而,根搜索RF是利用“平面二叉搜索”策略估計(jì)傳感節(jié)點(diǎn)位置,其需經(jīng)過多次的射線軌跡迭代。因此,RRFR算法計(jì)算成本大,運(yùn)行時(shí)間長。這就使得RRFR算法并不適合于實(shí)時(shí)應(yīng)用環(huán)境,如定位、跟蹤。
為此,本文提出基于BELLHOP的實(shí)時(shí)聲測(cè)距(real-time acoustic ranging, RAR)算法。RAR算法引用射線跟蹤模型,并對(duì)聲速時(shí)變,射線軌跡進(jìn)行補(bǔ)償,并壓縮搜索空間,降低運(yùn)算時(shí)間。實(shí)驗(yàn)數(shù)據(jù)表明,提出的RAR算法有效地平衡了測(cè)距精度與運(yùn)算開銷關(guān)系。
引用聲源和接收器間的信號(hào)到達(dá)時(shí)間差ToA進(jìn)行測(cè)距。依據(jù)ToA值,并引用BELLHOP射線跟蹤模型估計(jì)聲場(chǎng)[7]。
BELLHOP模型通過高斯波束跟蹤方法計(jì)算非均勻環(huán)境中的聲場(chǎng)。通過高斯近似方法處理能量焦散和絕對(duì)影響等問題,使其適用于復(fù)雜環(huán)境下的距離相關(guān)聲線傳播的計(jì)算。
BELLHOP模型依據(jù)輸入?yún)?shù),預(yù)測(cè)到達(dá)射線的軌跡。這些輸入?yún)?shù)包括垂直距離d,z軸(c(z))方向上的SSP、水深信息B、聲源深度zs、接收節(jié)點(diǎn)的深度zr、信號(hào)頻率fs以及射線數(shù)Nray。
假定接收節(jié)點(diǎn)能夠識(shí)別先到達(dá)的射線。接收節(jié)點(diǎn)就計(jì)算射線遍歷時(shí)間,并將些時(shí)間作為ToA。然后,再利用水壓傳感節(jié)點(diǎn)獲取深度值。
令d表示聲源離接收節(jié)點(diǎn)的距離。令表示從聲源至接收節(jié)點(diǎn)射線軌跡rtraj的長度。依據(jù)式(1)可粗略地估計(jì)的值
(1)
(2)
其中εss表示由未知聲速時(shí)變所導(dǎo)致的誤差,而εtraj表示由未知聲軌跡所引起的誤差。RAR算法的目的就是降低(εss+εtraj)的總體誤差,進(jìn)而提高對(duì)d的估計(jì)精度。
RAR算法旨在通過降低聲速補(bǔ)償和軌跡補(bǔ)償?shù)恼`差,提高定位精度。
圖2 聲速補(bǔ)償
(3)
(4)
(5)
由于射線的散射、反射等原因,形成軌跡誤差εtraj,如圖3所示。
圖3 軌跡補(bǔ)償
(6)
(7)
圖4 RAR算法的偽代碼
圖5 實(shí)驗(yàn)環(huán)境
為了更好地分析RAR算法性能[11],進(jìn)行實(shí)驗(yàn)仿真。實(shí)驗(yàn)環(huán)境如圖5所示。考慮兩個(gè)測(cè)試點(diǎn):第一個(gè)測(cè)試點(diǎn)VLA1離聲源位置為5800 m,第二測(cè)試點(diǎn)VLA2離聲源為4800 m。且這兩個(gè)測(cè)試點(diǎn)水深為40 m。同時(shí),選擇RRFR算法作為參照,并比較它們的歸一化測(cè)距誤差率(normal ranging error, NRE)性能,其定義如式(8)所示。實(shí)驗(yàn)的進(jìn)行時(shí)間為一天。
(8)
圖6 聲速測(cè)量值
圖7顯示RAR和RRFR兩個(gè)算法在兩個(gè)測(cè)試點(diǎn)的NRE值,如圖7所示。
圖7 在不同時(shí)間點(diǎn)的NRE
從圖7可知,在每個(gè)測(cè)距階段,RRFR算法與RAR算法的NRE的NRE非常接近。此外,也注意,相比于初始估計(jì)誤差,RAR算法、RRFR算法的測(cè)距誤差分別提高了近32 m、40 m。
盡管RAR算法與RRFR算法的NRE很相近,但是RAR算法的運(yùn)行時(shí)間遠(yuǎn)低于RRFR算法。表1 顯示了RAR和RRFR算法完成兩個(gè)測(cè)試點(diǎn)測(cè)距的運(yùn)行時(shí)間。
表1 運(yùn)行時(shí)間
從表1可知,RAR在4800 m、5800 m的平均測(cè)距時(shí)間分別為2.15 s、2.38 s,而RRFR算法的在這兩個(gè)測(cè)試點(diǎn)的平均測(cè)距時(shí)間高達(dá)為16.32 s、18.56 s。原因在于:RAR算法降低了射線跟蹤迭代次數(shù)。
針對(duì)水下傳感網(wǎng)絡(luò)的聲測(cè)距問題,提出基于實(shí)時(shí)聲測(cè)距RAR算法。RAR算法引用BELLHOP模型,對(duì)聲速時(shí)變和射線軌跡進(jìn)行補(bǔ)償,同時(shí),通過減少射線跟蹤迭代次數(shù),降低搜索空間,進(jìn)而降低運(yùn)算時(shí)間成本。實(shí)驗(yàn)數(shù)據(jù)表明,相比于RRFR,提出的RAR算法能夠以低的運(yùn)行時(shí)間完成測(cè)距精度。