高成發,陳 波,劉永勝
東南大學交通學院, 江蘇 南京 211189
智能手機是如今人們生活中不可或缺的工具,智能手機中的GNSS模塊已經實際改善了現代人類生活。在GNSS導航定位技術的發展中,導航或定位精度一直是制約其進一步應用于人類生產生活并發揮更大作用的關鍵問題,對于智能手機中的GNSS導航定位模塊也是如此。2016年5月,谷歌公司在Android N操作系統上提供了訪問GNSS原始觀測數據的接口。此后,學者們開始著手于對智能移動終端接收的GNSS數據進行質量評估,并對其定位性能進行測試分析。
早期的智能設備GNSS定位測試大多基于Android系統的平板電腦。研究表明其偽距單點定位平面中誤差約3 m,高程中誤差約4 m[1];使用靜態TD(time differenced,時間差分)濾波的方式,能夠獲得平面中誤差優于0.6 m的定位精度[2];使用TT-SD(three-thresholds and single-difference,三閾值單差)濾波動態定位方式,平面定位中誤差約0.9 m[3];使用靜態載波雙差定位的方式,能夠在20 min內實現平面定位精度優于20 cm[4]。
區別于Android平板電腦,普通智能手機的定位表現要差得多。研究表明,某國產品牌智能手機偽距單點定位N、E方向中誤差為10 m左右,U方向中誤差超過20 m[5]。某國外品牌智能手機偽距單點定位平面精度約10 m[6],而使用NRTK(network real-time kinematic,網絡實時動態)的定位方式,能夠獲得平面誤差大約60 cm的靜態定位結果[7]。
近年來,出現了雙頻GNSS智能手機,能夠接收L1/B1/E1和L5/E5波段的原始GNSS測量值[8-9]。但是目前亞太地區能夠接收到Galileo衛星(發射E1、E5信號)和升級后的GPS衛星(發射L1、L5信號)數目較少,導致實際應用中雙頻信號的可用程度較低。不過,由于雙頻智能手機的L1/E1波段的GNSS觀測值質量較先前的單頻GNSS手機也有較大改善,因此單頻定位性能也得到了改善。目前有研究表明,使用智能手機的雙頻GNSS數據,事后靜態PPP平面定位精度能夠優于30 cm,但是定位所需時間相當長(超過100 min)[10];另外有研究表明在引入差分基準站后,其靜態載波雙差定位平面精度約為1.0 m(所需時間較短)[11]。
筆者的先前研究中,將智能手機與測地型GNSS接收機置于相同地點進行同步觀測,對比分析了智能手機GNSS觀測值的數據質量,發現智能手機觀測值中存在偽距觀測值和載波相位觀測值之間的差值不固定的特性[12];采用相位平滑偽距差分定位的方式,獲得了優于1.5 m平面定位精度[13];采用雙手機鐘差參數的靜態PPP模型,在短時間獲得了亞米級的平面定位精度[14]。
總體而言,在Google公司開放GNSS觀測數據獲取的接口后,很多學者開展了基于Android設備原始GNSS觀測值的定位研究。早期的相關研究大多基于平板電腦展開,包括偽距單點定位、靜態載波雙差定位以及利用多普勒觀測值、載波相位觀測值進行平滑偽距濾波定位等[15-16]。對于普通智能手機的GNSS定位,單頻智能手機普遍較低。雙頻智能手機出現后,學者們對其進行了數據質量分析,并嘗試了靜態PPP和靜態載波雙差等定位測試。目前相關的動態定位研究還較為欠缺。本文據此現狀,在先前的靜態定位研究基礎上展開了智能手機的實時動態PPP和載波相位差分RTK研究,并驗證研究方法的實際效果。
鑒于目前智能手機能夠觀測到的雙頻數據(L1/E1及L5/E5)衛星數量很少,而動態GNSS定位中涉及的位置參數較多,過少的衛星數意味著每個歷元的觀測方程數少于待估參數個數,影響定位性能,因此本文采用單頻手機GNSS數據進行動態定位研究。
本文的主要目的是實現智能手機的實時動態PPP和RTK定位。在嘗試使用現有方法進行解算的過程中,筆者發現由于目前手機觀測值的質量狀況導致現有公式的定位效果很差(如RTKLIB的解算結果)。因此筆者對現有方法進行了一些修改,獲得了較為明顯的定位效果改善。改進方法的主要特點是利用手機載波相位觀測值不確定度進行粗差處理,使用星間單差法消除手機偽距和載波相位觀測值之間差值不固定特性的影響,不再進行整周模糊度固定以及針對手機觀測值修改Kalman濾波中的觀測值噪聲方差的數值。以下從實時動態PPP定位解算模型、RTK定位解算模型和粗差處理策略3個方面詳細闡述相關原理。
目前智能手機的測量的GNSS觀測值中存在的偽距觀測值和載波相位觀測值(均以m為單位)之間的差值不固定的特性,可以采用對偽距觀測值和載波相位觀測值分別設接收設備(智能手機)鐘差參數的方式消除其影響[14],也可以采用對觀測值作星間單差的方式消除其影響[3]。相較于智能手機雙鐘差參數的方法,觀測值作星間單差法每歷元能夠減少2個鐘差參數和1個載波相位模糊度參數,而觀測方程數少2個,多余觀測數更多。因此本文中采用觀測值作星間單差的方法消除此手機GNSS觀測值特性的影響。
具體采用的智能手機PPP定位方式如表1所示。

