转载,侵删
1、ABB机器人具有独立轴功能
2、独立轴Independent Axis可以理解为以下两方面:
某个轴可以无限旋转,例如6轴无限旋转代替打磨头;或者某个外轴无限旋转,例如转台加持一个待喷漆的工件等,可以参考文后的【独立轴设置及使用】
通常外轴与本体联动,外轴坐标记录于机器人Robtarget的外轴数据中,此时运动指令,外轴与本体联动。若希望外轴执行其它任务的同时执行一项机器人任务,从而节省周期时间,则可以使用该功能。简言之,就是机器人走自己的,外轴走自己的,机器人不需要先等外轴走完再运行
本文主要介绍上述第二种功能,即运行外轴的同时机器人运行,即外轴与机器人本体非同步联动。
使用独立轴功能,机器人要有Independent Axes [610-1]选项。并且在控制面板-配置的Motion中的Arm下,将Independent Joint设为On,同时修改独立轴上下限,如下图。完整后重启。
例如希望机器人在下图的外轴开始旋转后,对外轴上工件加工(外轴不停),或者机器人启动外轴旋转后去做其他任务,无需等待外轴转到位,如何实现?
独立轴相关指令如下:
注意,使用独立轴时,外轴数据必须要有,不能为9E9,但实际在独立轴运动时,外轴的位置直接由相关指令控制,不由robtarget里的外轴数据控制!
CONST robtarget p100:=[[1635.71,0,2005],[0.5,0,0.866025,0],[0,0,0,0],[100,9E+09,9E+09,9E+09,9E+09,9E+09]];
!以上的外轴数据100一定要有,不能是9E9
PROC test1()
ActUnit M7DM1;
!激活外轴
IndAMove M7DM1,1\ToAbsNum:=10,2;
!切换外轴为独立轴模式
!让7轴转到10度,速度为2°/s,此时不用等外轴转到位,机器人可以继续运行
MoveL p100,v100,fine,tool0\WObj:=wobj0;
!外轴在独立轴模式,但p100中的外轴值不能是9E+09,否则会报错,这里的100没有意义
MoveL offs(p100,100,0,0),v50,fine,tool0\WObj:=wobj0;
WaitUntil IndInpos(M7DM1,1)=TRUE;
!等7轴到位置(之前设定的10度)
WaitTime 0.2;
IndAMove M7DM1,1\ToAbsNum:=0,10;
!让7轴转回0度,速度10°/s
WaitUntil IndInpos(M7DM1,1)=TRUE;
WaitTime 0.2;
ENDPROC
独立轴设置及使用
1)现场比如有打磨工艺,可以省去打磨电机,直接由6轴驱动。因为理论上6轴可以无限旋转。或者变位机某一轴无限循环。
2)要无限旋转,需要有选项610-1Independent Axis
3)举例6轴无限旋转
4)控制面板-配置,选择motion,arm下找到6轴,修改上下限和independentjoint,然后重启
5)插入如下程序
了解更多请点击:ABB机器人