0

我正在尝试使用 VectorNav VN100 IMU 来绘制通过地下隧道(GPS 拒绝环境)的路径,并且想知道执行此操作的最佳方法是什么。我从 VN100 获得了很多数据点,其中包括:方向/姿势(欧拉角、四元数)以及三个维度的加速度和陀螺仪值。加速度和陀螺仪值以原始和过滤格式给出,其中过滤后的输出已使用板载卡尔曼滤波器进行过滤。除了 IMU 测量,我还在隧道的起点和终点测量了三个维度的 GPS-RTK 坐标。我应该如何处理这个映射问题?我对这个领域很陌生,不知道如何从加速度和方向数据中提取位置。

4

2 回答 2

0

好的,所以我遇到了一个解决方案,它让我更接近于找到地下行进路径的目标,尽管这绝不是我在这里发布我的算法的最终解决方案,希望它可以帮助其他人。

我的方法如下:

  1. 通过乘以四元数 VectorNav 输出 Q = [q0, q1, q2, q3],将 VectorNav VN100 输出的加速度矢量 A = [Ax, Ay, Az] 旋转到北、东、下帧。如何将向量乘以四元数在另一篇文章中进行了概述。基本上你取加速度向量并在它的末尾添加第四个分量作为标量项,然后乘以四元数并且它是共轭的(注意两个矩阵中的标量项应该在相同的位置,在这种情况下标量四元数项是第一项,因此应在加速度矢量的开头添加零标量项)例如 A = [0,Ax,Ay,Az]。然后执行以下乘法: A_ned = QAQ* 其中 Q* 是四元数的复共轭(i、j 和 k 项被否定)。
  2. 将旋转后的加速度矢量积分得到速度矢量:V_ned
  3. 积分速度矢量得到北、东、下的位置:R_ned

由于导致漂移的传感器偏差,速度和位置存在显着漂移。如果我们知道开始和结束速度以及开始和结束位置,这可以在一定程度上得到纠正。在这种情况下,开始和结束速度为零,所以我用它来校正速度矢量的漂移。 校正速度 校正速度

我在 IMU 位置与 GPS 之间的最终比较显示在这里(阅读:还有很长的路要走)。 GPS-RTK 数据 vs VectorNav IMU 数据 现在我只需要想出一个传感器融合算法来尝试改进位置估计......

于 2020-01-22T18:15:42.313 回答
0

在机器人技术中,Mapping意味着使用感知传感器(如 2D、3D 激光或相机)来表示环境。

一旦你得到地图,机器人就可以使用它来知道它的位置(Localization)。地图还用于查找位置之间的路径以从一个地方移动到另一个地方(Path planning)。

在您的情况下,您需要一个感知传感器来获得更好的位置估计。仅使用 IMU,您可以使用扩展卡尔曼滤波器 (EKF)跟踪位置,但它会快速漂移。

机器人操作系统有EKF实现,你可以参考它。

于 2019-12-20T15:45:37.923 回答