谢礼伟,石 涛,武领华,庄学彬
(中山大学 系统科学与工程学院,广东 广州 510006)
近年来,高轨航天器的发射次数、应用服务和任务类型逐渐增多,高轨航天器利用全球导航卫星系统定位是GNSS的重要应用之一[1]。由于GNSS导航卫星最初设计主要是为地面用户服务,导航卫星的信号基本都指向地球中心,而高轨航天器的轨道高度远大于GNSS卫星运行轨道高度,因而高轨航天器接收机只能接收到来自地球另一端的信号,这使得导航卫星与高轨航天器之间的距离进一步增加,来自路径和大气的损耗导致接收信号的信噪比大幅度降低[2]。 即使高轨航天器可见卫星满足多GNSS定位解算条件,定位误差也可高达百米量级。对于太空中处于零重力环境下的高轨航天器,在非机动状态下可通过轨道积分递推直接获得其短期位置,但其误差均低于GNSS定位结果,因而高轨道航天器通常采取轨道滤波的形式进行定轨计算并利用GNSS的伪距、伪距率等信息对轨道参数进行修正[3]。
随着北斗三号全球卫星导航系统正式向用户提供全天时、全天候、高精度的全球定位导航服务,全球有超过120颗能够提供导航服务的在轨卫星,大量的在轨卫星为高轨航天器定位技术的发展奠定了良好的基础,同时利用多星座GNSS可以提高可见卫星数,从而有效改善高轨自主定位服务的可用性[4]。对于机动模式下的航天器,可利用加速度计和陀螺仪获得的加速度数据信息来推算出航天器的短期运动状态。惯性测量单元 (Inertial Measurement Unit,IMU) 的采样频率远高于GNSS接收机且短期内误差低于GNSS定位误差,因此捷联惯性系统 (Strapdown Inertial Navigation System,SINS)通常作为实时输出航天状态信息的主要系统。由于IMU 的噪声以及长期积分会导致误差累积,因此常采用GNSS 导航或天文导航来校正SINS的参数[5]。
高精度自主定位是高轨航天器的核心关键技术,多星座GNSS的在轨卫星数量多、卫星所在轨道分布广,且高轨道用户终端和导航卫星相对动态关系变化快,对导航性能的可用性提出了较大的挑战。基于以上因素,本文首先对多星座GNSS和北斗三号星座构型进行简要介绍,然后对高轨航天器的定位系统误差状态进行推导以确定卫星导航与惯性导航紧组合的状态观测模型,最后通过仿真对比结果证明,超同步转移轨道(Super-Synchronous Transfer Orbit, SSTO)典型高轨航天器应用高轨紧组合算法可获得较稳定的定位信息和更高的定位精度。
与单个卫星系统相比,多星座组合可以增加可见卫星的数量,有效改善卫星的空间几何结构,提高卫星定位的可靠性[6]。
由于BDS、GPS、Galileo、GLONASS四个系统时间都与协调世界时 (UTC) 相关,将其他3个系统的时间都统一为GPST,从而完成多星座时间数据的融合。根据 GPS 接口控制文件中的内容,GPST、GLONASST 的时间基准可以用下式进行转换[7]:
(1)
tGPS-tGALILEO≈19 s±30 ns。
(2)
根据BDS接口控制文件内容,BDT和GPST的时间基准可以用下式进行转换:
(3)
(4)
式中:tBDS是北斗时间,A0GPS是2个系统之间的钟差,A1GPS是2个系统的钟速差。
北斗三号系统的空间星座由 3 颗地球静止轨道(Geostationary Earth Orbit, GEO)卫星、3颗倾斜地球同步轨道(Inclined GeoSynchronous Orbit, IGSO)卫星和24 颗中圆地球轨道(Medium Earth Orbit, MEO)卫星混合组成[8],如图1所示。
图1 三维空间结构Fig.1 Three-dimensional spatial structure
GEO卫星的轨道面与地球赤道面重合,星下点相对地面基本保持静止;IGSO卫星与GEO卫星的轨道高度相同,位于3个轨道面上,星下点相对地面自南向北运动,轨迹呈现“8字型”;MEO卫星星下点相对地面自西向东运动,轨迹呈现“波浪型”。GEO和IGSO卫星的使用可以大大提高北斗系统的导航性能和抗遮挡能力,而MEO卫星可为北斗系统服务全球打下坚实的基础,提高系统的可靠性和鲁棒性[9]。
针对高轨多GNSS连续定位解算难以保障问题,基于伪距、伪距率的高轨紧组合定位算法对高轨航天器的系统误差状态进行推导,确定卫星导航与惯性导航紧组合的系统误差状态模型。
紧组合是一种相对复杂的组合方式,如图2所示。在该组合方式中,GPS和IMU仅作为测量传感器,利用IMU输出的位置和速度信息来估计GPS的伪距和伪距率,并将其与GPS定位原始信息进行比较。观测方程经过卡尔曼滤波以获得准确的导航解。
图2 紧组合模型Fig.2 Tight combination model
相对而言,紧组合导航系统具有更高的导航解算精度。 同时,即使载体移动或受到外部信号干扰,紧组合导航系统也能执行GPS信息有限环境下的导航方案,避免组合导航系统退化成纯惯性导航系统,并且使用伪距、伪距率或载波相位等同级信息来修正惯性导航系统对可见星数的要求较低,不需要接收机先单独完成解算,因此紧组合方式具有更好的实现效果[10]。下文将基于高轨航天器采用多星座导航系统/惯导紧组合方法进行定位性能仿真和评估。
对于高轨航天器,其运动状态可用位置、速度、加速度零偏、角速度零偏和姿态进行描述,分别用pi、vi、ab、ωb和θbi表示,其中上角标i代表该值在i系中的矢量值,b则代表机体b系,θbi为机体b系旋转至i系的旋转矢量(简写为θ)。
将系统状态的误差值作为ESKF系统状态空间向量:
δX=[δpT,δvT,δθT,δaT,δωT,δbT,δd]T。
(5)
系统误差状态维数为20。将所有误差项利用泰勒展开并略去二阶以上高阶项,进行线性化后得到误差状态的微分方程为:
(6)
(7)
(8)
(9)
(10)
(11)
(12)
因而,误差状态方程为:
(13)
此时可以得到ESKF的预测公式中状态转移矩阵为:
(14)
式中:F33=RT{(ωm-ωb)}×。根据系统噪声W的定义得到ESKF更新式中的协方差矩阵为:
(15)
对于ESKF来说,需要额外的观测信息对滤波器进行矫正,在紧组合模型中选取伪距与伪距率作为观测值。接收机伪距观测方程为:
(16)
式中:T表示矩阵转置,ρj表示当前第j颗可见星,pj表示该卫星坐标(i系),p为当前接收机坐标(由于忽略了杆臂误差,等效为航天器坐标),nρ为对所有卫星相同的白噪声。
从而,观测方程写成:
δZ=HδX+V。
(17)
若当前观测到n颗卫星,则有:
(18)
式中:卫星编号为1~n。由于当观测到的n颗卫星可能来自4个不同系统,其量测矩阵写为:
(19)
式中:Bj(j=1,2,…,n)为1×4维第j颗卫星时钟偏差分配矩阵,根据卫星所属系统不同分别取对应列为1,其余列为0。汇总标称状态与误差状态更新过程,系统运动状态的更新流程如图3[13]所示。
图3 航天器状态更新流程Fig.3 Update process of spacecraft status
典型高轨可见星分布普遍较差,仅依靠几何分布进行卫星选择不大适用于高轨多GNSS定位,选星算法旨在提升高轨航天器多GNSS定位时的性能。
目前,并行遗传算法(Parallel Genetic Algorithm,PGA)是一种基于不同种群并行优化的遗传算法,如图 4所示,主要有3种模型:主从模型、粗粒度模型和细粒度模型[14]。
图4 PGA Fig.4 PGA
航天器机载计算机频率普遍低于地面工业产品频率。为了满足计算要求,现代航天器电子系统主要采用分布式计算结构,用多个处理核心或计算单元完成各种任务[15]。该低频多核计算结构适应粗粒度模型且实现方法灵活。因此,选择基于粗粒度模型的PGA。图5为基于并行遗传的选星算法流程[16]。
图5 选星算法流程Fig.5 Process of star selection algorithm
通过仿真软件Satellite Tool Kit (STK) 分析SSTO航天器在远地点机动到地球同步轨道期间结合多GNSS与惯导紧组合定位的精度。由于在轨的每颗 GNSS 卫星都在不断维护和更新,因此可以服务的卫星数量会随时间而变化,本实验使用了最新公开发布的GNSS两行根数 (Two-Line Element) 文件和各系统运行状态以及各系统建设计划,模拟生成对应的星座,其具体配置如图6所示。北斗系统中的同步轨道卫星分为GEO和IGSO两类。
图6 多GNSS配置参数Fig.6 Multi-GNSS configuration parameters
航天器初始高度约为71 225 km,初始位置误差为10 m,速度误差为0.1 m/s。总仿真时间为11 000 s,惯性导航系统输出频率为10 Hz,多GNSS接收机输出观测信息频率为1 Hz。航天器在9 078~10 578 s段以约0.5 m/s2的加速度在恒定推力模式下进行机动。伪距率误差取0.1 m/s。表1展示了IMU和机载时钟误差模型的相关参数[17-20]。仿真硬件采用的处理器为Intel Core i7-10700F @2.90 GHz,采取C++11标准多线程(std::thread)模拟实现多种群的粗粒度并行,仿真程序使用Python3.7编写。
表1 IMU与时钟误差模型参数设定值Tab.1 Parameter settings for IMU and clock error model
通常采用方位图统计分析高轨道航天器一个轨道周期内的可见卫星分布,其中俯仰角θ定义为航天器接收机天线的信号接收角,方位角ψ定义为航天器与卫星的连线与航天器当前速度方向的夹角。θ、ψ的计算如下:
(20)
(21)
(22)
式中:n为航天器接收机此刻位置向径。
根据同时满足接收机与导航卫星间几何可见和接收功率大于门限值来分析SSTO航天器一个轨道周期内的可见卫星统计分布情况,如图7所示。可以看出,BDS在高轨场景下具有更好的可见星分布(俯仰角范围更大);与其他系统相比,Galileo的分布不利于高轨道航天器的导航,并且主瓣内缺少部分角度下的分布。结合在轨卫星的实际数据可看出,BDS的GEO/IGSO卫星在优化可见卫星的几何分布方面发挥了明显的作用[21]。
图8和图9显示了SSTO航天器使用所有可见卫星进行紧组合定位时轨道的径向(R)、切向(T)和法向(N)位置和速度误差值。由图 10可以看出,500 s和 4 700 s左右的误差值明显高于其他时间,比较各时间的平均载噪比,在对应时间接收到的可见卫星信号的载噪比明显低于其他时间。 这是因为低载噪比会增加接收器的热噪声,因而增加了伪距观测的误差。
图8 航天器位置误差Fig.8 Spacecraft position error
图9 航天器速度误差Fig.9 Spacecraft velocity error
图10 航天器可见星平均载噪比Fig.10 Average load-to-noise ratio of spacecraft visible star
通过PGA高轨选星算法选出加权精度因子最优的卫星组合作为观测值输入ESKF模型,结果如图11和图12所示。在选择的卫星组合替换原来观测量输入系统之后,定位系统获得更低的误差值。表2显示了紧组合定位的RMSE值,包括轨道径向、切线、法线和三维误差项。
图11 航天器位置误差(优化选星)Fig.11 Spacecraft position error (optimized star selection)
图12 航天器速度误差(优化选星)Fig.12 Spacecraft velocity error (optimized star selection)
表2 ESKF紧组合定位下径向、切向、法向与三维误差值(RMSE)对比Tab.2 Comparison of radial, tangential, normal and three-dimensional error values (RMSE) for ESKF tight combination positioning
图13对比了基于ESKF的紧组合定位和松组合定位的位置误差。其中,9 010~9 110 s可见卫星数为2~6颗,不满足卫星定位方案的要求,此时定位误差渐渐上升。当满足解算条件时,松紧组合的误差处于近似相同水平。当可见卫星数量较少且不满足解算条件时,紧组合模式可以继续修正惯性误差,而松组合模式下误差持续发散且出现定位较大偏移错误。
图13 紧组合与松组合定位位置误差对比Fig.13 Comparison of positioning position error between tight combination and loose combination
基于高轨仿真模型,对SSTO航天器远地点变轨过程进行紧组合定位仿真验证。实验结果表明,典型的高轨航天器在使用多星座GNSS观测和SINS进行紧组合定位时,可以达到米级定位精度。其中SSTO航天器3D位置 RMSE为8.82 m,3D速度RMSE为0.10 m/s。将PGA选星算法应用于紧组合定位算法时,3D位置和速度RMSE分别降低至3.98 m和0.04 m/s。与不满足解算条件时误差持续发散的松组合相比,紧组合模式可以在更苛刻的高轨环境下保持较为恒定的误差水平。
本文考虑部分高轨任务中应用GNSS进行定位时的非连续性与惯导组件误差长期累积的场景,对基于伪距、伪距率观测值的高轨紧组合定位算法进行研究,得到了多星座 GNSS 背景下典型高轨航天器应用紧组合定位时的误差结果。验证了PGA选星算法在紧组合定位中依然能有效降低位置误差、速度误差。结果表明,当典型高轨航天器在使用多星座GNSS和SINS进行紧组合定位时,可以实现米级定位精度,且与松组合定位模式相比,紧组合定位模式导航性能更为高效稳定。