2. 姿态描述与坐标系
航天器姿态动力学建模的第一步,不是写方程,而是把“姿态”这件事说清楚。姿态本质上是两个坐标系之间的相对方位关系:一个作为参考的基准坐标系,一个固连在航天器上的本体系。只有先定义好坐标系,才能用数学量去描述它们之间的转动,进而写出动力学方程并做仿真。本节围绕三套常用坐标系和三种姿态表示方法展开,重点说明它们的定义、物理含义以及相互转换关系。
一、三套坐标系的定义
惯性系是姿态描述的绝对基准。工程上常用 J2000 地心惯性系:原点在地心,X 轴指向 J2000 历元平春分点,Z 轴沿 J2000 平赤道面法线指向北极,Y 轴按右手法则补齐。惯性系近似无转动,因此牛顿定律在其中成立,是轨道与姿态动力学方程的书写基准。需要注意,严格意义上的惯性系并不存在,J2000 只是精度足够高的近似,长时间任务需考虑岁差、章动修正。
轨道系随航天器质心沿轨道运动,是连接轨道运动与姿态的桥梁。一种常见定义是:原点在航天器质心,Z 轴指向地心(对地定向任务),X 轴在轨道面内指向速度方向,Y 轴垂直于轨道面,构成右手系。轨道系不是惯性系,它相对惯性系以轨道角速度 ω₀ 转动,这一转动率在姿态动力学中会以耦合项的形式出现,是轨道系区别于惯性系的关键。
本体系固连在航天器结构上,原点通常取质心,三轴与星体主惯量轴对齐,例如 X 轴沿某太阳翼展开方向、Z 轴沿对地面法线。本体系随航天器一起转动,因此它相对惯性系或轨道系的方位就是我们要描述的姿态。三套坐标系的关系可以概括为:惯性系是绝对基准,轨道系是任务基准,本体系是载体基准。
二、方向余弦矩阵
方向余弦矩阵(DCM)是最基础的姿态表示。设本体系三轴单位矢量在惯性系下分别为 b₁, b₂, b₃,则矩阵 C 的第 i 行第 j 列元素就是本体系第 j 轴与惯性系第 i 轴的夹角余弦。它把同一矢量在惯性系下的坐标变换到本体系:vB = CBI · vI。C 是正交矩阵,满足 CᵀC = I 且 det(C) = +1,逆变换就是转置。
DCM 的优点是物理意义清晰、变换直接、无奇异;缺点是 9 个元素中有 6 个约束,数值积分时正交性会漂移,需要定期重正交化。在仿真中,若用 DCM 做姿态运动学积分,通常每步或每隔若干步用 Gram-Schmidt 或极分解修正。
三、欧拉角
欧拉角用三个角度描述姿态,最直观,也最容易被任务人员理解。以航天器常用的 3-2-1 转序(偏航-俯仰-滚转)为例:先绕本体系 Z 轴转 ψ,再绕新 Y 轴转 θ,最后绕新 X 轴转 φ。对应的 DCM 为:
C_BI = Rz(ψ) · Ry(θ) · Rx(φ)
其中:
Rx(φ) = [1, 0, 0; 0, cosφ, sinφ; 0, -sinφ, cosφ]
Ry(θ) = [cosθ, 0, -sinθ; 0, 1, 0; sinθ, 0, cosθ]
Rz(ψ) = [cosψ, sinψ, 0; -sinψ, cosψ, 0; 0, 0, 1]
欧拉角的核心缺陷是万向锁:当 θ = ±90° 时,φ 与 ψ 的转轴重合,姿态自由度退化,解算出现奇异。因此欧拉角适合描述小角度或中等角度姿态,不适合大角度机动和连续递推。此外,同一姿态在不同转序下欧拉角不同,使用前必须明确转序约定。
四、四元数
四元数用四个参数 q = [q₀, q₁, q₂, q₃]ᵀ 表示绕单位轴 e 转角度 α 的转动,其中 q₀ = cos(α/2),[q₁, q₂, q₃]ᵀ = e·sin(α/2)。它满足归一化约束 ‖q‖ = 1,且 q 与 −q 表示同一姿态。四元数没有奇异点,运动学方程是双线性形式,非常适合数值积分和实时递推。
四元数到 DCM 的转换关系为:
C(q) =
[1-2(q₂²+q₃²), 2(q₁q₂+q₀q₃), 2(q₁q₃-q₀q₂);
2(q₁q₂-q₀q₃), 1-2(q₁²+q₃²), 2(q₂q₃+q₀q₁);
2(q₁q₃+q₀q₂), 2(q₂q₃-q₀q₁), 1-2(q₁²+q₂²)]
反过来,从 DCM 提取四元数时,常用 Shepperd 方法:先比较 C 的对角线元素,选取最大的分量作为主元,再计算其余分量,避免除以接近零的数。这一步在仿真初始化或传感器融合中经常用到。
五、三种表示的相互转换与选用
三种表示之间可以互相转换,转换关系是姿态仿真中的基本工具。欧拉角转 DCM 按转序连乘旋转矩阵;DCM 转欧拉角通过元素反三角函数提取,需处理万向锁分支;四元数转 DCM 用上式;DCM 转四元数用 Shepperd 方法;欧拉角与四元数之间可经 DCM 中转,也可直接写出公式。
实际工程中,选用哪种表示取决于任务阶段:任务分析与地面显示用欧拉角,便于理解;姿态确定与滤波用四元数,避免奇异、便于递推;坐标变换与载荷指向计算用 DCM,直接做矢量变换。在仿真程序中,常见做法是内部用四元数积分,输出时转成欧拉角供判读,需要做矢量变换时再转成 DCM。
以一个教学示例说明转换过程:设某航天器相对轨道系的姿态四元数为 q = [0.7071, 0.7071, 0, 0]ᵀ,即绕 X 轴转 90°。代入四元数转 DCM 公式,可得 C 的第一行约为 [1, 0, 0],第二行约为 [0, 0, 1],第三行约为 [0, −1, 0]。再按 3-2-1 转序反解欧拉角,得到 φ = 90°、θ = 0°、ψ = 0°,与物理直觉一致。这个例子说明:同一姿态在不同表示下数值不同,但描述的方位是同一个,转换正确性可以通过物理含义交叉验证。
在仿真实现中,建议把三种表示的转换写成独立函数,输入输出明确标注坐标系和转序,并在单元测试中用“已知姿态→转换→反转换→比对”的方式验证。姿态描述是后续动力学建模的输入,这一步的约定和精度直接决定仿真结果是否可信。