线程评级:
  • 0票(s) - 0平均
  • 1
  • 2
  • 3.
  • 4
  • 5
库卡KRC2移动指令
# 1
你好所有的,

我在KUKA KRC2上运行的MoveL指令有问题。该指令在模拟中运行良好。但当我在机器人控制器上运行时,机器人会被附在图像上的指令卡住并漂移,完全对指令没有反应。如果我使用MoveJ指令,机器人就能正常工作并完成动作。我错过了什么?我的代码向机器人发送笛卡尔坐标。我尝试了两种不同的代码,但没有一种对机器人有效:

代码:
#初始化RoboDK API
RDK = Robolink()

#提示用户选择一个机器人(如果只有一个机器人可用,它会自动选择机器人)
机器人= RDK。ItemUserPick('选择一个机器人',ITEM_TYPE_ROBOT)

RDK.setRunMode (RUNMODE_RUN_ROBOT)

#检索机器人参考系
reference = robot.Parent()

#使用机器人基础框架作为活动参考
robot.setPoseFrame(参考)

获取机器人的当前方向(相对于活动参照系和工具框架)
pose_ref = robot.Pose() #home position

robot.MoveL (KUKA_2_Pose ([0 613, 0762, -180, -180]))

以上只是一个测试,因为我想达到的目标如下:

代码:
#初始化RoboDK API
RDK = Robolink()

#提示用户选择一个机器人(如果只有一个机器人可用,它会自动选择机器人)
机器人= RDK。ItemUserPick('选择一个机器人',ITEM_TYPE_ROBOT)

RDK.setRunMode (RUNMODE_RUN_ROBOT)

#检索机器人参考系
reference = robot.Parent()

#使用机器人基础框架作为活动参考
robot.setPoseFrame(参考)

获取机器人的当前方向(相对于活动参照系和工具框架)
pose_ref = robot.Pose() #home position

Pose_i = pose_ref

#我有更多不相关的代码

对于向量I:

pose_n1 = pose_i.Offset (i.x i.y i.z) * rotz (i.rz *π/ 180)* roty (i.ry *π/ 180)* rotx (i.rx *π/ 180)#库卡
robot.MoveL (pose_n1)




谢谢你的帮助。


附加文件 缩略图(s)

# 2
您应该设置参考框架和RoboDK中的工具,以确保您在机器人上设置它们的方式与在RoboDK中设置它们的方式相同。

例子:

代码:
robot.Connect ()
robot.setPoseFrame (robot.PoseFrame ())
robot.setPoseTool (robot.PoseTool ())
robot.MoveL (KUKA_2_Pose ([x, y, z, a, b, c)))
# 3
嗨,阿尔伯特,

你的建议没用。但问题是别的,即使使用移动线性在RoboDK控制面板,机器人不服从正确的路径。与MoveJoint工作良好。请看下面的视频(抱歉质量问题):

https://drive.google.com/file/d/1Kt0wGaW...sp=sharing


我的机械手是KR100-2 HA(附图)。这个机械手在库中不可用,所以我使用KR100-2 P.也许这就是问题所在?


附加文件 缩略图(s)

# 4
是的,你应该选择正确的机器人。否则它就能解释你所看到的问题。

您可以在RoboDK菜单中自己建模机器人:实用程序-创建机制或机器人。
或者至少,您可以在parameters菜单中更改运动学参数。

如果您有专业许可证,我们可以为您添加机器人,只需将机器人的3D文件(如果可能的话,可以使用STEP文件)发送到info@m.sinclairbody.com向我们发送请求。
# 5
目前,我的笔记本电脑上没有安装许可证,但是我的公司和你们有一个经销商协议。

我根据机器人的参数创造了一个新的机构。附件图片与数据表中的机器人数据和RoboDK参数窗口上的参数。

此外,我将笛卡尔慢跑框架设置为ABB/KUKA/Nachi。截图。

尽管如此,机器人在移动线性命令下表现得很奇怪。首先,我得到当前机器人的位置,然后在不改变旋转旋钮(X, Y, Z)上的任何东西的情况下,我点击movejoint。机器人不像我期望的那样移动。但如果我点击“线性移动”,同样不改变旋转旋钮上的任何东西,机器人就会开始移动到一个未知位置,直到达到软件限制。

在机器人挂件上,它被卡在KUKAROBODK35SYNC的第49行。SRC,附图。

我不知道发生了什么。感谢如果你可以帮助,因为我正在工作的项目,我们正在讨论另一个帖子。

谢谢!


附加文件 缩略图(s)

# 6
如果您没有将工具和参考系从RoboDK更新到您的机器人,则使用“Move Linear”选项移动机器人时会发生这种奇怪的行为。

您可以自己创建一个程序来设置工具,并使用“在机器人上运行”选项来运行它,以更新机器人上的工具。您也可以修改RoboDKSync。SRC文件来设置您在RoboDK中使用的相同工具。

