,,, ,
(1.北京空間飛行器總體設計部,北京 100094; 2.中國空間技術研究院 載人航天總體部,北京 100094)
衛星星時管理和維護是航天器數據管理的一項基本任務,通常是由星載數據管理計算機軟件實現的。衛星星時可用于支持下行遙測信息的形成,支持延時命令的執行,支持姿態和軌道控制以及其他分系統的運行,也支持各類遙感圖像及收集到的電子信號的精確定位等[1],因此衛星星上時間對于衛星的正常運行和應用起到了至關重要的作用。由于衛星工作的特殊空間環境,星載數據管理計算機會受到空間環境變化及空間天氣災害事件的影響,造成星載數據管理計算機自主復位、切換備份等操作,影響星地時間同步,進而影響與星時相關任務的執行。因此,引入星時自主恢復機制對于衛星數據管理是十分必要的。
對于攜帶GPS接收機的航天器,可以通過接收GPS時間達到自主恢復星時的目的,但是對于地球同步軌道衛星和深空探測衛星等沒有攜帶GPS接收機的航天器而言,這種方法不適用。另外,美國已成功掌握了局部屏蔽GPS信號等技術[2],這就對依賴于GPS的國內航天器帶來了潛在的應用風險[3]。本文針對沒有攜帶GPS接收機的航天器,星時精度要求高的衛星系統提出了一種基于1553B總線的星時高精度自主恢復設計。
典型的衛星系統中,星時管理是由星載數據管理計算機實現的,下面對目前航天器星時管理的相關概念進行介紹:
星時生成:由衛星系統和地面測控系統約定一個時間點作為時間零點(例如北京時間2008年1月1日0:00:00作為時間零點),然后由星載數據管理計算機計時電路計時,產生的相對時間,作為衛星星時。星時一般為相對于其時間零點的累積值,衛星發射前需根據時間零點對累計值進行設置,一般在星載數據管理計算機中由秒部分和亞秒部分組成,秒部分計數單位為1秒,亞秒部分計數單位為若干毫秒或若干微秒(由星時計時電路最小分辨率和亞秒部分數據長度確定),其結構形式如表1所示[4]。
表1 星上時間碼結構表
星時分發:常用的有兩種方式,一種由星載數據管理計算機每秒送出秒脈沖給星時用戶使用,用戶收到秒脈沖后當作自己的秒計數用;另一種是由星載數據管理計算機以固定時間間隔在總線上廣播或者發送當前的星時,星時用戶接收時間碼,扣除誤差后作為自己的星時。在衛星系統里,除星載數據管理計算機外的星時用戶,通常有載荷分系統和控制分系統。
星時下傳:由星載數據管理計算機以固定的間隔取出星時填入衛星遙測幀,通過遙測幀下傳至地面。地面測控系統接收到遙測數據中的星時后,根據約定的時間零點以及星時數據,計算出當前星時。
星時維護:大多數航天器軟件采用通過秒中斷計數來維護星上時間的方法,維護由計數器產生的時間信息[5-6]。
星時校準:對星上時間校準采用了集中校時和均勻校時兩種方法。在這兩種方法中,飛行器定時將星上時間傳回地面進行比對,地面計算出星上與地面時鐘的時間誤差,集中校時就是把地面測定的時間誤差T0通過遙控注入星上,星上把接收到的時間差一次性加到時間計數器中,從而糾正星上時鐘;均勻校時是地面根據計算出的時間誤差擬合曲線(kt+T0),然后將獲得的參數k通過遙控注入星上,星上時鐘就按照每秒加k進行修正。集中校時可以消除累計誤差,均勻校時有利于保持星上時間的連續性,在使用中通常兩種方法配合進行[7]。
圖1 典型的數據管理分系統總線拓撲圖[8]
常規的星時恢復有兩種,一種是通過地面測量星地時差,當時差累計到某一個設定的閾值時,生成校時數據對星時進行調整,這種方法需要地面人工干預,同時不能保證實時性,只能是事后處理,這種方法對于衛星不可見弧段的工作會有很大影響,尤其是太陽同步軌道的遙感衛星,其主要大部分工作均在不可見弧段進行;另一種是將星時作為重要數據,定期保存,當星載數據管理計算機出現自主復位、切換備份情況時,自動從保存的重要數據中取回星時,此種方法不能保證恢復后的星時誤差,誤差取決于重要數據保存間隔和計算機自主復位或切換備份所需要時間,一般誤差在十秒以上,不能滿足對星時精度要求高的衛星系統的要求,其過程如圖2所示。
圖2 星時恢復過程示意圖
基于1553B總線的衛星星時高精度自主恢復設計是基于1553B總線通信協議,在星載數據管理計算機復位、切換備份時,自主通過總線從星時用戶取回相對星時時差,并對自身時間碼進行自動校準。圖1為典型的數據管理分系統總線拓撲圖,在該系統內計算機可將衛星星時定時通過1553B總線分發到星上用戶,并在計算機復位或者切機時,通過預先制定的通信協議從星上時間用戶取回時間碼進行自動校準,從而完成星時恢復。具體星時恢復設計如下:
1)選擇星時恢復來源:
選定一個星時用戶作為星時自主恢復的來源。該用戶使用計算機分發的時間作為本機時間,并且星時用戶在兩次時間分發間隔內具有較精確的星時維護能力。
時間用戶則是時間維護和時間發布的對象,控制分系統、載荷、數傳分系統及地面測控均可認為是時間用戶[9-10],目前航天器上主要選擇控制計算機或載荷計算機作為星時恢復來源,也可以同時選擇兩個星時用戶作為星時自主恢復的來源,事先設置恢復的優先順序,并設置合理的判據。
2)重要數據保存和恢復:
在傳統數據管理系統,星載數據管理計算機會將軟件運行中產生的重要的數據通過總線定時(一般為1分鐘)發送給遠置單元進行保存,如果計算機復位或切換,軟件啟動后,首先從保存的重要數據進行星時恢復,作為當前粗略的星時,該星時t落后于當前真實時間T。
重要數據保存一般選擇長期加電工作的RT終端,為了保證星上重要數據的安全,可以選擇同時保存在兩個RT終端中,事先設置恢復的優先順序,第一個恢復不成功則繼續從第二個恢復,這樣可以保證其中一個RT異常時仍然能夠順利恢復重要數據。
3)發送從重要數據恢復的粗略星時:
星載數據管理計算機取出當前恢復后的星時t1(此時星時用戶時間為T1),通過1553B總線BC-RT方式發送給選定的星時用戶,并將取出星時到星時通過1553B總線送到星時用戶總線控制器緩存中這個過程中產生的延時修正量Δt1修正到發送的星時數據中。因此,星時用戶接收到的時間數據Tr為:
Tr=t1+Δt1
星時用戶接收到1553B總線發送的時間數據時,實際經歷時間為ΔT1。
修正量Δt1可以通過軟件仿真分析、調試、測試得到,需要事先進行標定,使得Δt1的值接近ΔT1,標定結果越準確,則產生的誤差越小。
記Δ1=ΔT1-Δt1,為修正量Δt1與實際經歷時間ΔT1之間的誤差。
4)星時用戶計算時差:
選定的星時用戶的1553B總線控制器會產生中斷信號,該中斷需要星時用戶的軟件以高優先級的方式進行處理,因此星時用戶需及時將緩存中的星時數據讀出,然后計算當前時刻與接收到星時Tr的差,同時要考慮從緩存中讀出到計算開始這個過程的延時修正量Δt2,從收到時間數據到計算開始實際經歷的時間為ΔT2,因此計算后的時差ΔT為:
ΔT=T1+ΔT1+ΔT2-Tr-Δt2=
T1-t1+ΔT1-Δt1+ΔT2-Δt2
記Δ2=ΔT2-Δt2,為修正量Δt2與實際經歷時間ΔT2之間的誤差。
此時:
ΔT=T1-t1+Δ1 +Δ2
同樣,Δt2也需要通過軟件仿真分析、調試、測試進行事先標定,標定結果越準確,Δt2的值越接近ΔT2,產生的誤差也越小。
5)星時用戶發送時差數據:
星時用戶計算出時差數據后有兩種方式將此數據送給星載數據管理計算機:一是將時差數據放入約定地址后,通過1553B總線向星載數據管理計算機提出服務請求;二是按照約定的時間內,將時差數據放入約定地址,等待星載數據管理計算機自動取走。前者實時性好,能夠縮短星時恢復過程所需時間。
6)計算機修正星時:
數據管理計算機在等待一定時間(Td)后開始從星時用戶那里,通過1553B總線RT-BC方式將時間差讀回(假設延時為Δt3),并對讀回的數據有效性進行判斷,當數據有效時對當前星時t3進行修正,t3為:
t3=t1+Td+Δt3
因此修正后的時間t為:
t=t3+ΔT+Δ3=T1+Td+Δt3+Δ1+Δ2
如果讀回的數據無效,并且實現設置了兩個星時用戶用于星時恢復,則按照約定向第二個星時用戶重復(3)~(6)操作。
根據上述星時恢復方案,在地面利用星載數據管理計算機和一臺載荷計算機進行了測試,兩臺計算機均使用外部同一個時鐘源進行時間計數,星載數據管理計算機時間亞秒計數單位為16 μs。設計了如下測試方案及步驟:
第一步,建立時間校準系統。使用GPS作為地面時間基準,測量下行遙測信號星地時延,再采用下傳的遙測幀中的時間碼與地面時間基準比較的方法,建立時間校準系統,具備均勻校時、集中校時功能。
第二步,校準衛星時間。使用時間校準系統,對星載數據管理計算機進行校時,使之與GPS時間同步,等待星載數據管理計算機分發星時,載荷計算機利用收到的星時完成自身校時。
第三步,復位星載數據管理計算機并恢復星時。地面發送指令使星載數據管理計算機復位,等待復位完成并從載荷計算機恢復星時。
第四步,計算星地時差。利用時間校準系統,比較星載數據管理計算機與地面GPS時間的時差,即為星時恢復過程產生的星時誤差。
測試結果表明:
1)星載數據管理計算機可以通過載荷計算機自主恢復星時,星時恢復方案可行;
2)恢復后的星時與地面標準時間的差值為240 μs。
此星時恢復方案,恢復過程產生的誤差主要有兩部分,即Δ1和Δ2,其中Δ1是星載數據管理計算機產生的,Δ2是載荷計算機產生的,這兩部分誤差均與計算機軟件操作過程相關,可以通過優化軟件設計以及仿真分析逐步減小誤差。同時,外部時鐘源的精度、星載數據管理計算機復位過程持續時間均會對星時恢復誤差產生影響。
此星時恢復方案優點在于:星載數據管理計算機出現復位或切換備份操作時,能否自主恢復星時,保證了衛星系統星時連續性,提高了衛星可用性,并且能夠將星時恢復誤差控制在微秒級,精度能夠滿足使用要求。
1)星時用戶選取。不同的星時用戶對星時精度要求不同,選取對星時精度要求高的星時用戶,有助于提高星時自動恢復的時間精度。考慮系統備份,在不影響系統工作前提下可以選取多個星時用戶用于星時恢復。
2)采用此方法實現星時自主恢復的前提是星載數據管理計算機與所選取的星時用戶使用的時鐘同源或者在星載數據管理計算機復位或切機開始至星時自動恢復這段時間內星時用戶時鐘產生的誤差可以忽略。
3)在制定星時自動恢復協議時,需要確定ΔT1、ΔT2和Td,并且要求Td>ΔT1+ΔT2。一般要求Td不大于500 ms,這樣有利于盡快恢復星時。
4)星時恢復過程中的延時修正量Δt1和Δt2需要分別在星載數據管理計算機調試及星時用戶設備調試過程中標定,標定的準確與否決定了星時自動恢復的誤差大小。
5)星時恢復效果可以通過星載數據管理計算機與星時用戶設備間聯合測試進行驗證。測試時需要具備星地時延、星地時差測量系統,能夠通過集中校時實現對星時的準確校正。
本文提出的基于1553B總線的衛星星時高精度自主恢復設計,能夠有效減少對地面人工干預的依賴,并能夠有效的保證在意外情況下星載數據管理計算機工作的連續性。此星時自主恢復方法能夠實現微秒級誤差,精度滿足工程需要。星時高精度自主恢復設計沒有帶來額外的硬件開銷,需要增加的僅僅是相關總線協議的制定以及軟件開發工作,在實際工程中具有一定的實用價值。在星載數據管理計算機需要復位或切機的情況下,大大提高了衛星系統的可用性。