杜道成,黃智剛,陳彥曉
(北京航空航天大學(xué) 電子信息工程學(xué)院,北京 100191)
衛(wèi)星導(dǎo)航技術(shù)的快速發(fā)展使用戶對(duì)接收機(jī)首次定位時(shí)間要求越來(lái)越高。國(guó)外Sirf、U-Blox公司的主流導(dǎo)航產(chǎn)品熱啟動(dòng)首次定位時(shí)間已達(dá)到1 s以內(nèi)。近年來(lái)國(guó)內(nèi)對(duì)熱啟動(dòng)興起研究熱潮[1-6],使得熱啟動(dòng)的首次定位時(shí)間縮短至3 s以內(nèi)。
由于導(dǎo)航衛(wèi)星信號(hào)的發(fā)射時(shí)刻是由接收機(jī)通過(guò)跟蹤、位同步和幀同步獲得的,要想減少首次定位時(shí)間,達(dá)到快速定位的目的,可以通過(guò)推測(cè)發(fā)射時(shí)間來(lái)實(shí)現(xiàn)。文獻(xiàn)[6-7]提出了一種稱為Range-Fit的時(shí)間重構(gòu)法,該方法使用較為準(zhǔn)確的本地時(shí)間對(duì)衛(wèi)星的位置進(jìn)行估算,再使用衛(wèi)星位置和本地位置估算出偽距,直接跳過(guò)幀同步,使得首次定位時(shí)間大為縮短;但該算法需要較為精確的本地時(shí)間以及位同步,才能重構(gòu)出衛(wèi)星發(fā)射時(shí)間。文獻(xiàn)[8]則提出了一種不需要十分精確的發(fā)射時(shí)間的快速定位算法;但由于每一次進(jìn)行最小二乘迭代時(shí)都需要用更新后的發(fā)射時(shí)間計(jì)算衛(wèi)星位置,因此計(jì)算量較大。
本文結(jié)合全球定位系統(tǒng)(global positioning system,GPS)的特點(diǎn),提出一種快速熱啟動(dòng)算法,以期能夠在不經(jīng)過(guò)位同步和幀同步的狀態(tài)下,較準(zhǔn)確地預(yù)測(cè)出衛(wèi)星的發(fā)射時(shí)間。
以GPS的中圓地球軌道(medium Earth orbit,MEO)衛(wèi)星為例,對(duì)于使用偽碼測(cè)距,其衛(wèi)星信號(hào)的發(fā)射時(shí)間TTOT[9]為
TTOT=TOW+Nbit·0.02+NCA·0.001+
φCA·(0.001/1 023)
(1)
式中:TOW為接收機(jī)通過(guò)幀同步后獲得的當(dāng)前子幀的星期內(nèi)秒,其測(cè)距精度為6 s;Nbit為接收機(jī)通過(guò)位同步后獲得的當(dāng)前比特計(jì)數(shù)值,其測(cè)距精度為20 ms;NCA為接收機(jī)通過(guò)跟蹤環(huán)路獲得的碼周期計(jì)數(shù)值,其測(cè)距精度為1 ms;φCA為接收機(jī)通過(guò)跟蹤環(huán)路獲得的碼相位值,其測(cè)距精度為1/1 023 ms。
根據(jù)接收機(jī)的工作原理[10],在獲取測(cè)量信息的時(shí)候,得到的測(cè)量值往往是由小到大獲取的,即:先從跟蹤環(huán)中得到NCA和φCA的值;再經(jīng)過(guò)位同步后,得到Nbit的值;最后經(jīng)過(guò)幀同步后解析出TOW的值。由此可見(jiàn),較大的測(cè)量值量級(jí)往往在最后才能得到,而幀同步又需要花費(fèi)較長(zhǎng)的時(shí)間;因此如何減少幀同步時(shí)間和位同步時(shí)間,甚至跳過(guò)幀同步和位同步,則成為了快速定位主要應(yīng)該解決的問(wèn)題。
式中c為光速。
當(dāng)注入的本地位置與真實(shí)的本地位置相差在300 km以內(nèi)時(shí),可以用四舍五入方法得到推測(cè)的發(fā)射時(shí)刻[13]為
(5)
式中:Ti,chip和Ti,chip_phase分別為碼片和碼相位的觀測(cè)量;round()表示對(duì)數(shù)值的四舍五入取整運(yùn)算。
式中:ri為第i顆衛(wèi)星到地心的距離;Ωi為赤徑角,可以通過(guò)星歷中的相關(guān)參數(shù)計(jì)算得到;φi為第i顆衛(wèi)星的緯度值,同樣可以通過(guò)星歷中的相關(guān)參數(shù)計(jì)算得到;ii為第i顆衛(wèi)星的軌道傾斜角,通過(guò)星歷參數(shù)可以計(jì)算得到,其計(jì)算公式為
式中:i0為星歷參考時(shí)刻下的軌道傾斜角;(di/dt)為傾斜角的變化率。
根據(jù)式(8),可以得到衛(wèi)星發(fā)射時(shí)刻的位置誤差為
用戶與衛(wèi)星的相對(duì)位置如圖1所示。
圖1 用戶與衛(wèi)星的相對(duì)位置
根據(jù)余弦定理,并對(duì)θ求偏導(dǎo),可得
由式(10)可知:當(dāng)θ=0°時(shí),Δρi有最大值Δu。
對(duì)于GPS系統(tǒng),已知標(biāo)準(zhǔn)的定位解算方程為
已知線性化的測(cè)量方程為Δρ=H·Δu,利用最小二乘的求解公式,可得其解為
Δu=(HTH)-1HTΔρ
(14)
其中
將式(15)得到的數(shù)值用于牛頓迭代及最小二乘運(yùn)算,直到算法收斂,則可以得到精確的位置信息。
程序在硬件平臺(tái)上的整體控制流程如圖2所示。算法通過(guò)數(shù)字信號(hào)處理器(digital signal processor,DSP)和現(xiàn)場(chǎng)可編程門陣列(field-programmable gate array,F(xiàn)PGA)實(shí)現(xiàn),使用從接收機(jī)跟蹤環(huán)路中獲得毫秒級(jí)以下的發(fā)射時(shí)刻觀測(cè)量,結(jié)合發(fā)射時(shí)刻預(yù)測(cè)法預(yù)測(cè)的毫秒級(jí)以上的發(fā)射時(shí)刻,得到最終的衛(wèi)星發(fā)射時(shí)刻;然后通過(guò)求解5個(gè)未知量的定位方程組得到接收機(jī)位置。
對(duì)上述算法進(jìn)行仿真驗(yàn)證。選取2015-01-20 T 02:00:00的GPS 星歷作為已知星歷數(shù)據(jù)。設(shè)定用戶定點(diǎn)在WGS-84下的3維坐標(biāo)為(-2 144 838.63 m,4 397 570.88 m,4 078 017.71 m)。使用的 GPS衛(wèi)星為 2號(hào)、5號(hào)、6號(hào)、7號(hào)、10號(hào)、13號(hào)、15號(hào)、29號(hào)、30號(hào),其仰角分別為 58、73、14、12、22、51、19、45、14°。程序不進(jìn)行位同步和幀同步,使用毫秒級(jí)以下發(fā)射時(shí)間觀測(cè)量,并且將用戶初始位置的3維坐標(biāo)均加上50 000 m誤差,即初始位置設(shè)置為(-2 194 838.63 m,4 447 570.88 m,4 128 017.71 m),以2015-01-20 T 02:00:00為初始時(shí)刻,連續(xù)進(jìn)行1 500 s定位。經(jīng)最小二乘法處理,定位結(jié)果如圖3、圖4所示。
圖2 快速定位算法程序控制流程
圖3 使用精確初始位置下的快速熱啟動(dòng)定位結(jié)果
由圖3~4可知,2組定位結(jié)果誤差均在允許范圍內(nèi),接近用戶位置的真實(shí)值,在初始位置3維坐標(biāo)偏差50 km的條件下,定位精度仍可達(dá)到σ0=5.346 07 m,驗(yàn)證了該算法的可行性。此外,將此快速定位算法應(yīng)用到GPS接收機(jī)中,在實(shí)際的外場(chǎng)進(jìn)行實(shí)驗(yàn),通過(guò)反復(fù)上電,記錄了10次首次定位時(shí)間,結(jié)果如表1所示。
圖4 使用誤差為50 000 m的初始位置下的快速熱啟動(dòng)定位結(jié)果
表1 靜態(tài)環(huán)境下的快速定位測(cè)試結(jié)果
結(jié)果表明,在已知衛(wèi)星星歷、接收機(jī)位置和本地時(shí)間的前提下,應(yīng)用此快速定位算法,接收機(jī)平均首次定位耗時(shí)約2.8 s,有效縮短了首次定位時(shí)間。
本文使用理論分析加仿真驗(yàn)證的方法對(duì)GPS導(dǎo)航接收機(jī)的快速定位算法進(jìn)行了研究,并將此算法在GPS接收機(jī)中進(jìn)行了測(cè)試,首次定位時(shí)間滿足接收機(jī)設(shè)計(jì)要求。在已知的GPS有效星歷和誤差小于300 km的粗略本地位置的基礎(chǔ)上,本文的算法能夠在不經(jīng)過(guò)位同步、幀同步以及電文解調(diào)的基礎(chǔ)上進(jìn)行快速定位解算。算法使用推算的毫秒級(jí)精度的信號(hào)發(fā)射時(shí)刻,加上接收機(jī)跟蹤環(huán)路測(cè)得的毫秒級(jí)以下的時(shí)延,重構(gòu)出發(fā)射時(shí)刻,有效縮短了首次定位時(shí)間,達(dá)到了快速定位的目的。