我们正在与配备三个(120度移位)全向轮的完整机器人合作。相对运动通过使用车轮编码器的航位推算来估算。为了改进此估计,我们安装了陀螺仪以测量方向变化。此外,该机器人还具有270度激光测距仪。

为了解决被绑架的机器人问题,我们实施了粒子过滤器。在每个步骤中,每个粒子都会根据里程计和陀螺仪读数进行更新。由于这些读数会因噪声而失真,因此我们需要一个运动模型来包含这些误差。如Thrun的Probabilistic Robotics(第118-143页)中所述,有两种常用的运动模型(速度运动模型和里程运动模型)。但是,这些模型似乎描述了差动驱动机器人而不是全向机器人的行为。本文基于这样一个事实,就Thrun的运动模型而言,相对y方向的误差与方向的误差成比例。这适用于差动驱动机器人,因为机器人的方向和方向是相同的。对于全向机器人,由于航向和方向完全独立,因此无法做出此假设。即使我们假设有关机器人方向的完美信息,我们仍然可以获得相对y方向的误差。

我想讨论一下我的假设-全方位机器人的速度/里程运动模型是否失败-是正确的还是不正确的,因为我对此不确定。此外,我很好奇是否还有其他适用于全向机器人的运动模型。

评论

没错,Thrun中讨论的模型不适用于全向驱动器。我认为,在本章结尾处的书目注释中有一个注释,指出了这一事实,据我所知

#1 楼

我同意概率机器人中的运动模型非常不适用于全向机器人。我总是将此处介绍的模型仅作为示例进行解释,这应该使您能够为自己的机器人设计定制模型。

首先,您需要为这种全向驱动器建模和求解正向运动学。我想您已经做到了,但是以防万一您可能想查看本文的III.b)。第二,有很多方法可以将运动学模型转换为概率模型。 。最简单的方法是仅采用运动学模型,并在姿势空间中添加一些“过程噪声”。可能更好的选择是假设车轮编码器有噪声,即在根据运动学模型进行转换之前对车轮编码器读数进行采样并添加噪声。几何,前一种选择是后者,但您的行驶里程可能会有所不同。

#2 楼

我认为您有两个问题;首先,在数学方面,模型与您的几何形状不匹配,因此,正如您确定的那样,关于错误累积的假设是错误的。我怀疑这是可以解决的。

第二个问题更困难,并且与全向机器人的混乱物理学有关(至少对于120度和Mecanum机器人而言)-它们通常涉及太多的非线性滑移,因此测距法根本无法起作用。我没有数学上的严谨来捍卫这个主张,但是如果您的输出误差成分不比理想模型输出成分明显少,您也可以根据随机数进行推算。 :-)

#3 楼

我找到了一篇论文(学习移动机器人的概率运动模型),该论文研究了Thrun引入的运动模型的约束并提出了更通用的模型。

摘要:


机器学习方法通​​常用于从机器人的传感器数据中学习地图的问题,但很少用于学习机器人的运动模型的问题。运动模型可能会受到机器人特性和地形属性的影响,是当前同时定位和制图(SLAM)算法的关键方面。在本文中,我们专注于通过结合当前SLAM算法应用EM方法为机器人生成正确的运动模型。与以前的校准方法相比,我们不仅估计运动的平均值,而且估计运动项之间的相互依赖性以及这些项的方差。这可以用来为SLAM算法中使用的粒子过滤器提供更集中的建议分配,这可以减少定位所需的资源,同时减少失去跟踪机器人位置的机会。我们通过恢复良好的运动模型(尽管初始化时效果不佳)来验证这种方法。进一步的实验验证了在相似情况下学习模型的普遍性。