表1 實時動態PPP具體設置
表1中的WHU超快速星歷是由武漢大學IGS數據中心(http:∥www.igs.gnsswhu.cn/)發布的超快速精密星歷產品。此產品包含了GPS、GLONASS、BDS和Galileo系統大部分衛星的軌道和鐘差預測數據,能夠為手機定位提供多系統的實時高精度星歷及鐘差產品。
在使用表1中相應的誤差改正方式后,認為衛星星歷誤差、衛星鐘差和電離層延遲得到了改正,剩余誤差歸結為殘差[18],手機偽距觀測值觀測方程為
(1)
(2)
相應的載波相位觀測方程為
(3)
(4)

以衛星p為基準衛星,對兩衛星間觀測值作差,單差觀測值為
Ppq=ρpq+
(5)
Φpq=ρpq+
(6)
考慮智能手機運動狀態下的GNSS定位,Kalman濾波求解狀態向量中需要包含智能手機速度甚至加速度等參數。研究表明當觀測數據的采樣間隔為1.0~3.0 s時,適宜采用常加速度模型,當采樣間隔更小時,可以采用常速度模型[19-20]。目前,智能手機原始GNSS測量的最小采樣間隔是1.0 s[21-22],因此采用常加速度模型。此時待估參數向量為
(7)

相應的觀測值系數矩陣H為
(8)
ai=[(αi-αbase)(βi-βbase)(γi-γbase)]
(9)
bi=?t·ai
(10)
ci=0.5?t2·ai
(11)
Mi=MFi-MFbase
(12)
式中,上標(1,…,i,…,n)表示衛星序號;上標base表示基準衛星;(α,β,γ)為衛星到接收設備的方向余弦;?t為觀測數據采樣間隔;MF為濕延遲投影函數,本文采用的是Niell投影函數[23]。
使用Kalman濾波進行參數求解,濾波過程中觀測值的噪聲矩陣根據衛星高度角模型確定,其形式如下
(13)

鑒于手機GNSS觀測值過大的觀測噪聲,研究表明手機載波相位觀測值中周跳占比超過20%[15],目前尚無有效的周跳探測及修復方案,現有模糊度固定也難以適用于手機定位,因此本文PPP及RTK算法均不嘗試固定載波相位整周模糊度。
采用的手機RTK定位模型為常規的載波相位雙差模型,使用Kalman濾波進行參數求解,同樣不考慮載波相位整周模糊度固定工作。
假設測站i為基準站,測站j為移動站,原始觀測值方程為

