避免机器人碰撞的5种简单方法(&A最后的手段)

与库卡机器人的生产线

您如何阻止机器人在工作空间中与对象碰撞?这是避免机器人碰撞而不为自己艰难的生活的方法。

最近的问题在Robodk论坛上强调了机器人的共同问题。用户MicroNexx问如何避免碰撞。他们询问Robodk是否会自动生成无碰撞路径,或者用户是否必须进行手动调整。

这是一个比最初出现的更复杂的问题。Robodk肯定包括有助于您避免发生冲突的功能,包括一些自动路由。但是,机器人技术中的“避免碰撞”是一个深刻而复杂的话题。整个研究项目致力于轨迹计划和避免碰撞。高级人工智能算法甚至已经开发了

好消息是,对于我们大多数人来说,事情不必那么复杂。有一些更简单的方法可以阻止机器人与对象碰撞。

避免机器人碰撞的5种简单方法

通常最好开始简单。

当试图解决机器人编程中的任何问题时,这是一个很好的大脑规则。即使机器人能够具有高级功能,但简单的工程解决方案通常是最好的。

这是5种简单的方法来阻止机器人与对象碰撞。

1.从一开始就正确计划工作空间

当工作空间没有得到充分计划时,发生冲突。您应该通过计划空间来启动任何机器人集成,例如通过在纸上勾勒出来。

计划机器人将在哪个区域中移动,哪些区域将超出其范围。在开始将它们编程到机器人之前,请尝试“表现出”机器人的动作序列 - 这是一种非常有效的方法,可以在出现之前减少潜在问题,而且很快就可以做到。

2.物理去除潜在的障碍物

避免碰撞的最佳方法是确保机器人没有任何碰撞。这意味着要删除任何可能阻碍机器人从工作区的路径的东西。

确保工作空间的不同区域之间有明确的路径。如果机器人将从一个位置拾取对象并在另一个位置组装,请从这两个位置之间的工作区中删除所有内容。

这似乎很明显,但是当您使用离线编程时,很容易忘记这样做。例如,您可能会在机器人工作区中看到一个支柱,然后说“没关系。我只会在机器人计划中避免它。”但是,由于您正在在不存在支柱的模拟环境中进行编程,因此您会忘记它并编程机器人以直接移动它。

3.将现实世界与模拟匹配

现实世界和Robodk中的模拟应尽可能紧密匹配。您可以通过两种方式实现这一目标:

  1. 在模拟中制定物理工作空间的准确模型 -这涉及测量每个对象的精确位置并在软件中对其进行建模。它可能非常耗时,您越依赖模拟的准确性,错误的空间就越少。
  2. 从模拟中不在现实世界中删除对象 -这涉及通过删除对象来简化实际工作空间。

实际上,最好的选择是这些结合。您从物理工作区中删除所有不必要的对象,然后将所有必要的对象添加到仿真中。

4.调整编程手动针对目标

在开始使用复杂的避免算法之前,请尝试自己调整机器人的动作。对于大多数应用程序,手动在Robodk中移动目标是一种快速,有效且健壮的解决方案。

例如,如果机器人在关节移动命令中与对象碰撞,只需添加额外的几条路点即可避免对象。或者 - 甚至更好 - 首先询问对象是否真的需要在工作区中。

一种可以大大减少碰撞的做法是决定每个运动是“旅行”的动作还是“操作”运动。仅在没有障碍物的自由空间中进行旅行。然后,停止距操作(又称“接近距离”)的距离很小的距离,然后在进行操作移动之前小心地进入任务。

5.使用加工向导的新功能

亚博ios下载机器人加工是您可能需要自动轨迹计划的一项任务。Robodk使使用加工路径轻松使用它建造的加工向导

在大多数情况下,如果您遵循上述建议,您将不会发生任何碰撞。但是,可以在加工操作期间自动避免碰撞,我们在最新版本的Robodk中添加了碰撞。在论坛上阅读阿尔伯特的回应这说明了如何使用此新功能。

此功能通过将机器人自动绕工具的Z轴旋转来避免碰撞。结果,它不会避免所有碰撞,但是它确实改善了加工向导的鲁棒性。

最后的度假胜地:使用高级运动计划者

如果您已经完成了上述所有步骤,并且决定仍然需要避免自动碰撞,那么该打破“大型枪支”了。这意味着使用第三方运动计划算法生成机器人轨迹。

那里有大量的轨迹计划者自动检测并避免碰撞。但是,大多数是非常早期的研究计划,因此并不是很可靠。同样,大多数是为仅在2级移动的移动机器人设计的。

但是,有一些适合工业机器人操纵器的轨迹规划师。要警告,要使用它们,您将必须进行一些认真的编程。

  1. Moveit!-Moveit!是用于机器人操作的最发达的图形运动计划者之一。它使用OMPL框架并提供了一个简单的图形接口。它被整合到ROS中。如果您已经熟悉ROS,那么这可能是一个不错的选择。如果没有,您可能会有一个学习曲线。
  2. 开放运动计划库((OMPL) - 无需MoveIt即可单独使用OMPL!它提供C ++中的库,还具有Python绑定。有合理的文档,但是由于库具有很多功能,因此它仍然涉及学习曲线。
  3. 气泡- 这是一个小型图书馆,Robodk的首席执行官Albert Nubiola推荐。它是使用概率路线图算法(PRM)的操纵器的独立运动计划器。它用C ++编写,文档很少。但是,如果您是编程向导,并且要面对挑战,那么它可能会为使用MoveIt提供更少的腹胀解决方案。

通常,最好使用一种简单的方法之一避免碰撞。但是,如果您需要使用高级算法,则避免碰撞是一个引人入胜的话题。

哪些碰撞为您的机器人应用带来了问题?在下面的评论中告诉我们或加入讨论LinkedIn,,,,推特,,,,Facebook,Instagram或INRobodk论坛

关于亚历克斯·欧文·希尔

亚历克斯·欧文·希尔(Alex Owen-Hill)是一位自由作家和公众演讲者,他在博客上介绍了许多主题,包括科学,createclarifyarticulate.com上的演讲技巧,讲故事,当然还有机器人技术。他与CERN合作,从马德里大学获得了马德里大学的远程幼儿园博士学位。作为恢复学术的学者,他通过博客关于工业机器人技术来保持坚定的脚步。

查看Alex Owen-Hill的所有帖子

发表评论

您的电子邮件地址不会被公开。必需的地方已做标记*