GPS PPP RTK Kalman filter

演算法修正/抗電離層誤差 高精度GPS單點定位有訣竅

2022-12-02
在全球導航衛星系統(Global Navigation Satellite System, GNSS)的高精確度定位方法中,除了即時動態定位(Real Time Kinematic, RTK)以外,還有精密單點定位(Precise Point Positioning, PPP)。RTK是屬於「相對定位」技術,而PPP屬於「單點定位」或「絕對定位」技術。相對定位是使用差分的(Differenced)載波相位測距(Carrier Phase Ranging)技術。單點定位則使用非差分的(Undifferenced)載波相位測距技術。

雖然「單點定位」是最直接的測量方法,但為了提高精確度,必須消除許多誤差。理論上,PPP系統只需要一台GPS接收器,如圖1所示,但其實PPP是充分利用了一些遍布於全球的參考站(Reference Station)所提供的GPS衛星的軌道位置和GPS衛星的時脈差進行修正,藉此達到公分等級的高精確度。並且PPP不受地理位置限制,即使在南北極和大氣層也可以使用。

圖1 「單點測距」的PPP系統

PPP和RTK的不同處

PPP和RTK的主要差別可以簡單歸納出以下幾點:

PPP系統的GPS接收器附近不需要有參考站,但須在全球設置參考站。因此,PPP不像RTK會受到GPS接收器與參考站之間距離的限制,這個距離稱為「基線(Baseline)」。

一般而言,PPP系統的精確度比RTK系統高。PPP可以達到3公分等級的精確度,RTK只能達到10公分。

一般來說,使用PPP系統得出高精確度的位置座標,所花費的時間比RTK長。

且PPP比RTK更容易受到電離層和環境因素影響。

PPP消除誤差的方法包括:使用雙頻(Dual-frequency)載波移除電離層誤差、從外部輸入修正誤差的數據、模型化、精密的單點定位「卡爾曼濾波(Kalman Filter)」演算法。

何謂雙頻載波

公式1和公式2是含有高階項(第二、第三階)的「電離層(Ionosphere)」誤差,分別能求出「虛擬距離(Pseudo-range)」與「載波相位」的觀測公式。Pi是使用i載波頻率和編碼測距所求得的「虛擬距離」,單位是公尺。Φi為使用i載波頻率所求得的載波相位,單位是公尺。

 ρ是幾何距離,也就是GPS衛星到接收器之間的真實距離,單位是公尺。c是光速。而dt是接收器的時脈偏移(Clock Offset),單位是秒。 dT是GPS衛星的時脈偏移,單位是秒。dorb則是GPS衛星的軌道誤差,它是被投影到GPS衛星和接收器之間訊號傳輸方向(視線(Line of Sight))上測量的,單位是公尺。至於dtrop,是對流層(Troposphere)誤差,單位是公尺。

其中,Ii,1 、Ii,2 、Ii,3分別是使用i載波頻率求出的第一、第二、第三階的電離層誤差,單位是公尺。Bi則是使用i載波頻率求出的「相位模糊(Phase Ambiguity)」,包含GPS衛星和接收器的「初始相位偏差(Initial Phase Bias)」和「相位的硬體延遲偏差(Hardware Delay Bias)」,單位是公尺。此外,bPi是編碼測距使用i載波頻率時的「硬體延遲偏差」,單位是公尺。εPi和εΦi分別代表編碼測距和載波相位測距的雜訊,包含「多路徑干擾(Multipath Interference)」造成的雜訊,單位是公尺。

...........................(1)

...........................(2)

公式1和公式2中的第一、第二、第三階項的電離層誤差Ii,1 、Ii,2 、Ii,3可以分別表示為公式3、4、5。fi是第i個載波頻率。ne是電子密度。∫neds是訊號傳輸路徑上的「總電子含量(Total Electron Content, TEC)」。STEC是GPS衛星和接收器之間視線內的「傾斜總電子含量(Slant Electron Content)」。B是在「電離層穿透點(Ionospheric Puncture Point, IPP)」上的「磁感應強度(Intensity of Magnetic Induction)」。Θ是訊號發射方向和地球磁場方向的夾角,而Nm是在電離層高度為H的最大「電子密度」。

