线程评级:
最佳实践部署到机器人
# 1
你好,

将我离线创建的程序部署到真正的机器人上的最佳实践是什么?

我指的不是将程序转移到控制器的过程,而是调整所有的帧和位置,使脱机模型类似于真实的物理模型。

1.你用机器人控制器内部工具测量帧和tcp并将其转移到RoboDK项目吗?
2.在线连接时,您是否使用robodk测量工具测量帧和tcp ?
3.你每台用两帧吗?在在线测量帧后,我没有得到非常准确的结果,所以我总是添加第二个偏移帧,偏移范围有时在1到2毫米之间,这取决于站点。你如何处理这个问题?

还有其他建议吗?

致以最亲切的问候
格言
最佳实践在很大程度上取决于您的项目、应用程序和控制器。使用RoboDK校准工具,您可以定义工具(tcp)和参考帧。这或多或少和你可以用机器人控制器来定义你的工具和坐标系的操作是一样的。

如果您关心准确性,RoboDK中的定义工具允许您输入超过标准的4点,您可以获得更准确的TCP定义。您还可以更好地了解系统可能出现的错误。

如果你用RoboDK定义了你的工具和坐标系(使用实用工具下的定义工具/参考系选项,使用TwinTool等产品来自我校准TCP或TwinTrack来定义你的坐标系,使用自定义探测,使用3D模型),默认的程序导出默认情况下应该有你的工具和参考系的正确定义。

如果你使用机器人控制器定义你的工具和坐标系,你可以简单地在RoboDK (XYZABC)中复制它们的定义,它们将以与你在机器人控制器中定义它们相同的方式导出。此外,对于某些控制器,通常使用索引工具和框架(例如用于KUKA的BASE_DATA[id] / TOOL_DATA[id],用于Fanuc的UFRAME/UTOOL等)。如果你更喜欢使用机器人控制器中定义的引用和工具,你可以简单地在RoboDK中重命名你的工具和引用,以一个数字结尾(例如工具2)。这个数字被传递给后处理器,默认情况下,一些后处理器使用这个索引。这样你就可以使用你的工具的最新定义和你的控制器的坐标系统。

你可以使用你需要的任意多的帧。一帧是最小值,除非你想要导出关于机器人基础的目标。有2帧,就像你提到的,允许你调整偏移。另一方面,在机器人上看到1-2毫米的误差是正常的,除非你密切注意如何校准你的工具和坐标系。

在正确校准工具后,定义您的坐标系是非常重要的。如果您能分享更多关于您所遵循的流程以看到1-2毫米误差的信息,我们可以更好地帮助您排除故障以提高精度。例如,我建议使用RoboDK定义你的工具,使用10个点,看看你得到了什么错误统计数据。
# 3
(09-12-2022, 08:06 am)艾伯特写道:如果您能分享更多关于您所遵循的流程以看到1-2毫米误差的信息,我们可以更好地帮助您排除故障以提高精度。

亲爱的艾伯特,
非常感谢您详细的回答。
我终于用RoboDK开始了一个项目,所以我可以告诉你我的麻烦是什么。

我的第一个问题是机械加工项目。这个机器人是库卡KR10 R1100-2。
我有这个转台:


首先我用RoboDK在转盘平面上测量了10个点的TCP。我把这些要点加到了这篇文章里。错误:


似乎错误太小了,不可能是真的,但我测量了两次TCP,得到了完全相同的TCP,尽管第一次的错误更大。

之后我用RoboDK和工具测量了转台。我也加了分。错误:


当我将机器人移动到零点时,它似乎非常准确:



附加文件
. txt tool_measured.txt(大小:711字节/下载:9)
. txt turn_table_measured.txt(大小:430字节/下载:14)
# 4
当我在RoboDK中执行加工项目时,机器人沿着曲线精确移动:


但在真正的机器人上,它看起来是这样的,它偏离了大约1.5毫米(我在Z的工具峰值上添加了4mm的偏移,以避免刮伤零件表面):


我知道这个误差可能是由机器人的公差引起的。我在另一个工具方向测量TCP和参考系。我的问题是如何最好地处理它?是我做错了什么,还是你只是添加了一个偏移坐标系?但这意味着当我使用稍微不同的工具方向时,我总是必须在用RoboDK创建程序后调整程序。例如,当我决定将转台移动90度而不是0度时,这意味着我必须再次调整位置。这是我想避免的事情。
有没有办法绕过这个问题,而不用RoboDK校准机器人?

我的第二个问题是选择和位置,我想我找到了一个很好的解决方案。我在youtube上观看了Jeremys模块,但我仍然不确定如何最好地将模拟与真实的机器人连接起来。
例如在模块03-07组织盒。在真正的机器人应用中,精度很重要(与ATI刀具更换器例如),与仿真机器人相比,每个盒子在真实机器人上的位置都略有不同,即使有精确校准的tcp和参考系。你会如何处理这样的事情?
我现在的解决方案是像杰里米那样为每个盒子创建一个参考系。在这个框架中,我有接近和收回目标。但我也在里面放了一个“零”选择目标。然后我将真正的机器人移动到拾取目标并手动调整位置。在我找到位置后,我用机器人的当前位置覆盖了RoboDK中盒子的参考系位置。由于盒子三维模型在参照系内,模型也移动到空间中的真实位置。我把参考系作为目标系。



有没有更好的办法?

