注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程% U4 a7 ]# w8 y
IODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num )
5 t0 y3 W3 N2 J+ Z4 L/ v, t& UMaxTime: 最长等待时间。 ( num ), c# B2 R0 [: H# i4 [
0 Z |# Y% | A1 Z2 X) l) ~ ' Q: w! l- _' r# W
应用:
! \% K# K: `; Z6 o0 N8 C) w 通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。
* W! a/ D* p% M
: K+ i- m6 N/ W3 ]实例:
4 f% M5 u. ~! n PROC go_home()
" C/ }( L R: ?# D* t( M7 K recover_flag:=1;, z. n! W" ^& i+ H5 C" U% a# C
IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】( k) D4 m$ f1 p4 @
MoveJ home,v1000,fine,tool1;8 E$ G% I. l# R* `- A
recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】
4 z4 M. y' W: u! D Z IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】
+ s7 a/ k, r, ~$ N ERROR; d Z% x: L( K. E2 e, l8 [
IF ERRNO=ERR_IODISABLE THEN+ |' g1 k) |. E/ |3 }$ e
IF recover_flag=1 THEN
, e! O, [4 o: N; Q$ ~ TRYNEXT;: E+ \$ h6 E4 F. d# {% J$ N' ]
ELSEIF recover_flag=2 THEN
5 e6 R* W, V c) Q9 X* \* w# f8 P RETRY;
0 l( `* E$ Y% ~. U$ \8 y ENDIF1 p6 U) D' M; u" N( F0 ?% H
ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】
. B" d, M9 O3 D' O& N+ v0 O ErrWrite “IODisable error”,“Restart the program”;
7 L! i: }( C1 J" u9 ]* ?1 Q Stop;
6 Z5 a4 n+ p; S% W ENDIF
z- u# h7 l0 X* O4 {+ F5 D ENDPROC
0 w- Q8 f7 \' n' n( Y1 o v3 y* y4 u F+ [* L. b, h1 f
Error Handling:
7 c0 D1 U( A' ]; f% m- ERR_IODISABLE4 K' V, S$ ^" X7 x. F
超过最长等待时间,系统仍未完成输入输出板失效。0 ^ f/ n. M# B5 A+ o0 u
- ERR_CALLIO_INTER
# Y0 m0 {. V7 h/ p6 X- c 系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。9 K% d! t2 {+ b* `0 U1 d
- ERR_NAME_INVALID/ V' r" m: p7 C ^/ U
输入输出板名称错误或无法进行失效与激活操作。+ d' J2 o) `( b8 S6 w, R# f
- m% G9 }# n/ G% Q9 }" i& n3 x
' y, T/ m; g9 W# h; L( X |