宮 磊,馬 煦,譚宏力
(北京衛(wèi)星導航中心,北京 100094)
衛(wèi)星導航系統作為全天候不間斷運行的系統,需要對衛(wèi)星進行實時監(jiān)測,其中,衛(wèi)星鐘的穩(wěn)定性對系統服務精度影響巨大。實時測量星地鐘差是監(jiān)測衛(wèi)星鐘性能的重要手段。衛(wèi)星傳送至地面的星地鐘差時間序列包含衛(wèi)星鐘差、地面鐘差以及衛(wèi)星鐘漂移和地面鐘漂移等信息,因此,實時測量的星地鐘差數據量很大,需要進行壓縮以便于存儲和傳輸。
根據衛(wèi)星導航系統的接口文件,衛(wèi)星廣播的衛(wèi)星鐘差參數的范圍不超過±0.95ms,衛(wèi)星鐘差精確到0.1ns,需要用4字節(jié)整型數表示。鐘差序列的時標用周計數和周內秒計數表示,需要6字節(jié)。這樣一個歷元的鐘差數據包含時標和鐘差結果,需要用10個字節(jié)表示。按監(jiān)測頻度為1Hz計算,1天的數據量為864K字節(jié)。然而這樣的鐘差序列包含了很多冗余信息,特別是時標信息。由于時標是等間隔的,可以只記錄首歷元時標,這樣有518K字節(jié)、約60%的數據量是多余的。對于鐘差信息也可以采用首歷元加增量的方式表示,進一步壓縮數據量。
然而對于實際數據如果出現中斷情況,只記錄首歷元時標,會導致中斷后的數據時標錯位。如果出現數據跳變情況,計算出的增量會超出數據表示范圍,導致數據精度損失。因此,在實際應用增量壓縮算法時,首先要分析原始數據特性,對數據中斷和跳變情況進行處理。對增量序列進行量化時還要消除累積誤差和量化偏差,才能保證壓縮后的數據保留原始數據的精度。
星地鐘差數據在扣除地面鐘差后,包含了衛(wèi)星鐘差和鐘差漂移。由于衛(wèi)星鐘差的漂移變化率很小,在短時間內,鐘差時間序列可以用1階線性曲線擬合。1階線性曲線只需要兩個參數表示,等間隔的增量是常數。而實際的鐘差時間序列含有觀測噪聲和鐘差波動的信息,等間隔的增量非定常。然而鐘差增量是平穩(wěn)的時間序列,增量變化的幅值是有限的,而原始鐘差序列按照線性變化,幅值只受衛(wèi)星導航系統發(fā)播的參數接口限制,變化范圍遠大于增量變化的幅度。
由于衛(wèi)星導航系統的接口限制,衛(wèi)星鐘差需要保持在±0.95ms。而衛(wèi)星鐘的鐘差漂移在10-10量級,因此每秒鐘,衛(wèi)星鐘差的增量約為0.1ns/s。考慮到觀測噪聲,鐘差增量的范圍不超過±10ns/s。以0.1ns/s的精度表示鐘差增量,只需要1字節(jié)即可。
圖1 實際星地鐘差數據
實際的鐘差序列會存在數據跳變和中斷情況,圖1給出實際星地鐘差數據及其1階擬合殘差和增量序列,可以看出在8~9點間數據中斷約20分鐘,并且存在50ns以內的跳變數據。統計增量序列的均值和方差分別為0.027ns/s,0.34ns/s,變化幅度為52.63ns/s。
為保證鐘差增量變化范圍不超過門限和鐘差增量序列的連續(xù)性,首先要對原始鐘差觀測數據進行預處理,包括數據跳點剔除和數據間斷差值補償。為保證壓縮后的數據保留原始數據的精度,對增量序列進行量化時還要消除累積誤差和量化偏差。
由于鐘差增量序列是平穩(wěn)序列,對增量數據跳點進行剔除可以采用3σ準則予以剔除。首先計算增量序列的均值和方差,然后對每個增量數據點與均值作差,判斷差值的絕對值是否小于3倍方差,對于超出3倍方差的數據點打上剔除標記。如果有幅值很大的跳變點,僅作一遍剔除,對小的跳變數據可能無法剔除,因此需要用循環(huán)的方式多遍剔除。循環(huán)剔除的結束條件可以用剔除前后數據方差的差別小于一定門限為標準。
對于數據間斷情況可以用差值的方法進行補償。但如果間斷時間過長,對間斷數據進行補償反倒會增加數據冗余,這時可以采用分段方式,把間斷過長的數據劃分成新的數據段,在每個數據段內部,對間斷很短的數據進行差值處理。
經過跳點剔除和間斷補償的鐘差增量數據變成等間隔連續(xù)平穩(wěn)的時間序列,其變化幅度遠小于原始的鐘差序列,可以用數據位較少的整型數表示。但用整型數表示時會有量化誤差,如果直接對增量序列進行量化,會產生累積誤差,將增量序列累加還原為鐘差序列時,由于量化誤差的累積,還原的鐘差序列相比原始鐘差序列,偏差會越來越大。因此,必須對增量數據的量化誤差進行控制。
原始鐘差序列記為yk(k=0,1,…,n),量化后的增量序列Δyk,累積的鐘差序列為 ,量化因子為p,則
式中,floor(·)為向下取整函數。
由于公式(2)中采用了向下取整函數,計算出的增量序列是有偏的,增量大于0時,累積的鐘差值偏小p。因此計算還原鐘差序列時,還需要消除量化偏差
式中, 是最終還原的鐘差序列,sign(·)為符號函數。
對圖1包含的星地鐘差數據應用增量壓縮算法,圖2的第一幅給出跳點剔除和間斷差值補償后的鐘差增量序列,對于中斷時間較長的進行了分段處理;圖2的第二幅給出還原后鐘差序列的量化誤差。
圖2 增量序列和還原后的鐘差量化誤差
由圖2的第一幅可以看出,經過跳點剔除和間斷補償后,鐘差增量序列的變化幅值小于1ns/s,用p=0.1ns/s的量化因子進行量化,幅值小于100,可以用1字節(jié)整型數表示。這樣一天的鐘差數據(864K)可以壓縮到86K,壓縮率約為90%。由圖2的第二幅可以看出,還原后的鐘差精度損失小于0.1ns。
在分析星地鐘差數據特點的基礎上,本文提出一種增量壓縮算法,通過對數據跳點進行剔除和數據間斷進行差值,得到等間隔的鐘差增量序列,其變化幅度可以控制在有限范圍內,相比原始的鐘差序列,幅值大大壓縮;由于處理后的鐘差增量是等間隔的序列,時標信息可以只記錄首歷元時標,去除大量的冗余時標信息,這樣使用增量壓縮算法可以對原始數據進行大幅壓縮。在對增量數據進行量化時,需要控制增量的累積誤差,并對增量的量化偏差進行補償,可以將還原后的鐘差數據精度損失控制在量化因子以內。實驗結果表明,增量壓縮算法對星地鐘差數據的壓縮率約有90%,精度損失小于0.1ns。
另外,這種增量壓縮算法還可以應用于類似星地鐘差數據的線性增長的時間序列,使用時需要分析原始數據增量序列的特性,選擇合適的量化因子,控制增量數值的表示范圍,可以取得至少60%以上的數據壓縮率?!?/p>
[1] 趙娜,胡彩波,趙偉,劉春霞.衛(wèi)星鐘及其性能監(jiān)測與故障處理[J].無線電工程,2012,4: 30-33
[2] 時鑫,劉利,唐桂芬,譚紅力.星載原子鐘性能評估方法與試驗分析[C].上海:第二屆中國衛(wèi)星導航學術年會,2011
[3] 劉志平,郭廣禮.精密衛(wèi)星鐘差分形插值算法研究[J].宇航學報,2012,11: 1623-1629