注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程4 @$ S( r! ~& f' L7 ~/ `
IODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num )
8 [. b& B9 c6 E u' U( u$ u" s* zMaxTime: 最长等待时间。 ( num )
3 B* Z6 F. q# {: `* S1 o$ e* J1 s) F5 ]$ y3 |
" r5 M X8 d: g7 x9 E3 H0 H应用: C1 s0 P7 @* s9 z
通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。) R, N C# ~) T3 G. p
* K0 O7 x; n8 U& T
实例:
\5 R$ P: |. ^0 F- M/ R6 T" L PROC go_home()
3 ^1 G B7 T; G/ [7 ?0 F. Y recover_flag:=1;& }- U Q( S/ _- ^; G
IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】8 f% E$ e: j; j9 _7 z1 `3 O. k. q
MoveJ home,v1000,fine,tool1;
7 c: v6 R9 g( t recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】
8 e3 z1 o1 r _5 [ IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】4 W7 V, U9 j4 c) F
ERROR. m$ R' L* y/ Y M3 ?
IF ERRNO=ERR_IODISABLE THEN
& z+ p9 o `8 _1 [2 w* r- Y/ u IF recover_flag=1 THEN' a* {4 C4 C" p1 g. _
TRYNEXT;
2 o6 V0 u$ E7 e' q5 d ELSEIF recover_flag=2 THEN
# F6 U' w+ ~$ M RETRY;
# y3 W6 F4 N& k. b1 v& J* @ ENDIF6 ]) T% H$ L+ m8 W
ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】
; K2 U K( A; c3 J! d; Q& X+ E ErrWrite “IODisable error”,“Restart the program”;
' L9 v/ K" x6 r: J! o Stop;+ d$ n8 D/ i4 t" x! I8 U* N
ENDIF
4 I6 \$ i2 H3 A8 { o# w; B6 R ENDPROC
+ T- t5 N$ X9 z! X* e" e C/ @1 [
3 Y3 @# u! q+ B- k4 \: tError Handling:! E7 L3 R, P" D$ W2 j! b9 [! y
- ERR_IODISABLE9 L& U3 p) q8 [9 j
超过最长等待时间,系统仍未完成输入输出板失效。# z& Y8 p6 d; H6 ?
- ERR_CALLIO_INTER. |3 E9 L' E- ~4 o2 k6 `. k
系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。 U7 i x# l) m- s( P1 z
- ERR_NAME_INVALID
) f( \; C5 Y; ~9 d' H: U4 { 输入输出板名称错误或无法进行失效与激活操作。
, @* W4 L/ Q. B+ Z
7 D$ s8 W6 I. M- @ l) h8 F
0 ~7 O+ _& T9 {$ k8 k) _& `6 v |