线程评级:
  • 0票(s) - 0平均
  • 1
  • 2
  • 3.
  • 4
  • 5
机器人的最佳实践部署
你好,

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

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

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

还有其他建议吗?

致以最亲切的问候
格言
# 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)。这个数字被传递给后处理器,这个索引默认情况下被一些后处理器使用。这样,您将始终使用工具的最新定义和控制器的坐标系统。

您可以根据需要使用任意多的帧。一帧是最小的,除非你想导出你的目标相对于机器人的基础。像你提到的两帧可以让你调整你提到的偏移量。另一方面,看到机器人1-2毫米的误差是正常的,除非您密切注意如何校准工具和坐标系统。

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

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

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


首先,我用RoboDK在转盘平面上用10个点测量TCP。我在这篇文章中添加了要点。错误:


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

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


当我把机器人移到零点时,它看起来很准确:



附加文件
. txt tool_measured.txt(大小:711字节/下载:45)2022世界杯国家队名单
. txt turn_table_measured.txt(大小:430字节/下载:51)2022世界杯国家队名单
# 4
当我在RoboDK中执行加工项目时,机器人沿着曲线精确地移动:


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


我理解这个误差可能是机器人公差造成的。我在另一个工具方向上测量了TCP和参考框架。我的问题是如何最好地处理它?我做错了什么,或者你会简单地添加一个偏移帧?但这意味着当我使用稍微不同的工具方向时,我总是需要在用RoboDK创建程序后调整它们。例如,当我决定将转盘移动90度而不是0度时,这意味着我必须再次调整位置。这是我想避免的。
有没有一种不需要用RoboDK校准机器人的方法?

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



有没有更好的办法?

我真的很喜欢Jeremys RoboDK Pro模块,我从他们身上学到了很多。但我也想看到一个模块,其中的过程显示部署离线创建的程序到一个真正的机器人。我不是指如何将程序转移到控制器或类似的东西。但是一些最好的做法是什么时候做,之后工具参考帧标定后机器人的位置仍然偏离真实目标1-2毫米。

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

为了正确校准TCP,即使您已经有了一个很好的估计,您也应该尽可能地调整XYZ位置。然后,您应该看到更真实的机器人精度/可重复性误差。这些误差应该在0.010-1.000 mm之间(取决于机器人和设置)。
# 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.平面1300mm × 800mm:[-0.780005, -0.587233, 298.278491, 0.000000, 0.000000, 0.000000],误差:平均0.119,标准0.08,最大0.33
2.平面200mm × 150mm:[-0.911481, -0.407068, 298.067150, 0.000000, 0.000000, 0.000000],误差:平均0.148,标准0.148,最大0.546
3.Tip-to-tip:[-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 mm左右。那么,“通过平面校准XYZ”方法是否不太准确?两个平面都是铣削的,我使用了XY差异很大的整个平面,我使用了一个量块,所以平面偏差应该很小。三种方法的工具方向是相同的。

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


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


附加文件
. txt tools.txt(大小:5.3 KB /下载:52022世界杯国家队名单1)
# 8
引用: 我通过在a, B和C的尖端旋转TCP来检查所有3次校准的结果,没有一个是非常好的,我猜大约是+-1毫米。

你是否在使用教学吊坠进行旋转?

请尝试编写一个简单的程序,在尖端周围进行OAT旋转(尝试在记录点数时一直保持deadman开关,以避免在释放触发器以记录点数时出现“回冲”)。然后,您可以检查实际偏离提示运行此程序。

在我的实践中,我主要使用tip-to-tip方法。



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


你有一个l吗线性测量传感器?

你可以在链接下面找到更多信息:
//m.sinclairbody.com/doc/en/Robot-Automatic-Calibration-TwinTool.html
# 9
(02-01-2023, 08:55 am)谢尔盖写道: 你是否在使用教学吊坠进行旋转?

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


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

还没有,但我会借一个Keyence线性计来测试TwinTool。
最好通过电子邮件info@m.sinclairbody.com联系我们,帮助您测试TwinTool。

这可以使用具有平面接触点(建议25毫米)的Keyence传感器,并使用USB, Socket或以太网/IP连接到计算机。




浏览此主题的用户:
1客人(年代)