我可以使用哪种算法使用多个超声波传感器来构建探索区域的地图?


9

如今,超声波传感器非常便宜,这使其成为许多业余机器人应用的流行选择,我想在机器人周围使用一堆传感器(例如10个),并使用算法来构建区域的粗略地图(例如机器人会探索它。)在此阶段,我对处理移动物体不感兴趣,只是精确定位静止的物体,而我将使用GPS进行定位。我意识到诸如激光扫描仪之类的其他组件将产生更加准确的结果,但是这种设备在天文上也更加昂贵。

是否存在用于此目的的算法?

Answers:


5

无论使用哪种传感器,算法基本相同。

克里斯谈到的真正问题是,即使使用非常好的传感器,SLAM也很难。

我认为GPS,车轮里程计和IMU甚至是尝试用超声波猛击的必要条件。

如果您只是在寻找便宜的本地化产品,我建议您同时查看基于视觉/ kinect的猛击技术。网络摄像头和kinect都很便宜,视觉冲击已经走了很长一段路。

就传感器性能/成本而言,只要您在室内,kinect几乎就是圣杯。

这是机器人上的Kinect实例以及大量数学运算的示例:http : //www.youtube.com/watch?v= 9Y4RQVpp-BY


6

有关此主题的文献全都有。最普遍的想法是同时定位和映射(SLAM),即机器人必须在将自己定位在地图中的同时构建地图。根据您希望地图的精确度,您可以尝试创建一个占用网格图的简单问题,假设您知道机器人的位置。

通常,GPS太可怕了,因此仅将GPS用作主要位置源来生成占用栅格,就会生成漂亮的模糊地图。但是,可以将GPS与加速度,陀螺仪,指南针,照相机,车轮编码器和其他传感器集成在一起,以在世界范围内找到合适的位置。否则,您将需要研究一个简单的SLAM系统来解决您的问题。

一个很好的开源软件包g2o,用于所谓的GraphSLAM,允许您放置GPS等约束以及与墙的相对位置。它可能不完全合适,但是很笼统。


1
另一个想法是使用基本的回避行为来收集所有数据,以确保机器人不会撞到任何东西,然后使用后处理图形SLAM。这可以利用捕获的所有数据,而不是一个点的先前数据。您不妨查看以下内容:openslam.org/ssa2d.htmlrobots.stanford.edu/papers/thrun.graphslam.html
巴雷特·埃姆斯

2

要进行SLAM,您需要相对良好的位置估计。

使用激光扫描仪的机器人可以仅使用里程计,因为数据相对准确,并且可以使用扫描仪数据来帮助在后续时间步中进行定位。

超声波传感器非常模糊,通常方向模糊度超过20度,任何方向上的东西都会被检测到。

因此,它们在帮助本地化方面的帮助微不足道(非常结构化的环境除外)。

GPS / IMU组合可用于获得合理的定位。当然,这取决于机器人的规模,如果在室内,GPS可能不实用。

如果您能够仔细控制车轮打滑,则车轮里程计可在短期内显着改善定位(尽管首选绝对定位方法)。如果没有绝对参考(例如GPS),即使使用激光扫描仪,您也将需要能够解决“闭环”问题。

结构化环境可能具有较低的精度要求。例如,在迷宫般的环境中,墙壁具有规则的正方形网格距离,在这里可以很容易地检测到网格单元每个方向上的墙壁。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.