我真的很喜欢Jeremys RoboDK Pro模块,我从他们身上学到了很多。但我也想看到一个模块,其中的流程显示部署离线创建的程序到一个真正的机器人。我并不是指如何将程序转移到控制器或类似的东西。但有一些最佳实践是关于什么时候该做什么的工具而且参考帧校准机器人的位置仍然与真实目标相差1-2毫米。

我还想提一下:RoboDK和它背后的整个团队都很棒!我非常感谢您为创建一个伟大的产品、文档、教程和回答所有问题所做的所有工作和时间。
# 5
让我评论一下TCP校准和您获得的小错误:
如果您只通过移动现有的TCP来获取10个点,而不调整XYZ位置以匹配指针,那么您看到这样小的错误(小于0.001 mm)是正常的。发生这种情况是因为您在数值上使用了一个完美的TCP,并且没有更正任何点。因此,您将从数值上获得与以前相同的TCP。

为了正确地校准TCP,即使您已经有了一个很好的估计,您也应该尽可能地调整XYZ位置。然后你应该看到更真实的机器人精度/重复性错误。这些误差应该在0.010-1.000毫米(取决于机器人和设置)。
# 6
让我分享一下从CAM到机器人转换程序的经验。这些不是规则,而是可以让解决问题变得更容易的小技巧。

0.将坐标传输到CAM比在现实世界中移动东西容易得多。我明白这是显而易见的,但有时也会出现这样的问题。尽量不要移动/旋转机器人的虚拟基础坐标。

1.机器人归零:你可以通过轴上的标记来做到这一点,但一些机器人附带一个文档,显示绝对编码器的值,当机器人在工厂校准站调谐时将其设置为零。如果机器人没有物理损坏,也没有在出厂后重建,最好的重置将是将关节的零点绑定到这些值上。

在这种情况下,机器人的数学运动学模型将与真实模型更接近。

2.当你在机器人上训练一个工具时,你需要在某个区域的精度-在你想要工作的平面上调整这个区域的工具。通过这种方式,您可以为多个工作区设置多个工具。在安装工具时,笛卡尔坐标通常是准确的,工具OAT角度值会出现问题。因此,这种技术有助于获得良好的定位精度,前提是在训练区域内不太改变工具的方向。此外,像TwinTool这样的解决方案允许您微调工具。

3.如果你需要在CAD / CAM中正确定位某个物体,那么如果它是正确归零的,并且训练了工具,那么你可以通过机器人本身测量这个物体的位置。你只需要测量任意平面上的3个点

4.每次校准外部轴都是一个挑战,特别是如果它是2轴或3轴定位器,您需要充分合作。要使用机器人控制器来设置这些功能,机器人校准的准确性和TCP的准确性是非常重要的。定位器的旋转轴坐标可以在控制器中找到并传输到RoboDK。

5.如果你有激光追踪器,就使用它。在校准任务中,跟踪器非常有用,可以让您更快更准确地做许多事情。
# 7
谢谢你们的回答!

我尝试用30-35点在两个不同的平面上校准TCP,用新的KR10 R1100-2机器人用尖端到尖端的方法校准11点,用KUKAs EMD检查归零:
1.平面1300毫米x 800毫米:[-0.780005,- 0.587233,298.278491,0.000000,0.000000,0.000000],误差:平均0.119,标准0.08,最大0.33
2.平面200毫米x 150毫米:[-0.911481,-0.407068,298.067150,0.000000,0.000000,0.000000],误差:平均值0.148,标准0.148,最大0.546
3.尖端到尖端:[-1.351774,-0.330700,299.312497,0.000000,0.000000,0.000000],误差:平均值0.353,标准0.176,最大0.628

所以1和2有点相似,但3离得很远。有趣的是,使用方法3,Z值应该是正确的。工具长度很难测量,但应该在299.4毫米左右。那么“用平面标定XYZ”的方法是否不那么准确呢?两个平面都是铣的,我用的是XY相差很大的整个平面,我用的是量块,所以平面偏差应该很小。三种方法的工具方向相同。

我检查了所有3个校准的结果,通过旋转TCP在a, B和C的尖端,没有一个是非常好的,我猜在+-1毫米左右。


TwinTool会产生更可重复/准确的结果吗?有可能拿到一个星期的试用执照吗?


附加文件
. txt tools.txt(大小:5.3 KB /下载:8)
# 8
引用: 我检查了所有3个校准的结果,通过旋转TCP在a, B和C的尖端,没有一个是非常好的,我猜在+-1毫米左右。

你在用吊坠做旋转吗?

请试着写一个简单的程序,围绕尖端的OAT旋转(试着在你记录分数的时候一直保持deadman开关,以避免在你释放记录分数的触发器时出现“反冲”)。然后你可以运行这个程序来检查与提示的实际偏差。

在我的实践中,我主要使用点对点的方法。



引用: TwinTool会产生更可重复/准确的结果吗?有可能拿到一个星期的试用执照吗?


你有l吗线性计量传感器?

你可以在链接下面找到更多信息:
//www.w5838.com/doc/en/Robot-Automatic-Calibration-TwinTool.html
# 9
(02-01-2023, 08:55 am)谢尔盖写道: 你在用吊坠做旋转吗?

是的,我去了。但是我也检查了笛卡尔位置,它没有改变。


引用: 你有线性测量传感器吗?

还没有,但我会借一个Keyence线性测量仪来测试TwinTool。
如果您通过电子邮件(info@www.w5838.com)与我们联系,我们会帮助您测试TwinTool。

这可以使用带有平面接触点(推荐25毫米)的Keyence传感器,并通过USB、插座或以太网/IP连接到计算机。




浏览此线程的用户:
1客人(年代)