注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程
1 o7 ^ l3 V5 p4 X7 h1 v7 eIODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num )
& i) M; _5 b) SMaxTime: 最长等待时间。 ( num ) n1 k. |6 v/ k/ d# x/ y" b2 c
! q0 ?/ U+ D! F- i
8 G: }# T! y* u7 M应用:* e% a$ t: s- u$ q" Z' a7 k4 P. h
通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。
3 q" T# t! u; W D1 G/ C* `6 N- t. T7 [9 ~( N/ R1 G$ O5 t) q
实例:
' v) l7 j: w& h PROC go_home()
. y9 ~1 A7 M/ o# M recover_flag:=1;3 H3 P: P8 B$ |$ b6 u5 h, w
IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】 }+ q" P' C& s. n7 G3 O/ K4 H( G
MoveJ home,v1000,fine,tool1;
" b, q( h+ b9 G recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】7 c$ c. `# _5 h& |/ C4 P
IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】5 Y# K& U4 |- s# ?
ERROR
) s S% ?7 Y8 t9 C) s0 e/ B IF ERRNO=ERR_IODISABLE THEN# n8 ^! g1 ]0 v4 K4 q
IF recover_flag=1 THEN
/ I7 N, l- G+ f- W TRYNEXT;3 ~) T3 h. h& l3 T
ELSEIF recover_flag=2 THEN
( x' v% w) h+ o( _7 P2 c RETRY;" t( C7 w: V. M* q# W- W Z8 i+ c
ENDIF8 O" R+ O' L9 m4 c* f" V
ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】' ~5 y5 G- B0 M' Z# X0 Y" h
ErrWrite “IODisable error”,“Restart the program”;& i4 z$ \# U2 k4 m2 X* I' b
Stop;
8 [+ x( P" n) w0 n; | ENDIF
. k/ G2 S! X* B# w* P, ^8 A8 a; H/ E ENDPROC
6 i @ a) B" d' h0 d9 @% p$ u4 o
+ \- @) y" n1 k, x; E% ?Error Handling:
* m9 B* g! K O+ ^% E% A5 |- ERR_IODISABLE6 W) e* ^$ l9 {/ e
超过最长等待时间,系统仍未完成输入输出板失效。
6 v( r5 S4 g7 w& J/ v- ERR_CALLIO_INTER
/ C" X0 ^, m, S7 i! g6 M 系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。' ~$ M) k! O6 O% r
- ERR_NAME_INVALID
( ^6 l& e; c" I, D 输入输出板名称错误或无法进行失效与激活操作。8 z8 |4 N9 h% w `
1 Z; \0 `3 P3 ~- @, K3 | m o
0 i s2 S; T8 U% [7 I- e1 g: W. z |