3. 飞控与惯性导航系统 您所在的位置:网站首页 什么叫惯导RTK 3. 飞控与惯性导航系统

3. 飞控与惯性导航系统

2023-03-15 01:12| 来源: 网络整理| 查看: 265

上回书说到要获取飞行状态所需的传感器,这次就来聊一下这些传感器是怎么运作的。

上次把一堆传感器按照所测量的物理量和是否能够进行数据融合进行了分类,今天从另一个角度来看一下这堆传感器,我们来把这些传感器分为“自主”的和非自主的两大类。其实“自主”这个叫法是我自己杜撰的,大家可以按自己的喜好去叫,这个自主的意思是这些传感器只要装在飞机上,就不论外界环境如何,都能够完成自己的测量任务。一个典型的非自主传感器的例子就是GPS,当卫星可见度不好,或是受到干扰时,GPS就不能提供准确的测量。所以这个自主测量就显得很重要,因为我们需要一套“保底”的测量系统,当飞机处于各种复杂条件时,都能够最低程度的保证飞行状态的获取,从而实现稳定控制。

在上一节提到的传感器中,自主测量系统就是由加速度计和陀螺仪组成的惯性导航系统(Inertial Navigation System, INS)。关于惯性的自主性就在这里不多说了,大家随便找本惯性导航方面的书看一下就ok,下面我们简单的聊一下无人机上的INS算法。

额,还是多说几句关于为什么要专门讲INS算法吧,大家可能会问,现在无人机上不都在用什么EKF(扩展卡尔曼滤波,Extended Kalman Filter),UKF(Unscented Kalman Filter),互补滤波(Complementary Filter, CF)吗?直接唠这些不就得了。其实INS的传播算法在上述算法中都起到了核心的飞行状态传播的作用,不论是KF还是CF,都可以看成一个:INS的飞行状态更新(update),修正量和漂移量的估计(estimate),飞行状态的修正(correct)三步过程。所以我们首先关注的就是update这个过程。

INS在飞行状态估计中的地位,图中蓝色块是传感器,红色块是数据,黄色块是数据处理过程

回到update这个事情,还要引入坐标系的概念,为啥这么麻烦?因为我们飞机上安装的捷联式(strapdown)惯性器件测量的是飞机坐标系(body frame, B系)相对于惯性坐标系(inertial frame, I系)的物理量在飞机坐标系的分解[注1]。而我们要把飞机的飞行状态表示在哪个坐标系里面,就需要把这些物理量转换到哪个坐标系。废话不多说,我们最常用的当然是基于经纬度和高程的地理坐标系,所以选北东地(North-East-Down, NED)当地切平面坐标系(Local Tangent Plane Frame)作为导航坐标系[注2],我们用l(Local的首字母)系来表示。

[注1]以角速度为例,关于“B坐标系关于A坐标系的角速度分解在C坐标系”的说法,解释几句。我们知道,向量是客观存在的,而我们找到一个坐标系(一组基)就可以用坐标的形式表示出这个向量,所以这个说法的前半部分是关于某个物理量客观存在的,即是X坐标系关于X坐标系的X,这是把要描述的物理量客观给出,现在这个物理量就那么在空间里。后半部分就是找到一个坐标系去描述它,即分解在X坐标系。两者结合才能给出一个物理量的坐标形式。[注2]导航坐标系、当地坐标系的说法很多书上有混淆,实际上我们常用的有两个参考坐标系,一个是固连在地球上的,就是当地切平面坐标系,用于短距离导航计算,坐标系原点在整个导航过程中不变;另一个是固连在机体坐标系上的,与当地的NED方向平行,但原点会随着飞行器的运动而变化,主要用于长距离导航,比如洲际导航,使用这个坐标系时候就需要在导航方程中考虑地球相对于该参考坐标系的运动。对大多数无人机而言,NED当地切平面坐标系就能够满足导航需要。

那么INS有以下的导航方程:

1、利用陀螺测量更新姿态 \dot{\bm{C}}_b^l = 0.5 \left( \bm{q}_b^l \breve{\bm{\omega}}_{ib}^b - \breve{\bm{\omega}}_{il}^l \bm{q}_b^l \right) 2、利用加速度计测量和上一步计算的姿态计算NED当地切平面坐标系里的加速度 \bm{f}_{ib}^l = \bm{C}_b^l \bm{f}_{ib}^b 3、利用上一步计算的加速度更新速度 \bm{v}_{lb}^l = \bm{f}_{ib}^l + \bm{C}_e^l \bm{g}_b^e \left( \bm{r}_{eb}^e \right) - 2 \bm{\Omega}_{i l}^l \bm{v}_{lb}^l 4、利用上一步计算的速度更新位置 \dot{\bm{r}}_{lb}^l = \bm{v}_{lb}^l

关于这组公式就不解释了,具体内容可以看参考文献,大家需要注意的是:

这组导航方程的输入,就是陀螺和加速度计的测量而这组导航方程的输出,就是我们所需要的姿态、速度和位置

也就是说假设陀螺和加速度计的测量是没有误差的,我们完全可以利用它们来确定飞机的状态,这也就是所谓的“自主”性。而且后面我们讨论的滤波算法实际上就是在INS更新的基础上对其中存在的误差进行估计和修正,也就是说我们估计飞行状态的核心思想都是基于INS的。

在实际工程里更新INS导航方程时需要注意一些细节:

姿态表示形式,最常用的是四元数(quaternion)和方向余弦矩阵(Direction Cosine Matrix, DCM)两种,其中四元数的优点是更新精度高,三阶四元数更新算法的精度便高于四阶DCM更新算法的精度;缺点是在后续的导航方程更新时,还需要把四元数变换为DCM,等于多了一个步骤。而直接更新DCM就省去了这个转换,然而更新DCM需要的算法阶次和计算量更高,所以具体选择哪种就要看大家的取舍了。惯性器件测量的圆锥(coning)误差和划摇(sculling)误差。这两类误差产生的原因是在对陀螺仪和加速度计测量进行积分的过程中,我们是假设积分间隔内角速度和加速度是不变的,但如果飞行器处于高动态,或是积分间隔过大,这两类误差就会比较显著,因此需要考虑一下应对措施,比较方便的做法是尽量提高姿态更新的频率,也就是减小积分间隔。

关于更多的坐标系、导航方程、计算实现的内容可以参考Paul D. Groves的书"Principles of GNSS, Inertial, and Multisensor Integrated Navigation Systems"的第二章和第五章。

那么下次我们就开始聊滤波算法喽~



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有