姜 維,李佳蕾,王 劍,蔡伯根
(1.北京交通大學(xué) 電子信息工程學(xué)院, 北京 100044;2.北京交通大學(xué) 軌道交通控制與安全國家重點實驗室,北京 100044;3.北京市電磁兼容與衛(wèi)星導(dǎo)航工程技術(shù)研究中心, 北京 100044)
目前全球衛(wèi)星導(dǎo)航系統(tǒng)(Global Navigation Satellite System, GNSS)在列車運行控制中的應(yīng)用逐漸增多,通過衛(wèi)星定位技術(shù)實現(xiàn)列車自主定位已經(jīng)成為下一代列控系統(tǒng)發(fā)展的主要趨勢[1-2]。在列車自主定位的過程中,軌道占用情況的準(zhǔn)確識別是需要解決的首要問題。較為常見的基于車載設(shè)備完成軌道占用識別的方法主要通過GNSS提供位置測量,配合地圖匹配等技術(shù),并引入慣性導(dǎo)航系統(tǒng)等其他傳感器進一步增強列車軌道占用設(shè)別性能[3-5]。根據(jù)鐵路線路的一維性,利用GNSS進行軌道占用識別的情況主要包括平行線路和道岔區(qū)段。其中道岔區(qū)段由于有直向和側(cè)向兩個方向,且在岔尖附近,兩個方向的股道距離很小,受到GNSS定位精度的限制,在這一區(qū)段的軌道占用識別難度更高。尤其在車場咽喉區(qū),該區(qū)段是列車到發(fā)、調(diào)車作業(yè)等必經(jīng)之地。由于咽喉區(qū)道岔匯聚,多股道并存且各股道之間間隔較小,更難保證軌道占用識別的準(zhǔn)確率[6],因此需要引入其他方式來進一步提高準(zhǔn)確率。目前常見的道岔轍叉角度為3°~6°,當(dāng)列車進入此區(qū)段時,其航向角會發(fā)生較為明顯的變化。因此可以引入GNSS姿態(tài)測量信息來輔助判斷列車軌道占用狀態(tài),從而提高軌道占用識別的準(zhǔn)確性[7]。Mueller研究的基于衛(wèi)星導(dǎo)航的航向定位系統(tǒng)就是通過測量列車航向角,與車載地圖的航向角對比來計算出列車進入正線或側(cè)線的概率[8]。Heirich[9]提出利用粒子濾波、多傳感器融合的列車定位算法中,也將列車姿態(tài)作為列車狀態(tài)估計量之一,并且主要應(yīng)用在交叉軌道區(qū)段的列車定位研究中。Lüddecke[10]認為地圖匹配算法中,列車的航向角可以提供比位置坐標(biāo)更精確的列車狀態(tài)信息,可用于區(qū)分判斷道岔區(qū)段兩種前進方向,且列車移動的速度越快,測得的航向角就越準(zhǔn)確。由此可見,在衛(wèi)星信號狀況良好的情況下,將列車姿態(tài)信息作為列車狀態(tài)之一,并輔助其他傳感器及軌道電子地圖等設(shè)備進行列車軌道占用檢查,可以在低成本的情況下進一步提高軌道占用檢查準(zhǔn)確度。
傳統(tǒng)的高精度姿態(tài)測量信息主要是通過慣性導(dǎo)航系統(tǒng)遞推得到,慣性導(dǎo)航系統(tǒng)具有自主、安全的優(yōu)點,但它的動態(tài)漂移特性會導(dǎo)致它們的測量精度隨著時間積累而降低[11]。GNSS測姿與慣導(dǎo)系統(tǒng)相比,具有終端設(shè)備簡單、安裝方便的優(yōu)點,且不會有誤差累積問題。目前大多數(shù)GNSS測姿方案采用兩根及以上的天線,通過載波相位差分技術(shù)計算天線之間的基線矢量,然后根據(jù)載體坐標(biāo)系與當(dāng)?shù)氐乩碜鴺?biāo)系之間的轉(zhuǎn)換關(guān)系計算姿態(tài)。這種方法求解得到的姿態(tài)精度較高,但也不可避免的存在天線安裝要求高、天線支架龐大等問題,并且隨著使用時間增加,天線支架還可能出現(xiàn)輕微形變,導(dǎo)致基線長度發(fā)生變化,從而姿態(tài)角的解算精度無法保證[12]。因此衍生出單天線測姿算法的研究,在20世紀(jì)90年代末,Kornfeld 等[13]便提出采用單天線偽姿態(tài)初步飛行試驗,證明了單天線解算得到偽姿態(tài)的可用性。張鵬等[14]利用單天線解算得到的三維速度測量值求取載體的偽姿態(tài),其結(jié)果與航跡發(fā)生器計算得到的理想姿態(tài)對比,誤差可以保持在1°以內(nèi)。孫芮等通過最小二乘法解算得到相鄰歷元間的位移矢量,并進一步計算偏航角,其中根據(jù)載波相位計算得到的姿態(tài)精度可達到1°左右,但在該算法中并未描述捕獲衛(wèi)星數(shù)量頻繁變化時對姿態(tài)解算結(jié)果的影響[15]。上述文獻中單天線測姿算法均被應(yīng)用于汽車導(dǎo)航,但關(guān)于列車運行過程中的姿態(tài)解算研究很少。
為了在低成本的前提下引入精度較高的列車姿態(tài)信息輔助軌道占用識別,提高識別準(zhǔn)確度,保證列車安全運行,提出一種應(yīng)用于列車的單天線姿態(tài)測量方法。該方法利用共模誤差在短時間內(nèi)不變的特點,通過星間差分和時間差分相結(jié)合的雙差模型,巧妙地消除了大部分誤差,避免了復(fù)雜的誤差建模過程,簡化了算法的復(fù)雜程度。其中星間差分主要通過在一個歷元中參考衛(wèi)星與其他衛(wèi)星的觀測量之間差分,消除接收機鐘差,形成單差載波相位。時間差分為相鄰歷元間觀測量的差分,消除對流層誤差、電離層誤差、衛(wèi)星鐘差以及整周模糊度。將雙差后的載波相位觀測方程進行線性化處理,利用卡爾曼濾波估計前后歷元間位移矢量的坐標(biāo)以及速度的變化量。根據(jù)坐標(biāo)系之間的轉(zhuǎn)換關(guān)系進一步解算列車的航向角和俯仰角,實現(xiàn)基于單天線的列車姿態(tài)解算。
GNSS主要通過向地面播發(fā)衛(wèi)星信號實現(xiàn)定位授時功能,它的觀測量包括偽距定位和載波相位兩種。偽距定位根據(jù)衛(wèi)星發(fā)送信號和接收機接收信號的時間延遲來計算傳播距離,從而進行定位,其觀測方程為
ρ=(tr-ts)·c
( 1 )
式中:ρ為偽距觀測量;tr為接收機接收到衛(wèi)星信號時的GPS時;ts為衛(wèi)星信號發(fā)射時的GPS時;c為光速。
將衛(wèi)星信號在觀測過程中可能產(chǎn)生的誤差分為三類:包括衛(wèi)星的誤差,如衛(wèi)星鐘差、星歷誤差等;傳播過程中的誤差,如對流層誤差、電離層誤差以及多路徑誤差等;接收機的固有誤差,如接收機鐘差等。將這些誤差考慮之后,偽距觀測方程可進一步寫為
ρ=r+c(δt-dt)+I+T+ε
( 2 )
式中:ε為剩余殘差;δt為接收機的時鐘誤差;dt為衛(wèi)星的時鐘誤差;I為衛(wèi)星信號傳播路徑中的電離層延遲等效距離誤差;T為衛(wèi)星信號傳播路徑中的對流層延遲等效距離誤差;r為衛(wèi)星與接收機之間的幾何距離,可以進一步表示為
( 3 )
其中,(Xs,Ys,Zs)為衛(wèi)星的位置坐標(biāo);(xr,yr,zr)為接收機的位置坐標(biāo)。
載波相位定位是根據(jù)傳輸過程中載波信號的相位變化來計算傳播距離,這樣計算得到的距離是以周為單位。但是由于首次觀測到的載波相位值中包含整數(shù)值無法測量,因此載波相位的測量值并不能直接用來測距,即實際的載波相位觀測值必須包含一個整周模糊度未知數(shù)N,準(zhǔn)確的整周模糊度需要通過模糊度固定算法求得,這也使得載波相位定位相比于偽距定位更加復(fù)雜。
載波相位觀測方程為
λφ=r-I+T+c(δt-dt)+λN+ε
( 4 )
式中:λ為載波信號的波長;φ為載波相位測量值;N為整周模糊度。
載波相位定位相比于偽距定位引入新的未知數(shù),即整周模糊度N,但由于載波信號的波長更小,因此載波相位的測量值精度更高,可達到厘米級的定位精度,更適用于高精度的定位場景。在姿態(tài)解算過程中,對定位精度要求較高,采用載波相位定位技術(shù),并通過差分模型進一步降低定位過程中的各項誤差。
由載波相位觀測方程可以看出,載波相位的測量值受衛(wèi)星鐘差、接收機鐘差,以及傳播過程中電離層延遲誤差和對流層延遲誤差等誤差源影響。其中,接收機鐘差可以通過參考衛(wèi)星與其他衛(wèi)星之間差分來消除。首先選擇一顆高度角最高的衛(wèi)星作為參考衛(wèi)星(假設(shè)參考衛(wèi)星為第j顆衛(wèi)星),則星間差分載波相位觀測方程可以表示為
λφij=rij-Iij+Tij-c×dt+λNij+εij
( 5 )
式中:上標(biāo)ij為第i顆衛(wèi)星與第j顆衛(wèi)星之間進行星間差分后的結(jié)果。
為進一步消除其他誤差,在星間差分的基礎(chǔ)上進行時間載波相位差分,即通過時間域的差分,用一根天線實現(xiàn)載波相位雙差。當(dāng)以很小的采樣間隔對同一顆衛(wèi)星持續(xù)觀測時,由于相鄰歷元時間間隔短,因此整周模糊度、衛(wèi)星鐘差、對流層誤差以及電離層誤差認為不變,可以通過時間差分完全消除。圖1為單天線載波相位雙差示意。
圖1 單天線載波相位雙差示意
雙差后的載波相位觀測方程可以表示為
( 6 )
( 7 )
( 8 )
( 9 )
(10)
令
(11)
(12)
則式( 6 )雙差載波相位觀測方程可以進一步寫成
(13)
為了更準(zhǔn)確地計算相鄰歷元間列車的位移矢量,選擇卡爾曼濾波算法進行估計,卡爾曼濾波系統(tǒng)的模型包括運動模型和量測模型,運動模型是用來描述載體的運動狀態(tài),可以表示為
Xk=FXk-1+Wk
(14)
式中:Xk為系統(tǒng)的狀態(tài)矢量(k時刻);F為狀態(tài)轉(zhuǎn)移矩陣;Wk~N(0,Q)為系統(tǒng)的過程噪聲。
由于在列車運行過程中,位移矢量的速度變化量有較強的相關(guān)性,因此將系統(tǒng)的運動狀態(tài)建模為一階高斯-馬爾可夫速度模型,預(yù)估狀態(tài)Xk可以被表示為
(15)
系統(tǒng)狀態(tài)轉(zhuǎn)移矩陣為
(16)
式中:dT為采樣間隔;I為單位矩陣。
系統(tǒng)的噪聲矩陣為
(17)
式中:τ為相關(guān)時間;由于該模型中速度服從一階高斯-馬爾可夫分布,因此噪聲誤差主要體現(xiàn)在速度對應(yīng)的維度中。
卡爾曼濾波中的量測模型為
Zk=HkXk+Vk
(18)
式中:Zk為系統(tǒng)觀測向量;Hk為量測矩陣;Vk~N(0,R)為系統(tǒng)的量測噪聲。
根據(jù)雙差載波相位觀測方程可以得到系統(tǒng)的觀測矢量為
(19)
系統(tǒng)的量測矩陣H為
(20)
由于星間差分載波相位的量測值之間是具有相關(guān)性,而相鄰歷元間再進行時間差分后,量測值之間的相關(guān)性進一步增強,因此系統(tǒng)量測噪聲的協(xié)方差矩陣R為
(21)
式中:σ2為載波相位觀測量的噪聲。
式(14)~式(21)為卡爾曼濾波過程中一些主要的參數(shù)矩陣設(shè)置??柭鼮V波是通過多個循環(huán)周期來不斷提高估計的精度。在一個卡爾曼濾波周期內(nèi),包括時間更新和量測更新兩個過程。時間更新是利用上一個歷元估計的狀態(tài)量來預(yù)測當(dāng)前時刻的狀態(tài)量,并計算其誤差協(xié)方差矩陣來衡量預(yù)測的是否準(zhǔn)確。量測更新是利用觀測量對估計量進行修正的過程。其中預(yù)測的結(jié)果和量測結(jié)果所占權(quán)重大小是通過增益矩陣來調(diào)節(jié)的,從而使得估計值更接近于真實值。
此外,在卡爾曼濾波循環(huán)計算不同歷元間位移矢量坐標(biāo)的過程中,當(dāng)捕獲到的衛(wèi)星數(shù)量發(fā)生變化時,還需要做進一步處理才能保證算法的普適性。當(dāng)衛(wèi)星失鎖時,找到當(dāng)前歷元下跟蹤失敗的衛(wèi)星,并獲取衛(wèi)星在序列中的位置,將上一歷元中對應(yīng)位置處的載波相位觀測量去掉。當(dāng)捕獲到新的衛(wèi)星時,先將當(dāng)前歷元的載波相位觀測量傳遞給下一歷元(為下一歷元時間差分做準(zhǔn)備)然后去掉當(dāng)前歷元中新增衛(wèi)星的觀測量,再與上一歷元進行時間差分。
坐標(biāo)系是衛(wèi)星導(dǎo)航定位與測姿的基礎(chǔ),傳統(tǒng)的姿態(tài)角定義為載體坐標(biāo)系相對于當(dāng)?shù)氐乩碜鴺?biāo)系的相對角位置。在單天線姿態(tài)測量中,還涉及穩(wěn)定坐標(biāo)系,以下是對三個主要涉及的坐標(biāo)介紹。
(1)載體坐標(biāo)系
載體坐標(biāo)系(B系)也稱為“右前上”坐標(biāo)系,將天線相位中心定義為原點,沿著載體的縱軸向前的方向為y軸,沿著載體向右,垂直于載體縱軸的方向為x軸,垂直于xOy平面,沿載體豎軸向上的方向為z軸。
(2)當(dāng)?shù)氐乩碜鴺?biāo)系
當(dāng)?shù)氐乩碜鴺?biāo)系(N系)也稱“東北天”坐標(biāo)系,它的原點與載體坐標(biāo)系原點定義相同,z軸在地心矢量方向上,y軸沿子午線向北,x軸由右手定則確定。
(3)穩(wěn)定坐標(biāo)系
穩(wěn)定坐標(biāo)系(S系)的y軸是沿著載體在當(dāng)?shù)氐乩碜鴺?biāo)系中的速度方向,x軸垂直于y軸并且指向載體的縱軸方向,z軸與x軸和y軸垂直。
(22)
其中,
(23)
(24)
(25)
在列車姿態(tài)解算應(yīng)用,主要討論偏航角和俯仰角,其轉(zhuǎn)換見圖2。
圖2 坐標(biāo)系轉(zhuǎn)換關(guān)系
(26)
(27)
進一步推導(dǎo)得
(28)
(29)
為了驗證所提算法的可行性和普適性,選取了兩組實驗數(shù)據(jù)進行驗證:分別是2019年6月和2021年7月在青藏線上采集的數(shù)據(jù)。在數(shù)據(jù)采集過程中,天線位于首節(jié)車廂頂部靠中間的位置,連接著SPAN接收機。將SPAN接收機輸出的高精度信息解算得到的姿態(tài)角作為算法驗證過程中的參考姿態(tài)角。
實驗一采集數(shù)據(jù)約為15 min,數(shù)據(jù)的采樣頻率為10 Hz。圖3為實驗過程中列車行駛的軌跡。列車在運行過程中速度保持在18~22 m/s,速度變化見圖4。
圖3 列車運行軌跡示意(實驗一)
圖4 列車速度變化曲線(實驗一)
在列車運行過程中接收機捕獲到衛(wèi)星數(shù)量變化以及對應(yīng)的精度因子(Dilution of Precision,DoP)變化見圖5。其中包括位置精度因子(Position Dilution of Precision, PDoP)、水平精度因子(Horizontal Dilution of Precision, HDoP)和垂直精度因子(Vertical Dilution of Precision, VDoP)。在整個實驗一中,衛(wèi)星信號質(zhì)量較為良好,在3 000歷元以前捕獲衛(wèi)星數(shù)量較為穩(wěn)定,3 000歷元之后,捕獲衛(wèi)星數(shù)量變化頻繁,DoP值也有所波動,但整體捕獲衛(wèi)星數(shù)量大于或等于6顆。
圖5 DOP值及捕獲衛(wèi)星數(shù)量(實驗一)
圖6為參考偏航角和解算得到的偏航角對比圖??梢钥闯鲈? 500~3 000歷元、4 000~4 500歷元以及6 000歷元左右列車的航向都發(fā)生較為明顯的變化。將局部結(jié)果(1 100歷元到1 300歷元之間)放大后可以看出單天線測姿算法解算得到偏航角結(jié)果抖動更劇烈,但二者的誤差保持在較小的范圍內(nèi)。
圖6 參考偏航角與計算值對比(實驗一)
圖7為偏航角參考值與計算值之間的誤差圖,在3 000歷元到6 000歷元之間,由于捕獲衛(wèi)星數(shù)量變化頻繁,因此偏航角結(jié)果有輕微波動。在8 000歷元之后,捕獲衛(wèi)星數(shù)量下降至6顆,衛(wèi)星DoP值增大,解算得到的偏航角精度也有所降低。但是整個過程中誤差基本保持在±0.5°以內(nèi)。
圖7 偏航角誤差(實驗一)
圖8為俯仰角參考值與計算值的對比圖。由于列車運行過程中,大部分場景下俯仰角變化范圍很小,因此解算結(jié)果的誤差也保持在很小的范圍內(nèi),見圖9。
圖8 俯仰角結(jié)果對比(實驗一)
圖9 俯仰角誤差(實驗一)
實驗二選取數(shù)據(jù)共2 200歷元,列車運行軌跡見圖10,與實驗二相比,列車運行的速度更慢,基本保持在11~15 m/s,見圖11。
從圖12衛(wèi)星DoP值和捕獲衛(wèi)星數(shù)量變化情況來看,捕獲衛(wèi)星數(shù)量變化少,與實驗一數(shù)據(jù)相比,整體衛(wèi)星信號質(zhì)量更良好。
實驗二解算得到的偏航角誤差見圖13,整體誤差保持在1°以內(nèi),其中在800~1 200歷元,誤差值增大,對應(yīng)圖14可以看出該區(qū)間內(nèi)列車轉(zhuǎn)向,偏航角變化20°左右。
圖10 列車運行軌跡示意(實驗二)
圖11 列車速度變化曲線(實驗二)
圖12 衛(wèi)星DOP值和捕獲衛(wèi)星數(shù)量(實驗二)
圖13 偏航角誤差(實驗二)
圖14 偏航角結(jié)果對比(實驗二)
俯仰角解算結(jié)果與參考值對比見圖15,與實驗一結(jié)果類似,由于變化范圍很小,所以誤差也保持在較小的范圍內(nèi),見圖16。
圖15 俯仰角結(jié)果對比(實驗二)
圖16 俯仰角結(jié)果誤差(實驗二)
表1對實驗一和實驗二的偏航角、俯仰角的誤差進行統(tǒng)計分析,其中實驗一偏航角的誤差均方根為0.118 5°,俯仰角由于其本身變化范圍較小,因此其誤差均方根保持在0.001 6°。實驗二的偏航角誤差均方根為0.160 1°,俯仰角的誤差與實驗一近似。
表1 偏航角與俯仰角誤差分析 (°)
將實驗一與實驗二對比可以看出盡管實驗二的衛(wèi)星信號質(zhì)量更好,但由于列車運行速度較低,其解算得到的偏航角誤差均方根比實驗一大0.05°左右。且在實驗二中,列車在轉(zhuǎn)向的過程中對偏航角解算結(jié)果影響更大。這是因為列車的速度會影響時間差分過程中的位移矢量的方向,當(dāng)列車運行速度較慢,且有較大幅度轉(zhuǎn)向時,位移矢量的方向列車實際偏航角的方向會產(chǎn)生小范圍偏差,由此可見列車速度對單天線時間差分的測姿算法精度有一定的影響,具體表現(xiàn)在速度越高,其姿態(tài)解算精度越高。但從整體姿態(tài)解算結(jié)果來看,誤差值保持在1°以內(nèi),可以用于輔助判斷列車的軌道占用狀態(tài)。
為進一步提高道岔區(qū)段軌道占用識別準(zhǔn)確性,本文引入列車姿態(tài)角作為輔助判斷的手段,提出一種單天線列車姿態(tài)解算方法,采用時間差分與星間差分相結(jié)合的“雙差”技術(shù),在保證精度的前提下避免了復(fù)雜的誤差修正模型以及整周模糊度估計。利用卡爾曼濾波算法對列車位移矢量估計解算,并根據(jù)此位移矢量求解列車姿態(tài)。為了評估所提出的單天線測姿算法性能,選取青藏線上的兩組真實列車數(shù)據(jù)進行實驗仿真,其中偏航角的誤差均方根可以分別達到0.118 5°和0.160 1°,俯仰角誤差均方根分別為0.001 4°和0.001 6°,同時,通過對比結(jié)果分析得出列車速度會影響單天線測姿算法精度。