注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程
2 o2 C2 Y4 F/ s. @. hIODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num )
/ S" `6 c+ }8 nMaxTime: 最长等待时间。 ( num )
# E7 a: q3 o/ N- ]0 T6 }
* O I* ], I* }7 n
. H3 k9 J) p+ L& J( [4 b( [2 ^应用:
@& s4 E$ ?9 E, \ 通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。0 Y5 i0 \1 V+ h3 [
# e* D1 l% o/ j: G- q, W8 E
实例:
$ [" R; P C8 n PROC go_home()
- x3 l( \$ `* z( ?1 i recover_flag:=1;2 y4 O7 J2 n8 y) x
IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】8 m5 n7 y0 Q, i
MoveJ home,v1000,fine,tool1;
8 h+ A$ {0 L/ ]: |7 p recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】' F0 i8 ^. h" v4 T; X
IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】
9 H* w1 I# ^7 L ERROR
; M" u4 }. \0 q! v& ]% O/ Y IF ERRNO=ERR_IODISABLE THEN4 Y- t" l9 Z+ A' B7 o% e5 _2 `
IF recover_flag=1 THEN
/ Z0 J6 Q8 G& b# s6 D2 G: ~ TRYNEXT;2 R$ _; N+ L! n( G" T2 ]
ELSEIF recover_flag=2 THEN2 j: ^3 L0 m$ v4 Y
RETRY;9 b; [( k4 X+ L2 [+ b2 i
ENDIF& i. O$ w- m6 d% K1 }2 H
ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】
- S! z* {# [2 U; Y ErrWrite “IODisable error”,“Restart the program”;
; o1 r+ Y/ }6 N7 c7 o( Y) Y3 v- v. l Stop;
/ j! f% [0 O \; |! t& `' S ENDIF) N/ }% J9 f. {1 x. F
ENDPROC
7 }1 r+ ?5 \. h
3 c' {. b% M9 H2 }, S- hError Handling:
6 H" \0 I& A" d5 i1 b. ?- ERR_IODISABLE
7 N, z8 e4 {5 \/ S, b/ I 超过最长等待时间,系统仍未完成输入输出板失效。
( J0 b$ u; p; a. V1 y- ERR_CALLIO_INTER
4 B& N/ b1 C3 m0 W 系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。) l3 b+ v* G& I9 R
- ERR_NAME_INVALID
" l. u5 H) w6 Z G* Y/ { 输入输出板名称错误或无法进行失效与激活操作。+ \7 E9 p' j" f6 ?1 [( s
& C. w( t3 x" Y" O
9 u. f% L, b4 G7 @ |