注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程: x0 z2 B; H# K" q( i% ~- f0 S
IODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num )
- m; v, l6 f* R8 EMaxTime: 最长等待时间。 ( num )
$ l, O. G8 A3 Q& a1 S$ f( M& ]% A" {3 j, N+ q, _
9 X3 D z2 S1 y \
应用:5 b( w! ?& Q0 Q9 |
通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。
/ g% J5 ]7 E! I
4 Y2 D: m1 A! m3 C A0 y9 v实例:8 G% f. u a8 B8 z
PROC go_home(); c* h. O. V0 R/ O" n
recover_flag:=1;( q! H8 m, Y4 V8 ]) p
IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】9 C3 ^6 ^9 r& Q
MoveJ home,v1000,fine,tool1;# G% K% r; s/ l T4 f, h( T
recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】. `8 y2 Y( @+ v8 S0 S W( v O2 p
IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】+ t: k5 V) s5 O; l
ERROR
4 @/ A3 A- T, E4 M IF ERRNO=ERR_IODISABLE THEN
* [( z9 d" G1 U6 r IF recover_flag=1 THEN
. C5 [' t/ ?# i2 H: l3 S4 b TRYNEXT;, H* O1 f- a! ?0 R8 ^. s; x) t
ELSEIF recover_flag=2 THEN, z: j+ \0 E* | N! A* u3 `
RETRY;
' s3 Y( I. Y' M& M/ t& t* s ENDIF
7 ^9 }( _: m( a( j) B ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】1 T- P5 W0 x8 b9 s! z4 E
ErrWrite “IODisable error”,“Restart the program”;0 u/ [9 i, U2 ]( L+ B7 J
Stop;# F$ B1 W S* K' W: M- `
ENDIF
" i- a* B1 f v: X: [9 C% i ENDPROC& c4 s/ u" h* G) [8 ]
$ u1 H" Q4 q, O3 t8 \
Error Handling:
* I$ _" j# Z: B0 K- ERR_IODISABLE
z/ ?$ f/ P3 `' x 超过最长等待时间,系统仍未完成输入输出板失效。6 o) v0 I4 {" j$ z+ d+ z
- ERR_CALLIO_INTER
' p7 _" R$ M- m9 [ 系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。
1 T8 \; ~3 M+ L4 k i- ERR_NAME_INVALID3 ^6 a6 K) {, ~- P0 D5 l5 `5 z: d$ v
输入输出板名称错误或无法进行失效与激活操作。! u1 W8 w/ ?! |2 d" W5 G/ O
[. k+ C/ @: W7 ]& B, t
6 V+ Q% q, W# o! V+ S; k
|