劉 巖,饒才杰,呂 達(dá),白志強(qiáng)
(中國航天科工信息技術(shù)研究院,北京100070)
組合GPS/GLONASS增加了觀測衛(wèi)星的個數(shù),提高了衛(wèi)星的可用性,改善了衛(wèi)星定位的幾何結(jié)構(gòu),通過融合可以提高定位精度和可用性,解決GPS網(wǎng)絡(luò)RTK定位中困難地區(qū)的定位問題,具有重要應(yīng)用價值[1-2]。因此,研究 GLONASS系統(tǒng)定位尤其是組合定位有重要實用價值。如何根據(jù)GLONASS廣播星歷進(jìn)行衛(wèi)星位置計算是組合定位的重要一環(huán)。GLONASS廣播導(dǎo)航電文沒有給出開普勒軌道參數(shù),對于一個給定的時刻,不能通過最新的導(dǎo)航電文參考時刻的開普勒軌道參數(shù)直接計算衛(wèi)星位置。GLONASS導(dǎo)航電文給出的是PZ-90坐標(biāo)系下參考時刻衛(wèi)星的運動狀態(tài)向量,包括參考時刻衛(wèi)星的位置、速度、日月攝動加速度等,每30min更新一次,這決定了對于某一時刻的衛(wèi)星位置,需要以上述的衛(wèi)星運動狀態(tài)向量為初值,采用受力模型通過積分得到[3]。
大量的國內(nèi)外文獻(xiàn)對GPS衛(wèi)星位置的計算方法進(jìn)行了闡述,但對GLONASS衛(wèi)星位置計算方法的研究較少。目前GLONASS衛(wèi)星軌道數(shù)值積分方法主要有龍格-庫塔法(Runge-Kutta),其中以四階龍格-庫塔法最為常用。文獻(xiàn)[4]等推導(dǎo)了GLONASS衛(wèi)星在地固坐標(biāo)系中的運動方程,并簡要介紹了利用龍格-庫塔法進(jìn)行軌道積分的數(shù)值結(jié)果;文獻(xiàn)[5]對龍格-庫塔法進(jìn)行了分析;文獻(xiàn)[6]利用龍格-庫塔法實現(xiàn)了GLONASS衛(wèi)星軌道求解。文獻(xiàn)[7]完成了定步長龍格-庫塔法的計算程序。但是,龍格-庫塔法在計算某一時刻衛(wèi)星位置和速度時只用到前一步的信息,為了保證定位精度,需要多次重新計算多個點處的函數(shù)值[8],計算量較大。采用Adams線性多步預(yù)測校正法來實現(xiàn)GLONASS衛(wèi)星位置解算,該方法通過較多地利用前面幾步的已知信息,在保證較高精度的前提下,運算量降低為龍格-庫塔法的50%,同時穩(wěn)定性更好。實驗結(jié)果表明,Adams線性多步預(yù)測校正法是一種求解GLONASS位置的有效方法。
GLONASS衛(wèi)星在PZ-90坐標(biāo)系下的運動方程為[3]
式中,x,y,z分別表示衛(wèi)星在PZ-90坐標(biāo)系下的坐標(biāo);vx,vy,vz分別表示三個方向的衛(wèi)星速度,其通式為而V={v,v,v}為衛(wèi)星的速度向xyz量,dX={dx,dy,dz).
式中:地球引力常量μ=398 600.44km3/s2;衛(wèi)星到地球質(zhì)心的距離地球的長半軸ae=6 378.136km;地球重力位第二帶諧系數(shù)J20=0.001 082 63;地球自轉(zhuǎn)速度ω=0.000 072
為日月攝動加速度。t時刻式(2)的函數(shù)形式可以表示為
其通式為
式中:a為加速度向量;X={x,y,z}為衛(wèi)星的坐標(biāo)向量;為日月的攝動加速度向量。
GLONASS每30min更新一組新的星歷參數(shù),某一時刻ti的衛(wèi)星位置和速度需要采用數(shù)值積分的方法求解,要以最新星歷的參考時刻tb為參考時刻,并以該時刻衛(wèi)星的速度和坐標(biāo)為起算數(shù)據(jù),對加速度和速度進(jìn)行積分,其積分通式為
P階龍格-庫塔法原始公式如下:
使用龍格-庫塔法由yn計算un+1時,只用到前一步的信息yn,為了提高運算精度,需要重新計算多次函數(shù)值f(x),由于解決實際問題所花費的代價主要取決于求解函數(shù)值的個數(shù),所以運算量較大。
經(jīng)過一個步長后,使用四階龍格-庫塔積分法(以下簡稱R-K法)計算GLONASS衛(wèi)星的速度和位置坐標(biāo)為
R-K法屬于單步法,在計算時刻GLONASS衛(wèi)星的速度Vi+1和位置坐標(biāo)Xi+1時,只用到前一步的信息Vi和Xi,為了提高運算精度,重新計算了4次加速度值a1,a2,a3,a4,由于進(jìn)行軌道積分所花費的代價主要在于求解加速度,如式(2)所示,因此,使用R-K方法進(jìn)行GLONASS衛(wèi)星位置解算運算量較大。
針對龍格-庫塔方法進(jìn)行軌道積分運算量大的缺點,研究應(yīng)用Adams線性多步法來進(jìn)行GLONASS衛(wèi)星位置解算,通過較多地利用前面幾步的已知信息,構(gòu)造計算量小、精度高的GLONASS衛(wèi)星位置解算的新算法。Adams線性多步公式包括隱式公式和顯式公式,同階的隱式公式比顯式公式精確,而且穩(wěn)定性也好。Adams線性多步法公式為
當(dāng)βk=0為顯式公式,當(dāng)βk≠0為隱性公式。通常將四步四階顯式公式作為預(yù)測公式,將三步四階隱式公式作為校正公式聯(lián)合使用,如式(10)所示。選用四步五階隱式公式作為校正公式,精度提高一階,本文選用的預(yù)測校正公式如式(11)所示:
采用Adams線性多步預(yù)測校正法(以下簡稱Adams法)計算tt+1時刻的速度Vi+1和位置坐標(biāo)Xi+1公式如下:
通過顯式公式對ti+1時刻GLONASS衛(wèi)星位置和速度值進(jìn)行預(yù)測,如式(12)所示:
通過隱式公式對ti+1時刻GLONASS衛(wèi)星位置和速度預(yù)測值進(jìn)行校正,從而得到準(zhǔn)確值,如式(13)所示:
采用Adams法計算ti+1時刻的速度Vi+1和位置坐標(biāo) Xi+1時,需要用到前4步的信息Vi,Vi-1,Vi-2,Vi-3和 Xi,Xi-1,Xi-2,Xi-3,通過較多地利用已知信息,實現(xiàn)了運算量小,高精度的解算。Adams線性多步預(yù)測校正法解算GLONASS衛(wèi)星位置的特點如下:
1)Adams算法的計算量大約是R-K方法的50%.因為采用 Adams法計算ti+1時刻的速度Vi+1和位置坐標(biāo)Xi+1時只需計算兩次加速度值ai,ai+1,而采用R-K法時需計算4次加速度值a1,a2,a3,a4,由于計算加速度是GLONASS軌道積分過程中運算量較大的部分,由式(2)可見,所以Adams算法可以在很大程度上降低運算量。
2)Adams算法比R-K算法截斷誤差高一階。R-K法具有4階精度,截斷誤差為O(h2);Adams方法顯示公式具有4階精度,截斷誤差O(h5)為;本文采用的隱式公式具有5階精度,截斷誤差為O(h6)[8].
選取2009年8月29日23∶45至2009年8月31日16∶45每間隔半小時共82個時刻,GLONASS 2號衛(wèi)星的廣播星歷作為實驗數(shù)據(jù)。
分別使用Adams方法與R-K方法,以2009年8月29日23∶45至2009年8月31日15∶45每半小時間隔的參考時間向前軌道積分30min,得到2009年8月30日00∶15至2009年8月31日16∶15半小時間隔的共81個時刻的,GLONASS 2號衛(wèi)星位置的X、Y、Z坐標(biāo),再將計算結(jié)果與廣播星歷里給出的衛(wèi)星坐標(biāo)進(jìn)行比較,得到兩者差值的統(tǒng)計結(jié)果如表1所示。
分別使用Adams方法與R-K方法,以2009年8月29日23∶45至2009年8月31日15∶15每半小時間隔的參考時間向前軌道積分60min,得到2009年8月30日00∶45至2009年8月31日16∶15半小時間隔的共80個時刻的GLONASS 2號衛(wèi)星位置的X、Y、Z坐標(biāo),再將計算結(jié)果與廣播星歷里給出的衛(wèi)星坐標(biāo)進(jìn)行比較,得到兩 者差值的統(tǒng)計結(jié)果如表2所示。
表1 30min軌道積分結(jié)果與星歷所給坐標(biāo)之差的絕對值/m
表2 60min軌道積分結(jié)果與星歷所給坐標(biāo)之差的絕對值/m
對試驗數(shù)據(jù)分析如下:
1)向前積分30min,選取不同步長對兩種算法的誤差影響不大,兩種算法誤差都比較小,但Adams算法比R-K算法誤差的均值要小。向前積分60min,Adams算法優(yōu)勢更加明顯,如以200為步長積分時,R-K算法距離誤差均值為8.971 7,而Adams法為8.689 3.
2)隨著積分時間延長,兩種算法的誤差隨之增大,但Adams算法的均值誤差小于R-K算法,且隨著積分時間越長越明顯,說明Adams算法穩(wěn)定性[8]優(yōu)于 R-K 算法。
3)采用R-K方法進(jìn)行一步積分,需要計算4次三維方向的加速度;采用Adams進(jìn)行一步運算,只需要計算2次;由于軌道積分運算的代價主要取決于計算加速度的次數(shù),所以Adams算法的運算量約為R-K算法的50%.
引入了Adams線性多步預(yù)測校正法進(jìn)行GLONASS衛(wèi)星位置解算,并采用GLONASS的廣播星歷對Adams算法和R-K算法的積分結(jié)果和運算效率進(jìn)行分析,證明了所提方法是一種有效的GLONASS衛(wèi)星位置解算方法。與四階R-K算法相比,Adams算法精度高、穩(wěn)定性好,而且運算量降低了50%.采用Adams法進(jìn)行GLONASS位置解算,對確保多系統(tǒng)兼容GNSS接收機(jī)的精度、實時性等方面有重要意義。
[1]BRUYNINX C.Comparing GPS-only with GPS+GLONASS positioning in a regional permanent GNSS network[J].GPS Solutions,2007,11(2):97-106.
[2]ZINOVIEV A E.Using GLONASS in combined GNSS receivers:current status[C]//ION GNSS 18th International Technical Meeting of the Satellite Division.Long Beach,CA,USA,2005:1046-1057.
[3]ICD-GLONASS.GLONASS interface control document version 5.1,ICD 2008E[R].Moscow:Coordination Scientific Information Center,2008.
[4]葛茂榮,過靜珺,葛勝杰.GLONASS衛(wèi)星坐標(biāo)的計算方法[J].測繪通報,1999(2):2-4.
[5]楊 劍,王澤民,孟 泱,等.GLONASS衛(wèi)星軌道積分算法分析[J].武漢大學(xué)學(xué)報·信息科學(xué)版,2006,31(7):613-615.
[6]李建文.GLONASS衛(wèi)星導(dǎo)航系統(tǒng)及 GPS/GLONASS組合應(yīng)用研究[D].鄭州:信息工程大學(xué),2001.
[7]葛 奎,王解先.GLONASS衛(wèi)星位置計算與程序?qū)崿F(xiàn)[J].測繪與空間地理信息,2009,32(2):137-140.
[8]丁麗娟,程杞元.數(shù)值計算方法[M].北京:北京理工大學(xué)出版社,2008.