1、ABB机器人基本指令机器人基本指令1精选课件2022-11-26运动指令运动指令MoveJMoveJ Conc,ToPoint,Speed V|T,Zone ZInpos,Tool WObj;Conc:协作运动开关协作运动开关。(switch)ToPoint:目标点,默认为目标点,默认为*。(robotarget)Speed:运行速度数据。运行速度数据。(speeddata)V:特殊运行速度特殊运行速度 mm/s。(num)T:运行时间控制运行时间控制 s。(num)2精选课件2022-11-26运动指令运动指令MoveJZone:运行转角数据。运行转角数据。(zonedata)Z:特殊运行转
2、角特殊运行转角 mm。(num)Inpos:运行停止点数据。运行停止点数据。(stoppointdata)Tool:工具中心点工具中心点(TCP)。(tooldata)Wobj:工件座标系。工件座标系。(wobjdata)MoveJ Conc,ToPoint,Speed V|T,Zone ZInpos,Tool WObj;3精选课件2022-11-26运动指令运动指令MoveJ应用:应用:机器人以最快捷的方式运动至目标点,机器机器人以最快捷的方式运动至目标点,机器人运动状态不完全可控,但运动路径保持唯人运动状态不完全可控,但运动路径保持唯一,常用于机器人在空间大范围移动。一,常用于机器人在空间
3、大范围移动。实例:实例:MoveJ p1,v2000,fine,grip1;MoveJConc,p1,v2000,fine,grip1;MoveJ p1,v2000V:=2200,z40Z:=45,grip1;MoveJ p1,v2000,z40,grip1WObj:=wobjTable;MoveJ p1,v2000,fineInpos:=inpos50,grip1;4精选课件2022-11-26运动指令运动指令MoveJ5精选课件2022-11-26运动指令运动指令MoveLMoveL Conc,ToPoint,Speed V|T,Zone ZInpos,Tool WObjCorr;Conc
4、:协作运动开关协作运动开关。(switch)ToPoint:目标点,默认为目标点,默认为*。(robotarget)Speed:运行速度数据。运行速度数据。(speeddata)V:特殊运行速度特殊运行速度 mm/s。(num)T:运行时间控制运行时间控制 s。(num)6精选课件2022-11-26运动指令运动指令MoveLZone:运行转角数据。运行转角数据。(zonedata)Z:特殊运行转角特殊运行转角 mm。(num)Inpos:运行停止点数据。运行停止点数据。(stoppointdata)Tool:工具中心点工具中心点(TCP)。(tooldata)Wobj:工件座标系。工件座标系
5、。(wobjdata)Corr:修正目标点开关。修正目标点开关。(switch)MoveL Conc,ToPoint,Speed V|T,Zone ZInpos,Tool WObjCorr;7精选课件2022-11-26运动指令运动指令MoveL应用:应用:机器人以线性移动方式运动至目标点,当前机器人以线性移动方式运动至目标点,当前点与目标点两点决定一条直线,机器人运动点与目标点两点决定一条直线,机器人运动状态可控,运动路径保持唯一,可能出现死状态可控,运动路径保持唯一,可能出现死点,常用于机器人在工作状态移动。点,常用于机器人在工作状态移动。实例:实例:MoveL p1,v2000,fine
6、,grip1;MoveLConc,p1,v2000,fine,grip1;MoveL p1,v2000V:=2200,z40Z:=45,grip1;MoveL p1,v2000,z40,grip1WObj:=wobjTable;MoveL p1,v2000,fineInpos:=inpos50,grip1;MoveL p1,v2000,fine,grip1Corr;8精选课件2022-11-26运动指令运动指令MoveL9精选课件2022-11-26运动指令运动指令MoveCMoveC Conc,CirPoint,ToPoint,Speed V|T,Zone ZInpos,Tool WObjC
7、orr;Conc:协作运动开关协作运动开关。(switch)CirPoint:中间点,默认为中间点,默认为*。(robotarget)ToPoint:目标点,默认为目标点,默认为*。(robotarget)Speed:运行速度数据。运行速度数据。(speeddata)V:特殊运行速度特殊运行速度 mm/s。(num)T:运行时间控制运行时间控制 s。(num)10精选课件2022-11-26运动指令运动指令MoveCZone:运行转角数据。运行转角数据。(zonedata)Z:特殊运行转角特殊运行转角 mm。(num)Inpos:运行停止点数据。运行停止点数据。(stoppointdata)T
8、ool:工具中心点工具中心点(TCP)。(tooldata)Wobj:工件座标系。工件座标系。(wobjdata)Corr:修正目标点开关。修正目标点开关。(switch)MoveC Conc,CirPoint,ToPoint,Speed V|T,Zone ZInpos,Tool WObjCorr;11精选课件2022-11-26运动指令运动指令MoveC应用:应用:机器人通过中间点以圆弧移动方式运动至目机器人通过中间点以圆弧移动方式运动至目标点,当前点、中间点与目标点三点决定一标点,当前点、中间点与目标点三点决定一段圆弧,机器人运动状态可控,运动路径保段圆弧,机器人运动状态可控,运动路径保持
9、唯一,常用于机器人在工作状态移动。持唯一,常用于机器人在工作状态移动。12精选课件2022-11-26运动指令运动指令MoveC限制:限制:l 不可能通过一个不可能通过一个 MoveC 指令完成一个圆。指令完成一个圆。MoveL p1,v500,fine,tool1;MoveC p2,p3,v500,z20,tool1;MoveC p4,p1,v500,fine,tool1;实例:实例:MoveC p1,p2,v2000,fine,grip1;MoveCConc,p1,p2,v200V:=500,z1Z:=5,grip1;MoveC p1,p2,v2000,z40,grip1WObj:=wob
10、jTable;MoveC p1,p2,v2000,fineInpos:=inpos50,grip1;MoveC p1,p2,v2000,fine,grip1Corr;13精选课件2022-11-26运动控制指令运动控制指令AccSetAccSet Acc,Ramp;Acc:机器人加速度百分率机器人加速度百分率 。(num)Ramp:机器人加速度坡度机器人加速度坡度 。(num)应用:应用:当机器人运行速度改变时,对所产生的相应当机器人运行速度改变时,对所产生的相应加速度进行限制,使机器人高速运行时更平加速度进行限制,使机器人高速运行时更平缓,但会延长循环时间,系统默认值为缓,但会延长循环时间,
11、系统默认值为 AccSet 100,100;。14精选课件2022-11-26运动控制指令运动控制指令AccSet实例:实例:限制:限制:l 机器人加速度百分率值最小为机器人加速度百分率值最小为 20,小于,小于 20以以 20 计,机器人加速度坡度值最小为计,机器人加速度坡度值最小为 10,小于小于 10 以以 10 计计。l 机器人冷启动,新程序载入与程序重置后,机器人冷启动,新程序载入与程序重置后,系统自动设置为默认值。系统自动设置为默认值。15精选课件2022-11-26运动控制指令运动控制指令VelSetVelSet VelSet OverrideOverride,MaxMax;Ov
12、erride:Override:机器人运行速率机器人运行速率%。(num)num)Max:Max:最大运行速度最大运行速度 mm/smm/s。(num)num)应用:应用:对机器人运行速度进行限制,机器人运动指对机器人运行速度进行限制,机器人运动指令中均带有运行速度,在执行运动速度控制令中均带有运行速度,在执行运动速度控制指令指令 VelSet VelSet 后,实际运行速度为运动指令后,实际运行速度为运动指令规定的运行速度乘以机器人运行速率规定的运行速度乘以机器人运行速率,并且并且不超过机器人最大运行速度,系统默认值为不超过机器人最大运行速度,系统默认值为 VelSet 100,5000;V
13、elSet 100,5000;。16精选课件2022-11-26运动控制指令运动控制指令VelSetl500 mm/s500 mm/sl800 mm/s800 mm/sl10 s10 sl800 mm/s800 mm/sl1000 mm/s1000 mm/sl1000 mm/s1000 mm/sl6.25 s6.25 s实例:实例:VelSet 500,800;MoveL p1,v1000,z10,tool1;MoveL p2,v1000V:=2000,z10,tool1;MoveL p3,v1000T:=5,z10,tool1;VelSet 800,1000;MoveL p1,v1000,z
14、10,tool1;MoveL p2,v5000,z10,tool1;MoveL p3,v1000V:=2000,z10,tool1;MoveL p4,v1000T:=5,z10,tool1;17精选课件2022-11-26运动控制指令运动控制指令VelSet限制:限制:l 机器人冷启动,新程序载入与程序重置后,机器人冷启动,新程序载入与程序重置后,系统自动设置为默认值。系统自动设置为默认值。l 机器人运动使用参变量机器人运动使用参变量 T T 时,最大运行速时,最大运行速度将不起作用。度将不起作用。l Override Override 对速度数据对速度数据(speeddata)speedda
15、ta)内所有项内所有项都起作用,例如:都起作用,例如:TCPTCP、方位及外轴。但对方位及外轴。但对焊接参数焊接参数 welddata welddata 与与 seamdata seamdata 内机器人内机器人运动速度不起作用。运动速度不起作用。l Max Max 只对速度数据只对速度数据(speeddata)speeddata)内内 TCP TCP 这这项起作用。项起作用。18精选课件2022-11-26计数指令计数指令AddAdd Name,AddValue;Name:数据名称。数据名称。(num)AddValue:增加的值。增加的值。(num)应用:应用:在一个数字数据值上增加相应的值
16、,可以用在一个数字数据值上增加相应的值,可以用赋值指令替代。赋值指令替代。实例:实例:Add reg1,3;等同于等同于reg1:=reg1+3;Add reg1,-reg2;等同于等同于reg1:=reg1-reg2;19精选课件2022-11-26计数指令计数指令ClearClear Name;Name:数据名称。数据名称。(num)应用:应用:将一个数字数据的值归零,可以用赋值指令将一个数字数据的值归零,可以用赋值指令替代。替代。实例:实例:Clear reg1;等同于等同于reg1:=0;20精选课件2022-11-26计数指令计数指令IncrIncr Name;Name:数据名称。数
17、据名称。(num)应用:应用:在一个数字数据值上增加在一个数字数据值上增加 1,可以用赋值指,可以用赋值指令替代,一般用于产量计数。令替代,一般用于产量计数。实例:实例:Incr reg1;等同于等同于reg1:=reg1+1;21精选课件2022-11-26计数指令计数指令DecrDecr Name;Name:数据名称。数据名称。(num)应用:应用:在一个数字数据值上减少在一个数字数据值上减少 1,可以用赋值指,可以用赋值指令替代,一般用于产量计数。令替代,一般用于产量计数。实例:实例:Decr reg1;等同于等同于reg1:=reg1-1;22精选课件2022-11-26输入输出指令输
18、入输出指令PulseDOPulseDO HighPLength Signal;High:输出脉冲时,输出信号可以输出脉冲时,输出信号可以处在高电平。处在高电平。(switch)Plength:脉冲长度,脉冲长度,0.1s32s,默认默认值为值为 0.2s。(num)Signal:输出信号名称。输出信号名称。(signaldo)应用:应用:机器人输出数字脉冲信号,一般作为运输链机器人输出数字脉冲信号,一般作为运输链完成信号或计数信号完成信号或计数信号。23精选课件2022-11-26输入输出指令输入输出指令PulseDO实例:实例:PulseDO PulseDOHigh 脉冲长度脉冲长度脉冲长度
19、脉冲长度PulseDOHighPlength:=x PulseDOHighPlength:=y 24精选课件2022-11-26输入输出指令输入输出指令PulseDO限制:限制:l 机器人脉冲输出长度小于机器人脉冲输出长度小于 0.01 秒,系统将报秒,系统将报错,不得不重新热启动。错,不得不重新热启动。例如:例如:WHILE TRUE DO PulseDO do5;ENDWHILE25精选课件2022-11-26输入输出指令输入输出指令SetSet Signal;Signal:机器人输出信号名称。机器人输出信号名称。(signaldo)应用:应用:将机器人相应数字输出信号值置为将机器人相应数
20、字输出信号值置为 1,与指,与指令令 Reset 对应,是自动化重要组成部分。对应,是自动化重要组成部分。实例:实例:Set do12;26精选课件2022-11-26输入输出指令输入输出指令ResetReset Signal;Signal:机器人输出信号名称。机器人输出信号名称。(signaldo)应用:应用:将机器人相应数字输出信号值置为将机器人相应数字输出信号值置为 0,与指,与指令令 Set 对应,是自动化重要组成部分。对应,是自动化重要组成部分。实例:实例:Reset do12;27精选课件2022-11-26程序流程指令程序流程指令IFIF Condition THEN.ELSEI
21、F Condition THEN.ELSE.ENDIFCondition:判断条件。判断条件。(bool)应用:应用:当前指令通过判断相应条件,控制需要执行当前指令通过判断相应条件,控制需要执行的相应指令,是机器人程序流程基本指令的相应指令,是机器人程序流程基本指令。28精选课件2022-11-26程序流程指令程序流程指令IF实例:实例:IF reg15 THEN Set do1;Set do2;ENDIFIF reg2=1 THEN routine1;ELSEIF reg2=2 THEN routine2;ELSEIF reg2=3 THEN routine3;ELSEIF reg2=4 T
22、HEN routine4;ELSE Error;ENDIFIF reg15 THEN Set do1;Set do2;ELSE Reset do1;Reset do2ENDIF29精选课件2022-11-26程序流程指令程序流程指令TESTTEST Test data CASE Test value,Test value:.DEFAULT:.ENDTESTTest data:判断数据变量判断数据变量。(All)Test value:判断数据值。判断数据值。(Same as)应用:应用:当前指令通过判断相应数据变量与其所对应当前指令通过判断相应数据变量与其所对应的值,控制需要执行的相应指令。的值
23、,控制需要执行的相应指令。30精选课件2022-11-26程序流程指令程序流程指令TEST实例:实例:TEST reg2CASE 1:routine1;CASE 2:routine2;CASE 3:routine3;CASE 4,5:routine9;DEFAULT:Error;ENDTESTIF reg2=1 THEN routine1;ELSEIF reg2=2 THEN routine2;ELSEIF reg2=3 THEN routine3;ELSEIF reg2=4 OR reg2=5 THEN routine4;ELSE Error;ENDIF31精选课件2022-11-26程序流
24、程指令程序流程指令GOTOGOTO Label;Label:程序执行位置标签。程序执行位置标签。(Identifier)应用:应用:当前指令必须与指令当前指令必须与指令 label 同时使用,执同时使用,执行当前指令后,机器人将从相应标签位置行当前指令后,机器人将从相应标签位置 Label 处继续运行程序指令。处继续运行程序指令。32精选课件2022-11-26程序流程指令程序流程指令GOTO实例:实例:IF reg1100 GOTO highvalue;lowvalue:GOTO ready;highvalue:ready:reg1:=1;next:reg1:=reg1+1;IF reg11
25、00 GOTO highvalue;lowvalue:GOTO ready;highvalue:ready:限制限制:l 在同一例行程序内,程序位置标签在同一例行程序内,程序位置标签 Label 的的名称必须唯一。名称必须唯一。36精选课件2022-11-26程序流程指令程序流程指令WHILEWHILE Condition DO .ENDWHILECondition:判断条件。判断条件。(bool)应用:应用:当前指令通过判断相应条件,如果符合判断当前指令通过判断相应条件,如果符合判断条件执行循环内指令,直至判断条件不满足条件执行循环内指令,直至判断条件不满足才跳出循环,继续执行循环以后指令。
26、需要才跳出循环,继续执行循环以后指令。需要注意,当前指令存在死循环注意,当前指令存在死循环。37精选课件2022-11-26程序流程指令程序流程指令WHILE实例:实例:WHILE reg1reg2 DO reg1:=reg1+1;ENDWHILEPROC main()rInitial;WHILE TRUE DO ENDWHILEENDPROC38精选课件2022-11-26程序流程指令程序流程指令WaitTimeWaitTime InPos,Time;InPos:程序运行提前量开关。程序运行提前量开关。(switch)Time:相应等待时间相应等待时间 s。(num)应用:应用:当前指令只用
27、于机器人等待相应时间后,才当前指令只用于机器人等待相应时间后,才执行以后指令,使用参变量执行以后指令,使用参变量 InPos,机器机器人及其外轴必须在完全停止的情况下,才进人及其外轴必须在完全停止的情况下,才进行等待时间计时,此指令会延长循环时间。行等待时间计时,此指令会延长循环时间。39精选课件2022-11-26程序流程指令程序流程指令WaitTime实例:实例:WaitTime 3;WaitTimeInPos,0.5;WaitTimeInPos,0;限制:限制:l 当前指令在使用参变量当前指令在使用参变量 InPos 时,遇到程时,遇到程序突然停止运行,机器人不能其保证停在最序突然停止运
28、行,机器人不能其保证停在最终停止点进行等待计时。终停止点进行等待计时。l 当前指令参变量当前指令参变量 InPos 不能与机器人指令不能与机器人指令SoftServo 同时使用。同时使用。40精选课件2022-11-26程序运行停止指令程序运行停止指令BreakBreak;应用:应用:机器人在当前指令行立刻停止运行,程序运机器人在当前指令行立刻停止运行,程序运行指针停留在下一行指令,可以用行指针停留在下一行指令,可以用 Start 键键继续运行机器人。继续运行机器人。实例:实例:Break;41精选课件2022-11-26程序运行停止指令程序运行停止指令BreakP1P2P3区别:区别:Mov
29、eL p2,v100,z30,tool0;Break;(Stop;)MoveL p3,v100,fine,tool0;StopBreak42精选课件2022-11-26程序运行停止指令程序运行停止指令ExitExit;应用:应用:机器人在当前指令行停止运行,并且程序重机器人在当前指令行停止运行,并且程序重置,程序运行指针停留在主程序第一行。置,程序运行指针停留在主程序第一行。实例:实例:Exit;43精选课件2022-11-26程序运行停止指令程序运行停止指令StopStop NoRegain;应用:应用:机器人在当前指令行停止运行,程序运行指机器人在当前指令行停止运行,程序运行指针停留在下一
30、行指令,可以用针停留在下一行指令,可以用 Start 键继续键继续运行机器人,属于临时性停止。如果机器人运行机器人,属于临时性停止。如果机器人停止期间被手动移动后,然后直接启动机器停止期间被手动移动后,然后直接启动机器人,机器人将警告确认路径,如果此时采用人,机器人将警告确认路径,如果此时采用参变量参变量 NoRegain,机器人将直接运行。机器人将直接运行。NoRegain:路径恢复参数。路径恢复参数。(switch)44精选课件2022-11-26程序运行停止指令程序运行停止指令StopP1P2P3区别:区别:MoveL p2,v100,z30,tool0;Stop;(Break;)Mov
31、eL p3,v100,fine,tool0;StopBreak实例:实例:Stop;45精选课件2022-11-26程序运行停止指令程序运行停止指令ExitCycleExitCycle;应用:应用:机器人在当前指令行停止运行,并且设定当机器人在当前指令行停止运行,并且设定当前循环结束,机器人自动从主程序第一行继前循环结束,机器人自动从主程序第一行继续运行下一个循环。续运行下一个循环。46精选课件2022-11-26程序运行停止指令程序运行停止指令ExitCycle实例:实例:PROC main()IF cyclecount=0 THEN CONNECT error_intno WITH error_trap;ISignalDI di_error,1,error_intno;ENDIF cyclecount:=cyclecount+1;!start to do something intelligent .ENDPROCTRAP error_trap TPWrite“I will start on the next item”;ExitCycle;ENDTRAP47精选课件2022-11-26