孫金海,汪峰,李金海,閻躍鵬
(中國科學院微電子研究所電子系統總體室,北京100029)
GPS等衛星導航定位系統進行用戶位置定位時需要知道衛星的位置和觀測的偽距,而衛星位置和偽距都與衛星信號的發射時間有關[1-2],所以接收機要進行定位必須正確地獲取衛星發射時間.用戶接收機為獲取衛星信號的發射時間,必須完成比特同步(bit synchronization)和幀同步(frame synchronization),即使有衛星星歷也至少需要6 s的時間才能完成幀同步,這嚴重影響到GPS首次定位時間.Niilo Sirola 提出一種 RangeFit[3]方法,Roland Kaniuth稱為 Snapshot[4],文獻[5-6]中提出的定位算法與文獻[3-4]基本類似,這些方法都是利用衛星信號發射時間1 ms以下的歷元計數計算偽距進行定位(本文稱為RangeFit方法),從而不需要進行比特同步和幀同步即可進行定位解算,使得TTFF可在1 s內完成.但同時RangeFit方法也存在一定的缺陷,即初始時間誤差、初始坐標誤差和鐘差等誤差的等效距離和需小于150 km,即使初始位置沒有誤差,初始時間誤差也必須在210 s以內,這種約束條件嚴重影響了 RangeFit法的應用,故大部分接收機指標(TTFF小于1 s)是指在熱啟動和AGPS條件下的指標.
RangeFit快速定位算法的基本原理是利用衛星信號發射時間ms以下的值,即碼相位的值,進行定位解算,不需要進行比特同步和幀同步,從而縮短定位時間.
第i號衛星RangeFit表達式定義[3]如下:

考慮到衛星信號發射時間誤差δTs,用于定位的線性化表達式如下:


RangFit定位的約束條件[3]為

式中:k≈710 m/s;T、R、B為衛星信號發射時間、接收機位置和鐘偏的真實值.
從式(1)中可以看出RangeFit方法中鐘偏的估計是不完整的,只是估計了1 ms中的一部分;而且從式(1)中可以得出鐘偏誤差Δb=|B-b0|的大小并不影響RangeFit定位,而是fracΛ(Δb)影響RangeFit定位,故式(3)中的約束條件可以改為:

令 F(t,r,b)=k|T-t0|+ ‖ R-r0‖ +fracΛ(|B-b0|),則 F(t,r,b)< 150 km 時,RangeFit方法能夠正確進行定位解算.本文采用載波多普勒作為主要觀測量進行解算,獲得(t,r)更為準確的近似值,使 F(t,r,b)小于 150 km.
將式(2)進行微分得


令 δx'=0、δy'=0、δz'=0、δTs'=0、d'=l',則式(6)可寫為

則多普勒輔助解算公式如下:

z0t0b0]T為初始狀態量,則多普勒輔助解算的值為

本文對采用實測上述方法進行性能分析,考慮到靜態數據易于進行誤差仿真分析,而且整個算法流程并不區分動態還是靜態環境,所以本文性能分析采用的是靜態數據,其坐標經緯度和高度表示為(39.953 854 1°,119.611 263 7°,53.79 m).通過對上述算法的分析和實際數據測試,發現相對于150 km的約束門限,初始坐標r0的偏差并不影響解算的精度,僅僅影響了解算迭代的次數即計算時間,故本文不再對初始坐標r0的偏差做論述,所有分析中采用的初始坐標為r0=(0,0,0).

從圖1中可以得出在速度誤差滿足一定精度的情況下,G(x)能夠在RangeFit約束門限以內,但是上述方法能夠接受的衛星信號發射時間系統誤差δTs不能夠無窮大,圖2為接收機速度誤差為Δv=0,解算所能夠接受的δTs;下述圖中G(x)=0時表示上述方法無法完成解算.從圖中可以得出上述方法能夠處理的在衛星發射時間系統誤差δTs可達到數千秒甚至數萬秒,大大突破了RangeFit的約束門限(最大210 s左右),衛星數越多,能夠處理的δTs就越大,在10顆衛星的情況下,δTs在11 000 s(約3 h左右)內都可完成快速定位.

