楊 楓
(1.南京航空航天大學(xué) 航空宇航學(xué)院,南京 210016; 2.中國空間技術(shù)研究院 ,北京 100094)
載人航天領(lǐng)域在多飛行器的空間交會對接過程中,作為追蹤飛行器的航天器需要實時獲取自身與目標(biāo)飛行器的相對位置、速度以及目標(biāo)飛行器的姿態(tài),從而調(diào)整自身的方位、速度和姿態(tài),逐步逼近目標(biāo)飛行器,最終完成空間交會對接。不同于單個航天器測試,航天器交會對接測試中需要同步實時模擬航天器在軌交會對接過程中的飛行狀態(tài)及時序,并同步真實模擬對接機(jī)構(gòu)的機(jī)電系統(tǒng)動作,以驗證其相互之間協(xié)調(diào)和匹配性[1]。這就需要參試航天器實現(xiàn)嚴(yán)格的實時同步動態(tài)模擬飛行和信息交互,對此過程中兩個航天器狀態(tài)進(jìn)行同步監(jiān)控和判讀比對,對時統(tǒng)的一致性、航天器和測試系統(tǒng)間的協(xié)調(diào)性提出了很高的要求。系統(tǒng)定位精度要求尤為突出,如何為地面測試系統(tǒng)提供一個統(tǒng)一的高精度、高準(zhǔn)確度、高穩(wěn)定度的時間和頻率參考標(biāo)準(zhǔn),是準(zhǔn)確測量星載頻率標(biāo)準(zhǔn)的關(guān)鍵所在。因此,載人航天器測試精密時間基準(zhǔn)的研究設(shè),也是提高載人航天器可靠性的極為重要的輔助手段。
采用高精度時間基準(zhǔn)同步系統(tǒng)對航天器測試系統(tǒng)實施同步控制;利用軌道仿真模擬器中的動力學(xué)仿真模擬器實現(xiàn)軌道信息的實時同步聯(lián)動,作為交會對接過程模擬飛行的姿態(tài)控制驅(qū)動。高精度時間基準(zhǔn)同步系統(tǒng)如何建立,將為多船/器聯(lián)合測試、批測試提供統(tǒng)一的參考時間和頻率,確保型號頻率標(biāo)準(zhǔn)測試數(shù)據(jù)的準(zhǔn)確性和可靠性,以便后續(xù)盡可能精確衡量星載頻率標(biāo)準(zhǔn),優(yōu)化船載頻率設(shè)計。同時,高精度時間基準(zhǔn)同步系統(tǒng)具有向地面測試網(wǎng)絡(luò)提供全網(wǎng)NTP授時的能力,為載人航天船/器地面測試驗證以及多系統(tǒng)聯(lián)試提供了有力保障。
其工作原理為:
1)高精度時間同步系統(tǒng)接收船載導(dǎo)航信號[2],經(jīng)過放大后輸送到北斗校頻接收機(jī)等設(shè)備;
2)該接收機(jī)以北斗系統(tǒng)時間為參考標(biāo)準(zhǔn),測量氫鐘的頻率偏差;該偏差發(fā)送給主控計算機(jī),用戶可利用該偏差值對本地鐘進(jìn)行校準(zhǔn);
3)網(wǎng)絡(luò)時間服務(wù)器可提供NTP網(wǎng)口,可連至需要校時的計算機(jī)局域網(wǎng),時間服務(wù)器將向該局域網(wǎng)的計算機(jī)提供NTP校時服務(wù);
4)時間頻率網(wǎng)設(shè)備通過網(wǎng)線連至主控計算機(jī),主控計算機(jī)可以監(jiān)測每臺設(shè)備的工作狀態(tài),并可以對各設(shè)備的工作狀態(tài)進(jìn)行控制。
采用分布式構(gòu)架,包括信號層、服務(wù)層、網(wǎng)絡(luò)層、設(shè)備層組成,系統(tǒng)標(biāo)準(zhǔn)時鐘源采用航天器授時聯(lián)合本地銣鐘授時組成如圖1所示,通過NTP實現(xiàn)系統(tǒng)內(nèi)設(shè)備網(wǎng)絡(luò)授時,這個系統(tǒng)由統(tǒng)一監(jiān)控模塊實現(xiàn)統(tǒng)一的監(jiān)控管理。
圖1 校時服務(wù)器原理框圖
信號層通過衛(wèi)星信號接收天線,接收北斗衛(wèi)星時間信號。
服務(wù)層由時間同步單元、基準(zhǔn)算法模塊、二級服務(wù)器構(gòu)成。時間同步服務(wù)器接收經(jīng)天線接收的時間信號并處理,聯(lián)合本地銣鐘組成系統(tǒng)標(biāo)準(zhǔn)時間源,輸出系統(tǒng)時間同步信號,二級時間同步服務(wù)器接收時間同步服務(wù)器輸出基準(zhǔn)時間信息,通過交換機(jī)實現(xiàn)終端設(shè)備和時間同步服務(wù)器的隔離;二級時間同步服務(wù)器還采用授時終端同步結(jié)果;二級時間同步服務(wù)器采集設(shè)備信息、環(huán)境溫濕度信息,實現(xiàn)系統(tǒng)內(nèi)設(shè)備的統(tǒng)一監(jiān)控和系統(tǒng)實施調(diào)度管理[3]。
網(wǎng)絡(luò)層有網(wǎng)絡(luò)交換機(jī)實現(xiàn)授時設(shè)備與時間同步服務(wù)器的物理隔離,同時保證NTP時間同步服務(wù)器報文的分發(fā)傳輸。
設(shè)備層即系統(tǒng)授時設(shè)備終端,通過網(wǎng)絡(luò)層交換機(jī)接收時間同步信息,實現(xiàn)與時間同步服務(wù)的時間同步。
服務(wù)層時間同步單元PCI校時板卡通過獲取信號層BD模塊時間,當(dāng)BD模塊收到有效的BD信號后會輸出接收到的時間,否則BD模塊將輸出晶振時間。位于系統(tǒng)基準(zhǔn)時間算法模塊使用PCI板卡的接口API,通過PCI總線獲取時間。當(dāng)基準(zhǔn)時間算法模塊通過PCI板卡獲取時間成功時,二級校時服務(wù)器會校準(zhǔn)本地精準(zhǔn)時間并將此時間信息通過網(wǎng)絡(luò)發(fā)送給授時終端進(jìn)行校時;當(dāng)基準(zhǔn)時間算法模通過PCI板卡獲取時間不成功時,二級時間服務(wù)器會將本地時間通過網(wǎng)絡(luò)發(fā)送給授時終端進(jìn)行校時。
1)BD接收模塊:系統(tǒng)采用高精度BD接收模塊,接收機(jī)輸出原始觀測數(shù)據(jù),接收機(jī)輸出的信號與被測信號分頻出的時間間隔計數(shù)器進(jìn)行時差測量;
2)精密時間間隔技術(shù)器:普通的時間間隔計數(shù)器精度是10ns,精密時間間隔計數(shù)器分辨力則可達(dá)到1ns以內(nèi)。目前精密時間間隔技術(shù)發(fā)展速度非常快,提高測量精確度的方法也非常復(fù)雜,本系統(tǒng)采用的高精度時間間隔計數(shù)器采用內(nèi)插法,很大地提高了系統(tǒng)的健壯性;
3)改進(jìn)數(shù)據(jù)處理方法:系統(tǒng)中的時間分段劃分可以采用BD系統(tǒng)中時差修正的方法,按照原始數(shù)據(jù)對應(yīng)的時間段編號,每天一次,從北京時間0點到8點開始,每16分鐘為一個時間段落,00點8分0秒到24分為第1號段時間,23點52分開始的16分鐘為第90號時段。時間劃分周期是24小時,每天同一時刻均有時差數(shù)據(jù)。
系統(tǒng)中的時鐘接收器可以接通多路BD信號,可以捕獲多顆BD衛(wèi)星,與單通道BD接收機(jī)相比,系統(tǒng)精度更高。
在系統(tǒng)框架下,利用網(wǎng)絡(luò)實現(xiàn)時間同步系統(tǒng)實時在線監(jiān)控,實現(xiàn)系統(tǒng)內(nèi)設(shè)備的統(tǒng)一時間基準(zhǔn)管理。通過卡爾曼濾波算法、高精度時間同步算法、網(wǎng)絡(luò)延遲矯正時間同步算法的研究,獲得一種精密時間基準(zhǔn)方法。
BD接收機(jī)在接收從外界傳入的時鐘信號過程中,可能受到干擾產(chǎn)生抖動和削弱造,為了減少時鐘信號對系統(tǒng)精度的影響,需要在獲得的時鐘信號結(jié)果中進(jìn)行濾波處理[4-6]。本文使用Kalman濾波算法,對時鐘脈沖信號進(jìn)行濾波處理。
對于該BD時間精準(zhǔn)系統(tǒng),所需的Kalman濾波方程歸納如下:
信號模型:x(k)=ax(k-1)+ω(k-1)
(1)
觀測模型:y(k)=cx(k)+γ(k)
(2)
(3)
(4)
最小均方誤差:Pe(k)=P1(k)-cb(k)P1(k)
(5)
(6)
在Windows平臺中,系統(tǒng)API提供了多種途徑。從API用來表述時間的數(shù)據(jù)結(jié)構(gòu)上,大致可分為秒級、毫秒級、十分之一微秒級。但是,通過測試實例,發(fā)現(xiàn)實際表現(xiàn)并沒有達(dá)到數(shù)據(jù)結(jié)構(gòu)的表述精度。所有系統(tǒng)提供的API,最高的時間精度統(tǒng)一為大約15 μs。其波形如圖2所示。
圖2 系統(tǒng)時間API實際數(shù)值
作為時間系統(tǒng)的計數(shù)系統(tǒng)、這種精度顯然不足使用。經(jīng)過調(diào)研,選擇了一個經(jīng)常用來測試系統(tǒng)性能的時間計數(shù)器API:
QueryPerformanceCounter();
QueryPerformanceFrequency()。
這兩個API直接利用CPU上的性能計數(shù)器晶振來進(jìn)行工作。QueryPerformanceCounter()函數(shù)用來得到計數(shù)器的計數(shù)值, QueryPerformanceFrequency()函數(shù)則用來得到晶振頻率。在AMD和Intel系列芯片的臺式機(jī)上,這兩個API的工作穩(wěn)定,精度高于1/10微妙,因此采用這兩個API實現(xiàn)高精度時間系統(tǒng)。
圖4 LocalTimeOffset漂移曲線
利用性能計數(shù)器獲取精確的相對時間,用此精密時間和系統(tǒng)時間進(jìn)行對準(zhǔn),才可得到精密的系統(tǒng)時間。
系統(tǒng)時間的精度比較低,經(jīng)常性地存在跳變的現(xiàn)象。這是系統(tǒng)的時間刷新進(jìn)程每隔一段時間才進(jìn)行刷新。校準(zhǔn)的方式為在很小的時間段內(nèi),通過不斷的讀取系統(tǒng)時間,捕捉系統(tǒng)時間跳變的瞬間,如圖3中兩條高亮線所示。當(dāng)時間值發(fā)生跳變的那一刻,認(rèn)為這一刻是系統(tǒng)時間準(zhǔn)確的數(shù)值,在這一刻,得到系統(tǒng)時間和QueryPerfermanceCounter()輸出校準(zhǔn)值(校準(zhǔn)到時間的精度)的差值:
LocalTimeOffset[i] = 系統(tǒng)時間 - QueryPerfermanceCounter輸出校準(zhǔn)值。
圖3 系統(tǒng)時間校準(zhǔn)
對多次校準(zhǔn)的數(shù)值取平均值,任何時刻需要獲取時間的時候,公式如下:
時間=(QueryPerfermanceCounter/ QueryPerfermanceFreq)* 10,000,000.0 + LocalTimeOffset
在實際應(yīng)用中,LocalTimeOffset自身也存在著漂移。如圖4所示,橫坐標(biāo)為時間線,一格為0.2分鐘(12 s);縱坐標(biāo)為LocalTimeOffset的數(shù)值,單位為微妙。從圖中可以看出,大概24秒漂移2 000微秒。在同一臺機(jī)器上不同時間內(nèi),漂移曲線的方向可能不同,斜率可能不同;在同一時刻不同機(jī)器上,漂移方向,斜率也不同。因此,為了保證本地時間的同步精度,程序?qū)⒅芷谛缘牟煌ο到y(tǒng)時間進(jìn)行校準(zhǔn)。
要達(dá)到對同一局域網(wǎng)內(nèi)的不同計算機(jī)進(jìn)行時間同步,必然要通過網(wǎng)絡(luò)通訊傳輸時間信息。經(jīng)過測試,有線網(wǎng)絡(luò)通訊的時間如表1所示。
表1 網(wǎng)絡(luò)通訊時間校準(zhǔn)采樣
表格中的時間數(shù)據(jù)單位統(tǒng)一為QueryPerformanceCounter()輸出值。經(jīng)過換算,Socket通訊的時間均值和方差分別為:0.433 ms、0.044 70 ms;最小傳輸時間和最大傳輸時間分別為0.294 ms、1.179 ms。
基于這種情況,網(wǎng)絡(luò)時間的同步將使用多次交互傳輸?shù)姆绞竭M(jìn)行時間對齊。目的在于減小網(wǎng)絡(luò)通訊所帶來的校時誤差。
校時客戶機(jī)使用主機(jī)的時間插值T01,T12和本地的時間t0,t1進(jìn)行比較如圖5所示,得到網(wǎng)絡(luò)間時間差NetworkTimeOffset。 則在客戶機(jī)上,得到了同校時主機(jī)對準(zhǔn)了的高精度時間??紤]到網(wǎng)絡(luò)通訊的時間消耗不穩(wěn)定,程序采集了多次時間,并對多次時間的結(jié)果進(jìn)行了平均,得到了平均網(wǎng)絡(luò)偏差NetworkTimeOffset_Avg。用平均偏差,反向驗證采集的時間的數(shù)值,得到偏差值的方差特性,一定程度上可以反映校時的精度。圖6~7是某一時刻,校時主機(jī)和校時客戶機(jī)的狀態(tài)曲線。
圖5 網(wǎng)絡(luò)校時交互流程
圖6 主機(jī)本地時間
圖7 客戶機(jī)網(wǎng)絡(luò)校時
圖7中下面的曲線,在主曲線上下的細(xì)線表示的是方差區(qū)間,從圖中可以看出,網(wǎng)絡(luò)校時的精度可以達(dá)到1 μs以內(nèi)。
由于系統(tǒng)采用了C/S的結(jié)構(gòu),所以總線數(shù)據(jù)的報告時間需要得到毫秒級的計時精度。意味著需要通過網(wǎng)絡(luò)通訊技術(shù),達(dá)到異地1 μs的同步時間精度。
客戶在使用綜合測試系統(tǒng)測試軟件之前,應(yīng)該首先打開高精度時間同步軟件。主控計算機(jī)軟件具有自動打開高精度時間同步軟件的功能。
運(yùn)行有兩種模式,作為授時服務(wù)器端或作為授時客戶端。在局域網(wǎng)上協(xié)同工作的計算機(jī)上,需要有一臺計算機(jī)的時間同步軟件作為服務(wù)器端運(yùn)行,其它計算機(jī)的時間同步軟件則作為客戶端運(yùn)行,連接這個服務(wù)器端以實現(xiàn)時間的同步。
可通過用戶選擇顯示圖形,界面下方會顯示本地時間以及服務(wù)器時間標(biāo)簽等曲線表明了當(dāng)前的同步情況,供軟件時觀察校對時間使用。在此軟件的設(shè)計中可以看出,時間同步的算法是本軟件的關(guān)鍵所在。
精密時間系統(tǒng)需要將各時間頻率信號分配傳輸?shù)礁鱾€型號的測試設(shè)備間,作為地面測試系統(tǒng)的校準(zhǔn)時間基準(zhǔn),每個測試設(shè)備間都需要高指標(biāo)的時間頻率信號,因此系統(tǒng)產(chǎn)生的信號無損地分配輸出,同時還需要具有很高的路間及反向隔離度,以避免測試操作時系統(tǒng)間的相互影響。完成系統(tǒng)網(wǎng)絡(luò)搭建后,進(jìn)行了系統(tǒng)級聯(lián)合測試,測試結(jié)果表明時間精準(zhǔn)數(shù)據(jù)經(jīng)過長距離傳輸穩(wěn)定。
高精度時間同步軟件用于獲取精度達(dá)1 ms的準(zhǔn)確時間,同時在局域網(wǎng)上可以實現(xiàn)多臺主機(jī)之間的時間同步。軟件主界面如圖8所示。
高精度時間同步系統(tǒng)為測試試驗數(shù)據(jù)并行異步處理提供了精準(zhǔn)時間戳。航天器測試間內(nèi)的測試系統(tǒng)與高精度時間同步系統(tǒng)通過測試局域網(wǎng)連接,各測試軟件通過TCP/IP或者UDP協(xié)議進(jìn)行數(shù)據(jù)交換,遵循航天器測試間通信協(xié)議進(jìn)行數(shù)據(jù)時間統(tǒng)一。
精密時間基準(zhǔn)方法設(shè)計可以解決多艘載人航天器交會對接地面驗證過程中時間和頻率標(biāo)準(zhǔn)問題,確保了網(wǎng)絡(luò)系統(tǒng)輸出信號的準(zhǔn)確性。在實際應(yīng)用過程中,支持多航天器高精度時間基準(zhǔn)、頻率,避免了進(jìn)口氫鐘輸出信號有限的限制。該系統(tǒng)可以根據(jù)任務(wù)需求,跨網(wǎng)段或另行組網(wǎng)和擴(kuò)展,同時支持遠(yuǎn)程測試,可滿足后續(xù)更多型號需求。以正在運(yùn)行的北斗信號為基準(zhǔn),輸出時間和頻率信號。支持載人航天器地面驗證、GNC分系統(tǒng)、測控分系統(tǒng)以及有效載荷獲取高精度的參考標(biāo)準(zhǔn),提高了各分系統(tǒng)時頻測試精度。此項研究解決了各時間頻率信號的無損輸出,多地聯(lián)合測試時時間同步精準(zhǔn)對各航天器測試相互影響的問題。時間同步系統(tǒng)構(gòu)架應(yīng)用在載人航天領(lǐng)域,實現(xiàn)了高精度時間精準(zhǔn)的計算、獲取和分布式網(wǎng)絡(luò)授時。
圖8 高精度對時軟件主界面