首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >IMU定位不断变化

IMU定位不断变化
EN

Stack Overflow用户
提问于 2015-08-26 13:54:03
回答 2查看 2.1K关注 0票数 3

我们有XSENS MTi IMU设备,并使用ROS-框架(Ubuntu / Fuerte)。我们订阅了IMU-Data,除了定向之外,所有数据看起来都很好.

在Euler-Outputmode中,就像在四元数输出模式中一样,值也在不断变化。不是随机的,它们以或多或少的恒定速率缓慢地增加或减少,有时我观察到这种变化使其变平,然后改变它的方向。

当第二个X的值可能是:

代码语言:javascript
复制
x: 7.79210457616
y: -6.58661204898
z: 41.2841955308

Z值在几秒钟内变化范围约为10 (我认为是10-20秒)。

是什么导致了这种行为?我们是误解了数据,还是司机出了什么问题?奇怪的是,这也发生在另外两个驱动程序中,还有另外一个IMU设备(我们有2)。每个组合的结果是一样的。

请随意要求更精确的数据或任何你想知道的,也许可以帮助我们解决。我们正在参加11月的太空机器人杯,所以完成IMU将是一个相当大的宽慰。:)

EN

回答 2

Stack Overflow用户

发布于 2015-11-12 03:56:39

完全正常,如果你没有磁强计给出一个校正的航向。

陀螺仪只测量转速,不知道在任何给定时间内在任何轴上的方位。如果你知道初始航向和陀螺仪是100%准确的话,综合旋转率就会给出航向。它仍然漂移,即使它是完美的校准,因为你是在离散的间隔,而不是连续取样。

增加一个加速度计至少可以固定向下的方向(因为它测量的是向地球中心方向的重力)。这将保持Z轴解与垂直对齐,但它不会固定水平方向(航向或偏航)。这将继续漂移,正如你所看到的。

增加一个磁强计将修复相对于地球磁场的航向。这会给你一个相对于磁北的方向。你将需要为局部磁偏转申请一个转变,以获得真正的北。它们一般可以在线使用,并且在几十公里范围内相当恒定。谷歌ITREF

有些集成传感器没有磁强计。这就是为什么航向漂移的原因。像MPU6050这样的单元有内置的固件,并且可以访问磁强计,但是通常的固件不使用它,所以您必须在您的微控制器或连接的PC上实现Madgwick等。博世有一个新的单一模块与一个处理单元内置。希望它使用的是9自由度,而不是你在MPU6050上得到的DMP。

磁传感器精确到2度左右。局部磁偏角校正也有误差。您可以通过在长基线上使用GPS来执行额外的校准,以获得更好的结果。也值得注意的是,航向和航向往往是不同的,因为横向风/交叉流。

与卡尔曼滤波算法相比,Madgwick算法具有稳定性好、易于实现等优点,且比卡尔曼滤波算法占用的资源少,需要进行矩阵求逆。它仍然提供轻微的抖动,但轻微的平滑结果不应造成太大的滞后。

票数 3
EN

Stack Overflow用户

发布于 2015-08-26 15:59:50

如果您有IMU版本,我假设设备上没有进行任何信号处理。(但我不知道产品是什么)。所以你得到的方位数据应该只是陀螺仪数据的积分。

你能看到的漂移是正常的,可能来自于噪声的积分,糟糕的零速率校准,或者陀螺仪的偏置。

为了纠正这种漂移,我们通常使用AHRSVRU算法(取决于校正偏航的需要)。这是一种融合传感器算法,它从加速度计和磁强计数据(用于AHRS)中提取重力来纠正这种漂移。

常用的算法是Kalman filtercomplementary filter (Madgwick/Mahony)。

这不是一件容易的工作,需要在matlab/python上进行一些阅读和实验,以配置这些过滤器:)

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

https://stackoverflow.com/questions/32228629

复制
相关文章

相似问题

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