背景知识

导航坐标系:东-北-天

载体坐标系:右-前-上

一、平衡环架

平衡环架(英语:Gimbal)为一具有枢纽的装置,使得一物体能以单一轴旋转。由彼此垂直的枢纽轴所组成的一组三只平衡环架,则可使架在最内的环架的物体维持旋转轴不变,而应用在船上的陀螺仪、罗盘、饮料杯架等用途上,而不受船体因波浪上下震动、船身转向的影响。

       上图就是一个Gimbal装置了,它是一个陀螺仪。中间有一根竖轴,穿过一个金属圆盘。金属圆盘称为转子,竖轴称为旋转轴。转子用金属制成,应该是了增加质量,从而增大惯性。竖轴外侧是三层嵌套的圆环,它们互相交叉,带来了三个方向自由度的旋转。

看着不停转来转去,有点晕,接下来看两个静态的。这两张图来自百度百科。

其中Gimbal只代表陀螺仪装置中的平衡环,显然维基百科上将它解释成“平衡环架”更为合理。

、陀螺仪

1、进动性:

当转子高速旋转时,若外力矩作用于外环轴,陀螺仪将绕内环轴转动;若外力矩作用于内环轴,陀螺仪将绕外环轴转动。其转动角速度方向与外力矩作用方向互相垂直。

2、定轴性/稳定性:

当陀螺转子以高速旋转时,在没有任何外力矩作用在陀螺仪上时,陀螺仪的自转轴在惯性空间中的指向保持稳定不变,即指向一个固定的方向;同时反抗任何改变转子轴向的力量。

3、陀螺仪根据制造工艺和原理特性分类:

4、陀螺仪测角速度示意图:

沿着机身横轴/X轴进行旋转,为pitch俯仰角
沿着机身纵轴/Y轴进行旋转,为Roll,横滚角
沿着机身立轴/Z轴进行旋转,为Yaw,航向角

陀螺仪工作示意图:

这里,我把三个Gimbal环用不同的颜色做了标记,底部三个轴向:

  • 绿色:Y轴 滚转
  • 红色:X轴 俯仰
  • 蓝色:Z轴 航向

假设现在这个陀螺仪被放在一艘船上,船头的方向沿着+Z轴,也就是右前方

   Roll: 现在假设,船体发生了摇晃,是沿着前方进行旋转的摇晃,也就是桶滚。由于转子和旋转轴具有较大的惯性,只要没有直接施加扭矩,就会保持原有的姿态。由于上图中绿色的活动的连接头处是可以灵活转动的,此时将发生相对旋转,从而出现以下的情形:

    Pitch:再次假设,船体发生了pitch摇晃,也就是俯仰。同样,由于存在相应方向的可以相对旋转的连接头(红色连接头),转子和旋转轴将仍然保持平衡,如下图:

    Yaw:最后假设,船体发生了yaw摇晃,也就是偏航,此时船体在发生水平旋转。相对旋转发生在蓝色连接头。如下图:

陀螺仪中的万向节死锁

现在看起来,这个陀螺仪一切正常,在船体发生任意方向摇晃都可以通过自身调节来应对。然而,真的是这样吗?

假如,船体发生了剧烈的变化,此时船首仰起了90度(这是要翻船的节奏。。。。),此时的陀螺仪调节状态如下图:

此时,船体再次发生转动(横滚角),可以看出航向角已经和俯仰角耦合在一起了;

现在,转子不平衡了,陀螺仪的三板斧不起作用了。它失去了自身的调节能力。那么这是为什么呢?

、万向节死锁:

 空间中的任意两个矢量,都可以通过平动和转动得到;也即6个自由度;通常利用加速度计和陀螺仪来实现这种关系。以转动为例,三维空间中的一个矢量,经过三次坐标系基本旋转可以得到另外的一个矢量;其中,有12中旋转顺序:

       首先旋转X、Y、Z轴任意一轴,有三种可能;然后旋转第一次为旋转的任意一轴,有两种可能;最后旋转除去第二次旋转轴,的任意一轴;总计:3*2*2=12种方式。

万向节死锁现象本质就是转动由3个自由度变为2个自由度!

通常对于飞控、惯性导航种的影响/考虑有几下几种:

(1)某一个轴向角度出现奇异点;

(2)是不是只有旋转矩阵相乘中会出现这种现象?

(3)“转动”中的描述方式,有几种?

