注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程
' c2 e. c, x* m% L' d' jIODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num ) 5 H+ q0 U/ d/ j, K( e) X) T, w d
MaxTime: 最长等待时间。 ( num )
6 H G, T1 G1 G( y7 D* @; `1 Z' E, L" i0 p# N5 X5 d- a; P
9 `8 @5 I$ f7 n" j$ o
应用:; T5 T6 z9 i8 v, ^, S. y. W( _
通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。
1 F0 c' B- n# S* {: i3 |6 D3 u0 N+ K0 M m3 x; C
实例:7 r. N: [7 E2 R2 q" L6 S
PROC go_home()3 G$ G* e7 B9 p" H
recover_flag:=1;
8 s8 Q# ]$ M; Z: h IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】
5 W* V+ Z! o4 D7 r3 a MoveJ home,v1000,fine,tool1;* L# ~5 j- I, m. L3 A/ g
recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】
. l9 }3 _% C- {" P5 |8 n x IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】
# |: N4 h) J! ~' v3 i4 C% T0 k9 K G ERROR4 }/ n, [: k, X% n! D9 R
IF ERRNO=ERR_IODISABLE THEN$ t8 y7 p9 ~, ]8 I$ t) Q
IF recover_flag=1 THEN
0 ~4 D( Y8 I! Q! H; b. v! `+ T TRYNEXT;
# b6 f( H: q ?- j9 K1 ` ELSEIF recover_flag=2 THEN
# u! c3 D4 F# ~0 n% `2 {& |- h RETRY;
0 s( q' v7 L2 s ENDIF
3 A2 E, t3 b: \' w1 P1 I) S- D ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】
6 e4 x8 p2 q6 O k2 z2 S+ e! ? ErrWrite “IODisable error”,“Restart the program”;
2 v V) H/ ~; V( |6 b Stop;
2 W$ }! M) ]: p ENDIF$ R2 k* ` T" z! e- w, O- Z1 C& a$ |
ENDPROC
! k2 {1 y4 j" \
?4 t" }* U3 iError Handling:4 ]1 n( S% E; R, Q" x& V3 S
- ERR_IODISABLE; |& o% l$ C# @+ n, D0 X
超过最长等待时间,系统仍未完成输入输出板失效。
" z' K2 a# R/ E" D* z) ~+ }- ERR_CALLIO_INTER9 Y7 v+ U* R$ Z4 B2 U3 W
系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。
% ^8 V* T5 g) K4 [/ b; i! G" R/ b/ \& |# E- ERR_NAME_INVALID
7 ^; N' I. j6 n 输入输出板名称错误或无法进行失效与激活操作。
$ X! c0 o3 Y1 b# C
. M- K8 q8 ^0 I4 w! e E: \# n, l: R! o0 C% B* K: L
|