注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程$ X" {8 ?: X1 z
IODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num ) 4 D9 o2 {9 o ?. O
MaxTime: 最长等待时间。 ( num )
2 N1 V7 n5 u7 ]( Z- O# q& u9 G$ M4 W- s# p4 g0 p; O9 d$ f
5 r3 A8 \6 o- g
应用:( W6 m: V) D) ?2 k
通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。8 k8 L) b: Y9 @! O* y* Q$ `
6 D3 V; Q9 T0 c! W" F$ h" c
实例:' @" F& F N$ s6 P
PROC go_home()
3 s$ o3 U# z X \ recover_flag:=1;
' x$ i. J) C# N& @, t IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】
9 _% H& E% }" N& K9 ? MoveJ home,v1000,fine,tool1;3 k; f/ O1 `( y9 i# F
recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】
7 y* @+ ~$ h" \3 @' X IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】, `" o. x1 m7 K' J9 Z7 m
ERROR
5 d# |: k. L* Z IF ERRNO=ERR_IODISABLE THEN
# V s. ?" Q6 O2 H; l0 r4 a8 ^ IF recover_flag=1 THEN
7 f( U, g1 B! }: E! q/ G; A6 T TRYNEXT;
& I T1 O; Z+ o ELSEIF recover_flag=2 THEN
3 R' J6 M! h: n. } RETRY;
7 O- s* ?; u% ^/ ] ENDIF; G' C: b4 o. V" e
ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】+ ^" L% d0 |9 e8 y/ N# C5 \% ?
ErrWrite “IODisable error”,“Restart the program”;
6 ]/ S/ w7 |6 ~ Stop;% z) i- x9 ~- A# H: T/ D; _
ENDIF
, @2 Z6 W0 U/ n0 L. }, N ENDPROC
) J6 A, @* L3 M b& w- r0 X0 V
# p) x2 k# s' [Error Handling:
: M$ Z- p+ Y+ L" l' j- ERR_IODISABLE
! ~6 m v! G2 s0 o5 l% W9 Y 超过最长等待时间,系统仍未完成输入输出板失效。
, Q6 r- f1 b8 o$ Q- ERR_CALLIO_INTER. u% a" k0 u# e8 V$ `0 @$ q
系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。
5 b3 }# F9 I3 G+ ?- ERR_NAME_INVALID
& ^& E3 |" y8 N/ X [; Y3 |4 [! M 输入输出板名称错误或无法进行失效与激活操作。# h% k$ X7 M- D& O6 u
$ k, z, {: D) c6 l1 y* R/ @& N, k7 w3 L! k
|