注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程* ] W. Y, f0 L
IODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num )
- w5 x! Q( X& z% z( ^8 w. gMaxTime: 最长等待时间。 ( num )! i0 G" k$ _- A6 M, g8 t
7 U, n! Q- ~' {0 R6 a+ w* U
" }$ h1 J p5 f# z) d3 O
应用:
8 n3 m% S9 P. Q5 q: g 通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。
2 l* U4 v8 A2 H" P7 L% E1 w" \+ B2 r5 e. B2 [% z4 D
实例:9 z6 C; g# [9 n1 S
PROC go_home()
, t# P2 u& Z! S* p, | recover_flag:=1;# X8 f- I9 m- H6 h T
IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】, a5 c; |+ I1 n1 h
MoveJ home,v1000,fine,tool1;
4 F! i; q7 O& a% m recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】$ d& H0 n5 I& @
IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】
5 {+ }0 t* h0 x/ c+ }/ e) k ERROR6 c' \& S) f) q2 U: ]) x
IF ERRNO=ERR_IODISABLE THEN
" I0 q& n5 Q' ~ V- T IF recover_flag=1 THEN& n, L4 W( l% w! e
TRYNEXT;
/ [3 L6 R$ X4 A' r& s! R ELSEIF recover_flag=2 THEN+ R1 X% n" _0 W, i/ x
RETRY;
$ s. H) r' [" p, |6 s1 S ENDIF V) Y& c; I; `1 L* T
ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】
( `4 b) \0 W( z( C% M& q. L* V6 k ErrWrite “IODisable error”,“Restart the program”;
6 B4 d6 @. M( C @; A Stop;5 g# E/ v1 W; Q
ENDIF q9 V' s- j, |8 i
ENDPROC' K: W! D. i+ M2 q9 `7 Q1 R
8 _. E9 k$ H6 k& x, X1 U5 d: X, x
Error Handling:& p7 f7 U" I$ }; `* u/ u6 @# B/ x
- ERR_IODISABLE9 x8 C4 C) g `2 y2 s
超过最长等待时间,系统仍未完成输入输出板失效。; c, W& o: U+ R
- ERR_CALLIO_INTER- P/ k# a( ~+ P7 ^9 z: R( o' e
系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。
5 P% i+ D( {/ D* S) e1 P- ERR_NAME_INVALID
2 H8 N, f3 o" t; T0 Z$ Y. A/ _ 输入输出板名称错误或无法进行失效与激活操作。
) ]: |& T% Y( R: |' D* l
) f3 Q7 I! `$ ^6 P J% A7 H- B" X
|