李灝楊, 唐詩華*, 劉坤之, 呂富強
(1. 桂林理工大學(xué)測繪地理信息學(xué)院, 桂林 541006; 2.廣西空間信息與測繪重點實驗室, 桂林 541006)
實時動態(tài)載波相位差分(real time kinematic,RTK)技術(shù)是一種厘米級精度的全球?qū)Ш叫l(wèi)星系統(tǒng)(global navigation satellite system,GNSS)導(dǎo)航技術(shù)。在傳統(tǒng)的RTK測量中,用戶需將對中桿保持豎直,桿尖放在待測點上,以此將天線相位中心的坐標(biāo)校正至待測點坐標(biāo)。
近年來,出現(xiàn)了一種具有傾斜測量功能的RTK接收機(以下簡稱慣導(dǎo)RTK),用戶在使用時不需要將對中桿保持豎直,只需要桿尖放在待測點上,便可測出待測點的坐標(biāo)。在傳統(tǒng)RTK測量中無法測得的點坐標(biāo),如房角或難以保持對中桿豎直的障礙點等,通過使用慣導(dǎo)RTK便可以將天線相位中心的坐標(biāo)校正至待測點坐標(biāo),實現(xiàn)傾斜測量,極大地提升了作業(yè)效率。在使用慣導(dǎo)RTK進(jìn)行傾斜測量時會遇到兩個問題:一個是慣導(dǎo)RTK的初始對準(zhǔn),即慣性導(dǎo)航系統(tǒng)(inertial navigation system,INS)初始對準(zhǔn);另一個是保持微機電系統(tǒng)慣性測量單元(micro-electro-mechanical system-inertial measurement unit,MEMS-IMU)的姿態(tài)精度在一個合理的范圍內(nèi)。針對INS的初始對準(zhǔn)問題,已有眾多的研究成果,文獻(xiàn)[1]通過地面點坐標(biāo)來得到的INS軌跡結(jié)合RTK的軌跡來求得航向失準(zhǔn)角,但此法需利用到地面點,在實際應(yīng)用中有一定的不便。文獻(xiàn)[2]提供了一種三點迭代法來求解航向失準(zhǔn)角。文獻(xiàn)[3-4]通過磁力計輔助MEMS-IMU來得出IMU的航向失準(zhǔn)角。但是磁力計對金屬等容易引起磁場變化的物品敏感,對慣導(dǎo)RTK并不適用。文獻(xiàn)[5]給出了傳遞對準(zhǔn)的方法,該方法利用高精度的慣導(dǎo)系統(tǒng)作為參考,以此來實現(xiàn)待對準(zhǔn)的慣導(dǎo)系統(tǒng)的對準(zhǔn)。文獻(xiàn)[6]采用雙/多天線GNSS測姿方法,以載波相位觀測值為觀測對象,通過求出基線矢量的值,就可以解算出載體的姿態(tài)。而傳遞對準(zhǔn)方法和雙/多天線GNSS測姿方法所需的硬件價格昂貴,因此并不適用于低成本的慣導(dǎo)RTK。文獻(xiàn)[7-9]提出了一種新穎的最優(yōu)估計對準(zhǔn)(optimization-based alignment, OBA)算法,將所需的姿態(tài)矩陣分解為兩個時變姿態(tài)矩陣和一個恒定姿態(tài)矩陣,使用四元數(shù)法計算時變姿態(tài)矩陣,從而確定載體的連續(xù)姿態(tài)。但是OBA算法應(yīng)用于低成本低動態(tài)的場景下則存在明顯的缺陷[10-12],對載體的機動性要求較高,對低動態(tài)的慣導(dǎo)RTK場景并不適用。文獻(xiàn)[13-14]介紹了GNSS速度定姿的方法,對于機動性較高的載體,此方法可以獲得精度較高的航向角,但對于慣導(dǎo)RTK來說,人的行走速度較低(1~2 m/s),并不適用這個方法,而且其對準(zhǔn)時間需要50 s甚至更多[13],顯然其時間過長。關(guān)于慣導(dǎo)RTK的校準(zhǔn)方法也可以在各大企業(yè)的專利說明中獲得[15-16],但這些企業(yè)的詳細(xì)技術(shù)細(xì)節(jié)不可得知,部分企業(yè)采用高精度的慣導(dǎo)模塊來解決初始對準(zhǔn)問題,但增加了成本。
綜上所述,目前針對慣導(dǎo)RTK初始對準(zhǔn)的研究較少,已有的許多研究成果也不適用于低成本低動態(tài)的慣導(dǎo)RTK[17-20]。鑒于此,提出一種基于梯度下降的慣導(dǎo)RTK初始對準(zhǔn)方法,將多矢量定姿與梯度下降相融合,以提高多矢量定姿的精度。
多矢量定姿實際上衛(wèi)星姿態(tài)的最小二乘估計問題[21-22],現(xiàn)在被廣泛應(yīng)用于慣導(dǎo)系統(tǒng)的初始對準(zhǔn)中。
(1)
(2)
(3)
(4)
梯度下降法[24]是著名的優(yōu)化算法之一,也是迄今優(yōu)化神經(jīng)網(wǎng)絡(luò)時常用的方法。其目的是得出最小化目標(biāo)函數(shù)時的目標(biāo)參數(shù),利用目標(biāo)函數(shù)關(guān)于參數(shù)的梯度的反方向更新參數(shù),從而最小化目標(biāo)函數(shù)。學(xué)習(xí)率決定達(dá)到最小值或者局部最小值過程中所采用的步長的大小。
梯度下降算法過程如下。
步驟1將目標(biāo)函數(shù)J(ψ)表示為矩陣形式。
(5)
(6)
(7)
(8)
對J(ψ)求導(dǎo)得
(9)
(10)
(11)
(12)
步驟2用學(xué)習(xí)效率(步長)α乘以損失函數(shù)的梯度J(ψ)得出當(dāng)前下降的距離L為
L=αJ(ψ)
(13)
步驟3確定下降距離L是否都小于所設(shè)的終止距離ε,如果是則算法終止,當(dāng)前的姿態(tài)參數(shù)ψi即最優(yōu)的姿態(tài)參數(shù),否則按式(14)更新姿態(tài)角并重新進(jìn)入步驟1,直至L都小于ε。
ψi+1=ψi-L
(14)
與傳統(tǒng)的SVD和QUEST方法相比,梯度下降求解多矢量定姿方程無需對矩陣進(jìn)行復(fù)雜的奇異值分解和求解復(fù)雜的高次方程,過程中無大量的矩陣運算,而且還和傳統(tǒng)方法一樣選取了多組觀測矢量進(jìn)行解算,從而保證了精度和魯棒性。
梯度下降通常包含3種形式:批量梯度下降法(batch gradient descent, BGD)、隨機梯度下降法(stochastic gradient descent, SGD)和小批量梯度下降法(mini-batch gradient descent, MBGD)。BGD在更新參數(shù)時使用所有觀測矢量進(jìn)行更新,雖然增加了準(zhǔn)確度和魯棒性,但卻造成收斂速度緩慢,而如果部分矢量的質(zhì)量本身不高,使用所有的觀測矢量則可能反而會降低精度;SGD只使用一組觀測矢量進(jìn)行更新,加快了收斂速度的同時卻降低了準(zhǔn)確度和魯棒性;MBGD是BGD和SGD的折中,只使用k(1 如圖1所示,本文算法只需要將對中桿桿尖在地面上不動,手持對中桿將慣導(dǎo)RTK從一端晃到另一端便能完成對準(zhǔn),整個過程只需2~3 s。在晃動過程中會產(chǎn)生多組觀測矢量,這些觀測矢量的質(zhì)量參差不齊,會得出異常的航向失準(zhǔn)角ψ,如不進(jìn)行合理的挑選則會嚴(yán)重影響對準(zhǔn)的精度甚至?xí)?dǎo)致對準(zhǔn)失敗。 圖1 慣導(dǎo)RTK初始對準(zhǔn)示意圖Fig.1 Schematic diagram of inertial navigation RTK initial alignment 航向失準(zhǔn)角ψ的計算公式為 (15) (16) 式(16)中:x2、y2分別為坐標(biāo)系轉(zhuǎn)換后的橫縱坐標(biāo);x1、y1分別為坐標(biāo)系轉(zhuǎn)換前的橫縱坐標(biāo);δx、δy分別為兩坐標(biāo)系橫縱坐標(biāo)的平移參數(shù);θ為兩坐標(biāo)系的旋轉(zhuǎn)參數(shù)。 圖2 坐標(biāo)轉(zhuǎn)換示意圖Fig.2 Schematic diagram of coordinate conversion 由于觀測矢量的質(zhì)量參差不齊,所求得的ψ也不盡相同,但大多數(shù)的ψ都只是個位數(shù)上不同,只有一部分的ψ存在較大的差異,這是由于對準(zhǔn)時間較短,陀螺漂移引起的航向失準(zhǔn)角變化不大,如果ψ都存在較大差異則說明此時噪聲過大或者IMU出現(xiàn)問題,這時候校準(zhǔn)便失去了意義,剔除這些存在較大差異的ψ便能使用MBGD來解算目標(biāo)函數(shù)。 平面位置誤差與航向失準(zhǔn)角的關(guān)系式為[1] ΔH=ψlsinβ (17) 式(17)中:ΔH為平面位置誤差;l為RTK天線相位中心到對中桿桿尖的距離;β為對中桿的傾斜角度。 在l=1.865 m,β<40°時,要達(dá)到2.5 cm則ψ需要達(dá)到1.19°的精度;在l=1.865 m,β<60n時,要達(dá)到2.5 cm則ψ需要達(dá)到0.89°的精度,因此式(15)所計算出的ψ只能作為篩選觀測矢量的條件,不能作為對準(zhǔn)結(jié)果。 剔除質(zhì)量較差的觀測矢量后,通過MBGD便可以計算出ψ,接著將天線相位中心的坐標(biāo)通過傾斜補償改正到地面點坐標(biāo),其改正公式為 (18) lb=[0 0l]T (19) 所設(shè)計的慣導(dǎo)RTK初始對準(zhǔn)框架如圖3所示。 慣性導(dǎo)航系統(tǒng)(inertial navigation system,INS)圖3 慣導(dǎo)RTK初始對準(zhǔn)流程圖Fig.3 Inertial navigation RTK initial alignment flow chart 對SINS系統(tǒng)參數(shù)、GPS參數(shù)進(jìn)行設(shè)置生成仿真軌跡,仿真參數(shù)設(shè)置如下。 (2)GNSS速度誤差為0.03 m/s,平面位置誤差為0.01 m,高程位置誤差為0.02 m,輸出頻率為10 Hz桿尖到天線相位中心的長度為1.865 m,傾斜角度40°以內(nèi)。 對所提算法進(jìn)行了100次的仿真實驗,其對準(zhǔn)結(jié)果如圖4所示。 圖4 航向?qū)?zhǔn)誤差分布圖Fig.4 Distribution diagram of course alignment error 經(jīng)統(tǒng)計,有99%的樣本對準(zhǔn)誤差在1°以內(nèi),其誤差分布大致符合正態(tài)分布,中誤差和均方根分別為0.271 9和0.304 1,結(jié)合式(17)可知,所提算法滿足慣導(dǎo)RTK所需的初始對準(zhǔn)精度。 實驗選擇在露天的條件下進(jìn)行,使用一臺筆記本電腦,兩臺RTK分別作為移動站和基站進(jìn)行實驗,其中充當(dāng)移動站的RTK集成了MEMS-INS/GNSS系統(tǒng),MEMS-IMU數(shù)據(jù)輸出頻率為100Hz,GNSS數(shù)據(jù)輸出頻率為10Hz。移動站RTK裝置如圖5所示,集成在移動站RTK上的MEMS-IMU芯片參數(shù)如表1所示。 表1 MEMS-IMU芯片參數(shù)Table 1 MEMS-IMU chip parameters 圖5 移動站RTK示意圖Fig.5 Schematic diagram of mobile station RTK 使用筆記本同時采集移動站RTK的GNSS數(shù)據(jù)和MEMS-IMU數(shù)據(jù),實驗步驟如下。 步驟1首先對MEMS-IMU使用Mahony算法進(jìn)行調(diào)平,接著將對中桿桿尖放在已知點上(放在已知點上是為了對算法進(jìn)行分析提供參考,實際應(yīng)用中可在任意位置進(jìn)行實時對準(zhǔn)),手持對中桿進(jìn)行一次搖晃,以此來完成一次校準(zhǔn)記錄。 步驟2重復(fù)步驟1 100次,且每次對中桿傾斜都在40°以內(nèi),每20次便重啟一次移動站RTK,重新對MEMS-IMU進(jìn)行調(diào)平。 步驟3重復(fù)步驟1和步驟2,將對中桿傾斜角改為40°~60°,測試較為極限的情況下的算法性能。 現(xiàn)場實驗的200組數(shù)據(jù)的平面和高程點位誤差如圖6和圖7所示,其中誤差和均方根如表2所示。 表2 誤差統(tǒng)計對比Table 2 Error statistical comparison 圖6 平面點位誤差圖Fig.6 Plane point position error diagram 圖7 高程點位誤差圖Fig.7 Elevation point position error diagram 由表2可知,傾斜角在40°以內(nèi)時91%的測量點的平面點位誤差在0.025 m以內(nèi),而當(dāng)傾斜角大于40°時則平面點位誤差有所變大,僅有83%的測量點的平面點位誤差在0.025 m以內(nèi),從圖6和表2中能看出傾斜角越大,平面位置誤差越大,當(dāng)傾斜角大于40°時開始出現(xiàn)了大于0.03 m的平面點位誤差,造成這種現(xiàn)象的原因主要有兩個,首先是與RTK的水平定位精度有關(guān),隨著傾斜角的增大,使得位置精度因子(position dilution of precision,PDOP)增大,RTK的水平定位精度相應(yīng)降低;根據(jù)式(17)當(dāng)傾斜角增大時,也會對平面精度產(chǎn)生負(fù)面影響,從而影響傾斜補償?shù)淖罱K精度。 從圖7和表2中可以看出,高程點位誤差受傾斜角的影響相對于平面位置來說相對較小,根據(jù)式(17)、式(18)可知,高程的傾斜補償沒有利用到航向失準(zhǔn)角,因此兩組數(shù)據(jù)的差距不如平面位置誤差明顯,但傾斜角增大使得PDOP增大,而且RTK的大地高精度低于平面位置精度,從而使高程點位誤差增大。 為了證明所提算法的優(yōu)越性,將實驗數(shù)據(jù)分別利用文獻(xiàn)[1]的算法和所提算法進(jìn)行初始對準(zhǔn),并將對準(zhǔn)結(jié)果進(jìn)行對比分析,所得平面點位誤差結(jié)果如圖8所示。 圖8 兩種初始對準(zhǔn)方案平面點位誤差圖Fig.8 Plane point error diagram of two initial alignment schemes 通過對實驗數(shù)據(jù)分別使用兩種對準(zhǔn)算法分析可知兩種算法的精度相當(dāng),都能滿足慣導(dǎo)RTK的應(yīng)用需求,但文獻(xiàn)[1]算法利用地面點計算INS軌跡,而所提出算法無需利用地面點來進(jìn)行初始對準(zhǔn),相對來說適用性更好。 將所提算法與SVD進(jìn)行分析對比,以驗證其優(yōu)越性,兩種算法的點位誤差對比如圖9所示。不同算法誤差統(tǒng)計對比結(jié)果如表3所示。 表3 不同算法誤差統(tǒng)計對比Table 3 Comparison of error statistics for different algorithms 圖9 不同算法平面點位誤差圖Fig.9 Plane point position error diagram of different algorithms 圖9清晰地表明所提出的MBGD比傳統(tǒng)SVD更具有優(yōu)越性,精度更高,從表3中可以看出,MBGD相比SVD中誤差和均方差分別降低了12%和11%。 接下來將對BGD、SGD和MBGD 3種不同批量梯度下降算法進(jìn)行對比分析,對比結(jié)果如圖10、表4所示。 表4 不同批量算法誤差統(tǒng)計對比Table 4 Statistical comparison of error of different batch algorithms 圖10 不同批量平面點位誤差圖Fig.10 Plane point error diagram of different batches 分析圖10和表4可知,BGD采用所有的觀測矢量進(jìn)行初始對準(zhǔn),收斂時間最長,由于沒有剔除質(zhì)量差的觀測矢量,因此所得精度一般,有時甚至校準(zhǔn)失敗,實用性不高;SGD只采用一組觀測矢量進(jìn)行對準(zhǔn)(采用相對誤差最小的觀測矢量,即最長的觀測矢量),收斂時間明顯變快,但卻損失了精度,不能運用到實際中去;MBGD進(jìn)行了觀測矢量的篩選,采用部分觀測矢量進(jìn)行校準(zhǔn),精度最高,收斂時間也能滿足實際工程應(yīng)用。 圖11和表5反映了不同批量下的目標(biāo)函數(shù)J(ψ)與航向失準(zhǔn)角ψ的關(guān)系。 表5 算法不同批量下所得ψTable 5 Statistical comparison of error of different batch algorithms 圖11 不同批量下的目標(biāo)函數(shù)圖Fig.11 Objective function diagram under different batches 由圖9、圖10、表4和表5可知,BGD所得出ψ 仍存在一定的偏差,可達(dá)到度量級,這是由于沒有剔除質(zhì)量差的觀測矢量;而SGD只用一組觀測矢量進(jìn)行校準(zhǔn),目標(biāo)函數(shù)值較小,收斂速度極快,但卻校準(zhǔn)失敗,這是由于只使用一組觀測矢量使得梯度下降無法下降到全局最優(yōu)解,只能到達(dá)局部最優(yōu)解,雖然可以通過調(diào)整ψ的初始值來進(jìn)行優(yōu)化,得出全局最優(yōu)解,但在實際應(yīng)用中明顯不便;MBGD由于剔除了質(zhì)量較差的觀測矢量,從而得出了較為準(zhǔn)確的ψ。 提出一種基于梯度下降的慣導(dǎo)RTK初始對準(zhǔn)方法,將多矢量定姿與梯度下降相融合,有效提高了多矢量定姿的精度。通過仿真實驗和現(xiàn)場實驗得出如下結(jié)論。 (1)所提算法克服了文獻(xiàn)[1] 需借助地面已知點進(jìn)行初始對準(zhǔn)的不足,只需在任意地點便可進(jìn)行初始對準(zhǔn),拓展了算法的適用性。 (2) 多矢量定姿與梯度下降相融合的可行性得到驗證,且精度優(yōu)于傳統(tǒng)的方法。 (3) 所提算法的精度和收斂速度都能很好地滿足慣導(dǎo)RTK應(yīng)用的要求。3 仿真實驗分析
3.1 仿真軌跡設(shè)置
3.2 仿真結(jié)果與分析
4 實驗與結(jié)果分析
4.1 數(shù)據(jù)采集
4.2 數(shù)據(jù)處理結(jié)果與分析
5 結(jié)論