第二章:坐标系与运动学——导弹飞行的“数学地图”

各位同学,今天我们来聊聊导弹控制里最基础、也最绕不开的一块内容——坐标系与运动学。

说实话,我刚入行那会儿,觉得坐标系这东西不就是画个箭头嘛,有啥好学的?直到我第一次参与半实物仿真,导弹在仿真机里飞得乱七八糟,我盯着数据愣是看不出问题在哪。后来老工程师一句话点醒我:“你坐标系都搞混了,导弹能不晕吗?”

嗯,从那以后,我再也不敢小看坐标系了。

2.1 常用坐标系:给导弹一个“定位基准”

导弹在空中飞,你得知道它“在哪”、“朝哪飞”、“姿态怎么样”。这三个问题,分别对应三个不同的坐标系。

2.1.1 地面坐标系(惯性系)

说白了,就是站在地面上看导弹。原点通常选在发射点,X轴指向目标方向(或正北),Y轴垂直向上,Z轴按右手定则确定。

这个坐标系用来描述导弹的位置和速度。比如“导弹在发射点东边5公里,高度3公里”,说的就是地面坐标系下的坐标。

关键点:地面坐标系近似为惯性系。也就是说,我们忽略地球自转的影响。对于大多数战术导弹,这个近似足够用了。但你要是搞洲际弹道导弹,那地球自转的科里奥利力可不能忽略——我当年有个同事就因为这个吃过亏。

2.1.2 弹体坐标系(体轴系)

这个坐标系是“长在导弹身上的”。原点在导弹质心,Xb轴沿弹体纵轴指向头部,Yb轴在弹体对称平面内垂直于Xb轴向上,Zb轴按右手定则指向右侧。

为什么要搞这么个坐标系?因为导弹上的传感器(比如陀螺仪、加速度计)测量的都是相对于弹体的物理量。你想啊,陀螺仪装在导弹肚子里,它测到的角速度当然是“导弹自己感觉自己在转”,而不是地面看它在转。

我的习惯:在写代码时,我会在变量名里明确标注坐标系。比如 omega_body 表示弹体系下的角速度,omega_inertial 表示惯性系下的角速度。这样一眼就能看出来,不容易搞混。

2.1.3 速度坐标系(航迹系)

这个坐标系跟导弹的速度矢量绑在一起。原点在质心,Xv轴沿速度方向,Yv轴在包含速度矢量的铅垂平面内垂直于Xv轴向上,Zv轴按右手定则确定。

你可能会问:有了弹体坐标系,为什么还要速度坐标系?

原因很简单:空气动力(升力、阻力)的大小和方向,取决于导弹相对于气流的姿态,也就是“速度坐标系”和“弹体坐标系”之间的关系。说白了,攻角和侧滑角就是这两个坐标系之间的夹角。

坐标系 原点 X轴 Y轴 Z轴 主要用途
地面系 发射点 指向目标/正北 垂直向上 右手定则 位置、速度
弹体系 质心 弹体纵轴 对称面内向上 右手定则 姿态、角速度
速度系 质心 速度方向 铅垂面内向上 右手定则 气动力、攻角

2.2 坐标变换:在坐标系之间“翻译”

有了三个坐标系,问题来了:怎么把一个坐标系下的量,换算到另一个坐标系下?

答案就是——旋转矩阵。

举个例子。你要把弹体系下的加速度计读数,换算到地面系下,才能知道导弹的绝对运动。这个过程,本质上就是做三次旋转:偏航、俯仰、滚转。

旋转矩阵的数学形式是这样的(以3-2-1转序为例):

C_b2i = Rz(ψ) * Ry(θ) * Rx(φ)

其中:
ψ — 偏航角
θ — 俯仰角
φ — 滚转角

Rz(ψ) = [cosψ  -sinψ  0;  sinψ  cosψ  0;  0  0  1]
Ry(θ) = [cosθ   0   sinθ;  0     1    0; -sinθ  0  cosθ]
Rx(φ) = [1    0     0;  0  cosφ  -sinφ;  0  sinφ  cosφ]

注意:旋转顺序很重要!不同的转序会得到不同的结果。我曾经在仿真代码里把转序搞反了,结果导弹的滚转和偏航耦合在一起,飞出了一个诡异的螺旋轨迹。查了两天才找到问题——嗯,从那以后我每次写坐标变换都要在注释里写明转序。

实际工程中,我们通常用四元数来代替欧拉角做旋转。为什么?因为欧拉角有“万向锁”问题——当俯仰角接近±90度时,偏航和滚转就分不清了。四元数没有这个问题,而且计算效率更高。

2.3 导弹运动学方程:描述导弹怎么“动”

有了坐标系和坐标变换,我们就可以写出导弹的运动学方程了。说白了,就是描述导弹位置、速度、姿态随时间变化的微分方程。

运动学方程分为两部分:

2.3.1 质心运动方程

描述导弹质心的位置和速度变化。在地面系下写:

dx/dt = Vx
dy/dt = Vy
dz/dt = Vz

dVx/dt = (Fx + Ax) / m
dVy/dt = (Fy + Ay) / m
dVz/dt = (Fz + Az) / m

其中:
(x, y, z) — 位置坐标
(Vx, Vy, Vz) — 速度分量
(Fx, Fy, Fz) — 推力分量
(Ax, Ay, Az) — 气动力分量
m — 导弹质量(随时间变化,因为燃料在消耗)

2.3.2 绕质心运动方程

描述导弹的姿态变化。在弹体系下写:

dφ/dt = p + (q sinφ + r cosφ) tanθ
dθ/dt = q cosφ - r sinφ
dψ/dt = (q sinφ + r cosφ) / cosθ

其中:
(p, q, r) — 弹体系下的角速度分量
(φ, θ, ψ) — 欧拉角(滚转、俯仰、偏航)

避坑指南:注意看第三个方程,分母是cosθ。当俯仰角θ接近±90度时,cosθ趋近于0,dψ/dt会变得非常大——这就是万向锁的数学表现。所以实际工程中,我建议用四元数代替欧拉角来积分姿态。

2.4 知识体系总览

下面这张图,是我自己总结的坐标系与运动学知识结构。你可以把它当作一张“地图”,随时回来看看自己学到哪了。

坐标系与运动学知识体系 地面坐标系 位置、速度 近似惯性系 弹体坐标系 姿态、角速度 传感器测量基准 速度坐标系 气动力、攻角 航迹描述 旋转矩阵 (欧拉角/四元数) 攻角/侧滑角 气动角变换 运动学方程 质心运动方程 + 绕质心运动方程 描述导弹位置、速度、姿态随时间的变化 工程应用 仿真建模 | 制导律设计 | 控制系统设计 | 导航解算 坐标变换是连接“测量”和“控制”的桥梁 坐标系选错了,后面全白干——这是导弹控制的第一条铁律

这张图把本章的核心逻辑串起来了:三个坐标系是基础,坐标变换是桥梁,运动学方程是最终的应用。你想想看,没有坐标系,你连导弹在哪都说不清楚,还谈什么控制?

我的建议:初学者可以先从地面系和弹体系的变换入手,把旋转矩阵的乘法练熟。等你闭着眼睛都能写出从弹体系到地面系的变换矩阵,再去看速度坐标系和攻角侧滑角,就会觉得顺理成章了。

好了,这一章的内容就到这里。坐标系和运动学是导弹控制的“地基”,地基打不牢,后面盖什么楼都得塌。下一章我们会聊导弹的动力学——也就是力和力矩怎么让导弹动起来。到时候你会发现,坐标系的知识会反复用到。

公众号:蓝海资料掘金营,微信deep3321