注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程$ y8 J4 @ z, r7 r2 }
IODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num ) % {" r* V5 a {3 @
MaxTime: 最长等待时间。 ( num )6 E9 T9 d/ e; k: m
! R8 m- _. Y7 ^. U& |9 t) n5 w
& W! a4 W# h$ _9 X# Y Y应用:7 X6 Z! L, ?% @: M+ |# m7 U" ?6 C( P1 Z
通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。
7 O9 @" N9 T) a- ]& `7 {6 P" n& F1 g" ?6 T' O4 A/ }; _
实例:
( Y! w# \7 s. r9 i( ?2 a7 o5 ~1 O: F PROC go_home(). a6 ]0 b2 I3 x& M
recover_flag:=1;
1 j0 ^5 q: r' V, _4 a( O IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】9 L; \5 K1 E2 f3 p$ c! Q
MoveJ home,v1000,fine,tool1;
* m8 `- B0 h8 o1 u, [ recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】
+ w/ o4 ~7 z# r- h/ f IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】/ k' T4 K. @4 q3 k) T
ERROR
# U, k1 U6 n, @5 _& y IF ERRNO=ERR_IODISABLE THEN
7 {) o+ k1 m1 q3 q- J8 L- K$ _ IF recover_flag=1 THEN
/ O/ d/ J) P+ ~& Q TRYNEXT;
7 k8 h1 u. P$ R: S2 a ELSEIF recover_flag=2 THEN
- u& `" G( K. x' g& ?3 L RETRY;
4 w) @ ~/ J. L ENDIF
% @1 l+ e% q5 O# `- v4 A# @9 Q ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】
! p# M5 `& S3 Z ErrWrite “IODisable error”,“Restart the program”;2 E2 W8 E1 X3 P) ^
Stop;
& N" |4 K7 f2 K7 o ENDIF
0 U# w0 k% ~1 [. t) G ENDPROC
7 B( P8 k! G& ^- T4 p: s; D& v) y4 v: o( S) H% W. D" p5 ?. ^
Error Handling:
4 Z# A- q7 _& q6 k: ^" X8 j( l- ERR_IODISABLE) |6 {7 U7 Q0 f) U* ~; I6 B9 t( f" B
超过最长等待时间,系统仍未完成输入输出板失效。
: k0 \* ^' D; K: O7 y- ERR_CALLIO_INTER* d- g: R- V' V- e
系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。
- n: y" g$ i D7 f) e: ]: {- ERR_NAME_INVALID8 {; C$ W& }1 ` G9 o+ ^
输入输出板名称错误或无法进行失效与激活操作。
( _+ n2 x9 g7 c6 o, E3 W9 c
% P& u! v+ s* ^4 y$ P8 j [- L! E0 _9 g7 d9 X' ^! Z: s1 h/ ^
|