注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程/ i0 S3 E4 k) N7 h/ M2 N8 \, _! B
IODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num )
: N% S* l1 A# K$ V3 L" T1 zMaxTime: 最长等待时间。 ( num ), j: k" j5 H& } W4 Z, o
, @5 m; L% \- Y! w+ P# \
+ l3 J# f7 T' s4 Z1 \' G+ T+ N- z% m* X应用:
$ q( z/ }3 p: X3 h% g6 _ 通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。% w$ E& i7 `) L, o* i1 ?8 ^& Z' j$ D J
' f9 ] I$ }3 m! k2 n2 i2 o. S. X! D3 V
实例:: \8 @ [& ]$ K$ _# D
PROC go_home()
* ^, Y( n! |4 q7 O recover_flag:=1;; {" I$ I- y- s
IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】
3 q9 o- `" o" H/ A' d- d MoveJ home,v1000,fine,tool1;+ f" Q* B9 x7 _4 d) o7 f% `
recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】8 ]4 ^& \- x3 h; \! x' i3 j
IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】 G; R% X# k! \
ERROR2 v( J+ \) J% e7 T8 J9 P1 G" e' v
IF ERRNO=ERR_IODISABLE THEN9 f! G0 ~7 E! c, w# {
IF recover_flag=1 THEN
% ?' P) Y4 b3 X- _$ z5 G g8 V TRYNEXT;9 M. H8 g, |9 [4 O
ELSEIF recover_flag=2 THEN
+ @# {$ G5 C- a3 f/ [ RETRY;2 t- V1 C7 ]% b- v; X* A. R5 r0 b
ENDIF Y( E, b. A5 M
ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】+ D2 o; A; p( `$ ]& ~7 I0 D
ErrWrite “IODisable error”,“Restart the program”;
2 {0 T2 N! ~% I( J Stop;
$ g4 P2 t1 u; G( j n ENDIF5 Q% g5 F; D8 w- s2 W$ ~
ENDPROC* {0 P! W, E D) `; Z
- ?* x/ j+ i8 Z, TError Handling:
) a" y% t- ]+ w. M4 b/ v" T- ERR_IODISABLE8 ^5 H' w0 H j
超过最长等待时间,系统仍未完成输入输出板失效。
O; b8 {2 Z+ h* H8 U( H ]- ERR_CALLIO_INTER
1 h/ L$ H- U# U, u6 P3 c$ I 系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。
+ Q4 {0 Z& a) P% l, b+ a- ERR_NAME_INVALID
, t6 ^9 [* n' h2 r& l- I 输入输出板名称错误或无法进行失效与激活操作。
% ~3 e& f: E; p1 g$ a0 l' A- B0 L6 l8 u/ u w
: O& d: b0 K7 ~' m/ y5 ? |