注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程
6 [- w$ v$ g# x8 e' v2 a% o1 E0 iIODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num ) * I% q/ z9 H+ K0 w/ k: x
MaxTime: 最长等待时间。 ( num ) R1 [. }4 |5 a1 P, ^$ l
% d4 ]) }5 `" I* }
2 S; X, w/ E0 a; y' @0 {; s Z应用:
: Z: |: Q' p- {, `$ ]. R1 E 通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。$ K+ p+ Z* V/ E
4 }) ^9 j4 J. m+ k) p
实例:
" j4 I& d5 w. X1 |# d% a PROC go_home()
) d9 x; x/ ~# K+ q( `( b$ E recover_flag:=1;" ]2 h* X0 c% @5 k
IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】
! {/ O; |: x4 D, i1 g MoveJ home,v1000,fine,tool1;
+ [/ V5 a: ^, l/ [+ [1 p. h recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】6 w! m! w8 I) L) j, \
IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】
+ L' K, T- f. n; t4 L; M ERROR% f' S4 Q. E r2 B6 W
IF ERRNO=ERR_IODISABLE THEN. q2 [; c0 [$ s+ W7 z6 D
IF recover_flag=1 THEN' O6 C2 z9 C% {3 y) p# X
TRYNEXT;
, M0 d5 {. N4 J* H) V ELSEIF recover_flag=2 THEN
1 ~7 @" d+ ?+ D; c1 j! c1 _: K: E RETRY;
* I3 t7 c7 r+ a$ I6 i. s* Z3 `: Y" h ENDIF: ]; ?+ G7 _+ P% E y
ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】2 j6 [+ t, k5 c" B, Y( U* G
ErrWrite “IODisable error”,“Restart the program”;
' E$ K& K. v6 i) w$ I Stop;
6 p6 ^' u; H+ O& @1 y9 e ENDIF$ T; k A d- Z/ b) w4 f
ENDPROC& K* C d' ~- C3 Z9 y" x
, ^3 M! v+ x3 yError Handling:
9 ?* J Z! O8 x4 Y- ERR_IODISABLE
8 p0 C. |4 @2 L* i 超过最长等待时间,系统仍未完成输入输出板失效。
$ N. {0 v0 n! W1 [. N- ERR_CALLIO_INTER
: a( J1 Z4 s+ o, R. I 系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。3 w. Y/ c! T7 q$ Q) B1 r6 F
- ERR_NAME_INVALID0 \2 B/ U3 j9 [
输入输出板名称错误或无法进行失效与激活操作。( |7 s, `- B. i+ R& B0 ]% k
/ H8 _, o- d" A5 W% n* n8 ]! ~* c# b* V/ @" K: g
|