注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程! x) d! E. g: ?( [( W
IODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num )
1 D2 R& h$ Y* u1 e vMaxTime: 最长等待时间。 ( num ) ~- s0 \8 Y$ D s- s" A6 M9 n
, ]: p% h0 p6 g& o; U
9 O: m, X8 @) F0 f- g$ Z# x, J P
应用:
, g# B4 L5 l' N) B: B 通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。
1 n4 q7 G0 i4 h2 t+ b* p( A7 c1 f+ s2 z- K2 W
实例:
# x& ]) g6 Y; Z- k* h PROC go_home()& H$ S4 h& w1 e7 `
recover_flag:=1;
# \0 ^' R$ e- i) J8 H IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】
3 d8 d; f6 o' |, R9 q+ d5 ` MoveJ home,v1000,fine,tool1;( M4 s- ^7 H7 ^% H4 y u; f1 V* {
recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】# K( d! j% g3 M' d f6 ^
IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】
; J2 G' V4 I, x: J. A/ ?) A/ ` ERROR
' {7 s% _2 M2 H4 i. ? IF ERRNO=ERR_IODISABLE THEN
9 v4 I$ R, G- a1 S' T, {4 W IF recover_flag=1 THEN
7 @- L6 M- N$ L, v2 ~( w5 A TRYNEXT;) @) l3 t' o5 h" G& B% X' k% `$ j
ELSEIF recover_flag=2 THEN6 `& c. {9 ^5 r K' s1 X6 {
RETRY;
3 D6 p: O' ?# ]9 a9 J: T' A ENDIF
% i- A+ [; ?' T2 V. p% [ ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】
3 c; O- z: O4 L1 D% \' F; h ErrWrite “IODisable error”,“Restart the program”; B# m' t: l0 N' x+ U1 Q
Stop;
) |! ?- X9 T! x6 Y ENDIF/ [- E# o$ ^3 T7 c) _' Z
ENDPROC
7 h9 W+ S( g$ s9 m3 l
% r3 j: K6 d9 s) Z( CError Handling:
" O! _; }% Q9 ?& ]4 h' m. M" }' z! @$ `- ERR_IODISABLE
, ~# ~8 {( Y' m4 i( {- w v 超过最长等待时间,系统仍未完成输入输出板失效。" m/ w* J Y9 f1 q* Q
- ERR_CALLIO_INTER
* k5 n) x6 Z! d 系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。
$ m( y a6 ~0 Q, x. R5 M$ }- ERR_NAME_INVALID
( E p* @! Q7 i6 l 输入输出板名称错误或无法进行失效与激活操作。- W, K% g' x, z
* R8 y$ U3 @1 a6 g" A
- a% ]1 ]! U1 C# y
|