1. 课程导入与姿态描述基础
航天器姿态估计的一切讨论,都建立在“姿态是什么、用什么数学量描述、不同描述之间如何换算”这三个问题上。如果坐标系定义含糊、旋转方向约定不一致,后续的陀螺积分、星敏感器量测、卡尔曼滤波残差都会出现难以定位的符号错误。本章先把这套数学语言统一起来,为传感器融合与估计打下基础。
一、姿态的定义与参考坐标系
姿态(attitude)描述的是航天器本体相对于某个参考基准的角位置关系,它是一个相对量,脱离参考系谈姿态没有意义。工程上通常用两组坐标系来定义这个关系:
- 参考坐标系:如地心惯性系(ECI,J2000)、轨道坐标系(LVLH,原点在航天器质心,Z轴指向地心,X轴沿轨道速度方向,Y轴按右手定则补全)。
- 本体坐标系:固连在航天器上,原点取质心,三轴与星体主惯量轴或结构基准轴对齐,例如+X为飞行方向、+Z为对地面。
姿态就是本体坐标系三轴在参考坐标系中的指向。这里必须固定一条约定:本文及后续章节统一采用右手坐标系,旋转正方向按右手定则判定,即绕某轴正向旋转时,从该轴正端看向原点为逆时针。所有传感器安装矩阵、执行机构极性都以此为准。
二、方向余弦矩阵
设参考系为 n 系,本体系为 b 系。把 b 系三个单位轴在 n 系中的分量按列排成矩阵,就得到方向余弦矩阵(DCM)Cbn,它把本体系下的矢量坐标变换到参考系:vn = Cbn vb。DCM 是 3×3 正交矩阵,满足 CTC = I、det(C) = +1,逆变换就是转置:Cnb = CbnT。
DCM 的优点是物理意义直观、矢量变换无奇异,缺点是 9 个元素只有 3 个自由度,直接积分会因数值误差破坏正交性,需要周期性重正交化(如 Gram-Schmidt 或 SVD 修正)。
三、欧拉角与四元数
欧拉角用三次绕坐标轴的转动描述姿态,最常用的是 3-2-1 顺序(偏航 ψ、俯仰 θ、滚转 φ)。它直观、便于人机交互,但存在万向节死锁:当 θ = ±90° 时,ψ 与 φ 的转轴重合,解不唯一。因此欧拉角适合显示与设定,不适合作为滤波器的内部状态。
四元数用四个参数 q = [q0, q1, q2, q3]T 表示绕单位轴 e 转角度 α 的旋转,其中 q0 = cos(α/2) 为标量部,[q1,q2,q3]T = e·sin(α/2) 为矢量部,且满足归一化约束 ‖q‖ = 1。四元数无奇异、运算量小,姿态运动学可写成线性微分方程:
q̇ = 0.5 * q ⊗ [0, ωx, ωy, ωz]^T
其中 ω 为本体系下的角速度,⊗ 为四元数乘法。这正是陀螺积分递推的核心公式,也是后续姿态估计器状态传播的基础。
四、三种表示的相互转换
三种表示之间的换算关系必须熟练掌握。由 3-2-1 欧拉角构造 DCM:
C_bn = Rz(ψ)·Ry(θ)·Rx(φ)
= [ cθcψ, cθsψ, -sθ;
sφsθcψ-cφsψ, sφsθsψ+cφcψ, sφcθ;
cφsθcψ+sφsψ, cφsθsψ-sφcψ, cφcθ ]
由 DCM 反解欧拉角时,θ = -arcsin(C13),ψ 与 φ 由 C11、C12、C23、C33 用 atan2 求得,避免象限歧义。四元数与 DCM 的关系为:
C_bn = [ 1-2(q2²+q3²), 2(q1q2-q0q3), 2(q1q3+q0q2);
2(q1q2+q0q3), 1-2(q1²+q3²), 2(q2q3-q0q1);
2(q1q3-q0q2), 2(q2q3+q0q1), 1-2(q1²+q2²) ]
反向由 DCM 提取四元数时,取迹 tr(C) = 4q0²-1,先算 q0 = 0.5√(1+tr(C)),再按对角线元素大小选择数值稳定的分支求矢量部,避免除以接近零的量。
五、姿态描述与传感器融合的衔接
把上述语言放到传感器融合的语境中:陀螺输出本体系角速度 ω,用于四元数运动学递推;星敏感器输出的是本体系相对惯性系的姿态四元数或 DCM;太阳敏感器、磁强计给出的是本体系下的矢量方向,需与参考系中的已知矢量比对才能形成姿态约束。所有这些量测最终都要统一到同一参考系、同一姿态表示下,才能构造残差并送入估计器。
下面这张图给出三种姿态表示之间的转换关系,以及它们与传感器数据流的衔接位置,可作为后续章节反复查阅的“数学语言地图”。
从图中可以看到,陀螺提供的是运动学递推的输入,星敏感器与矢量敏感器提供的是量测约束,而 DCM、欧拉角、四元数只是同一姿态的不同“方言”。在后续章节中,滤波器内部状态通常采用四元数,量测模型则根据敏感器类型写成 DCM 或矢量形式,最终输出给姿控系统时再转成欧拉角或四元数指令。把这三者的转换关系与数据流位置记牢,是读懂后续所有估计器结构的前提。