ABB机器人:自定义错误处理
1. ABB机器人提供自定义的错误处理。
2. 在创建例行程序时,勾选“错误处理程序”,也可直接在RAPID中的proc末端加入关键字ERROR
3. 在错误处理中,可以使用以下关键字
• RETRY : 程序指针回到触发错误的地方再试一次
• RETURN:程序指针跳出该routine并回到上一级引用该routine的下一行继续
• TRYNEXT :程序指针回到触发错误的程序的下一行继续
• RAISE:关键字出现在ERROR HANDLER中,且后无其他变量和数据,进入引用该routine的上一级routine的错误处理区域寻求处理
• EXITCYCLE: 程序指针回到Main程序**行
RAISE也可用在正常程序中,后添加errnum,即Raise errnum1,表示触发自定义错误errnum1
在使用错误处理时,程序指针*终不能停留在错误区,必须跳出,否则系统错误。
4. 以下例子表示读取组输入信号并计算,若输入信号为0,则等待1s后重试,重试3次后输入信号依旧为0,则程序继续往下执行。
PROCtest_err()
count:=0;
reg1:=1/ginput1;
TPWrite "finish";
ERROR
IF ERRNO=ERR_DIVZERO THEN
IF count<3 THEN
count:=count+1;
waittime 1;
TPWrite "retry "Num:=count;
RETRY;
ELSE
TPWrite "retry more than 3";
TRYNEXT;
ENDIF
ENDIF
ENDPROC
count:=0;
reg1:=1/ginput1;
TPWrite "finish";
ERROR
IF ERRNO=ERR_DIVZERO THEN
IF count<3 THEN
count:=count+1;
waittime 1;
TPWrite "retry "Num:=count;
RETRY;
ELSE
TPWrite "retry more than 3";
TRYNEXT;
ENDIF
ENDIF
ENDPROC