(14)

(15)

(16)

(17)
式中,下標i、j表示接收機設備序號;dT為衛星鐘差;dorb為軌道誤差;其余參數含義與前文相同。式中對于基準站也設置了兩個設備鐘差,實際上如果基準站為測地型接收機,其設備鐘差參數應該只有一個,但是對差分后定位模型沒有影響,此處不作區分。
首先在兩個測站之間對同一顆衛星作站間單差,得到

(18)
(19)
(20)
(21)
同時當參考站與流動站距離較近時,雙差星歷誤差和大氣延遲誤差也可以視作殘差,得到簡化的雙差觀測方程
Δ
(22)
Δ
(23)
相較于動態PPP模型,RTK定位模型中不包括對流層濕延遲參數,濾波過程中只需要估計位置及運動狀態參數和載波相位整周模糊度參數即可。同樣采用常加速度動態定位模型,此時待估參數向量為
(24)
相應的觀測值系數矩陣為
(25)
式中符號含義與式(8)—式(12)相同。同樣使用Kalman濾波進行參數求解,觀測值方差陣與動態PPP定位濾波過程相同。
粗差探測是GNSS定位中不可或缺的一項內容。在傳統GNSS定位領域中有一系列的粗差探測、周跳探測的方法,這些大多對數據采樣率及數據質量有要求。對于智能手機,其載波相位觀測值含有大量的周跳,現有單頻周跳探測方法難以應用于手機載波相位數據[3,10]。針對手機GNSS觀測值情況,采用了載波相位不確定度及衛星高度角進行觀測值篩選配合抗差參數估計的方法來降低粗差值影響。
目前Android系統除了能夠提供必要的GNSS觀測值外,還提供了一些能夠表征觀測值狀態及質量的輔助信息,如多路徑效應標志、信號載噪比和載波相位不確定度等[22]。本文以載波相位不確定度(由Android系統提供)和觀測值的衛星高度角作為判斷標準,當載波相位不確定度大于閾值時,或衛星高度角小于高度截止角時,舍棄該歷元該衛星的觀測值。對于保留的觀測值,采用高度角定權的方式給定各衛星權重。權重計算公式如下
(26)

在濾波過程中,增加了抗差模塊,以降低未剔除粗差對定位結果的影響。在Kalman濾波中,根據當前各觀測值殘差值計算等價觀測噪聲方差,使用等價方差陣代替觀測噪聲方差陣求解待估參數[24]。Kalman濾波過程中觀測值殘差向量計算公式如下
(27)

(28)

(29)

本文采用的手機實時動態PPP和RTK定位技術流程如圖1所示。與常規測地型接收機的定位解算相比,本文手機GNSS定位在流程上的主要區別是粗差處理方法不同、使用星間單差法消除手機偽距和載波相位觀測值(均以米為單位)之間差值不固定特性的影響以及不再進行整周模糊度的固定,同時Kalman濾波過程中觀測值噪聲方差的數值針對手機觀測值進行了修改。
如前文所述,首先根據載波相位觀測值和衛星高度角進行觀測值篩選,再輔以濾波抗差算法實現粗差處理。其中手機載波相位觀測值不確定度閾值的確定相當重要。用于測試的手機其GNSS芯片輸出的載波相位不確定度正常值為毫米級,因此本文中給定的載波相位不確定度閾值為0.01 m。對于一些數據質量更差的手機,此閾值可能會導致被剔除的觀測值數量太多,進而無法實現定位,因此需要針對性修改。對于濾波過程中的手機觀測值噪聲方差,根據先前的數據質量分析結果[12],結合多次試驗測試表現,設置偽距觀測值噪聲方差為3×3 m2,載波相位觀測值噪聲方差為0.015×0.015 m2(均為同款手機)。對于不同的智能手機,其觀測值噪聲大小也不相同,需要通過數據質量分析確定。值得注意的是,數據質量試驗分析顯示出的手機載波相位觀測值噪聲大小,與手機芯片給出的載波相位不確定度有差異。