如公式1所示,由於「第一階項(First-order)」的電離層(Ionosphere)誤差I1所造成的延遲是與「載波頻率(Carrier Wave Frequency)」的平方成反比。而且,在非極端情況下,GPS衛星發射「雙頻載波」訊號可以消除「第一階項」的電離層誤差。

...........................(3)

...........................(4)

...........................(5)

I1占了99.9%的電離層總誤差,所以若移除了I1,幾乎可說消除了電離層誤差。公式6是使用「雙頻載波」f1和f2移除了I1後的「去電離層誤差組合(Ionosphere-free Combination)」公式,藉此公式可以求出移除I1後的「虛擬距離」PC和「載波相位」ΦC。

...........................(6)

由於PC=αP1+βP2和ΦC=αΦ1+βΦ2,可知PPP移除I1的方法並不是像RTK一樣單純地將位置相鄰的兩台GPS接收器的測量值相減,而是存在由頻率f1決定的常數α和β,而且PC與 P1 、P2的相關性是線性的,ΦC與Φ1 、Φ2亦然。

利用公式6可以輕易移除I1,不須考慮公式3中的STEC。這是因為不同射頻頻率(Radio Frequency)在電離層中的折射誤差(Refraction Error)不同,公式6就是充分利用了這個特性。

移除高階項電離層誤差

若為了追求最高的定位精確度,必須移除剩餘的0.1%的電離層誤差。也就是說必須將I2和I3一起移除。在公式4、公式5中,I2、I3都與STEC相關。為了求出STEC,必須先求出「垂直總電子含量(Vertical TEC, VTEC)」。圖2是電離層的「單層模型(Single Layer Model)」,這模型假設所有的自由電子都集中在厚度極小的電離層內。H垂直線位於地球表面上的GPS接收器的正上方,它代表這個電離層的厚度或高度。「垂直總電子含量(VTEC)」是在電離層穿透點(IPP)上,透過「映射函數」MFI求出,如公式7所示。  

圖2 電離層的「單層模型」

...........................(7)

國際GNSS服務組織(International GNSS Service, IGS)有提供全球電離層圖(Global Ionospheric Maps, GIM),涵蓋全球任何地方和任何時間,如圖3所示,這是一個VTEC地圖。使用GIM再透過公式7就可以算出STEC。

圖3 全球電離層圖

使用雙頻載波移除I1誤差後,I2和I3誤差仍然存在。所以,使用公式8的PIF和 ΦIF比使用公式6「去電離層誤差組合」公式計算出來的PC和ΦC更精確,因為PIF和 ΦIF已經移除了I2、I3,但不考量其他誤差。

...........................(8)
同時必須使用公式9和公式10分別取替公式4和公式5。使用雙頻載波移除I1誤差後,第二、第三階項的電離層誤差應該分別是IIF,2和IIF,3。這裡的IF不是指「中頻(Intermediate Frequency)」,而是Ionosphere-Free的縮寫。

...........................(9)

...........................(10)

計算定位精確度

影響GNSS定位的所有誤差稱為「用戶等效測距誤差(User Equivalent Range Error, UERE)」,其值由GNSS接收器的設計方式和所處的地理位置而定。UERE由「空間信號測距誤差(Signal-In-Space Range Error, SISRE)」與「用戶設備誤差(User Equipment Error, UEE)」兩個部分組成。UERE和「精確度衰減因子(Dilution Of Precision, DOP)」構成了一個理想的誤差模型,可以用來評估GNSS的性能和可能導入的誤差大小。UERE與DOP的乘積,稱為「用戶導航誤差(User Navigation Error, UNE)」。它們之間的數學關係如公式11所示。

...........................(11)

