奇点问题是机器人焊接的一大难题。这里有5个技巧来避免它们,并确保每次焊接都很好。
想象一下,你正在使用一个机器人用弧焊工具焊接一条线。工件较大,焊缝线几乎与机器人整个可及工作空间一样长。将开始点和结束点编程到机器人中。然后,你指示它在这两点之间焊接一条直线。
你按下机器人程序的开始键。机器人移动到起始位置。焊接工具着火了。机器人开始沿着这条线焊接。
起初,一切似乎都很顺利。机器人沿着工件边缘走一条完美的直线。
但是,在队伍中间,一切都出了问题。机器人突然减速,几乎停止。其中一个接头旋转180度,而焊接工具的尖端保持静止。
它下面聚集了一大片焊缝。然后,机器人又开始移动,继续走这条线。
工件被毁了。它留下了一个难看的斑点焊接在中间的线。
发生了什么事?一切都进行得很顺利!
罪魁祸首是……一个奇点。
奇点对机器人程序员来说是件麻烦事。下面是在机器人焊接中避免这些问题的5个技巧。
技巧1:学习机器人奇点的基本知识
奇点的定义——用数学术语来说——是一个方程“趋于无穷”。当我们处理物理系统(机器人就是)时,这意味着数学试图描述一些在现实世界中不可能发生的事情。
奇点可以出现在很多系统中:黑洞中心理论上具有无限大的密度;理论上,水滴的尖端是无限薄的;从理论上讲,我们的焊接机器人需要以无限快的速度移动当它到达焊缝中间的危险点时。
在机器人编程中,奇点通常以以下两种方式之一出现:
- 无限速度和加速度-为了完成移动,一个或多个机器人关节必须以无限速度移动。这就是我刚才描述的例子中的情况。当机器人的一个关节达到极限时,它必须旋转180度才能继续朝同一方向移动。为了保持焊接工具以恒定的速度移动,接头中的电机必须无限快地旋转。
- 无限刚度-机器人移动到一个位置,其中一个执行器必须变得无限僵硬,以保持机器人的位置。由于这是不可能的,机器人会被卡住,直到它被移动到一个更好的位置。这通常出现在使用线性执行器的机器人中,例如Stewart平台,在到达奇点时平台实际上会崩溃(在这个视频中).
技巧2:确定奇点的类型
大多数焊接任务由6R机器人(有6个转动关节)完成。有三种类型的奇点可以影响这样的机器人。确定你正在处理的奇点类型是有帮助的。
每种类型由其影响的关节来定义:
- 手腕奇点-机器人手腕关节(关节4和关节6)的Z轴对齐。这使得其中一个关节试图无限快地旋转180度。
- 肩膀奇点-机器人肩关节(关节1)的Z轴与机器人的基座或关节4对齐。因此,受影响的关节试图以无限快的180度旋转。
- 肘部奇点-机器人触及工作区边缘太远,导致其手腕中心与肘关节(关节2和关节3)在同一平面上。这导致机器人卡住。
这是ETS的精彩视频展示了这三个奇点的作用。
仔细考虑焊接线在机器人工作空间中的位置。避免焊接工具穿过会导致机器人进入这些奇点的点。
技巧3:使用正确的编程解决方案
在机器人代码中不容易发现奇点。这是很正常的,直到你把你的程序下载到机器人,它表现得很奇怪。然而,到那时,您已经将机器人从生产中取出来重新编程了。
但是,事情并不一定是这样的。首先,通过使用正确的编程解决方案,您可以非常容易地检测到奇点。
RoboDK具有自动奇点检测功能。它不会让你编程机器人通过一个奇点。相反,它会给你一个有用的警告,告诉你迁移可能会有问题。
例如,我将焊接示例场景编程到RoboDK中,它告诉我:“移动是不可能的。关节5叉乘0度。这是一个奇点,不允许线性移动。”
问题解决了!
技巧4:只限制必须限制的内容
有时,似乎没有办法在不碰到奇点的情况下制造焊接线。您尝试将整个焊接工作移动到机器人工作空间的另一部分,但由于某种原因,仍然存在奇点问题。
在这种情况下,问题往往是你对机器人限制太多了。例如,焊接工具的方向可以设置为沿着整个焊缝完全相同。然后,软件努力避免奇点,同时保持这种严格的方向。
某些类型的焊接(如电弧焊)允许在工具的方向上有一点余地。使用RoboDK,您可以指示程序在必要时给予求解器一些旋转工具的自由。看到文档中的优化参数部分有关如何做到这一点的说明。
提示5:如果需要,请寻求帮助
关于奇点问题最令人沮丧的事情之一是它们很难解决,特别是如果你最近才开始使用机器人来完成焊接任务。
当你遇到问题时,最好的办法就是寻求帮助。
你应该在哪里寻求帮助?在RoboDK论坛!
我们的论坛是您解决焊接奇点问题的最佳场所。只要在普通论坛上提出一个问题,我们就可以帮助你。