欧拉角、旋转矩阵、四元数角运动微分方程

欧拉角、旋转矩阵、四元数角运动微分方程

前言

本篇文章首发于公众号:无人机系统技术。更多无人机技术相关文章请关注此公众号。

本篇内容是设计姿态控制器的基础,从事无人机控制行业的朋友都应该能够深刻理解,熟练推导。

在上一篇文章无人机建模(二):多旋翼飞行器建模中,我们建立了多旋翼飞行器的数学模型。其中关于角运动的数学模型我们是直接给出了三个微分方程,分别针对欧拉角、旋转矩阵以及四元数三种表示方法。

那对于我们从事无人机行业的工程师来说,光看个公式是远远不够的,你如果不理解这个微分方程的来源,那对于后续控制律的设计也会有很大影响。所以今天我们就来看看这三种姿态的描述方式对应的三个微分方程是如何来的。关于本文的符号以及坐标系请参考上一篇文章,在此不再赘述。

角运动方程描述的是姿态跟角速度之前的关系,本文中的角速度均指机体轴系相对机载NED系的转动在机体轴系下的表述。

角运动微分方程

在开始推导公式之前,我们先回顾一下这三个角运动的微分方程。

欧拉角角运动方程:

欧拉角微分方程

旋转矩阵角运动方程:

旋转矩阵微分方程

四元数角运动方程:

四元数微分方程

欧拉角微分方程

在之前的文章里,我们已经定义了欧拉角以及旋转顺序,不清楚的朋友可以参考之前的文章:无人机理论(一):坐标转换与姿态描述(基础篇)

那么欧拉角所表征的三次旋转,每一次旋转所产生的旋转角速度都是沿旋转轴方向的,这个是常识,大家要先知道。

第一次旋转,绕机载NED系的Z轴旋转ψ角,产生的旋转角速度在旋转后的中间坐标系1中的表示是沿Z轴方向的,所以本次旋转的角速度在中间坐标系1的表示为:

第二次旋转,我们绕的是中间坐标系1的Y轴旋转θ角,这时候第二次旋转产生的旋转角速度在旋转后的中间坐标系2中是沿Y轴方向的,但是呢,其旋转的同时改变了第一次旋转时产生的角速度的表示,因为我们描述角速度的坐标系变了,所以两次旋转在中间坐标系2的表示为:

注:这时候产生的中间坐标系2的X轴与机体轴系的X轴已经重合

第三次旋转,我们绕的是中间坐标系2的X轴旋转φ角,转动完成后坐标系就变成了机体轴系,而该次旋转轴就是最后机体轴系的X轴,所以本次旋转产生的角速度沿X轴方向,但旋转的同时也改变了上两次旋转的表示,结果是:

那对矩阵求个逆就是我们之前给出的结果:

旋转矩阵微分方程

旋转矩阵公式我们在以前的文章中已经推导过了,今天要说的是旋转矩阵的微分方程是怎么来的。首先我们求导是对时间求导,所以旋转矩阵对时间这个标量求导就等于矩阵中每个元素对时间求导后组成的矩阵。

两个坐标系之间的旋转有两个旋转矩阵,一个是机体轴系向机载NED系旋转的旋转矩阵,另一个是机载NED系向机体轴系旋转的旋转矩阵,他们互为转置,也是互逆关系:

旋转矩阵还有一个性质就是矩阵的每一行每一列的向量模都是1,在旋转变化时,每个向量的模都是1,保持不变,变的只有方向。

在开始推导公式之前,我们先来了解一下绕定轴转动时向量的导数是怎么算的,理论力学里面有明确的结论,这里要注意r和ω要在同一坐标系下表示:

首先我们定义机载NED坐标系下沿X、Y、Z轴的单位向量分别为:

机体轴系下沿X、Y、Z轴的单位向量分别为:

那么根据旋转矩阵的定义,机载NED坐标系沿X、Y、Z轴的3个单位向量在机体轴系下的表示为:

结合公式(1.9)和(1.12)有:

关于其转置的微分方程读者可以参照上述过程自行证明。

四元数微分方程

对于四元数的导数,我们从导数的定义开始:

我们先来回顾一下四元数是如何表示姿态的,四元数表示的是一个坐标系绕轴u旋转σ角度的过程,

为书写方便,我们描述姿态的四元数表示默认为机载NED系向机体轴系旋转,不再用上下标n、b,而ω也默认表示机载NED系向机体轴系旋转的角速度在机体轴系下的表示,不再用下标b:

而对于四元数q(t+△t)我们可以将其拆分为0到t以及t到t+△t两个过程,在这里大家要注意的是拆分两个过程并不是说就是0到t以及t到t+△t两个旋转过程表示的四元数之和,因为四元数的加法不是这么定义的。

事实上,我们在四元数那一讲中讲到了对某一向量施加某四元数代表的旋转之后有这样的结果:

那也就是说四元数q(t+△t)表示的是先施加一个q(t)的旋转过程,再施加一个△q的旋转过程,结合四元数乘法的结合律和共轭的性质有:


所以q(t+△t)与q(t)以及△q的关系并不是加法的关系,而是乘法的一个关系:

而△q可以表示为:

到此为止,求四元数微分公式中所有项都有了,不妨令:

则有:

那么根据四元数乘法的定义,我么有:

代入(1.14)的微分公式中既可以得到:

最后我们根据叉乘的交换律公式把它转换为四元数与角速度的一个关系:

这样,四元数的角运动微分方程就推导完毕了。


总结

本篇内容推导了欧拉角、旋转矩阵以及四元数三种姿态表示方法的角运动微分方程,这三个方程中欧拉角和四元数两种方式在控制中使用最多,尤其是四元数不存在奇点,描述清晰简单,所以在控制中应该优先使用。

关于如何使用上述方程进行姿态控制律的设计我们在后续文章中会进行描述,能够进行本篇文章的公式推导并理解其中的含义是一个从事无人机控制工作的必备知识。

欢迎关注同名公众号:无人机系统技术。

北航博士为你解析无人机技术知识。

发布于 2019-08-13

文章被以下专栏收录