注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程
+ r A. e7 n% x5 nIODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num )
5 ?% Z: q9 s2 Y4 F0 _' TMaxTime: 最长等待时间。 ( num )
- B. E) I. j9 D) l! l( d% j; i c1 q$ Y# K' Y8 g6 h. j! t, Q
1 J W0 _& \, ], t
应用:
* p& {4 ]7 d! m9 M 通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。
$ p! m2 }0 E m# u" B& |$ P m* Y8 d# r% `* L- ]
实例:2 I* @; y( R0 Q0 y- I' f
PROC go_home()/ F! ]+ J( m: z* B U( \
recover_flag:=1;
3 @ S: M* Y: {0 y7 | IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】
) ?) K, \2 R7 y1 ^' Z( z2 b, p MoveJ home,v1000,fine,tool1;9 C8 m/ h6 A& ~. {
recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】
+ X: a! G) F9 y5 ?" B4 j IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】8 k- [3 c2 C' ~+ X3 m
ERROR) ^2 y5 j$ P& w( h8 W
IF ERRNO=ERR_IODISABLE THEN7 d; a \3 K, u0 P2 y2 l
IF recover_flag=1 THEN
( _6 M2 k1 M8 o- \( [! X; s* [ d TRYNEXT;3 P% q8 @2 N& ^4 a3 U
ELSEIF recover_flag=2 THEN# F0 x. J' M. r- S) d. x7 X
RETRY;$ C1 a0 n! M+ `! U
ENDIF I' o7 R7 N1 I+ u+ M% @
ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】
1 Y! ?% E3 S q ErrWrite “IODisable error”,“Restart the program”;
8 Q k; s0 Y3 ]5 c' ` Stop;; E& l/ L/ i' e
ENDIF" v9 S7 Q3 b/ c, ~+ K, c, ?1 S
ENDPROC
# Z# `+ n+ E8 Z5 W' p- _( a# e
1 _6 P' O7 m# u6 m2 O( r5 h6 G) SError Handling:
& u9 V5 X. O/ {! v* @! n+ ~- ERR_IODISABLE; a# f, t* X1 ?6 b4 X8 U
超过最长等待时间,系统仍未完成输入输出板失效。7 M: ? g0 k) M% s _% H
- ERR_CALLIO_INTER h& w/ I; l0 _5 I& f9 a& f- k: L
系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。& l: E4 ^ h- c( `7 l) X- f
- ERR_NAME_INVALID9 s# k$ P5 y% e9 o
输入输出板名称错误或无法进行失效与激活操作。7 `; n: I: C: L9 s' u
- J/ @% r; L+ g7 b, P r$ R: H6 w4 z, M
|