圖1 手機實時動態PPP和RTK定位技術Fig.1 Technology of smartphone real-time dynamic PPP and RTK positioning
使用前述定位方法,對測試用雙頻智能手機采集的觀測數據進行實時動態PPP和RTK定位,以驗證定位方法的有效性并評價其定位精度。試驗地點為某高校田徑場,時間為2019年12月12日,時長約10 min。其中RTK定位試驗差分基準站是位于校內的CORS站,基準站距離試驗地點約1 km。為了評價手機動態定位效果,試驗時將智能手機與測地型接收機綁在一起,再一起架在自行車上沿田徑場推行,如圖2所示。試驗過程為先在起點處靜止約1 min,然后再推車繞操場兩圈。

圖2 動態試驗儀器設置方式Fig.2 Dynamic experimental instrument setting method
試驗中測地型接收機僅記錄原始觀測值,事后使用RTKLIB軟件進行動態差分解算,解算結果中固定解達到95%,解算質量良好。
使用前文所述的實時動態PPP定位方法,對智能手機收集的GNSS數據進行定位解算,同時為了評價實時動態PPP定位結果的定位精度,將手機定位結果與測地型接收機的高精度定位結果對比,如圖3所示。圖3顯示出手機實時動態PPP定位結果相當平滑,連續性完好,說明使用手機GNSS原始數據能夠得到有效的動態PPP解算結果。圖中右下角為測試起點,在定位開始的一段時間內定位誤差較大,隨著濾波過程的進行,手機動態PPP定位誤差存在明顯減小的過程。

圖3 自研程序手機實時動態PPP定位結果與測地型接收機差分定位結果對比Fig.3 Comparison of smartphone real-time dynamic PPP results using self-developed program with geodetic receiver differential positioning results
以測地型接收機差分定位結果作為基準,計算手機實時動態PPP定位結果的誤差序列如圖4所示。圖4顯示出平面定位誤差具有收斂的過程,在100 s之后優于4 m,220 s之后優于2 m,隨后誤差都穩定在2 m以下;而高程方向定位誤差明顯更加不穩定,說明殘余的測量誤差影響明顯;同時平面及高程定位結果都包含較為明顯的震蕩現象。

圖4 自研程序手機實時動態PPP定位結果誤差序列Fig.4 Positioning error sequence diagram of smart-phone real-time dynamic PPP results using self-developed program
使用前文所述的RTK定位方法,對智能手機收集的GNSS數據進行定位解算,平面解算結果如圖5所示。圖5顯示出RTK定位結果也相當平滑,連續性完好,說明使用手機GNSS原始數據能夠得到有效的RTK解算結果。同時注意到右下角測試剛開始的定位結果的偏差相當大,但是在一小段時間后偏差明顯減小,定位精度優于實時動態PPP。除了圖中下部區域手機定位結果存在小幅度的抖動情況外,其余部分定位平滑性差別不大。事實上圖中下部區域為靠近體育場看臺的區域,信號遮擋嚴重,影響了定位精度,測地型接收機定位結果中的5%浮點解也位于此區域。

圖5 自研程序手機RTK定位結果與測地型接收機差分定位結果對比Fig.5 Comparison of smartphone RTK positioning results with geodetic receiver differential positioning results using self-developed program
以測地型接收機差分定位結果作為基準,計算手機RTK定位結果的誤差序列如圖6所示。圖6顯示出手機RTK定位誤差在平面和高程方向上都有具有明顯的快速收斂過程,在40 s內即可獲得較為良好的定位結果;平面定位誤差絕大多數優于2 m;而高程方向除了100 s左右時段(靠近體育場看臺的區域)出現了明顯抖動外,其余時刻都有良好的定位效果,相比于動態PPP定位精度明顯更高;同時平面及高程定位結果也都包含較為明顯的震蕩現象。

