注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程
8 i- g! F/ T) LIODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num ) 9 F7 U/ X/ p* }# \* V
MaxTime: 最长等待时间。 ( num )
+ |5 |/ u& I9 R* e( z% i# D9 p( o# c% f1 ]7 u* O7 q
5 v+ Z0 D( A) i( d* g7 b应用:
6 V K7 F4 X) }5 O( V* B: H6 y( D 通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。% V+ I: b+ ?# A' _& w# \
8 B9 p7 ?$ L# q( W8 ^9 j
实例:+ ^& N1 H) f! l9 s; G* E
PROC go_home(). P1 y9 U% E: D% T! V) m$ J( v
recover_flag:=1; U1 j; o1 E1 e
IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】4 T) r: B% G h
MoveJ home,v1000,fine,tool1;( j& k2 ~( k6 ^; r* M6 i
recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】$ O% @( f& F: ]
IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】
) h: F) H9 a' x7 A' L" ] F# f ERROR
' l' z; z$ @% S- _ IF ERRNO=ERR_IODISABLE THEN
: l8 U, W/ K0 Z# \ IF recover_flag=1 THEN+ O9 C) n, F E
TRYNEXT;& r: n& A# n; \2 ~% b2 }
ELSEIF recover_flag=2 THEN
& S6 R+ y& u# { RETRY;1 _* _* q3 Y0 Z" v A
ENDIF
; ~: t" N7 ]/ l% i; _8 @ ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】1 e: h$ u8 v/ @2 w# m; ^
ErrWrite “IODisable error”,“Restart the program”;
- [4 P8 B& [) p9 H, }$ U* T Stop;
6 A& K) j# e0 G9 a( R7 f ENDIF
, [6 q1 P8 I5 O* T2 H1 }8 o ENDPROC
6 G' R: F7 ]0 U: \; `. C# q) K6 i3 I3 e! H) p" V
Error Handling:, H9 M7 z1 n7 Y2 j' I' o: u# j& i
- ERR_IODISABLE
6 B8 v9 c5 k& T( C 超过最长等待时间,系统仍未完成输入输出板失效。0 w6 B% p6 r+ F# t
- ERR_CALLIO_INTER/ T* W& ^6 e9 C6 E! y- q; V! Y
系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。
E! d& O- t& Q# s. k: I! L* u- ERR_NAME_INVALID& ^: W; a1 x8 E
输入输出板名称错误或无法进行失效与激活操作。- ~( n( h. T/ l4 M7 o( H! M
) j& b! V n% e2 q, k0 o& t8 A6 H- H7 ~0 m/ j) s. k
|