周文濤,劉 峰,劉 璞,高亞豪,何 偉
(北京自動化控制設備研究所,北京 100074)
測向交叉定位是通過多個來向矢量相互交叉實現對目標的定位,只需要測量出信號來向即可,因此,該方法具有較強的抗欺騙性和抗干擾性,被廣泛應用于無源被動定位領域[1-2]。2014年以來,以星鏈(Starlink)為代表的第二次低軌星座建設潮流迅速蔓延至全球,據不完全統計,全球已經提出了數十種低軌星座計劃,且這一數字不斷攀升。僅Starlink計劃建設的4.2萬顆衛星,便已經超過有史以來人類發射的所有低軌衛星數量之和[3]。數量龐大的非合作低軌衛星給衛星定位帶來了新的發展機遇。
在得到非合作衛星的位置信息后,可以通過獲取信號來向實現定位[1]。非合作衛星的位置信息可以通過簡化常規/深空擾動的近似解析解(SGP4/SDP4)模型和美國航空司令部發布的兩行根數(two-line element,TLE)文件獲取。SGP4模型適用于近地軌道計算,而SDP4是深空擾動的近似解析解模型,具有相對較高的中長期軌道預報精度。已有文獻表明,該模型對近地軌道的定軌精度為百米量級[4]。測向交叉定位的定位誤差會隨著信號接收機與發射機之間的距離增大而增大[2],因此盡量選擇軌道較低的低軌(low Earth orbit,LEO)衛星[5-6]。
測向交叉定位主要分為兩種類型,一種是通過測量用戶發出的信號到已知位置基站的角度信息,在基站中計算用戶位置,至少需要2個基站才能通過交叉的方式進行定位[7];另一種類型是自身定位,信號發射機位于已知位置點上,而用戶接收機位于待求位置點上,用戶接收到信號后,通過測量得到角度信息,在接收機中計算用戶位置,信號發射機同樣需要至少2個才能定位[8]。衛星定位屬于自身定位,即一顆衛星就是一個信號發射機,用戶通過接收衛星信號獲取導航觀測量進行定位。但是兩種定位方式的原理類似,都是通過多個已知位置點到待求位置點的矢量交叉得到定位結果[9]。隨著目標環境的日益復雜,國內外針對測向交叉定位的研究一直在穩步進行,取得了豐厚的研究成果。R.G.Stansfield在1947年提出了基于測角的無源目標跟蹤[10],后續諸多學者針對Stansfield算法進行了改進,例如最大似然估計法[11]、最小二乘法[12]、離散概率密度法[13]及聚類法[14-15]等,但是Stansfield算法均是基于二維平面定位。將二維拓展到三維后,除了方位角外增加了俯仰角,但是二維的定位算法同樣也可以應用于三維,可以通過方位角計算出目標在水平面的投影位置,再通過俯仰角計算出目標的三維位置。信號的間歇性輻射也會對定位產生較大的影響[16]。測向交叉定位算法必須基于同一笛卡爾坐標系。在衛星定位中,用戶接收到的衛星信號的方位角與俯仰角是基于用戶當地站心坐標系,而衛星通過星歷或者歷書等參數解出來的位置是基于地心地固(Earth-centered Earth-fixed,ECEF)坐標系。文獻[17]直接通過坐標轉換將衛星站心坐標系轉換為ECEF坐標系,但是需要知道衛星的姿態角,實際定位過程中不知道接收機的姿態角。文獻[18]采用牛頓迭代處理,需要將坐標方程進行轉換,將測向方程的迭代處理中間結果轉換到ECEF坐標系中,但是未考慮俯仰角的定位方程,從而將目標高度設為定值。本文提出了一種迭代測向交叉定位的方法用于解決坐標系不一致的問題,并通過仿真驗證了算法的可行性。
本文的結構如下:首先介紹了利用方位角與俯仰角進行三維最小二乘測向交叉定位的基本原理;針對角度信息與衛星位置基于不同坐標系的問題,提出了一種基于迭代方法的最小二乘測向交叉定位算法;通過仿真分析,評估了測角精度、衛星軌道高度和定位衛星數對定位誤差的影響;最后評估了不同收斂條件下迭代次數和定位誤差的變化。
傳統測向交叉定位也被稱為到達角(angle of arrival,AOA)方法,其原理是通過測量用戶接收到2個或2個以上已知位置的發射機發射信號的方向矢量,方向矢量之間相互交叉即可得到用戶的位置。


圖1 衛星定位中的方位角與俯仰角Fig.1 Azimuth and pitch angle in satellite positioning
每個方位角和俯仰角均可以表示為發射機位置和用戶位置的函數
(1)
當發射機只有2個時,可以通過角度關系和正余弦定理解算出用戶位置;當發射機大于2個時,可以通過最小二乘的方式解出位置信息。下面描述使用最小二乘的方法解用戶位置的具體過程。

(2)
其中,方位角量測矩陣Hφ和俯仰角量測矩陣Hθ分別為
(3)
(4)
其中

(5)
每迭代一次,式(2)就將(xC-,yC-,zC-)的值重置為上一次的迭代結果(xC+,yC+,zC+),直至結果收斂。
對于傳統測向交叉定位,發射機與用戶必須處于同一坐標系下。對于非合作低軌衛星定位而言,根據TLE文件解析出的衛星位置是以ECEF坐標系為基準,而用戶接收到的衛星信號的方位角與俯仰角是基于用戶當地站心坐標系(本文后續的站心坐標系均為東北天坐標系)。站心坐標系與ECEF坐標系的轉換需要已知用戶當地的經緯度,因此,不能直接將傳統測向交叉定位應用于衛星定位,可以通過迭代的方式得到用戶位置,如圖2所示。

