2、飞行器动力学基础:坐标系定义、欧拉角、四元数、刚体运动方程与常用假设
飞行器动力学建模是模块化构建飞行仿真系统、控制系统设计与状态估计的基石。任何飞行器的运动描述都依赖于一组精心定义的坐标系、一套无歧义的姿态参数化方法,以及基于牛顿-欧拉方程的刚体运动方程。本章将系统梳理这些基础概念,重点剖析欧拉角与四元数在工程应用中的优劣,并明确在模块化建模中常用的简化假设及其适用边界。理解这些内容,是后续构建气动模型、推力模型和导航解算模块的前提。
上图展示了飞行器动力学建模中核心概念之间的逻辑关系:坐标系为运动描述提供参考基准,姿态参数化用于表达机体相对于参考系的角位置,而刚体运动方程则将这些几何关系与力、力矩联系起来,最终在工程假设的约束下形成可计算的数学模型。下面我们逐一展开。
2.1 坐标系定义与转换关系
核心原理
飞行器动力学中常用的坐标系包括:地心惯性坐标系(i系),原点在地心,轴指向恒星,是牛顿定律成立的惯性参考系;地球固连坐标系(e系),原点在地心,随地球自转,用于描述地面位置;导航坐标系(n系),通常取“东北天”或“北东地”当地水平坐标系,用于导航解算;机体坐标系(b系),原点在飞行器质心,x轴指向机头,y轴指向右翼,z轴指向机体下方(右手定则)。模块化建模的第一步,就是明确每个模块输入输出所采用的坐标系,并在模块边界处完成坐标变换。
判断方法或操作流程
在实际工程中,坐标变换通常通过方向余弦矩阵(DCM)实现。从n系到b系的变换矩阵可分解为三个基本旋转的乘积。操作流程上,建议在模型初始化阶段预先计算所有需要的变换矩阵,避免在每个仿真步长中重复三角函数计算。例如,将惯性系下的重力矢量转换到机体轴系时,应使用当前姿态的DCM矩阵左乘重力矢量。
| 坐标系对 | 变换矩阵符号 | 典型用途 | 备注 |
|---|---|---|---|
| i → e | Cei | 考虑地球自转 | 含地球自转角速度Ω |
| e → n | Cne | 经纬高→当地水平 | 与经纬度相关 |
| n → b | Cbn | 姿态控制、导航 | 由欧拉角或四元数构建 |
| i → b | Cbi | 惯性导航解算 | 可合并上述变换 |
案例拆解或实战场景
以某小型固定翼无人机为例,其GPS模块输出经纬高(WGS-84),而飞控中的姿态控制模块需要机体坐标系下的加速度。建模时,我们首先将GPS经纬高转换为n系下的位置矢量,再通过姿态四元数生成Cbn矩阵,将加速度计测量的比力从b系转换到n系,扣除重力后积分得到速度。这一过程中,任何坐标系的混用都会导致发散。我们在实际项目中曾遇到加速度计数据在n系下积分后出现明显漂移,排查后发现是初始对准时欧拉角转DCM的旋转顺序错误(先绕z轴再绕y轴,而非标准顺序),修正后问题解决。
2.2 欧拉角与四元数
核心原理
欧拉角用三个角度(滚转φ、俯仰θ、偏航ψ)描述姿态,物理意义直观,但存在万向节锁问题(当θ=±90°时,φ和ψ的旋转轴重合,丢失一个自由度)。四元数则用四个参数(q0, q1, q2, q3)表示姿态,无奇异,计算效率高,适合数值积分。四元数满足归一化约束:q0²+q1²+q2²+q3²=1。从四元数到DCM的转换公式为:
C_b^n = [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²)]
判断方法或操作流程
在模块化建模中,建议内部状态统一使用四元数,仅在输入输出接口处转换为欧拉角供显示或调试。四元数的微分方程为:
dq/dt = 0.5 * [0 -p -q -r;
p 0 r -q;
q -r 0 p;
r q -p 0] * q
其中p,q,r为机体角速度。数值积分后需重新归一化四元数,防止漂移。
案例拆解或实战场景
某高机动性导弹仿真中,若采用欧拉角描述姿态,当俯仰角接近90°时仿真直接崩溃。改用四元数后,全飞行包线内稳定运行。具体操作:将导弹气动模块输出的力矩代入欧拉方程求得角加速度,积分得到角速度,再通过四元数微分方程更新姿态。每步积分后执行归一化:q = q / ||q||。这一改动使仿真鲁棒性显著提升。
2.3 刚体运动方程与常用假设
核心原理
刚体运动方程包括力方程(平动)和力矩方程(转动)。在机体坐标系下,力方程为:
m * (dV_b/dt + ω_b × V_b) = F_aero + F_thrust + F_gravity
其中V_b为机体速度矢量,ω_b为角速度矢量。力矩方程为:
I * dω_b/dt + ω_b × (I * ω_b) = M_aero + M_thrust
I为惯性张量。运动学方程将角速度与姿态变化率联系起来,导航方程则计算位置变化。
常用假设及其适用性
| 假设名称 | 数学表达 | 适用场景 | 局限性 |
|---|---|---|---|
| 刚体假设 | 忽略结构弹性变形 | 常规飞行器控制设计 | 大型柔性机翼飞机需引入气动弹性模型 |
| 质量不变 | dm/dt=0 | 燃油消耗慢的短航时飞行 | 长航时飞行需考虑质量变化 |
| 地面系惯性 | 忽略地球自转和曲率 | 近程无人机、导弹 | 远程导航必须考虑科里奥利力 |
| 小扰动线性化 | 状态偏差Δx满足线性方程 | 配平点附近的稳定性分析 | 大机动飞行不适用 |
案例拆解或实战场景
以某四旋翼悬停控制为例,初始建模采用“小角度假设”(sinθ≈θ, cosθ≈1),将运动方程线性化。在悬停点附近,该模型工作良好,PID控制器参数整定顺利。但当飞行器执行大角度机动(如翻滚90°)时,线性模型预测的响应与实际严重不符,导致控制发散。复盘发现,线性化假设在姿态角超过30°时误差已不可接受。解决方案是保留完整的非线性运动方程,仅在控制器设计中采用线性化模型,而仿真模型使用全量方程。这一案例说明,模块化建模中,仿真内核必须使用完整非线性方程,线性化模型只能用于特定模块(如控制律设计)。