02-16-2022,晚上08:19
(这篇文章最后修改:02-16-2022,08:22 PM bybalazs.szabo58.)
当使用*transl()命令时,在我的程序中出现了一个奇怪的问题。
(我站有韩华HCR-5)
运行TCP下面的代码应该移动到接近位置,然后沿着Z轴向下,最后再次回到接近位置。
而target_dipapp在RoboDK中创建,并在脚本开始时使用
target_dipapp = RDK。(“Targetname”,ITEM_TYPE_TARGET)项,dip_pose是关于计算的target_dipapp在上面代码的第一行中。
这样,程序在RDK模拟中工作得很好,但生成G-Code时会给出错误的结果。
在G-Code中,它移动到接近位置(target_dipapp),然后前往dip_pose这已经计算出来了,但是最后的移动,也就是回到接近点的位置,要么完全缺失,要么只是产生随机的关节值。
尝试使用发那科或ABB等其他Posts,但没有帮助。
尝试使用关节运动代替LIN,但结果是一样的。
最后,我尝试创建dip_posetarget也在RDK中,并像导入另一个一样导入它,它工作得很好。
这是g代码的样子与* transl(),使用联合接着说最后一个:
#的方法
moveLinear (tcp,{“y”“x”:395.683:582.618,“z”:93.757,“处方”:-180.000,“办法”:-0.000,“rz”:90.000},30岁,1000年,{“精确”:假的,“半径”:2},函数(){});
#计算DIP_POSE
moveLinear (tcp,{“y”“x”:395.683:582.618,“z”:13.757,“处方”:-180.000,“办法”:-0.000,“rz”:90.000},30岁,1000年,{“精确”:假的,“半径”:2},函数(){});
#随机关节值
moveJoint([-32.901000, -133.135000, -98.837800, - 38.027300,90.000000, 147.099000], 20,20, {"precise ":false,"radius":2}, function() {});
这是g代码的样子与* transl(),使用林接着说最后一个:
#的方法
moveLinear (tcp,{“y”“x”:395.683:582.618,“z”:93.757,“处方”:-180.000,“办法”:-0.000,“rz”:90.000},30岁,1000年,{“精确”:假的,“半径”:2},函数(){});
#计算DIP_POSE
moveLinear (tcp,{“y”“x”:395.683:582.618,“z”:13.757,“处方”:-180.000,“办法”:-0.000,“rz”:90.000},30岁,1000年,{“精确”:假的,“半径”:2},函数(){});
#完全错过最后一个动作
这是g代码的样子没有*transl(),从RoboDK导入目标(这是它在其他情况下的样子):
#的方法
moveLinear (tcp,{“y”“x”:336.574:729.887,“z”:70.000,“处方”:-180.000,“办法”:-0.000,“rz”:90.000},500.0,1000年,{“精确”:假的,“半径”:2},函数(){});
#进口DIP_POSE
moveLinear (tcp,{“y”“x”:336.574:729.887,“z”:-70.000,“处方”:-180.000,“办法”:-0.000,“rz”:90.000},500.0,1000年,{“精确”:假的,“半径”:2},函数(){});
#的方法
moveLinear (tcp,{“y”“x”:336.574:729.887,“z”:70.000,“处方”:-180.000,“办法”:-0.000,“rz”:90.000},500.0,1000年,{“精确”:假的,“半径”:2},函数(){});
(我站有韩华HCR-5)
运行TCP下面的代码应该移动到接近位置,然后沿着Z轴向下,最后再次回到接近位置。
代码:
dip_pose = target_dipapp.Pose () * transl (0, 0, 80)
robot.MoveL (target_dipapp)
robot.MoveL (dip_pose)
robot.MoveL (target_dipapp)
target_dipapp = RDK。(“Targetname”,ITEM_TYPE_TARGET)项,dip_pose是关于计算的target_dipapp在上面代码的第一行中。
这样,程序在RDK模拟中工作得很好,但生成G-Code时会给出错误的结果。
在G-Code中,它移动到接近位置(target_dipapp),然后前往dip_pose这已经计算出来了,但是最后的移动,也就是回到接近点的位置,要么完全缺失,要么只是产生随机的关节值。
尝试使用发那科或ABB等其他Posts,但没有帮助。
尝试使用关节运动代替LIN,但结果是一样的。
最后,我尝试创建dip_posetarget也在RDK中,并像导入另一个一样导入它,它工作得很好。
这是g代码的样子与* transl(),使用联合接着说最后一个:
#的方法
moveLinear (tcp,{“y”“x”:395.683:582.618,“z”:93.757,“处方”:-180.000,“办法”:-0.000,“rz”:90.000},30岁,1000年,{“精确”:假的,“半径”:2},函数(){});
#计算DIP_POSE
moveLinear (tcp,{“y”“x”:395.683:582.618,“z”:13.757,“处方”:-180.000,“办法”:-0.000,“rz”:90.000},30岁,1000年,{“精确”:假的,“半径”:2},函数(){});
#随机关节值
moveJoint([-32.901000, -133.135000, -98.837800, - 38.027300,90.000000, 147.099000], 20,20, {"precise ":false,"radius":2}, function() {});
这是g代码的样子与* transl(),使用林接着说最后一个:
#的方法
moveLinear (tcp,{“y”“x”:395.683:582.618,“z”:93.757,“处方”:-180.000,“办法”:-0.000,“rz”:90.000},30岁,1000年,{“精确”:假的,“半径”:2},函数(){});
#计算DIP_POSE
moveLinear (tcp,{“y”“x”:395.683:582.618,“z”:13.757,“处方”:-180.000,“办法”:-0.000,“rz”:90.000},30岁,1000年,{“精确”:假的,“半径”:2},函数(){});
#完全错过最后一个动作
这是g代码的样子没有*transl(),从RoboDK导入目标(这是它在其他情况下的样子):
#的方法
moveLinear (tcp,{“y”“x”:336.574:729.887,“z”:70.000,“处方”:-180.000,“办法”:-0.000,“rz”:90.000},500.0,1000年,{“精确”:假的,“半径”:2},函数(){});
#进口DIP_POSE
moveLinear (tcp,{“y”“x”:336.574:729.887,“z”:-70.000,“处方”:-180.000,“办法”:-0.000,“rz”:90.000},500.0,1000年,{“精确”:假的,“半径”:2},函数(){});
#的方法
moveLinear (tcp,{“y”“x”:336.574:729.887,“z”:70.000,“处方”:-180.000,“办法”:-0.000,“rz”:90.000},500.0,1000年,{“精确”:假的,“半径”:2},函数(){});