02-16-2022,08:19 PM
(该帖子是最后修改的:02-16-2022,08:22 pm bybalazs.szabo58)
使用 *trans()命令时,我的程序中会出现一个奇怪的问题。
(我的车站包含Hanwha HCR-5)
在TCP下方运行代码应移至进近位置,然后沿Z轴向下,最后又回到进近位置。
尽管target_dipapp是在Robodk中创建的,并在脚本的开头中导入
target_dipapp = rdk.item('targetName',item_type_target),,,,dip_pose根据target_dipapp在上面代码的第一行中。
这样,程序在RDK模拟中完美工作,但是生成G代码给出了错误的结果。
在G代码中,它移至接近位置(target_dipapp)然后dip_pose已经计算出来,但是最后一步是完全缺少接近位置,要么只是导致随机关节值。
尝试使用其他帖子,例如Fanuc或abb,但这无济于事。
尝试使用关节运动代替LIN,但结果是相同的。
终于我尝试创建dip_poseRDK的目标也像另一个一样,并且效果很好。
这就是G代码的外观和*Transl(),使用联合的在最后一个:
#方法
movelinear('tcp',{“ x”:395.683,“ y”:582.618,“ z”:93.757,“ rx”:-180.000,“ ry”:-0.000,“ rz”:90.000},30,1000,1000,1000,1000,,1000,,1000,,1000.000{“精确”:false,“ radius”:2},function(){});
#calculated Dip_pose
movelinear('tcp',{“ x”:395.683,“ y”:582.618,“ z”:13.757,“ rx”:-180.000,“ ry”:-0.000,“ rz”:90.000},30,1000,1000,1000,1000,,1000,,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000.000{“精确”:false,“ radius”:2},function(){});
#random关节值
movejoint([ - [-32.901000,-133.135000,-98.837800,-38.027300,90.000000,147.099000],20,20,{pecisise ofisisedal {“:false”:false,“ radius” radius“ radius”:2}:2},function(}){} {})
这就是G代码的外观和*Transl(),使用林在最后一个:
#方法
movelinear('tcp',{“ x”:395.683,“ y”:582.618,“ z”:93.757,“ rx”:-180.000,“ ry”:-0.000,“ rz”:90.000},30,1000,1000,1000,1000,,1000,,1000,,1000.000{“精确”:false,“ radius”:2},function(){});
#calculated Dip_pose
movelinear('tcp',{“ x”:395.683,“ y”:582.618,“ z”:13.757,“ rx”:-180.000,“ ry”:-0.000,“ rz”:90.000},30,1000,1000,1000,1000,,1000,,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000.000{“精确”:false,“ radius”:2},function(){});
#完全放弃最后一步
这就是G代码的外观没有*Transl(),从Robodk导入目标(在其他情况下这是应该的样子):
#方法
movelinear('tcp',{“ x”:336.574,“ y”:729.887,“ z”:70.000,“ rx”:-180.000,“ ry”:-0.000,“ rz”:90.000}{“精确”:false,“ radius”:2},function(){});
#IMPORTED DIP_POSE
movelinear('tcp',{“ x”:336.574,“ y”:729.887,“ z”:-70.000,“ rx”:-180.000,“ ry”:-0.000,“ rz”:90.000},{“精确”:false,“ radius”:2},function(){});
#方法
movelinear('tcp',{“ x”:336.574,“ y”:729.887,“ z”:70.000,“ rx”:-180.000,“ ry”:-0.000,“ rz”:90.000}{“精确”:false,“ radius”:2},function(){});
(我的车站包含Hanwha HCR-5)
在TCP下方运行代码应移至进近位置,然后沿Z轴向下,最后又回到进近位置。
代码:
dip_pose = target_dipapp.pose()*转换(0,0,80)
robot.movel(target_dipapp)
Robot.Movel(dip_pose)
robot.movel(target_dipapp)
target_dipapp = rdk.item('targetName',item_type_target),,,,dip_pose根据target_dipapp在上面代码的第一行中。
这样,程序在RDK模拟中完美工作,但是生成G代码给出了错误的结果。
在G代码中,它移至接近位置(target_dipapp)然后dip_pose已经计算出来,但是最后一步是完全缺少接近位置,要么只是导致随机关节值。
尝试使用其他帖子,例如Fanuc或abb,但这无济于事。
尝试使用关节运动代替LIN,但结果是相同的。
终于我尝试创建dip_poseRDK的目标也像另一个一样,并且效果很好。
这就是G代码的外观和*Transl(),使用联合的在最后一个:
#方法
movelinear('tcp',{“ x”:395.683,“ y”:582.618,“ z”:93.757,“ rx”:-180.000,“ ry”:-0.000,“ rz”:90.000},30,1000,1000,1000,1000,,1000,,1000,,1000.000{“精确”:false,“ radius”:2},function(){});
#calculated Dip_pose
movelinear('tcp',{“ x”:395.683,“ y”:582.618,“ z”:13.757,“ rx”:-180.000,“ ry”:-0.000,“ rz”:90.000},30,1000,1000,1000,1000,,1000,,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000.000{“精确”:false,“ radius”:2},function(){});
#random关节值
movejoint([ - [-32.901000,-133.135000,-98.837800,-38.027300,90.000000,147.099000],20,20,{pecisise ofisisedal {“:false”:false,“ radius” radius“ radius”:2}:2},function(}){} {})
这就是G代码的外观和*Transl(),使用林在最后一个:
#方法
movelinear('tcp',{“ x”:395.683,“ y”:582.618,“ z”:93.757,“ rx”:-180.000,“ ry”:-0.000,“ rz”:90.000},30,1000,1000,1000,1000,,1000,,1000,,1000.000{“精确”:false,“ radius”:2},function(){});
#calculated Dip_pose
movelinear('tcp',{“ x”:395.683,“ y”:582.618,“ z”:13.757,“ rx”:-180.000,“ ry”:-0.000,“ rz”:90.000},30,1000,1000,1000,1000,,1000,,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000,1000.000{“精确”:false,“ radius”:2},function(){});
#完全放弃最后一步
这就是G代码的外观没有*Transl(),从Robodk导入目标(在其他情况下这是应该的样子):
#方法
movelinear('tcp',{“ x”:336.574,“ y”:729.887,“ z”:70.000,“ rx”:-180.000,“ ry”:-0.000,“ rz”:90.000}{“精确”:false,“ radius”:2},function(){});
#IMPORTED DIP_POSE
movelinear('tcp',{“ x”:336.574,“ y”:729.887,“ z”:-70.000,“ rx”:-180.000,“ ry”:-0.000,“ rz”:90.000},{“精确”:false,“ radius”:2},function(){});
#方法
movelinear('tcp',{“ x”:336.574,“ y”:729.887,“ z”:70.000,“ rx”:-180.000,“ ry”:-0.000,“ rz”:90.000}{“精确”:false,“ radius”:2},function(){});