由于这个误解,移动线性选项将在RoboDK的未来版本中被删除。
# 7
嗨,艾伯特,请不要删除移动线性选项。我在RobotStudio中用ABB的控制器进行了测试,效果很好。我不需要运行程序来更新上面的工具。

然而,当我尝试使用Kuka机器人时,问题仍然存在。我确实创建了一个简单的Python程序来更新机器人工具和参考系。看到我的项目附件。即使在运行它之后,机器人也不能正确响应移动线性命令(连接面板上的按钮),并且同样的行为发生在我的其他python项目上。我做了一个视频,下面的链接,演示了移动关节和移动线性命令的效果。RoboDk连接到KRC控制器:

另一件我仍然不能理解的事情是,即使我不把机器人送到任何位置,但我按下Move Linear,它就会去到一个未知的位置。你可以在第二个视频中看到。这种情况在ABB根本不会发生。

https://drive.google.com/file/d/168Jb7wr...sp=sharing

https://drive.google.com/file/d/10u8ufoI...sp=sharing


我不是很熟悉KRL,可以做什么修改RoboDKSync.SRC吗?


附加文件
.rdk KR6_2_PRJ.rdk(大小:127.23 KB /下载:32022世界杯国家队名单72)
# 8
我认为RoboDK在将每个轴角位置转换为直角坐标系(与库卡机器人)时存在bug,或者我遗漏了一些东西。

运行程序来更新机器人工具并不能解决我遇到的问题。

这是发现的运行MoveJMoveL

MoveJ:

命令J值(deg RoboDK) |最终J值(deg RoboDK) |最终J值(deg Kuka Pendant)
j - 1 ------------------- 0.05 ------------------------|------------- 0.05 -------------------|------------- 0.048——
J2 ------------------(- 92.24 )---------------------|--------------(- 92.24 )-------------|------------(- 92.24 )---------
J3 ------------------- 78.20 -----------------------|------------- 78.20 -----------------|------------- 78.20——
阁下 --------------------(- 0.07 )--------------------|------------(- 0.07 )-----------------|-------------(- 0.07 )---------
J5 ------------------- 103.82 ---------------------|------------- 103.82 ----------------|------------- 103.81——
卫星 ------------------- 0.07 ------------------------|------------- 0.07 -------------------|------------- 0.072——

吩咐马车。值(mm RoboDK) |最终车值(mm RoboDK) |最终车值(mm Kuka Pendant)
X ------------------- 892.336 --------------------|------------- 892.335 -----------------|------------- 819.55 -----------
Y --------------------(- 0.616 )-------------------|-------------(- 0.616 )-----------------|-------------- 0.54 -------------
Z ------------------- 1368.040 -------------------|------------- 1368.040 ---------------|------------- 1495.41 -----------
一个 -------------------(- 179.959 )-----------------|-------------(- 179.959 )--------------|-------------(- 179.959)
B ------------------- 0.222 -----------------------|------------- 0.222 --------------------|------------ 0.222 ---------------
C ------------------- 179.929 --------------------|------------- 179.929 -----------------|------------- 179.929 --------------




MoveL:

命令J值(deg RoboDK) |最终J值(deg RoboDK) |最终J值(deg Kuka Pendant)
j - 1 ------------------- 0.08 ------------------------|------------- 0.08 -------------------|------------- 0.078——
J2 ------------------(- 99.14 )---------------------|--------------(- 97.75 )-------------|------------(- 97.74 )---------
J3 ------------------- 86.09 -----------------------|------------- 97.81 -----------------|------------- 97.81——
阁下 --------------------(- 0.07 )--------------------|------------(- 0.07 )-----------------|-------------(- 0.06 )---------
J5 ------------------- 102.84 ---------------------|------------- 89.71 ----------------|------------- 89.71——
卫星 ------------------- 0.10 ------------------------|------------- 0.12 -------------------|------------- 0.115——

吩咐马车。值(mm RoboDK) |最终车值(mm RoboDK) |最终车值(mm Kuka Pendant)
X ------------------- 812.96 --------------------|------------- 838.735 -----------------|------------- 813.04 -----------
Y --------------------(- 0.961 )-------------------|-------------(- 1.00 )-----------------|-------------(- 0.962 )-------------
Z ------------------- 1348.648 -------------------|------------- 1198.0 ---------------|------------- 1348.36 -----------
一个 -------------------(- 179.953 )-----------------|-------------(- 179.96 )--------------|-------------(- 179.959)
B ------------------- 0.220 -----------------------|------------- 0.219 --------------------|------------ 0.21 ---------------
C ------------------- 179.932 --------------------|------------- 179.93 -----------------|------------- 179.93 --------------



使用MoveJ命令,RoboDk和Kuka吊坠的最终关节角度读数匹配,但笛卡尔位置读数不匹配。

而对于MoveL命令,笛卡尔命令和最终(库卡吊坠)的读数匹配,但不匹配RoboDK的读数。

假设运行程序来更新工具确实会改变上述行为,还能做什么?




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