配备激光和视觉系统的机器人征服新的工业领域
传统的自动导引车(AGV)系统在许多工业应用中使用,其特点是以嵌入式磁铁或导线、画线或磁带或其他电气或机械路径定义手段的形式进行物理路径引导。这些车辆通常没有 "位置 "的概念,也不需要沿规定路径的距离,可用于触发速度变化、停止、装载/卸载等,以实现预期的应用。激光雷达通常用于检测障碍物的存在,并使AGV在离其路径上的物体的规定距离内减速或停止。一些激光雷达产品具有监测AGV的速度和方向的能力,它们可以动态地调整AGV前面或后面的保护区域的大小和形状。
AGV的改进
渐进式的改进使下一代AGV离开了由电线或胶带建立的物理路径,而使用内部数字地图和对其在该地图上的位置的了解,遵循更灵活的预编程虚拟路径。一种常见的方法是使用精心定位和测量的反射器和车载激光雷达的集合,通常具有360°的视野,根据与多个反射器的距离的三角测量来计算AGV的位置。
基于反射器的导航由于物体阻挡其放置而具有局限性
激光雷达是一种距离测量方法,它使用脉冲激光形式的光和一个高度敏感的探测器,使用飞行时间或相移测量来确定非常短的距离值。当与在一个平面或其他模式中扫描激光的机制相结合时,用户可以在连续的角度和/或方向上得到一系列的距离读数。从这个二维或三维范围的数据中,用户可以从径向坐标转换为笛卡尔坐标,并由此创建一个场景的二维或三维轮廓图。
激光雷达具有独特的资格,可以以非常高的速度进行扫描,因为它具有光的速度,而且它以激光的形式携带自己的定向照明。此外,与立体视觉或三角测量等结构光技术相比,激光雷达可以读取非常长的距离,而不需要在摄像机或发射器/探测器对之间有一个大的基线,这对较小的车辆来说可能很重要。
一些激光雷达具有专门检测激光扫描中的反射器的额外能力,为定位提供了一个低计算量的三角测量系统。然而,使用反射器和三角测量有一个复杂的问题,即在AGV行驶过程中的任何一点都需要看到三个或更多的反射器,当操作空间被货架、机器和其他设备分割时,这有时是一个困难的要求。
自主移动机器人
随着全世界对工业4.0倡议的关注,以及制造商希望降低成本,提高灵活性和生产力,AGV技术的继任者已经以自主移动机器人(AMR)的形式出现了。这些AMR系统对于AGV系统来说,就像过去几年的协作机器人对于工业机器人一样。AMR系统没有电线、物理引导和额外的基础设施,如反射器,它不仅在传统的制造边界内,而且在它们之间运输材料和用品。穿过隧道和走廊,在建筑物之间和内部行驶,乘坐电梯进入多个楼层,AMR在躲避叉车时就像巧妙地谈判狭窄的通道和人类步行交通一样自如。
自主移动机器人绕过障碍物
真实世界自主导航
为了实现这一壮举,AMR 必须能够在其深远的边界内进行定位,并规划穿过拥挤区域的路径,这些区域在 AMR 每次通过时可能看起来都非常不同。在这种环境中,尤其是在人员中和人员之间工作时,障碍物检测和避让至关重要。幸运的是,赋予 AMR 自身定位能力的相同传感器能够检测和报告 AMR 必须越过的障碍物的发生和位置。这些传感器(通常是激光雷达)最近在功率和成本效益方面发生的变化使 AMR 变得可行,并迎来了一波进入者进入快速增长的产品领域的浪潮。竞争和不断缩小的电子产品使得移动应用中使用的典型激光雷达价格从 10 多美元起,000 和十年前的篮球大小,今天的比较模型成本低于 2,000 美元,和棒球一样小。更高的扫描速率和更高的角度分辨率为现代定位算法提供了更多的数据馈送饥饿算法。
同时定位和映射
使用激光雷达的 AMR 如何在没有反射器或标记的情况下,通过隧道和大厅,在多个建筑物和多个楼层中定位自己的大小空间?AMR 使用一种称为同步定位和映射 (SLAM) 的技术,该技术在 20 世纪 80 年代中期和 90 年代的学术实验室中率先推出,解决了创建未知环境地图同时在地图中保持位置的问题。SLAM 算法仍然是一个活跃的研究领域,它们的各种版本被研究人员和商业用户广泛使用,例如开源机器人操作系统 (ROS) 库、卡内基梅隆大学的机器人导航工具包 (CARMEN) 和 Mobile机器人编程工具包 (MRPT),仅举几例。
SLAM 可以使用许多传感器作为输入,激光雷达是目前最常见和最容易获得的。它通常使用多种不同类型的传感器输入,并根据各种传感器类型的能力和限制定制算法。
每个传感器都有一个与之相关联的算法,用于根据该输入确定运动或位置。例如,里程计或车轮转数与移动机器人底座的数学运动学一起使用,以计算基于车轮旋转的运动。声纳或超声波传感器可以根据与当地基础设施的距离来估计位置。激光雷达范围扫描可用于多种方式来估计移动机器人的运动或位置。
作为一个迭代推理问题,SLAM 从一个已知条件开始,即 AMR 的位置和姿态,对未来条件的建模预测,即基于当前速度和航向的位置和姿态估计,以及来自多个来源的传感器数据误差和噪声量的估计。SLAM 使用包括卡尔曼或粒子滤波器在内的统计技术来近似解决机器人的位置和迭代姿势。
该图表说明了扩展卡尔曼滤波器的结果。显示的是来自 Aethon 的 TUG 自主移动机器人沿着制造工厂的过道行驶的结果。过道呈90度角对齐。扫描到扫描算法(绿色)虽然相对平滑,但由于累积误差可能会漂移(如图的后半部分所示)。扫描到地图算法(蓝色)给出了均值可能跳跃的噪声数据。这些变化是由于材料移动导致地图与当前环境不匹配造成的。红线是通过使用扩展卡尔曼滤波器结合所有定位技术计算出的 TUG 位置的估计值。跳跃是由使用绝对定位算法引起的。由 Aethon 提供。
结合扩展卡尔曼滤波器
在 SLAM 的典型实现中,扩展卡尔曼滤波器用于通过概率密度函数估计系统状态。该估计包括 AMR 的位置和方向、其线速度和旋转速度以及线加速度。过滤器以预测和校正的两步方式进行。在第一步中,当前时间的估计状态是根据先前的状态和仅运动的物理定律预测的。在第二步中,来自传感器读数的观察结果用于对某些估计状态进行修正。这是来自外部传感器(包括激光雷达)的读数提供输入的地方。观察结果包括一个不确定值,过滤器试图维持一组状态,由均值和协方差矩阵表示,符合运动定律和提供的观察结果。使用激光雷达距离数据进行校正步骤的两种常见 SLAM 算法是扫描到扫描匹配和扫描到地图匹配。
自主移动机器人 (AMR) 导航的集成方法
扫描到扫描匹配
在扫描到扫描匹配中,顺序激光雷达距离数据用于估计扫描之间 AMR 的位置移动,从而产生更新和累积的 AMR 位置和姿态。该算法独立于现有地图,因此当地图不存在时,例如在初始地图创建期间,或者当当前环境由于环境变化与存储的地图不紧密匹配时,它会受到严重依赖。作为一种增量算法,扫描到扫描的匹配会受到长期漂移的影响,并且无法随时间纠正不准确的更新。
扫描到地图匹配
在扫描到地图匹配中,激光雷达扫描范围数据用于通过将读数直接与存储的地图匹配来估计 AMR 的位置。这可以在纯粹逐点的基础上完成,或者采用更稳健但计算成本更高的方法将读数与地图中遇到的第一个对象径向匹配。作为一种绝对算法,扫描到地图匹配通常不会像扫描到扫描匹配的情况那样受到漂移。但是,它会受到环境中重复引起的其他错误的影响,其中地图从不同位置或方向看起来非常相似。此外,当当前环境与存储的地图不紧密匹配时,不正确的匹配会导致错误的位置不连续变化。而且,一旦它离位很远,
克服局限——综合方法
所有 SLAM 算法最终都基于环境的传感器读数。当没有物体处于适合传感器读取的位置时,如仓库中的空架子和处于该精确高度的 2D 激光雷达所见,引入 3D 激光雷达或基于 3D 立体深度相机的传感可以大大增加本地化性能。然而,这些传感器的成本可能更高,而且计算要求也高得多。当出现如此多的数据时,减少计算要求的一种方法是从扫描或图像中提取特征,然后由 SLAM 算法处理这些特征,因此 SLAM 算法不会处理图像中的每个单独像素。
这种策略需要一个强大的算法来从扫描到扫描一致地提取特征,尽管在运动通过场景时视角、光照或反射率不同。这是一项不小的任务。此外,需要出门或在室内和室外之间行驶的应用可能会对传感器及其处理明/暗、直射阳光等变化的能力提出额外要求。
AMR 目前使用的大多数 SLAM 实现都是基于传感器成本和计算要求以及移动车辆中增加计算的功率要求的能力折衷。随着越来越多的功能被集成到高端机器视觉相机中以支持它们所使用的各种应用——检查、测量和缺陷检测——也许基于 SLAM 的算法的需求也可以直接集成到机器视觉相机中未来。例如,这种集成可以提供特征提取和测距,从而减轻 AMR 的处理要求。
虽然这些 SLAM 算法本身都不能完全令人满意,而且实际上可以提供相互矛盾的定位解决方案,但每种算法在不同情况下都有优势。通过里程计、扫描到扫描匹配、扫描到地图匹配和其他技术(如特征提取和匹配)的组合,将这些方法中的每一种方法相互结合使用可以克服缺点,提供准确和在现实世界的设置和应用程序中具有可靠的性能。