注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程/ J$ B1 \) z; }* j5 H
IODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num ) 7 e7 P2 X" Q* B
MaxTime: 最长等待时间。 ( num )
5 b4 X) ^) I/ f2 g/ T6 b5 ]; J
3 z: l8 w0 U; J5 e0 c 7 b2 k, v0 ~5 c: Z* t5 X+ z9 w
应用:
% g2 \/ Y1 B) G+ ? 通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。8 y6 J9 Z+ Z9 o& S7 Q5 f. F
9 | y7 j S: o( e S实例:
6 L F% G& g+ t0 A PROC go_home()9 O X, V* _- Q9 y2 Q4 i. N
recover_flag:=1;% q5 Z) H" B6 t" V
IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】* B" j L& a9 y9 T
MoveJ home,v1000,fine,tool1;
" ~5 c8 Q3 w" @" R( }5 @ recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】) E9 ^5 @( p$ A) V/ S- x6 u G
IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】
8 W/ Z) ?$ @4 e+ ~# G/ ~6 G ERROR
, M2 {8 c% @- C6 Y IF ERRNO=ERR_IODISABLE THEN
+ L+ U" ~. C) D( Z& ^) T- j# X5 ?" N IF recover_flag=1 THEN
c- o0 e. C1 ~+ @. ~1 y6 F. o TRYNEXT;! f5 u# }/ D& N7 _6 r! p, W
ELSEIF recover_flag=2 THEN
# [" L8 w& }1 h8 C- L RETRY;
- \+ C8 ^; g9 V8 i6 m \& y/ r ENDIF* z$ R3 b# r5 u3 x1 b
ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】
7 }; w L! U5 g% `9 S* ?. P" N! b3 L1 G# b ErrWrite “IODisable error”,“Restart the program”;
8 f# I, ~5 x( |& f$ P# u Stop;
. ]% c2 `/ V- s( r: P* | ENDIF% W! h# U$ I! B! {3 W: g
ENDPROC. v+ {' i+ k7 s7 u4 x
" o: y6 |+ m6 d. a, ~' R
Error Handling:
; S: ]" R4 u+ ~' f- ERR_IODISABLE+ B; a4 {" w8 b# U2 B+ w
超过最长等待时间,系统仍未完成输入输出板失效。
# Y) p7 O1 z% n# Q" y/ r- ERR_CALLIO_INTER
9 d4 j( W6 | `4 [ 系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。
3 z1 D$ n5 V- u& w% F- ERR_NAME_INVALID
i& C& ~5 y9 G* q9 @ 输入输出板名称错误或无法进行失效与激活操作。1 s. l! K2 p4 [2 r7 S% u" b& T& m4 I
v4 ^$ F' Q4 u
( V8 o4 W5 A: Z( _
|