注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程
5 R) K' n% g4 z2 y! T/ v$ |IODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num )
4 H$ r3 t; K7 ^MaxTime: 最长等待时间。 ( num )% }( Q0 u( H3 Y* w+ r7 s: }, A2 s
% ?7 x2 T1 }1 V
6 @% `# l2 c: u5 _! K
应用:
4 a3 z, u6 k, f7 q3 d0 \ 通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。) L) L5 V/ ^( z' j/ r& j
0 U3 ~- y. k+ T0 a6 R2 v
实例:& n) Q0 z. p0 c9 W m/ x s
PROC go_home()
' d: R: R: u) R) ]" K9 r recover_flag:=1;0 M, @% E7 ], `* ^% [" ^4 W
IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】
' o* [, h" l: j MoveJ home,v1000,fine,tool1;
- K, W" F! L$ R0 w) H( E9 v4 v recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】0 q5 ^3 P* _' t5 G+ }* w6 M
IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】
# g& d3 N3 e4 W6 u% f: _ ERROR
8 U0 m$ p$ E: q. Q W6 m IF ERRNO=ERR_IODISABLE THEN" B1 S8 y7 h7 F* v) D# T. j
IF recover_flag=1 THEN
& _9 K" D: k0 v# M# Y TRYNEXT;
- Z6 i- W; g! x' M0 v5 p ELSEIF recover_flag=2 THEN
% H$ ?5 U5 ]; h! s RETRY;
8 E6 k0 ? E0 z v) e- v. H ENDIF
6 s5 S, D. p* V6 M! Y1 d3 d0 ? ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】* `/ f; N! _ O( `. \% T. z
ErrWrite “IODisable error”,“Restart the program”;
# |1 s0 ?! G: C' T% ^ Stop;
+ Z4 l, X$ s& _& f% `3 r ENDIF7 q5 |$ k/ _5 |9 f4 v
ENDPROC9 n5 F5 S( Q4 W6 x
& M$ x! V4 ^8 D' x6 U% BError Handling:
5 _' X3 h1 ?$ a, b- ERR_IODISABLE) m) _# f+ b- O% K1 ]
超过最长等待时间,系统仍未完成输入输出板失效。
1 |( V- Z7 ]( Z- ERR_CALLIO_INTER6 f& Q# \9 ?( h+ b4 z
系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。
2 b1 J9 b( [( a5 P# H. n, {- ERR_NAME_INVALID( L2 Q! }" H- {/ ^' {
输入输出板名称错误或无法进行失效与激活操作。
# A: f. E3 ] {, ?+ U. n
2 m2 w \* W- ]" t6 D1 ]0 r* S! ~* k4 C. o: J. n8 i! X+ @
|