圖1 不同衛星數下速度誤差與G(x)的關系Fig.1 The correlation between velocity error and G(x)

圖2 不同衛星數下時間偏差誤差與G(x)的關系Fig.2 The correlation between time error and G(x)
上述方法的定位試驗是以本實驗室自主知識產權GPS開發平臺為基礎進行測試的.該平臺采用FPGA+ARM9的硬件結構,實時采集實際天空中的衛星信號,并將信號捕獲跟蹤后的測量結果(EPOCH計數)和解調后的星歷信息通過串口輸出.本論文中的定位試驗是采用C語言平臺在實測數據的基礎上進行測試的.
本文闡述的算法與動靜態測試環境無關,只與初始的速度、時間等誤差有關,故為了更好的分析定位結果的誤差特性,定位試驗采用的是靜態環境,其真實坐標為 (39.953 854 1°,119.611 263 7°,53.79).在接收機初始位置未知(解算時設為0),初始時間誤差在1 500 s、并且衛星星歷已知的情況下,分別利用常規最小二乘法和多普勒輔助Range-Fit法各進行1 000次開機定位試驗,則定位結果如圖3和圖4所示.從圖中可以得出,這2種方法都能夠獲得令人滿意的定位精度,但是多普勒輔助RangeFit的定位結果誤差要大于常規最小二乘,主要是因為各衛星的δTs是不同的,而多普勒輔助RangeFit算法做了近似相等處理.

圖4 常規最小二乘與多普勒輔助RangeFit定位誤差比較Fig.4 Scatter plot of positioning error
對上述兩種方法的開機定位時間TTFF進行平均計算得出,采用常規最小二乘法開機平均首次定位時間(TTFF)為6.75 s,而多普勒輔助RangeFit定位法的平均首次定位時間(TTFF)為0.92 s.
本文針對RangeFit方法的約束條件,提出了一種多普勒輔助RangeFit快速定位法,極大突破了RangeFit的約束門限(150 km),使得TTFF快速定位適用于更多的應用的環境.試驗證明,利用本文方法可以在開機時間誤差在幾千秒甚至幾萬秒內、位置坐標誤差未知的情況下完成TTFF小于1 s的快速定位.該方法不僅可以應用于GPS系統中,而且可以應用在GLONASS、GALILEO和北斗等全球衛星導航系統中.
但該方法還存在一定的缺陷,容易受到初始速度誤差的影響,一般情況下首次定時的速度誤差需小于54 km/h,雖然能夠滿足大部分城市環境應用,但對于快速運動載體的TTFF依然存在著一些問題.未來的工作主要集中在進一步完善上述算法模型,同時引入對鐘偏誤差的消除技術,進一步提高算法適用范圍和定位精度.
[1]KAPLAN E.GPS原理與應用[M].邱致和,王萬義,譯.北京:電子工程出版社,2001:108-120.
[2]TSUI J B Y.Fundamentals of global positioning system receivers:a software approach[M].2nd ed.New Jersey:John Wiley& Sons Inc,2005:202-209.
[3]SIROLA N,SYRJ?RINNE J.GPS Position can be computed without navigation data[C]//Proc ION GPS 2002,Portland,USA,2002.
[4]KANIUTH R,EISSFELLER B,LEMKE N,et al.A snapshot positioning approach for a high integrated GPS/Galileo chipset[C]//ION ITM 05.Long Beach,USA,2005.
[5]KRASNER N.Method and apparatus for determining time for GPS receivers U.S.:atent 6150,980[P].1999.
[6]VAN IGGELEN F.Method and apparatus for time-free processing of GPS signals.U.S.:Patent 6 417 801[P].2000.