圖6 自研程序手機RTK定位結果誤差序列Fig.6 Positioning error sequence diagram of smartphone RTK positioning results using self-developed program
將平面定位誤差小于3 m且后續歷元平面誤差不再超過3 m視作動態定位達到較為穩定的狀態,據此計算雙頻智能手機實時動態PPP和RTK穩定后的定位精度,如表2所示。表2顯示出試驗手機實時動態PPP定位能夠在2 min內達到穩定狀態,穩定后平面中誤差為1.51 m,高程中誤差為2.79 m;RTK定位能夠在1 min內達到穩定的狀態,穩定后平面中誤差為0.73 m,高程中誤差為0.78 m。

表2 自研程序手機動態實時GNSS定位精度統計
為了驗證本文所采用定位方法的有效性,使用RTKLIB軟件解算相同的手機GNSS數據(已轉換為RINEX格式)。在動態PPP模式下,RTKLIB軟件不能獲得有效的定位解(解算狀態Q為0)。在RTK模式下,定位結果如圖7所示。圖7中的運動軌跡顯示出了明顯的不連貫性,經計算其平面中誤差超過1.5 m,高程中誤差超過4.0 m,定位效果明顯差于自研程序解算結果。說明本文所述定位策略更加適用于手機GNSS定位。

圖7 使用RTKLIB解算的手機RTK定位結果誤差序列Fig.7 Positioning error sequence diagram of smartphone RTK positioning results used RTKLIB software
值得注意的是,試驗當天的WHU超快速星歷中因故只包含了GPS和GLONASS星歷,因此以上試驗是使用雙系統GNSS數據展開的,當星歷中包含更多GNSS系統衛星時(尤其是BDS),手機實時動態定位精度可能會有進一步提升。
目前關于智能手機實時動態GNSS定位的相關研究較少。本文根據智能手機GNSS觀測值特性及其質量較差的現狀,設計了適用于智能手機的實時動態PPP定位方法和RTK載波相位雙差定位方法,給出了針對手機GNSS數據的粗差處理方案,并以一組試驗驗證定位方法的實際效果。
(1) PPP和RTK中都采用不固定載波相位整周模糊度的常加速度動態單頻Kalman濾波模型,并通過觀測值星間單差法消除智能手機偽距與載波相位觀測值差值不固定特性的影響。基于載波相位觀測值不確定度及衛星高度角對觀測值進行篩選,同時通過觀測值噪聲調整濾波過程中的觀測值權值,達到有效削弱粗差影響的效果。
(2) 實際測試結果表明,雙頻智能手機實時動態單頻PPP定位平面中誤差為1.51 m,高程中誤差為2.79 m,定位結果達到穩定狀態需要99 s;單頻RTK定位平面中誤差為0.73 m,高程中誤差為0.78 m,定位結果達到穩定狀態需要27 s。
(3) 目前的智能手機能夠在不借助差分基準站的情況下實現平面精度優于2 m的實時動態定位,而在引入差分站數據之后,能夠獲得優于1 m的實時平面定位精度。這樣的定位精度為智能手機進一步提升應用體驗帶來理論支持,同時表明智能手機具有進入傳統測繪領域完成部分精度需求較低的測量任務的潛能[25],將來甚至能夠助力自動駕駛、智慧城市和物聯網等重大前沿技術的發展。
本文動態PPP定位試驗中,定位結果明顯受未完全修正的大氣誤差影響嚴重,導致精度受限(尤其是高程方向)。后續將從合理利用手機雙頻GNSS數據、區域大氣誤差反演實時預報等方向嘗試有效削弱大氣延遲誤差影響,以獲得更優的無差分站實時動態定位性能。