注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程
/ t8 c X" N c8 ]/ GIODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num ) - J }: P9 y. Q8 W J2 I7 T
MaxTime: 最长等待时间。 ( num )
0 S0 \7 L. m% L- z5 Q: F; u- M* i' x' N' z2 P
" N5 @+ u7 Z3 a: G) _
应用:
w3 ]2 P W5 R. V* I Y/ s" R& a0 a 通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。* f3 G4 D) ]+ u/ a+ W5 P1 z
9 e8 ]2 r# _! ]实例:- E/ S, q4 D8 }' i6 @# l/ S
PROC go_home()
+ x$ C. g! j3 ?- n& H recover_flag:=1;( W3 M4 f1 y: g( y; @- E
IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】: Z! L& e3 v+ x" r4 I) d
MoveJ home,v1000,fine,tool1;/ p/ e* K. O) C$ y
recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】9 d) B q2 Y8 ]) {5 B
IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】. O- b2 `' M3 @% {$ h+ d5 o! w
ERROR
; F/ p3 ?5 X6 L" B @3 Y& z IF ERRNO=ERR_IODISABLE THEN
1 w$ c1 V7 u |: P' j& I IF recover_flag=1 THEN
& f, t2 ^! Y1 @- c5 x( K TRYNEXT;
5 Y, j, ~8 r* j! { @0 ?7 S: M6 I' r# t. u ELSEIF recover_flag=2 THEN
8 u' [: i& q; R) _8 ], ? RETRY; J1 c' v$ J2 E l- q
ENDIF, `/ c7 \8 K- ^+ s3 c) W
ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】
9 v" m5 e& d1 X ErrWrite “IODisable error”,“Restart the program”;
: w$ F, ]1 ~! b7 }: X Stop;7 V' |/ H ~. U& S
ENDIF
9 z R- \* T4 g0 p" ] ENDPROC
$ R& X6 t# k" o# u
7 U6 [1 Z* Y* P. W+ u% mError Handling:; |! @! j" G- y
- ERR_IODISABLE a7 C5 f& s. A7 ]* K6 g g3 M
超过最长等待时间,系统仍未完成输入输出板失效。
9 i3 M4 w3 M5 ?- ERR_CALLIO_INTER
$ f( K7 X% T ]: H4 W3 ` 系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。
/ t5 E0 L) `8 D, [2 k9 F- ERR_NAME_INVALID& j! J9 Y6 g- T" G
输入输出板名称错误或无法进行失效与激活操作。
* O! @( Y7 T$ ^2 a9 d0 R% U X" ?1 h/ c6 l. g6 E
+ |- x/ k- ]: d: O4 b |