注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程
6 m8 ?; P. Y2 K. L3 oIODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num ) ; B! I$ {+ n9 w7 Q
MaxTime: 最长等待时间。 ( num )2 `- o% Q/ R6 K5 x5 _& P' f/ _/ T
! m& o& `) `" R 1 P5 M. `$ p- ?1 C& r
应用:7 y/ Z' d1 z- x1 g2 C6 J5 L$ L- J8 `
通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。
# {. ^1 f: N4 s2 b) D
; I! S" V6 P! [! X3 i2 Y/ ]' h实例:# F9 j q8 s/ ?$ n8 M, Y6 W7 {
PROC go_home(); O. O" ` @; a$ l
recover_flag:=1;
- V$ G/ X& t G8 K& \3 r IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】
$ c' n+ L) O/ L, S MoveJ home,v1000,fine,tool1;
]0 Q2 A! M2 K recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】5 w/ k) m+ B, G& G' Q
IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】9 B3 D2 [ H* t" h$ Y/ t
ERROR; M r: L$ k" j/ P1 g% j8 R# ^& a
IF ERRNO=ERR_IODISABLE THEN
" x3 O; L8 P% U1 d6 ] IF recover_flag=1 THEN" R# D* H( i! {. y {. ?
TRYNEXT;
2 f* N# Y* K3 [9 u8 q/ E! e: }; ^* t ELSEIF recover_flag=2 THEN* h2 z% S! v- g: T* ]: `3 u5 N
RETRY;( ]( w* m7 A5 V* o4 b" S; A
ENDIF# Q/ C* ?( q7 K7 d
ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】/ D- D; h; P2 B2 M
ErrWrite “IODisable error”,“Restart the program”;% ?4 t. y; `/ k c
Stop;0 `5 K4 C. m+ L4 G
ENDIF
4 Y3 F* } @$ O; Y% ? ENDPROC7 N. h0 W9 I& L5 f) h
K( ~# {3 u: g# V- CError Handling:
5 F8 W# c) G6 Z9 P1 e& m- Y- ERR_IODISABLE
- j4 e- }0 f( n1 L8 e 超过最长等待时间,系统仍未完成输入输出板失效。
: V' D" v4 f" b* o; \- ERR_CALLIO_INTER2 @+ R, e2 ~, O
系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。
+ v' E* t: i9 X+ b( T- D- ERR_NAME_INVALID7 G) f! h4 E8 Q
输入输出板名称错误或无法进行失效与激活操作。
$ I, v8 E, W& B+ {$ s, c, T$ Z9 H
6 q3 O/ G. u$ |
3 n7 V8 B2 ^0 n* n; @ |