,,,
1. 长沙理工大学 计算机与通信工程学院 综合交通运输大数据智能处理湖南省重点实验室,长沙 410004 2. 国防科学技术大学 理学院,长沙 410073 3. 中国人民解放军91550部队,大连116023
随着航天技术的发展及深空探测等任务的兴起,传统的依靠地面站的航天器导航方式不能满足当前任务的需求[1]。航天器自主导航,是指仅利用航天器自身搭载的敏感器信息进行导航,是航天器自主运行和管理的核心技术之一,是提高其生存能力和降低运营成本的关键技术,受到了国内外的广泛关注。
导航信息的获取是航天器实现自主导航的前提,目前主要有惯性导航、卫星导航、地磁导航、传统天文导航等。惯性导航技术具有完全自主、可靠性强、适用范围广等优点,但是不能单独在长期飞行的航天器上应用[2]。卫星导航目前应用广泛,具有成本低、精度高等优点,但由于依赖人工信标,易被摧毁和受干扰,不能够完全自主[3]。地磁导航具有全天时、全天候、全地域等优点,但受制于地磁模型精度及磁强计测量精度,目前难以达到航天器自主导航的精度要求[4-6]。传统天文导航误差不随时间积累,自主性强,但易受气象条件、敏感器性能等的影响[7-8]。考虑到太阳、地球、月球作为自然天体,具有运动规律清楚、光学特征突出等特点,容易识别,导航资源不受限制[9-10]。目前,太阳敏感器、地球敏感器及月球敏感器技术已比较成熟,利用敏感器可以得到航天器与日地月之间的夹角信息,可用于航天器的自主导航。
滤波算法是自主导航处理测量数据求解轨道信息的主要方法,目前主要采用扩展卡尔曼滤波(EKF)和无迹卡尔曼滤波(UKF)算法作为实时滤波算法。由于航天器自主导航系统中状态模型和天文导航模型均为非线性的,EKF采用一阶近似的泰勒逼近方法,损失部分精度,影响导航精度的提高;UKF虽然适用于非线性滤波,但当估计维数大时,精度也会受到损失。CKF[11]是近年来提出的一种新的非线性状态估计方法,适合于高维状态下的实时滤波系统[12]。
本文研究了基于日地月天文信息的航天器全弧段自主导航方法。为克服导航系统的非线性特性及日月天文信息的不完整性等缺点,将自主导航分为日月可见弧段和星蚀阶段两部分。考虑到航天器全弧段全过程的自主导航,其系统模型非线性程度高,待估参数较多,而容积卡尔曼滤波(CKF)的估计精度在高维状态下优于UKF算法,因此,本文采用了CKF方法进行导航计算。在日月可见弧段,利用太阳、地球、月球敏感器和测高仪提供的天文信息及航天器上存储的日月星历表,确定航天器与日地月之间的夹角及在地心赤道惯性坐标系下的位置矢量,并以之作为观测量,采用CKF方法进行航天器自主定轨;在星蚀阶段,利用日月可见弧段信息,用轨道预报的方式进行导航,从而实现航天器全弧段高精度自主导航。
考虑地球形状、大气阻力、日月引力、太阳光压摄动和潮汐摄动,在地心赤道惯性坐标系下,建立航天器的轨道动力学模型:
(1)
式中:X=(r,v)T为航天器的状态矢量;w=(wr,wv)T为系统过程噪声:f为航天器在轨摄动,可以表示为
(2)
式中:μe为重力场参数;U为地球吸引力摄动位函数;Fa为大气阻力摄动力加速度;Fs为太阳对航天器的加速度;Fm为月球对航天器的加速度;Fsr为太阳光压加速度;Ft为潮汐摄动加速度[13]。令
(3)
则航天器导航系统的状态模型可简化为:
(4)
如图1所示,通过太阳、地球、月球敏感器及测高仪,可得到某一时刻在星体坐标系中太阳、月球的方向单位矢量VSc0、VMc0以及地心至航天器的方向单位矢量VEc0和航天器到地球表面的距离Lc[12]。
图1 航天器在轨位置矢量Fig.1 On-orbit position vector for spacecraft
图2 月球、地球与航天器的几何关系Fig.2 Geometric relationship between moon, earth and spacecraft
利用航天器在轨存储的日月星历表,可得地心赤道惯性坐标系中月地矢量VEM和日地矢量VES。由月地距离的有限性,可知航天器-月球矢量和地球-月球矢量不平行。假设地球为球体,Re为地球半径,则如图2所示,由VEc=(Lc+Re)VEc0,|VEMc|=|VEM|,VMc0·VEc0=cosu1,VMc=VEc+VEMc,VMc=|VMc|VMc0,就可得到VEMc。
考虑到太阳距离地球和航天器非常远,可将航天器-太阳矢量和地球-太阳矢量近似看作平行。设A为星体坐标系到地心惯性坐标系的转换矩阵,则有
VEM=AVEMc,VEC=AVEC,VEM×VEC≠0
(5)
式中:VEC为地心惯性坐标系下地航天器到地心的矢量。利用观测量在地心惯性坐标系中建立新的正交坐标系[12],设各坐标轴的单位矢量分别为:
(6)
同样,在星体坐标系中也建立一个正交坐标系,设各坐标轴的单位矢量分别为:
(7)
令
(8)
则由式(3)~(5)有
U=AW
(9)
从而可得
A=UW-1=UWT
(10)
故在地心惯性坐标系下太阳、月球及地球的方向单位矢量VS0、VM0、VE0分别为:
VS0=AVSc0,VM0=AVMc0,VE0=AVEc0
(11)
则地球-航天器-月球形成的夹角为:
u1=arccos(VE0·VM0)
(12)
地球-航天器-太阳形成的夹角为:
u2=arccos(VE0·VS0)
(13)
地心距为:
u3=Lc+Re
(14)
将航天器在地心赤道惯性坐标系下的夹角信息及地心距作为观测量,得观测模型为:
Z=u+ε
(15)
式中:u=(u1,u2,u3)T;ε为观测噪声,且与导航系统过程噪声w独立。
令
u=h(X)
(16)
则导航系统的观测模型可简化为:
Z=h(X)+ε
(17)
如图1所示,根据航天器与日地月的空间几何关系,可将航天器的自主轨道确定分为两部分,日月可见弧段的自主定轨和星蚀弧段的自主定轨。
对于日月可见弧段,可利用航天器在轨的太阳、地球、月球敏感器及测高仪直接获得导航观测数据。对于由式(4)和式(17)所构成的非线性导航系统:
(18)
考虑到航天器日月可见弧段自主导航系统模型的非线性程度高,待估参数较多,而CKF滤波的估计精度在高维状态下优于UKF算法。为降低非线性因素对导航滤波性能的影响,本文采用CKF滤波算法进行航天器自主导航计算。
CKF滤波采用三阶容积法则,用数值积分来近似高斯加权积分,其核心是求解积分形式为“非线性函数*高斯密度函数”的积分[14],利用一组等权值容积点加权求和来代替加权高斯问题,也就是在计算随机变量经非线性变换后的均值和协方差时采用容积数值积分原则。针对式(18)的自主导航系统,CKF滤波算法具体流程如下。
(1)CKF滤波初始化
(19)
(20)
(2)时间更新
1)对于k-1时刻的状态滤波误差阵,将其因式分解,
(21)
2)估计容积点:
(22)
其中:
ξi=
m=2nX,nX为非线性导航系统方程中的状态向量的维数。
3)容积点传播:
(23)
4)估计状态预测值:
(24)
5)估计误差协方差预测值:
(25)
式中:Qk-1为第k-1时刻的系统过程噪声的协方差阵。
(3)观测更新
1)因式分解:
(26)
2)估计容积点:
(27)
3)容积点传播:
Zi,k|k-1=h(Xi,k|k-1)
(28)
4)估计观测预测值:
(29)
5)估计新息协方差矩阵:
(30)
式中:Rk为第k时刻的测量噪声的协方差阵。
6)估计互协方差矩阵:
[Xi,k|k-1-Zi,k|k-1]T
(31)
7)估计卡尔曼增益:
(32)
8)估计状态更新:
(33)
9)估计相应的误差协方差:
(34)
星蚀包括日蚀、月蚀和朔月。该观测弧段内,由于地球遮挡,太阳敏感器和月球敏感器不能获取当前的测量数据,因此需要利用日月可见弧段得到的航天器轨道参数,通过轨道预报方法对星蚀时段的航天器进行导航。
本文直接选择轨道动力学模型作为预报模型,由于各摄动力的影响程度不同,除引力场摄动带谐项J2为10-3量级外,引力场高阶摄动带谐项及其他摄动力最大为10-5量级[13],因此本文只考虑带谐项J2摄动,即预报模型为
(35)
其中:
J21P21(sinφ)·cos(λ-λ21)+J22P22(sinφ)·
cos2(λ-λ22)]}
(36)
式中符号表示见文献[13]。将日月可见弧段得到的轨道参数作为轨道预报初值代入轨道预报模型,采用龙格库塔数值积分方法,即可进行星蚀时段的轨道预报,步骤如下:
X(t0)=X0
(37)
式中:X0为日月可见弧段得到的轨道参数。则采用四阶龙格库塔方法的轨道预报公式为:
(38)
式中:Xn和Xn+1分别为前一步点和当前步点的值;h为积分步长。
对由式(18)给出的航天器自主导航系统进行全弧段全过程导航仿真试验,分别利用UKF算法[15]和本文采用的CKF算法对日月可见弧段的航天器定轨。仿真参数设置如下。
1)坐标系:J2000.0地心赤道惯性坐标系。
2)轨道参数:
①仿真初始历元2017年1月1日0时0分0秒;
②卫星高度400 km,轨道倾角98°。
3)航天器动力学模型:
①航天器理论轨道仿真模型采用的受力模型是地球引力非球形引力模型取JGM-3(70×70项),大气阻力、太阳引力、月球引力、太阳光压摄动及潮汐摄动;
②航天器导航系统状态模型采用的受力模型是地球引力,地球引力非球形引力模型取JGM-3(20×20项),大气阻力(大气阻力因子Cd待估)。
4)导航敏感器的测量精度设置:太阳敏感器5′(3σ),月球敏感器5′(3σ),地球敏感器5′(3σ),测高仪1 km。
5)滤波初始误差:位置50 km;速度5 km/s。
日月可见弧段,数据更新频率为0.5 Hz,仿真时长7 h。
对于如上的仿真模型,分别对日月可观测弧段和星蚀时段进行航天器自主导航,在日月可观测弧段,分别采用CKF滤波和UKF滤波进行导航解算,而在星蚀时段,则采用数值积分进行轨道预报。图3和图4分别给出了单次仿真下的基于CKF滤波的航天器自主导航位置和速度方向上的滤波偏差,即位置误差和速度误差。为了进一步得到航天器位置和速度各分量的导航精度,利用蒙特卡洛仿真,表1和表2是对50次仿真得到的位置误差和速度误差的统计结果。其中表1统计的是基于CKF滤波的航天器各时段的导航精度,表2统计的是日月可观测弧段内CKF滤波和UKF滤波的自主导航精度比对。
图3 日月可见弧段位置估计误差Fig.3 Position estimation error in the observable period
图4 日月可见弧段速度估计误差Fig.4 Position estimation error in the eclipse period
从仿真结果,可以看出,利用日地月天文信息进行航天器自主导航,采用CKF滤波算法能很快收敛,CKF导航位置精度稳定在2 km以内。当出现星蚀时,敏感器不能捕获天体目标信息,导航算法自动切换到预报程序,从图3和图4可以看出,星蚀阶段依赖预报算法可以实现目标的正常导航,导航精度在短时间星蚀阶段不受影响。此外,从表2中可以看出,利用CKF滤波算法进行日月可观测弧段内航天器自主导航,滤波精度要优于UKF滤波器。
表1 各时段基于CKF滤波的航天器自主导航精度
表2 日月可观测弧段不同滤波算法的导航性能分析
本文提出了以日地月天文信息为观测数据的航天器自主导航算法。对于日月可见弧段和星蚀时段分别采用导航滤波器和轨道数值预报的方式进行导航,基于CKF滤波的导航精度在2 km以内,且性能优于UKF导航滤波器。仿真试验结果表明这种自主导航方法是可行的,而且得到的定位精度能够满足航天器自主导航的要求。但是,导航敏感器测量精度是影响自主导航精度的主要因素之一,而本文在运用导航滤波时仅考虑导航敏感器的随机误差,忽略了导航系统的模型误差或不确定性误差,如敏感器测量系统的常值偏差、动力学模型误差等,因此后续将进一步研究存在模型误差或不确定性误差下的航天器自主导航方法。此外,对于星蚀时段,一方面可以直接用轨道动力学进行数值预报,还可结合惯性导航器件进行轨道估计,下一步将比较分析惯性导航器件不同误差特性下的星蚀时段内的轨道估计精度。
References)
[1] 房建成, 宁晓琳. 深空探测器自主天文导航方法[M]. 西安: 西安工业大学出版社, 2010: 124-138.
FANG J C, NING X L. Autonomous celestial navigation for deep space explorer [M]. Xi′an: Xi′an Industry University Press, 2010: 124-138(in Chinese).
[2] 周琼峰, 唐国华, 陈雪芬. MEMS陀螺旋转导航误差的分析与仿真[J]. 中国空间科学技术, 2016, 36(4): 74-80.
ZHOU Q F, TANG G H, CHEN X F. Analysis and simulation for rotatinginertial navigation error of MEMS[J]. Chinese Space Science and Technology, 2016, 36(4): 74-80(in Chinese).
[3] WANG Y Q, LUO Y, WANG P. A novel joint navigation state error discriminator based on iterative maximum likelihood estimation[J]. Science China (Information Sciences), 2015, 58(5): 125-129.
[4] 王鹏, 张迎春. 基于磁强计/太阳敏感器的自主导航方法[J]. 系统工程与电子技术, 2013, 35(1): 132-137.
WANG P, ZHANG Y C. Research on autonomous navigation method based on magnetometer and sum sensor[J]. Systems Engineering and Electronics, 2013, 35(1): 132-137(in Chinese).
[5] DEUTSCHMAN J, ITZHACK I Y. Evaluation of attitude and orbit estimation using actual earth magnetic field data[J]. Journal of Guidance, Control and Dynamics, 2001, 24(3): 616-626.
[6] COLLINS J T, CONGER R E. MANS: Autonomous navigation and orbit control for communication satellites[J]. AIAA, CP, 1994:94-112.
[7] WERNER E. Galileo: impact on spacecraft navigation system[J]. Journal of Global Positioning Systems, 2003, 2(2): 135-138.
[8] 杨博. 航天器星敏感器自主定位方法及精度分析[J]. 宇航学报, 2002, 23(3): 81-84.
YANG B. The method of autonomous position determination using star sensor and analysis of precision for spacecraft[J]. Journal of Astronautics,2002, 23(3): 81-84(in Chinese).
[9] 黄翔宇, 崔平远, 崔祜涛. 深空自主导航系统的可观性分析[J]. 宇航学报, 2006, 27(3): 332-337.
HUANG X Y, CUI P Y, CUI H T. Observability analysis of deep space autonomous navigation system[J]. Journal of Astronautics, 2006, 27(3): 332-337(in Chinese).
[10] 刘萍, 王大轶, 黄翔宇. 环月探测器自主天文导航系统的可观度分析[J]. 中国空间科学技术, 2007, 27(6): 12-18.
LIU P, WANG D Y, HUANG X Y. Analysis of observability degree in autonomous celestial navigation system of lunar orbiter[J]. Chinese Space Science and Technology,2007, 27(6):12-18(in Chinese).
[11] ARASARATNAM I, HAYKIN S. Cubature Kalman filters[J]. IEEE Transactions on Automatic Control, 2009, 54(6): 1254-1269.
[12] 朱蓉. CKF滤波算法及其在航天器自主导航中的应用[D]. 长沙: 国防科学技术大学, 2015.
ZHU R. CKF and its application on spacecraft autonomous navigation[D]. Changsha: National University of Defense Technology, 2015(in Chinese).
[13] 李济生,王家松.航天器轨道确定[M]. 北京: 国防工业出版社, 2003:106-188.
[14] ARASARATNAM I, HAYKIN S, HURD T R. Cubature Kalman filtering for continuous-discrete systems: theory and simulations[J]. IEEE Transactions on Signal Processing, 2010, 58(10): 4977-4993.
[15] JULIER S, UHLMANN J. Unscented filtering and nonlinear estimation[J]. IEEE Transactions on Aerospace and Electronic Systems, 2004, 92(3): 401-422.