苏 星,王慧泉,金仲和
(浙江大学微小卫星研究中心,杭州310027)
基于GPS校准的皮卫星高精度时间系统方案*
苏星,王慧泉*,金仲和
(浙江大学微小卫星研究中心,杭州310027)
许多实际应用任务对皮卫星星上时间系统有较高的精度要求,传统采用实时时钟芯片(RTC)的时间系统方案难以满足需求,基于GPS的皮卫星星上时间系统应运而生。受能源限制,皮卫星携带的GPS接收机一般采用间歇性开机方式工作。本文设计实现了一种基于GPS校准的星上时间系统方案,提出了分级校正算法,并对算法中的参数进行了优化,实验表明,每天GPS接收机仅需开机1 024 s,即可保证优于1 ms/d的星上时间精度。整个方案实现简单,且已应用于浙江大学研制的ZDPS-2皮卫星,满足了任务载荷5 ms时间精度的要求。
皮纳卫星;时间系统;GPS接收机;秒脉冲;FPGA;
皮卫星是指重量为公斤级微小卫星,一般以微电子、MEMS(微机电系统)技术等微小型化技术为基础进行研制,具有重量轻、研制周期短、机动性强、造价和发射成本低等特点[1],在空间试验[2-4]以及商业化应用等方面有着巨大的应用潜力[5]。
连续及准确的时间对皮卫星载荷任务、轨道递推、姿态控制等功能而言极其重要。随着皮卫星从试验、教学走向实际应用,对星上时间精度要求越来越高。浙江大学研制的第二代皮卫星ZDPS-2(浙大皮星二号)为一颗应用型皮卫星,其载荷任务对星上时间系统有±5 ms/d的精度需求,该需求相比第一代皮卫星提高了近2个量级。
目前皮卫星上时间系统大都采用RTC+地面人工校时的方法实现。RTC芯片可提供完整的时间信息,但受其时间漂移及分辨率影响,能够提供的时间精度通常不高。采用该方案的浙江大学ZDPS-1A皮卫星[6],其星上时间日均时间漂移达1 s以上;采用该方案的南京航空航天大学的“天巡一号”卫星也仅能维持0.5 s左右星地时差的水平[7]。
产生高精度时间的方法有原子钟、卫星双向时间频率传递法等。星载原子钟可以实现很高的时间精度[7],但对皮卫星来说,原子钟体积大、功耗高,且成本高;卫星双向时间频率传递法(TWSTFT)的精度可以达到几百皮秒的时间同步水平[9-10],然而这种方法实现复杂,参加试验的两个测控站间需要经常协调,不适用于皮卫星。
GPS接收机可提供高精度的时间信息,且长期稳定性好[11-12],在目前的一些地面系统中,使用GPS接收机进行校时是较为常见的方法[13-15],文献[13]设计了一种利用GPS接收机实时校正本地晶振频率的方法,然而并未研究GPS关机情况下如何提高守时精度;文献[14]设计了基于加法器电路的方法,通过高位宽的计数器不断累加多位的步距值来实现精细补偿本地时钟频率的漂移,以提高守时精度,但该方法需要额外用到高精度TDC(Time-To-Digit Converter)芯片且消耗的器件资源较多;文献[15]的方法利用GPS接收机的秒脉冲信号测量时差,通过锁相环反馈调节压控振荡器以获得一个稳定的高精度频率信号,然而该方法的具体实现复杂。均不适用于体积小、功耗低皮卫星的研制。
考虑到皮卫星时间系统仅需在规定时长之内,保持足够小的时间漂移即可,而对于绝对稳定的频率并没有需求,故可以通过合理的周期性时间补偿校正,提高时间的精度。由于皮卫星能源很有限,为了满足能量平衡星载GPS接收机一般只能开启十几分钟。基于此约束,本文设计了一种利用GPS短时校准的时间系统方案,并提出分级校正算法提高时间精度。该方案通过FPGA产生时间信息,利用GPS短时开机估计FPGA的时钟频率,然后根据分级校正算法,对FPGA时间按不同周期进行补偿校正,实现时间漂移的精细补偿、提高时间精度。
此外,皮卫星时间系统还需提供完整的年月日时分秒以及毫秒等时间。为避免FPGA断电、复位后时间信息全部丢失,本文利用FPGA产生秒级以下时间,通过RTC产生秒级以上时间,并周期性同步RTC与FPGA时间以保持时间准确,得到完整的星上时间。该时间系统采用纯数字逻辑设计,实现简单,适合为皮卫星长期提供时间信息。
本方案利用FPGA时钟产生秒级以下时间,包括毫秒微秒等信息,并通过分级校正算法对其进行校准,以产生高精度时间。RTC中秒时间的累加依靠其百分秒计时溢出,因此可以通过每秒同步一次RTC的百分秒时间与FPGA百分秒时间,维持RTC秒级时间的准确。之后就可将两者拼接出完整的星上时间。图1给出了本文设计的皮卫星时间系统框图。
图1 基于GSP校准的皮卫星时间系统框图
系统由提供秒脉冲信号的GPS接收机、产生毫秒级时间的FPGA、产生秒级时间的RTC、以及计算校正参数的DSP组成。确定校正参数时,在GPS接收机开机的时间窗口内,利用秒脉冲信号估计FPGA时钟频率,之后通过DSP计算出校正参数发送给FPGA,由FPGA周期性执行校正操作。
2.1FPGA时间的生成
在系统设计中,采用低功耗恒温晶振提供FPGA时钟,其频率温度稳定度达±10-8,具有很高的总频率稳定度。记f为实际的FPGA时钟频率,对FPGA时钟脉冲进行计数,可得到秒级以下时间tms,当脉冲的计数值为m时,秒级以下时间可表示为:
式中 f′是FPGA内用于计时的时钟频率,一般是晶振的额定频率。由于晶振存在老化等原因,f′与实际频率f之间实际存在偏差,该偏差会导致FPGA产生时间的漂移。经过时间t之后,FPGA内累计的钟面时间实际为,故此时FPGA时间与标准时间之间存在漂移Δt:
因而需要经常对 f'进行补偿校准以减小时间漂移Δt。本文通过GPS秒脉冲信号对FPGA时钟频率进行测量估计。
2.2通过GPS秒脉冲估计FPGA时钟频率
在GPS接收机正常工作的情况下,利用其输出秒脉冲信号测得FPGA时钟频率f。
GPS接收机输出的秒脉冲信号虽然具有很高的长期稳定性,但其瞬时时间信号存在一定的随机误差δ,且δ服从正态分布[16,17]。假设GPS第i个秒脉冲的时长ti=1+δi,则δi~N(0,σ2),所以ti~N(0,σ2),当样本容量n足够大时,秒脉冲样本均值可被认为是1。
FPGA连续采样GPS秒脉冲信号的上升沿,对第i个上升沿和第i+n个上升沿之间的时钟数进行计数得到计数值M,对应秒脉冲总时长为。假设实际时钟频率为 f,则有
对上式两边分别取平均,得到
由ti~N(0,σ2)可知
因此实际的时钟频率估计值为
由于GPS秒脉冲间隔服从正态分布ti~N(0,σ2),因此,从而得到 FPGA时钟频率估计值也是服从正态分布的变量:。估计值的标准差。 n取值越大,FPGA时钟频率估计精度越高。此外,按正态分布规律,落在 f±3δf的概率为99%,故可认为。
2.3分级校正算法
该截断误差最大值接近1,且会随时间累积。对此本文提出了分级校正算法,目标为减小截断误差造成的时间漂移累积。
由于Δne是小数,不能直接补偿,分级校正算法将Δne的每一位小数进行分离提取,然后对分离出的量按不同的频度级别进行校正。通过这种途径实现长期平均意义上的精细的补偿校正,从而减小截断误差造成的时间累积漂移。
Δne可表示为:式中:b1、b2···bk都为0到9整数,b1表示十分位数字,b2表示百分位数字,以此类推。E表示剩余的小数部分。分级校正的具体含义为:①对于十分位的数字b1,每过个时钟周期进行一次补偿校正,校正量为b1个时钟周期;②对于百分位的数字b2,每过个时钟周期进行一次补偿校正,校正量为b2个时钟周期;③其余小数位以此类推。④不同级别的补偿校正是并行进行的。
如果最多补偿校正到第k位小数,在系统长时间运行之后,平均每秒未补偿的时钟周期个数为e,其最大值接近1/10k,即:
该截断误差引起的平均每秒漂移时间可估计为:
可见,通过该算法,长期来看将截断误差最大值由1降低到了1/10k,降低了k个数量级。此方法可使系统平均意义上的时钟频率更加逼近f。
然而这样的周期性校正在短期内会产生以下问题:由于每过10k·floor(f)个时钟周期才会对bk进行补偿校正,故在被校正前最多会累积bk个时钟周期的漂移量,但校正后即消除,不会持续累积。极端情况为,所有级别的漂移量同时累积到最大。该因素造成的时间漂移t2为:
此外由于分级校正过程使用估计值f代替真实值f,其补偿校正逼近的是f而非真实的f,故f估计误差带来的平均每秒漂移时间为:
综上,当系统采用该校正算法,运行了Td时长后,上述三项总时间漂移可估计为:
FPGA工作的最大时钟频率受器件性能、功耗以及FPGA代码设计限制,一般支持的最高频率有限;而σ是GPS接收机的固有指标。因此,可通过选择合理的k值与n值,来提高秒级以下时间的精度。
3.1参数选择
本系统方案所采用了实验室自研GPS接收机,其指标σ=100 ns,本地时钟源为20 MHz的高稳恒温晶振,n值代表GPS开机工作时长,受能源限制,设为1 024(即GPS接收机需连续开机工作1 024 s)。那么一天后(Td=24 h),GPS测量误差t3累积的漂移量为:
另外校正周期内的累计漂移量t2:
截断误差t1累积的漂移量为:
在此对t1、t2的大小进行大致的评估,用 f′代替f进行计算以选择k值。估计结果如表1所示。
表1 k取不同数值时系统24 h后最大时间漂移估计
由于GPS测量误差的影响,k值取过大并无实际意义,而且会增加设计的复杂度。参照GPS测量误差t3产生的漂移大小,这里k取2是比较合理的,即需要补偿校正十分位与百分位2个等级。
3.2设计实现
本文中提出的皮卫星时间系统方案的硬件原理图如图2所示。系统以FPGA为核心器件,连接了所有外围设备,包括RTC芯片与GPS接收机以及DSP。
图2 时间系统硬件设计原理图
图2所示原理图中,FPGA主要功能为利用GPS输出的秒脉冲信号测量本地时钟频率,产生秒级以下时间并对其进行分级校正,此外FPGA还提供了与RTC芯片之间的通信模块。
其中“分级校正”模块支持2个不同等级的校正:十分位补偿、百分位补偿,按对应的周期自动调整m计数器的值,以达到分级补偿校正的目的;“时钟频率测量”模块测量n个秒脉冲上升沿之间的间隔,将测得的时钟周期数保存起来,提供给DSP计算处理;“1PPS生成”模块按系统时钟脉冲对m寄存器进行累加,累加至floor后清零,累加过程中接受输入的分级校正参数并执行;而DSP模块主要实现校正参数计算、同步RTC时间的功能,此外还负责授时功能以及集中校时等功能。
首先测试不进行校时的状态下,由系统产生的秒脉冲F_PPS与GPS接收机输出的秒脉冲信号G_PPS之间的时间漂移。晶振预热充分,GPS信号锁定的情况下,将F_PPS与G_PPS的上升沿同步之后,通过示波器观察二者之间的时间偏移(对比上升沿之间的时间差,F_PPS超出G_PPS的量)。结果如表2所示。从中可以看出,在不进行校时的情况下,3个多小时之后时间漂移已超过5 ms。
表2 不校正情况下系统时间的漂移
为减小系统时间漂移,对FPGA时间进行分级校正。在晶振预热充分,GPS信号锁定的情况下,将F_PPS与G_PPS的上升沿同步之后,先经过1 024 s使得系统测出时钟频率,随后启用分级校时功能,将F_PPS与G_PPS的上升沿同步之后,通过示波器观察不同时长的情况下,G_PPS与F_PPS上升沿之间的时间差,结果如表3所示。可见系统时间漂移明显减小,一天的漂移量仅为455 μs,且实际的漂移时间在估计的范围之内。
表3 校正后系统时间漂移情况(k=2)
为了突出分级校正方法的效果,故选择k=0的情况作为对比,即等效于只对整数部分进行校正,而对于非整数部分不进行校正。将FPGA中分级校正模块的参数固定设为0,重新进行上述实验,得到结果如表4所示。
表4 校正后系统时间漂移情况(k=0)
可见k=0的情况明显比k=2的情况差,同时证明了分级校正方法的有效性。
应用本方案,如需进一步改善校正效果,可通过增大n值、使用σ指标更好的GPS接收机、以及增大k值来实现。然而对于皮卫星来说,n越大意味着GPS开机时间越长,对能源十分有限的皮卫星来说是难以承受的。故选用σ指标更好的GPS接收机同时增大k值,以更好的发挥分级校正算法精细补偿的作用,在此情况下是进一步提高时间精度的有效的途径。
本文考虑皮卫星的特点及其限制和要求,讨论了皮卫星时间系统设计问题。先利用GPS短时开机测量估计真实时钟频率,然后通过分级校正算法周期性的校正FPGA时间以获得高精度的秒级以下时间,最后拼接同步后的RTC秒级以上时间,以提供完整的时间信息。从而实现了一个适用于皮卫星、满足一定精度要求的星上时间系统。实验结果表明GPS接收机每天开机1 024 s,该系统可保证24 h内时间漂移小于1 ms,满足了ZDPS-2皮卫星的需求。该方案实现简单且开销较小,并且使用性能更好的GPS接收机可进一步提高时间精度,可推广到其它有时间精度需求的皮卫星中。
[1]Sandau R,Brieß K,D’Errico M.Small Satellites for Global Coverage:Potential and Limits[J]//Isprs Journal of Photogrammetry& Remote Sensing,2010,65(6):492-504.
[2]Adarsh Rajguru.Laser Space Communication Concept for Deep-Space Interplanetary Missions Using CubeSats[C]//Aiaa Plasmadynamics and Lasers Conference.2000.
[3]Bandyopadhyay S.A Review of Impending Small Satellite Formation Flying Missions[C]//53rd AIAA Aerospace Sciences Meeting.2015.
[4]李辉,张钰,杨牧,等.基于CMOS图像传感器的皮卫星成像系统设计[J].传感技术学报,2010,01:62-67.
[5]Carissa B C,Tom S,Kirsten A,et al.Analysis of the Commercial Satellite Industry[C]//AIAA SPACE 2015 Conference and Exposition,2015
[6]Zhang Yu,Zheng Yang-Ming,Yang MU,et al.New Technique:Design and Implementation of the Highly-Reliable,Low-Cost Housekeeping System in the ZDPS-1A Pico-Satellite[J]//Journal of Zhejiang University:Science C,2012,13(2):83-89.
[7]叶伟松,刘海颖,陈志明等.“天巡一号”微小卫星数据综合系统设计与在轨性能评估[J]//南京航空航天大学学报,2012,44 (6):797-802.
[8]屈勇晟,刘昶,朱虹等.导航卫星星载原子钟研发方向探讨[J]//导航定位学报,2013,1(4):55-60.
[9]Li B,Rizos C,Lee H K,et al.A GPS-Slaved Time Synchronization System for Hybrid Navigation[J]//Gps Solutions,2006,10 (3):207-217.
[10]Lin H T,Huang Y J,Tseng W H,et al.Recent Development and Utilization of Two-Way Satellite Time and Frequency Transfer[J]// MAPAN-Journal of Metrology Society of India,2012,27(1):13-22.
[11]Matsakis D,Powers E,Fonville B,et al.GPS Timing Performance [C]//General Assembly and Scientific Symposium(URSI GASS),2014 XXXIth URSI.IEEE,2014:1-4.
[12]李倩,战兴群,王立端,等.GPS/INS组合导航系统时间同步系统设计[J].传感技术学报,2009,22(12):1752-1756.
[13]吴宁,潘小龙,虞皆侠,等.高精度GPS同步时钟的研究与实现[J].电力系统自动化,2008,32(10):61-65.
[14]田鸣,王瑞清.基于GPS校准的数字式守时钟守时算法研究[J].计算机与数字工程,2011,39(3):12-16,35.
[15]张杰,周栋明.GPS驯服中无偏滑动平均滤波算法的研究[J].电子学报,2013,41(2):412-416.
[16]Lewandowski W,Petit G,Thomas C.Precision and Accuracy of GPS Time Transfer[J]//IEEE Transactions on Instrumentation& Measurement,1993,42(2):474-479.
[17]Weiss M,Zhang V,Nelson L,et al.Delay Variations in Some GPS Timing Receivers[C]//Frequency Control Symposium,1997,Proceedings of the 1997 IEEE International.IEEE,1997:304-312.
苏星(1987-),男,浙江大学微电子学与固体电子学专业在读博士生,从事皮卫星综合电子系统设计方面的研究;
王慧泉(1981-),男,浙江大学微小卫星研究中心副研究员,主要研究方向为MEMS/NEMS传感器及其接口电路,微弱信号处理,微小卫星技术。
The High-Precisiontime System Design of Pico-Satellite Based on GPS Receiver*
SU Xing,WANG Huiquan*,JIN Zhonghe
(Micro-Satellite Research Center,Zhejiang University,Hangzhou 310027,China)
High-precision system time is usually required in many missions of pico-satellite.Traditional solution of timing system based on real-time clock(RTC)chip in pico-satellite cannot meet thisrequirement,therefore GPS receiver(GPSR)is applied in the design of timing system.However,GPSR in pico-satellite cannot work for long time because of the energy limitaiton.Then a design of a timing system based on GPSR which only need to be powered on for a short time has been presented in this paper.An algorithm to calibrate system time for long-term is provided. Experiment shows that the time accuracy is better than 1 ms/d when GPSR works for 1 024 seconds per day.Thisdesign has been applied in ZDPS-2 satellite,and qualified the mission requirements of 5 ms/d.
Pico-satellite;Timing System;Global Position System Receiver(GPSR);PPS;FPGA
V423.43
A
1004-1699(2016)08-1200-05
EEACC:7320K;7630A10.3969/j.issn.1004-1699.2016.08.013
项目来源:国家杰出青年基金项目(61525403)
2016-03-02修改日期:2016-03-31