线程评级:
  • 0票(s) - 0平均
  • 1
  • 2
  • 3.
  • 4
  • 5
无法添加调用程序. movel()与目标项
# 1
要复制,加载一个新的工作站,导入库卡机器人。然后创建一个新的python程序。

在程序的主体中,我使用了这个例子:

//www.sinclairbody.com/doc/en/PythonAPI/robo...AddProgram

在修正了缺失的'program_name'和'robot'变量之后,我然后运行程序。我马上得到这个错误:

Python脚本返回1失败
回溯(最近一次调用):
文件"/var/folders/z7/ 12j9__qs7v93kxmjhrs0x2dsw4_55 /T/Prog21.py",第39行
prog.MoveL (ti)
文件“/Users/michael.staub/RoboDK/RoboDK.app/Contents/Python/robolink.py”,MoveL中的第3978行
不支持向给定关节或姿势的程序中添加运动指令。使用目标项目代替,例如,添加一个目标与RDK.AddTarget(…)和设置姿势或关节。”)
例外:不支持在给定关节或姿势的程序中添加运动指令。使用目标项目代替,例如,添加一个目标与RDK.AddTarget(…),并设置姿势或关节。


看起来MoveL方法正在检查目标类型是否为“Item”,这是应该的。这似乎是python API中的一个bug。你能给我一个可以成功生成移动机器人的程序的python脚本的例子吗?

这是我的完整的python程序:

从robolink导入# RoboDK API
从robodk导入* #机器人工具箱
RDK = Robolink ()

RDK.Render(假)
学监= RDK.AddProgram(“AutoProgram”)


机器人= RDK。项目(ITEM_TYPE_ROBOT”)

点数= [[1,2,3],[4,5,6]]

#检索当前机器人位置:
pose_ref = robot.Pose ()

#遍历多个点
for i in range(len(POINTS)):
#添加一个新目标
ti = RDK。AddTarget('自动目标%i' % (i+1))

#使用参考姿势并更新XYZ位置
[我]pose_ref.setPos(点)
ti.setPose (pose_ref)

# force使用目标作为笛卡尔目标(默认)
ti.setAsCartesianTarget ()

#在新程序中添加目标为线性/联合移动
prog.MoveL (ti)
你应该使用
代码:
prog.addMoveL (ti)
我猜这是示例中的遗留代码。
# 3
谢谢,工作。但是从文档来看,addMoveL已经被弃用了://www.sinclairbody.com/doc/en/PythonAPI/robo...m.addMoveL
# 4
使用最新版本的RoboDK应该不会有这些问题。我建议你将RoboDK升级到最新版本。

的手动安装版本也可能与RoboDK API for Python.如果是,你可以在控制台模式下手动更新:

PIP安装robodk -upgrade
# 5
我使用的是最新版本(3.5.5)
# 6
嗨robotguy,

注意我们不断地更新软件(我所说的不断是指一周几次)。
考虑到我们不想总是用小更新来打扰人们,我们不会每次都更改版本号。
如果你进入“Help -> Check for updates…”,你会看到最后一次小更新的日期。(见下图)



我们知道这种情况并不完美,但我们认为这比不得不告诉有问题的客户等待一个月才能看到下一个版本要好。换句话说,这是我们发现的尽可能被动的方法,但不需要不断要求每个人更新RDK。

祝你有愉快的一天。
杰里米




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