注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程: ?4 @# U& {5 r3 X
IODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num )
, s' Q4 d. w g- {1 bMaxTime: 最长等待时间。 ( num )5 y. [7 y1 A5 Q& n/ x/ K! P
6 o4 U* e; E& t( N( O" J' W1 e" h4 s
; X5 e3 c6 p4 f1 D; @+ R应用:3 c" J! ]+ L) {9 a, `
通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。
5 A7 s: k0 [! u1 K! M) f3 a% H
6 |& l- g9 d! q实例:
, I8 n2 W0 ~6 [$ d: {% X: F$ B PROC go_home()
; I! y6 ], O: t recover_flag:=1;
/ w& \1 T+ D, K4 o' {9 q) ~6 D IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】5 P- k" S" E h* M2 p7 r
MoveJ home,v1000,fine,tool1;
" k8 ]7 ?; C2 L) f1 i recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】3 ]& f. E5 X. v; t9 L
IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】2 k7 s4 k' d3 k1 {* D3 y
ERROR
o5 M& y1 S) X+ c+ Q! L IF ERRNO=ERR_IODISABLE THEN; C# L# f- l& n2 p) m n0 o
IF recover_flag=1 THEN
) f2 b) Z% l) l+ X3 n% m+ d/ @ TRYNEXT;
3 K: _. {' T, } ELSEIF recover_flag=2 THEN/ _5 b# b! n( v7 i- I
RETRY;
! O, l- s2 ]+ ~! \9 l ENDIF, b0 X" G! v' C2 c! Q
ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】4 Q' @; J2 J4 D1 R& s; D: N% I. Q. A
ErrWrite “IODisable error”,“Restart the program”;+ O }+ C' G: J+ ^- b
Stop;
. M/ j5 [# @) A- n+ Z/ g- a ENDIF
5 Q! y- F) ?0 Y# J9 D ENDPROC
! G- N% ~; P, P y
' ^' M9 X0 q8 t. u5 H3 t6 KError Handling:( L- `/ J- R$ {" _- K" j
- ERR_IODISABLE
& f* V0 l6 ]: ]! e' V: S8 S3 B$ U" D8 }$ C 超过最长等待时间,系统仍未完成输入输出板失效。3 A) R0 ~- D' Q w
- ERR_CALLIO_INTER
! A# _5 g" H, F: T, C" ^ 系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。
9 |* j' C/ U+ s* g$ {7 H J8 k- ERR_NAME_INVALID
, }8 l* H" C" y4 U" P4 U9 \ 输入输出板名称错误或无法进行失效与激活操作。
) A0 ]. t+ }+ ?, O; T
; h, ]0 z! P3 c5 w
! Z! K" P# R) F t. N. S! ^1 Y7 U |