线程评级:
python Update() func没有给出周期时间
# 1
你好,
我试图获得最新版本的程序周期。
不幸的是,它不工作,它总是回复相同的值,尽管我改变了setSpeed()的值

下面是我的python代码片段

代码:
prog2 = RDK.AddProgram('AutoProgram3')
prog2.setSpeed(40.), #线性毫米/秒
prog2.MoveL (t5)
prog2.MoveL(回家)
check_collisions = False
update_result = prog2.Update(check_collisions)
打印(update_result)
打印("计时prog2: ",update_result[1], " sec.")

改变速度没有效果

如果我改变,就能成功
prog2.setSpeed()和robot.setSpeed()

program . setspeed()和robot.setSPeed()之间的区别是什么?
尝试使用MoveJ而不是moveel和设置联合速度返回完全不准确的结果。

看一下,在用户界面中生成的程序,原因可能是因为setSpeedJoint()命令没有插入到
程序不明原因。

但当从图形用户界面执行时,添加速度指令,正确的时间显示在状态栏中
# 3
嗨Sancelot,

你应该确保你有一个设置速度指令强加所有的关节和线性速度和加速度。这可以确保在程序中正确地设置速度和加速度。您可以在程序中使用set speed指令设置/更改速度:
//www.w5838.com/doc/en/Robot-Programs.html#InsSpeed

RoboDK默认使用关节速度/加速度约束进行关节运动,并使用笛卡尔速度/加速度约束进行线性运动。

为了在RoboDK中准确计算周期时间,需要考虑一些参数。需要注意的是,真正的加速度将高度依赖于机器人的有效载荷和机器人的位置,因此,在RoboDK中获得的周期时间将是一个估计值。更多信息请点击这里:
//www.w5838.com/doc/en/General.html#CycleTime

另一个细节,RoboDK假设机器人确实点对点运动(在每个点停止)。所以它有一个均匀加速度,直到它达到最大速度,然后,均匀减速。如果你使用舍入指令,这个行为可以在RoboDK的真实机器人上改变:
//www.w5838.com/doc/en/Robot-Programs.html#InsSmooth
这条指令允许机器人在绕过路径边缘时保持更恒定的速度,因此在真实机器人上的时间会更快。另一方面,RoboDK假设机器人将保持恒定的速度来计算周期时间(真实的机器人可能会比这更慢)。

我建议您看一下附带的脚本,以查看一个很好的示例。它在模拟中直接修改速度作为机器人参数,因此它假设您在程序中没有设置速度的指令(否则它会覆盖您通过API为机器人设置的速度)。

艾伯特


附加文件
. zip CycleTimeStudy.zip(大小:868字节/下载:373)




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