线程评级:
  • 0 (s) - 0平均投票
  • 1
  • 2
  • 3
  • 4
  • 5
改变postpocessors通过python API不同机器人项目
# 1
嗨RoboDK团队,

我想输出多个机器人项目为单个机器人运动通过一个python API。

例如,一个特定的块机器人运动应通过KR C4出口而其他块应该出口到库卡机器人运动。数控程序。


解释:

/ /定义参数:进口,机器人,robot_base、路径等。

RDK.setRunMode (3)
post_processor = " KUKA_KRC4 "

机器人。post_processor setParam(“后处理程序”)
RDK。post_processor ProgramStart (Prog1,路径,机器人)



/ /为Prog1运动


RDK.Finish() / /完成动作Prog1和出口KR C4程序
RDK.setRunMode (3)
post_processor = " KUKA_CNC "
机器人。post_processor setParam(“后处理程序”)
RDK。post_processor ProgramStart (Prog2,路径,机器人)


/ /为Prog2运动


RDK.Finish () / /完成运动Prog1和出口KUKA_CNC程序


/ /进一步的行动
# 2
这应该是可能的。示例代码共享的样子你朝着正确的方向前进。

你有什么问题?
# 3
嗨,阿尔伯特,

谢谢你的回应。我试着类似我的代码示例代码和实现,程序出口prog1而忽略了一切后第一个RDK.Finish()命令。

我的意思是,动作prog1 .src只是出口,我不该得到Kuka_CNC。

我相信它应该工作如果我创建多个函数,导出特定的机器人程序。像Def prog1 (movements_for_prog1) Def prog2 (movements_for_prog1)。

但我想要它类似于上面所述的我。
# 4
你能分享你的脚本和一个演示站,这将帮助我们帮助你。

杰里米
找到有用的信息通过访问我们的关于RoboDK及其特性在线文档看我们的教程Youtube频道


# 5
附件是一个演示的例子。

车站有一个示例程序(python)后处理程序之间的开关。

我已经添加了一些注释,代码会抛出一个错误当RDK.Finish(),如果我评论RDK.Finish()函数的代码,模拟工作顺利然而所需的输出即3分离机器人程序就不会产生而不是单个机器人程序(KRL)。

请让我知道!

注:请在python程序主要定义输出路径

最好的,
Pradnil年代Kamble


附加文件
.rdk Example.rdk(尺寸:1.18 MB /下载:1雷电竞app下载安卓06)
# 6
你可以修复脚本通过这些修改的问题:

  1. 你应该叫RDK。RDK后连接。完成(解决方案,因为某些原因API不是恢复/自动重新连接)
  2. 职位文件夹的路径程序开始应该是一个有效的路径,这样你就不会看到一个弹出保存程序。
  3. 后置处理程序的名称应该精确匹配职位的后置处理程序文件的文件夹,这是区分大小写的。
我附上的修改脚本使它工作。

代码:
#使用库卡数控
post_processor = " KUKA_CNC "
机器人。post_processor setParam(“后处理程序”)
RDK.setRunMode (RUNMODE_MAKE_ROBOTPROG)
RDK。ProgramStart(“六角”r“C: /用户/用户名/下载/”,post_雷电竞app下载安卓processor,机器人)

#新目标上活跃的基地
base_target = = RDK公园。AddTarget (“Base_target”,基地)
base_target.setAsCartesianTarget ()
base_target.setVisible(假)
xyzabc = [0, 0, 0, 0.0, 0.0, 0.0)
base_target.setPose (KUKA_2_Pose (xyzabc))
robot.MoveL (base_target)

#做一个六边形
poseref = base_target.Pose ()

因为我在范围(7):
ang =我* 2 *π/ 6 #角:0,60岁,120年,…
posei = poseref * rotz (ang) * transl (100, 0, 0) * rotz (ang)
robot.MoveL (posei)

robot.MoveJ (base_target)


#库卡数控程序结束
RDK.Finish ()


RDK.Connect重要()#如果你想继续使用这个API


用的方式呈现4 #回家
post_processor = " KUKA_KRC4 "
机器人。post_processor setParam(“后处理程序”)
RDK.setRunMode (RUNMODE_MAKE_ROBOTPROG)
RDK。ProgramStart(‘回家’,r“C: /用户/用户名/下载/”,post_雷电竞app下载安卓processor,机器人)

robot.MoveJ (robot_base)
robot.MoveL (…)

RDK.Finish ()
# 7
谢谢阿尔伯特和杰里米!
现在解决了。




用户浏览这个线程:
1客人(年代)

Baidu
map