(4)万向节死锁应该怎么避免?还是系统固有属性,无法避免?

(5)……

针对上面有可能的疑问,下面进行解读:

首先根据《捷联惯导算法与组合导航原理讲义》中的附录,给出三种欧拉角的定义:

定义1:欧拉角定义:3-1-2旋转,(航向角-俯仰角-滚转角);

θ为俯仰角;γ为横滚角;ψ为航向角;

  •     航向角北偏西为正,范围【-pi pi】;
  •     俯仰角, 运载体抬头时角度定义为正,角度范围-90° ~90° ;
  •     横滚角,运载体向右倾斜时角度定义为正,角度范围-180° ~180°

(1)其方向余弦矩阵为:

(2)根据方向余弦矩阵可以得出运载体的欧拉角:

定义2:欧拉角定义:3-1-3旋转,(航向角-俯仰角-航向角);

θ为俯仰角;γ为横滚角;ψ为航向角;

  •     航向角北偏西为正,范围【-pi pi】;
  •     俯仰角, 运载体抬头时角度定义为正,角度范围-90° ~90° ;

(1)其方向余弦矩阵为:

(2)根据方向余弦矩阵可以得出运载体的欧拉角:

由于是3-1-3旋转,因此,所求欧拉角为:航向角、俯仰角、航向角;既:α、β、γ

角度求解:

或:

可以看出,在β为±90°时,并不存在奇异点;但是当β为0°时,存在奇异点!

而且,此种3-1-3旋转方式,没有明确的物理意义!

定义3:欧拉角定义:3-2-1旋转,(航向角-滚转角-俯仰角);

θ为俯仰角;γ为横滚角;ψ为航向角;

  •     航向角北偏西为正,范围【-pi pi】;
  •     俯仰角, 运载体抬头时角度定义为正,角度范围-90° ~90° ;
  •     横滚角,运载体向右倾斜时角度定义为正,角度范围-180° ~180°

(1)其方向余弦矩阵为:

(2)根据方向余弦矩阵可以得出运载体的欧拉角:

由于是3-2-1旋转,因此,所求欧拉角为:航向角、滚转角、俯仰角;既:ψ、γ、θ

可以看出,按照3-2-1旋转,最终在横滚角为±90°时,存在奇异点;一般令航向角为0°,进而求出俯仰角。

四、总结:

万向节死锁/奇异点本质为:三个自由度变为两个自由度(丢失一个自由度);

构建方向余弦矩阵通常是绕X、Y、Z轴中的某一个或两个轴,三次旋转而成;因此,奇异点最直观的表征就是欧拉角的计算;通过上面分析可以看出:

定义1:3-1-2旋转,(航向角-俯仰角-滚转角):其奇异点存在于俯仰角为±90°时,横滚角和航向角存在多值性,一般假设航向角为0读,去求解横滚角。

定义2:3-1-3旋转,(航向角-俯仰角-航向角):其奇异点存在于β为0°时,但是求解的欧拉角没有直观的物理意义。

定义3:3-2-1旋转,(航向角-滚转角-俯仰角):其奇异点存在于俯仰角为±90°时,横滚角和航向角存在多值性,一般假设航向角为0读,去求解横滚角。

答:

(1)坐标系的相互变换可以通过:旋转矩阵、四元数、欧拉角等方式去描述,但是奇异点是一种客观存在,并且根据旋转顺序的不同,可以看出对于同一个空间状态变化,有多种欧拉角(多种旋转矩阵)表现形式,共计12种旋转方式;其中每一种旋转矩阵在求解欧拉角时都存在奇异点!

(2)欧拉角:非常直观,我们可以很容易理解它的意思,也能想象出对应的空间位置,但是存在万向锁现象,导致后面有很多数学问题。

(3)旋转矩阵:旋转矩阵有9个元素,计算繁杂,尤其是求微分时,而且也不直观。

(4)四元数:没有奇点,能表征任何旋转关系,而且表示简单,只有四个元素,计算量小,但是不直观。

 

 

参考链接:

【Unity编程】欧拉角与万向节死锁(图文版)

https://andrewfanchina.github.io/UnityLabs/Euler/

《捷联惯导算法与组合导航原理讲义》

《坐式垂直起降无人机的一种姿态解算算法的设计》

干货整理:欧拉角、旋转矩阵、四元数合辑

欧拉角旋转以及万向节死锁