圖2 迭代測向交叉定位Fig.2 Iterative direction finding and cross positioning
(6)
首先假設用戶初始緯經高坐標為(B-,L-,H-),則可以得到該初始位置下ECEF坐標系與東北天坐標系之間的轉換矩陣
(7)

(8)

(9)

為了驗證所提算法的可行性做出了如下仿真。仿真采用的星座為下一代銥星(Iridium-NEXT)星座。在計算衛星位置時加入了隨機500 m的誤差。對于低軌衛星,信號傳播延遲經過計算,其量級為幾十米,相較于衛星軌道誤差對定位誤差的影響較小。考慮信號傳播延遲,需要重復迭代計算衛星位置,計算量較大,因此仿真時未考慮信號傳播延遲。仿真時也未考慮本地鐘差和大氣延遲等誤差。假定用戶位置處于北緯39°,東經116°,高度90 m,迭代初值設置為緯度0°,經度0°,高度0 m,最終收斂至1 m以內停止迭代。首先仿真某時刻銥星星座下的真實方位角和俯仰角,衛星天頂圖如圖3(a)所示。針對仿真得到的實際方位角和俯仰角加入隨機測角誤差,得到測角精度和定位誤差之間的關系如圖3(b)所示。圖中橙線表示某次測角精度下的定位誤差,藍線表示某測角精度下定位誤差的克拉美羅下界(Cramer-Rao lower bound,CRLB)。可以看出,隨著測角誤差越來越大,定位誤差也隨之增大,而且定位誤差振蕩越來越劇烈。測向交叉定位對于測角誤差較為敏感。

(a)

(b)圖3 測角精度對定位誤差影響Fig.3 Influence of angle measuring accuracy on positioning error
為了得出衛星軌道高度與定位誤差的關系,進行如下仿真。仿真5顆衛星的位置信息,其中軌道高度從120 km一直上升到360 km。測角誤差設定為0.5°。最終得到衛星軌道高度與定位誤差之間的關系,如圖4所示。由圖4可以看出,隨著衛星軌道高度的增加,定位誤差不斷增大。低軌衛星不論軌道高度如何低,距離地面也有上百千米,定位誤差會由于距離的原因被放大,軌道高度越高,定位誤差越大。

圖4 衛星軌道高度對定位誤差影響Fig.4 Influence of satellite orbit height on positioning error
為了得出衛星數目與定位誤差的關系,進行如下仿真。先仿真3顆衛星的位置信息,測角誤差設定為0.5°。通過迭代測向交叉得到最終定位誤差。然后在3顆衛星的基礎上依次增加1顆衛星,每次增加的衛星不改變之前已有的衛星位置。表1統計了不同衛星數目下定位誤差的均值。由結果可以看出,隨著衛星數目的增加,定位誤差會逐漸降低。

表1 不同衛星數下定位誤差均值統計Tab.1 Statistics of average positioning error under different number of satellites
由于該算法使用迭代的方式進行運算,加上迭代的過程中涉及大量的三角函數運算和矩陣求逆運算,每迭代一次都要進行一次最小二乘解算,算法的運行時間受迭代次數的影響較大,因此需要合理地選取最終迭代收斂條件,以平衡算法運行時間與定位誤差之間的關系。因此進行如下仿真。仿真繼續采用Iridium-NEXT星座某一時刻的衛星位置作為基準。假定用戶位置處于北緯39°,東經116°,高度90 m,迭代初值設置為緯度0°,經度0°,高度0 m。測角誤差設定為0.1°和0.5°。連續進行1 000次迭代測向交叉仿真,每次迭代測向交叉增加迭代收斂范圍。最終得到圖5所示的仿真結果,展示了不同收斂范圍下的迭代次數和定位誤差的變化曲線。測角精度為0.1°時,當收斂條件增加到8 km后,迭代次數維持在5次以下;但是當收斂條件增加到大約30 km后,定位誤差開始明顯增大;收斂條件在30 km以內時,定位誤差的變化不明顯。當測角精度為0.5°,迭代次數相較于測角精度為0.1°,變化不明顯,但是定位誤差沒有后者變化明顯。因此,在選取迭代的收斂條件時,可以綜合考慮迭代次數和定位誤差、測角精度之間的關系,將收斂范圍設置為8~30 km之間。

圖5 不同收斂條件下迭代次數與定位誤差關系Fig.5 Relationship between number of iterations and positioning error under different convergence conditions
本文針對用戶接收到的衛星信號的角度信息與衛星位置二者之間采用不同坐標系的情況,提出了一種新的迭代測向交叉定位算法。首先假設一個用戶位置作為迭代初值,將用戶得到的東北天坐標系下方位角與俯仰角轉化為ECEF坐標系下的單位矢量,再通過最小二乘的方式得到本次迭代的定位結果,然后將定位結果重新帶回迭代初值,通過迭代的方式得到最終定位結果。通過仿真分析,考慮了測角精度、衛星軌道高度和定位衛星數對迭代測向交叉定位的影響,并分析了不同收斂條件下迭代次數和定位誤差的變化關系。
1)測向交叉定位對測角精度敏感,提高測角精度依然是后續發展的主要方向;
2)衛星軌道高度越高,定位誤差越大,因此盡量選擇軌道較低的衛星,可以提高定位精度;
3)迭代過程計算量大,需要根據測角精度和定位誤差合理選擇迭代收斂條件,降低運算量。
本文的研究內容可以為后續非合作低軌衛星測向交叉定位提供初步的理論指導,也可以進一步推廣到不同坐標系下測向交叉定位算法的應用。