职位:5 线程:3 加入时间:2019年12月
声誉:
0
12-03-2019,下午4:30
(这篇文章最后修改:06-27-2021,09:27上午由艾伯特)。
大家好!
我想知道Python和RoboDK之间通信的可能性。我在RoboDK做一个模拟,我想移动机械臂ur5e到一个所需的目标(使用Python)。我有一个python程序,它生成位置(x, y, z)并将其导出到txt文件。我想知道是否有一个选项可以在python中从这个坐标创建一个目标,并将其导入到RoboDK,或者只是将txt文件中的坐标导入到RoboDK中的目标。
提前谢谢你,
的问候。
帖子:1832 线程:2 加盟时间:2018年10月
声誉:
70
你好,
这段Python代码可以帮助你创建目标:
代码:
#要使用的参考系名称 frame = RDK。项目(“框架名称”)
#从参考系[0,0,0](XYZ)处创建新目标 目标= RDK。AddTarget('Target name ' + str(target_number), frame)
#偏移新的目标位置 Target.setPose(Offset(eye(), pos_X, pos_Y, pos_Z, rot_X, rot_Y, rot_Z))
记住,你还需要目标的方向。 简单地使用[X,Y,Z]是一个点,而不是一个目标。
希望能有所帮助。 杰里米
职位:5 线程:3 加入时间:2019年12月
声誉:
0
(12-03-2019, 07:31 pm)杰里米写道:你好,
这段Python代码可以帮助你创建目标:
代码:
#要使用的参考系名称 frame = RDK。项目(“框架名称”)
#从参考系[0,0,0](XYZ)处创建新目标 目标= RDK。AddTarget('Target name ' + str(target_number), frame)
#偏移新的目标位置 Target.setPose(Offset(eye(), pos_X, pos_Y, pos_Z, rot_X, rot_Y, rot_Z))
记住,你还需要目标的方向。 简单地使用[X,Y,Z]是一个点,而不是一个目标。
希望能有所帮助。 杰里米
嗨,杰里米,
它工作得很完美!谢谢你的快速回复。
问候, 凯文
职位:2 线程:0 加入时间:2021年5月
声誉:
0
06-02-2021, 01:09 PM
(本文最后修改:06-02-2021,01:13 PM by本德)。
(12-03-2019, 07:31 pm)杰里米写道:你好,
这段Python代码可以帮助你创建目标:
代码:
#要使用的参考系名称 frame = RDK。项目(“框架名称”)
#从参考系[0,0,0](XYZ)处创建新目标 目标= RDK。AddTarget('Target name ' + str(target_number), frame)
#偏移新的目标位置 Target.setPose(Offset(eye(), pos_X, pos_Y, pos_Z, rot_X, rot_Y, rot_Z))
记住,你还需要目标的方向。 简单地使用[X,Y,Z]是一个点,而不是一个目标。
希望能有所帮助。 杰里米
你好,
代码几乎可以工作,但在我的情况下,roboDK目标中的rot_X到rot_Z的值与python打印的值不同。有人知道为什么会这样吗?
最好的问候, 本德
帖子:66 线程:0 加入时间:2021年1月
声誉:
5
你好
尝试从下拉菜单中改变方向角度顺序,它应该是X, Y, Z,现在您正在查看:Z,Y',X'”
职位:2 线程:0 加入时间:2021年5月
声誉:
0
(06-02-2021, 01:25 pm)Vineet写道:你好
尝试从下拉菜单中改变方向角度顺序,它应该是X, Y, Z,现在您正在查看:Z,Y',X'”
你好,
在RoboDK中显示正确的值,这可能会有所帮助。但是,导入目标的目标方向为 不就像最初的方向(来自kuka .dat文件),当我只是使用这个函数:
代码:
Target.setPose(Offset(eye(), x, y, z, a, b, c))
首先,我必须转换XYZABC与KUKA_2_Pose(XYZABC)函数:
代码:
目标= RDK。AddTarget('Target ' + str(i), frame) xyz = [x, y, z, a, b, c] 姿势= KUKA_2_Pose(XYZABC) Target.setPose(构成)
现在它工作得很完美。谢谢你的帮助。
|