首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >路径映射使用VectorNav VN100 IMU在两个GPS坐标之间映射路径

路径映射使用VectorNav VN100 IMU在两个GPS坐标之间映射路径
EN

Stack Overflow用户
提问于 2019-12-20 22:44:07
回答 2查看 153关注 0票数 0

我正在尝试使用VectorNav VN100 IMU来绘制通过地下隧道的路径(全球定位系统被拒绝的环境),我想知道做这件事的最好方法是什么。我从VN100中得到了很多数据点,包括:方向/姿态(欧拉角,四元数),以及三维的加速度和陀螺仪的值。加速度和陀螺值以原始格式和滤波格式给出,其中滤波输出已使用机载卡尔曼滤波器进行滤波。除了IMU测量之外,我还在隧道的起点和终点测量三维的GPS-RTK坐标。我应该如何处理这个映射问题?我对这个领域非常陌生,不知道如何从加速度和方向数据中提取位置。我知道加速度可以积分一次来给出速度,然后可以再次积分来获得位置,但是我如何将这些数据与方向数据(四元数)相结合来获得路径?

EN

回答 2

Stack Overflow用户

发布于 2019-12-20 23:45:38

在机器人学中,Mapping指的是使用感知传感器(如2D、3D激光或摄像头)来表示环境。

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

在你的情况下,你需要一个感知传感器来获得更好的位置估计。只有,你可以使用Extended Kalman filter(EKF)跟踪位置,但它漂移得很快。

Robot操作系统有EKF实现,你可以参考一下。

票数 0
EN

Stack Overflow用户

发布于 2020-01-23 02:15:42

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

我的方法如下:

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

由于传感器的偏差,速度和位置会有很大的漂移,导致漂移。如果我们知道开始和结束速度以及开始和结束位置,这可以进行一些校正。在这种情况下,开始和结束速度为零,所以我用这个来校正速度矢量中的漂移。Uncorrected Velocity Corrected Velocity

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

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/59427099

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档