基于EKF的航天器姿态确定算法及精度分析
2018-07-04,,,,
,,,,
(航天工程大学 航天装备系,北京 101416)
0 引言
姿态确定系统是航天器姿态控制系统中的必要组成部分,对姿态控制精度及载荷能否有效工作起决定性的作用。姿态确定系统的主要任务是通过姿态敏感器测量信息精确估计航天器的三轴姿态与姿态角速度,一方面为姿态控制提供反馈信息,以便更好、更准确地对航天器姿态实施控制,另一方面提供给有效载荷使用。
一套完整的姿态确定系统包括姿态敏感器和姿态控制算法。姿态敏感器是用来测量航天器相对与某一基准方位的姿态信息,但其测量到的结果并不一定是航天器的真实姿态信息,通常存在误差,而姿态确定算法是通过某种方法,将姿态敏感器的测量信息进行处理,得到航天器姿态。一般有两种方法[1],一种是确定性方法也称为几何算法,是根据一组矢量测量值,求解航天器的姿态矩阵。其优点是无需知道姿态的先验信息,并且其结果具有明显的物理或几何意义。但很难克服像姿态敏感器的测量误差、偏置误差和安装误差之类的参考矢量的不确定性,不易建立包括这些不确定性在内的姿态确定模型及加权处理不同精度的测量值。另一种是状态估计法也称递推滤波算法,通过建立状态量的状态变化方程和观测方程,应用估计算法,根据观测信息估计出状态量[1]。在航天器姿态确定中,根据航天器的姿态运动学模型和姿态动力学模型建立航天器姿态变化的状态方程,根据一个时变的矢量测量来估计航天器姿态。其优点是被估计量不局限于姿态参数,矢量观测中的一些不确定参数,如敏感器误差也可以作为状态量进行估计。这样,在一定程度上就可以消除一些测量不确定因素,从而提高姿态确定精度。相比于确定性方法,状态估计方法提高了姿态确定的精度。
目前,高精度航天器姿态确定系统通常多采用陀螺和星敏感器组合的形式来测量航天器的姿态信息,利用滤波技术进行数据处理,从而确定航天器的姿态。本文通过对陀螺和星敏感器组合进行航天器姿态确定方式的建模,以误差姿态角和陀螺常值漂移误差为状态量,以星敏感器测量残差为量测量,采用EKF算法进行姿态确定。而后,通过对影响姿态确定精度的因素进行了定量的仿真分析,得到了不同影响因素对姿态确定的作用效果,为航天器姿态确定系统工程设计提供了一定的理论依据。
1 姿态敏感器测量模型
1.1 陀螺模型
航天器的转动角速度可以通过直接或间接的方法获得。直接方法是指利用某些测量设备直接测量,而间接方法是指使用某些软件算法估计得到[2-4]。本文采取直接测量的方式。三轴角速率陀螺是一个采用连续测量方式的常见测速设备,其角速率观测模型[5]如下:
ωg=ω+ξ+νg
(1)
(2)
1.2 星敏感器模型
本文采用利用CCD星图识别方式工作的星敏感器。为了使研究简化,假设星敏感器在安装时均安装在惯量主轴上,没有安装误差。则星敏感器的测量方程可以写成:
(3)
式中,φs,θs,ψs为星敏感器测量到的航天器的姿态角,νφ,νθ,νψ为3个通道的测量噪声,假设它们都是均值为零的高斯白噪声。
2 姿态确定算法及仿真
对于航天器的姿态确定问题而言,由于描述航天器姿态的系统和测量模型一般是非线性的,所以姿态确定问题通常可以归结为一个非线性滤波问题。EKF算法是解决姿态确定问题的比较传统的方法。本节采用四元数作为姿态参数,建立误差四元数的状态方程,以姿态四元数和陀螺漂移作为待估计状态。
2.1 航天器姿态运动学模型
则航天器姿态运动学方程[6]为:
(4)
ωbo=ω-Tbo(qbo)ωoi
(5)
ωbo表示姿态角速度矢量,ω为航天器本体坐标系相对于地心惯性坐标系的角速度,ωoi表示航天器的轨道角速度在LVLH坐标系中的矢量,Tbo(qbo)表示四元数qbo所描述的姿态的坐标转换矩阵,其表达式为:
(6)
又由四元数的乘法运算规则可将运动学方程改写为:
(7)
其中:“⊗”表示四元数相乘。
(8)
其中:符号“^”表示估计值。
为了避免姿态四元数范数的约束条件,用四元数的乘法来定义实际四元数与估计四元数间的误差四元数为:
(9)
(10)
2.2 滤波状态方程和量测方程
由于四元数4个参数中有一个是冗余量,这会导致在使用EKF进行姿态估计时,状态协方差矩阵产生奇异,因此,需要进一步对系统做处理,使其降阶。
因此,对式(9)两边进行求导可得:
(11)
再对式(10)两边进行求导可得:
(12)
将式(8)代入上式得:
(13)
则:
(14)
将以上所得代入式(11)可得误差四元数的微分方程:
(15)
又因为:
(16)
将其带入式(15)中整理可得:
(17)
又由于误差四元数为小角度偏差量,可近似为:
(18)
则:
(19)
将式(18)带入到式(6)中得:
(20)
又根据式(5)可得:
(21)
而:
(22)
则:
(23)
由陀螺测量的数学模型式(1)和(2)可得:
(24)
其中:
将上式代入式(19)中,有:
(25)
即:
(26)
由上式可以看出,误差四元数自然降阶为3个独立变量,从而避免了因系统冗余而导致的系统协方差矩阵奇异问题。
又由于在小偏差条件下有:
(27)
其中:ψ、θ、φ是按照Z-Y-X转序定义的欧拉角,则将其代入方程(26)中可得:
(28)
由星敏感器的测量原理可知,星敏感器的估计输出为:
(29)
其中:Δφ、Δθ、Δψ为姿态角估计误差。定义星敏感器的测量残差为星敏感器的测量值与估计值之差,即:
(30)
则系统的状态方程为:
(31)
其中:
系统的量测测方程为:
(32)
2.3 EKF姿态确定算法
根据上面推导出的状态方程和观测方程,应用EKF算法对航天器的姿态进行估计和确定,其具体流程如下:
1)初始条件设定:
X(t0)=[06×1]P(t0)=P0
2)进行滤波更新:
利用EKF算法的更新方程[7]进行状态更新和协方差更新,同时计算滤波增益。
(33)
式中,Φ(tk,tk+1)为状态转移矩阵,Qtk为系统状态噪声矩阵,Rtk为系统观测噪声矩阵:
其中:Δt为滤波周期。
3)校正姿态四元数和陀螺漂移:
当得到偏差量的估计值之后,真实状态的估计值为:
(34)
(35)
由于姿态四元数只是在一阶小量偏差的条件下满足范数条件,状态更新之后还需将其进行范数归一化处理:
(36)
4)回到步骤2),进行下一周期,重复以上步骤。
2.4 EKF姿态确定算法仿真计算及结果分析
表1 陀螺、星敏感器相关参数以及滤波初值
根据表1中的参数进行仿真实验,可得到以下结果:
图1 姿态角确定误差
图2 姿态角速度确定误差
图3 陀螺漂移误差
由上面的仿真结果曲线可以看出,在姿态稳定之后,姿态角的确定误差基本在10″左右,姿态角速度的确定误差在1("/s)之内,可满足姿态确定的精度要求。同时,陀螺的常值漂移误差在2×10-4(°/s)左右。
3 姿态确定中的精度分析
由于姿态确定系统由姿态敏感器硬件和姿态控制算法软件两部分组成,因此,影响姿态确定误差的主要因素必然分为由硬件引起的误差和由软件引起的误差两部分构成。
3.1 姿态敏感器对姿态确定精度的影响分析
由于本文采用的是基于陀螺和星敏感器组合进行姿态确定的方法,因此,从星敏感器的测量精度、星敏感器的采样频率和陀螺的测量精度几个方面进行对比分析,分别按照如下的条件进行仿真实验:
Case1:仅改变星敏感器的测量精度,其余仿真条件不变,得到如表3所示的仿真结果;
Case2:仅改变星敏感器的采样频率,其余仿真条件不变,得到如表4所示的仿真结果;
Case3:仅改变陀螺的测量精度,其余仿真条件不变,得到如表5所示的仿真结果;
表3 星敏感器测量精度对姿态确定精度的影响
表4 星敏感器采样频率对姿态确定精度的影响
表5 陀螺测量精度对姿态确定精度的影响
从表3~表5的仿真结果可以看出:
1)星敏感器的测量精度越高,姿态确定的精度也越高,但是星敏感器的测量精度和姿态确定的精度并不成线性关系,当测量精度到达一定范围时,对航天器姿态确定精度的贡献度将不再显著。例如当星敏感器的测量精度为24″时,姿态确定精度在20″左右,星敏感器测量精度在12″时,姿态确定精度在12″左右,而当星敏感器测量精度在6″时,姿态确定精度在8″左右;
2)星敏感器的采样频率越高,姿态确定的精度也越。这是因为随着采样频率的增大,数据更新的速率加快,滤波器得到的校正信息增多,从而提高了滤波器的估计精度。同样,这种增加也不是成线性关系的,例如当星敏感器的采样频率为4 Hz时,姿态确定的精度在15″左右,采样频率为10 Hz时,姿态确定精度在10″左右,而当采样频率为100 Hz时,姿态确定精度在5″左右;
3)姿态确定精度随陀螺测量的精度和陀螺常值漂移精度的增加均增加,但是陀螺精度的影响远没有常值漂移的精度影响显著。
3.2 算法模型对姿态确定精度的影响分析
在建立滤波方程时,是否存在陀螺的漂移校正直接影响模型的误差,下面对此进行仿真:
Case4:考虑陀螺的漂移校正和不考虑陀螺的漂移校正进行仿真,其仿真结果如表6所示。
表6 系统模型对姿态确定精度的影响
从表6的仿真结果可以看出:在系统模型中加入陀螺漂移的校正,对提高姿态确定精度有显著的作用。
4 结束语
使用陀螺和星敏感器组合进行航天器的姿态确定时,采用EKF算法可以实现较高的姿态确定精度;经定量分析星敏感器的测量精度、采样频率、陀螺的常值漂移、测量精度、常值漂移精度和系统模型中有无陀螺漂移校正后,得到结论:为了使航天器姿态确定精度提高,可以采用高精度的星敏感器,增大星敏感器的采样频率,采用高精度的陀螺,但是这些因素只在一定范围内效果明显,且提高敏感器的精度,会导致成本增大,因此,在工程实际中,应综合各种因素,折衷考虑。同时在进行系统建模时对陀螺漂移进行校正,可以明显提高姿态确定精度。
参考文献:
[1] 吕振铎,雷拥军.卫星姿态测量与确定[M].北京:国防工业出版社,2013.
[2] Psiaki M L, Oshman Y. Spacecraft attitude rate estimation from geomagnetic field measurements[J]. Guidance, Control and Dynamics,2003, 26(2):244-252.
[3] Tortora P, Oshman Y, Santoni F. Spacecraft angular rate estimation from magnetometer data only using an analytic predictor[J]. Guidance, Control and Dynamics. 2004, 27(3):365-373.
[4] Hajiyev C, Cilden D, Somov Y. Gyro-free attitude and rate estimation for a small satellite using SVD and EKF[J]. Aerospace Science and Technology,2016.
[5] Zhou G T, Shi G M, Zhang L,et al. Estimating gyro drift of strapdown inertial navigation system based on star sensor[J]. Advanced Materials Research,2012,1936(566).
[6] Markley F L, Crassidis J L. Fundamentals of Spacecraft Attitude Determination and Control[M]. New York: Springer-Verlag New York, 2014:346-350.
[7] 秦永元,张洪钺,汪叔华.卡尔曼滤波与组合导航原理[M].西安:西北工业大学出版社,2015.