簡言之,UNE就是表示GPS定位的精確度。SISRE是UERE的重要部分,它代表了GPS衛星對接收器廣播的「軌道數據(Ephemeris Data)」對測距誤差所造成的影響。公式12是計算SISRE的公式。其中,c是光速,T是時脈偏移。

...........................(12)

如圖4所示,R是「徑向(Radial Direction)」(至地球圓心的方向)的軌道誤差),A是沿著軌道切線方向的軌道誤差,C是垂直於軌道方向的軌道誤差。此外,對GPS而言,α是0.98,β是49。圖5是公式12的幾何圖示。

圖4 SISRE的徑向、切向、法向軌道誤差。
圖5 徑向、切向、法向軌道誤差和「空間信號測距誤差(SISRE)」

圖6中的ε是由「非徑向軌道誤差(Non-radial Orbit Error)」H造成的最大測距誤差。簡言之,這H相當於圖5中的 =(-C,A,-R)。當GPS衛星的位置平行於地球水平面方向時,因「非徑向軌道誤差」造成GPS衛星軌道誤差值ε為最大,此時ε等於0.24H。

圖6 ε是由「非徑向軌道誤差(Non-radial Orbit Error)」H造成的最大測距誤差

認識卡爾曼濾波演算法

使用卡爾曼濾波演算法,可以估算出GPS接收器的位置和速度。狀態函數t(p,v)包含了位置p和速度v兩個變數。於t 狀態下,還伴隨著預估這狀態的「共變數(Covariance)」t。t和t是同時存在的。t是一個統計用矩陣,表示t的預估準確度。下一個「瞬時點(Epoch)」,進入「先驗(a priori)」狀態的t+1和t+1。在這個新時間點,預估作業並沒有輸入新的真實數據,而是執行「時間傳播(Time Propagation)」。

公式13是新狀態的預估方程式。t+1是目前的狀態。Φt+1,t是從t過渡到t+1時的狀態轉移矩陣,透過時間來傳播狀態預估和共變數。t+1是被傳播到下一個瞬時點的新狀態,而且是在它與新測量值結合之前。新共變數t+1也是透過時間傳播,公式14是新共變數的預估方程式。輸出 t+1時,同樣沒有輸入新的真實數據。Qt是時間的傳播誤差,本質上Φ矩陣的預估準確度是受 Qt影響的。

...........................(13)

...........................(14)

當來自監測站的新測量數據循序加到公式13和公式14後,就產生新的t和t,記作t+1和t+1,它們分別是t+1和t+1的正確版本,這個步驟稱為「測量更新(Measurement Update)」。狀態矩陣的更新公式如公式15所示。(-Ht+1t+1)代表剩餘向量()。代表新數據向量。K是卡爾曼增益矩陣。K可由公式16求出。R是測量雜訊的共變數矩陣。H是觀測偏微分矩陣,它是觀測數據(z)和預估狀態X矩陣之間的線性函數。共變數矩陣的更新公式如公式17。

...........................(15)

..........................(16)

...........................(17)

目前國外的衛星業者普遍採用「擴展卡爾曼濾波(Extended Kalman Filter)演算法」,它兼具「確定模型」和「不確定模型」的優點。使用「確定模型」可以透過「狀態轉移矩陣」Φ,持續預估GPS衛星的狀態和共變數。除了隨機的時脈誤差之外,包括徑向/切向/法向軌道的「擾動(Perturbation)」,以及太陽輻射造成的擾動,都可以利用隨機的「不確定模型」做定性分析,透過不斷地對Qt微調,精確地預估GPS狀態。因此,「擴展卡爾曼濾波演算法」的使用靈活度很高,而且在每個瞬時點進行運算時,不需要很多電腦資源。圖7是採用了擴展卡爾曼濾波演算法的即時PPP系統。

圖7 即時的PPP系統

 

本站使用cookie及相關技術分析來改善使用者體驗。瞭解更多

我知道了!