注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程
6 P2 M+ T* d5 s8 I. KIODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num )
2 S3 J7 t: O f3 G0 x1 N: A+ b" eMaxTime: 最长等待时间。 ( num )* T: Q* Y$ S: ?) ]% Z0 T' n
% L, }9 Q7 k( c- \0 p% X
$ K; q% U5 o$ p. p* p: l应用:
) o" ^# a- H2 w. j+ q 通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。: k( G6 X+ z0 O6 b, ]: @1 b% }4 r
) g6 t+ Q$ I! e
实例:2 x: V* w5 ], P0 w4 ], a! } b% E
PROC go_home()6 T* Y& n8 O d% S/ e) F/ c
recover_flag:=1;) p$ {) `& I6 M' @+ I9 l1 g. X9 Y
IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】
) E+ q# U' _0 x2 f: A# u' C ~ MoveJ home,v1000,fine,tool1;
% q2 G4 F+ A- f3 n; [- J recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】
2 w5 B& P9 p+ |7 A# b+ a( Z IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】
; W0 h+ f2 I4 @) S- h ERROR
4 i/ P) b2 x/ w* C IF ERRNO=ERR_IODISABLE THEN* r6 ^, a) \$ h" W; K* a
IF recover_flag=1 THEN
. l! B" P) n+ @' C% q9 Q TRYNEXT;
* m4 a5 q9 k# R* n* v ELSEIF recover_flag=2 THEN2 ^/ S6 u+ K1 i5 R
RETRY;) [0 f7 E7 `# u7 B
ENDIF E( P1 c c N+ S4 n% \0 o
ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】
6 Z8 i- ]" u0 w' S, h. R$ K ErrWrite “IODisable error”,“Restart the program”;
; H. ?3 X3 W7 ~. Y$ `4 t& _ Stop;
) u- H+ J' F. x: n- \ ENDIF
! r" \. K4 S# U9 M8 I' A. @8 v$ { ENDPROC
5 H y2 ? Q' S# v" b1 w: ^4 s7 k$ i
- y4 y# N) x8 eError Handling:( a" Q* w. |- i3 f
- ERR_IODISABLE0 W- ]. B2 h& o9 e3 ^) G& f
超过最长等待时间,系统仍未完成输入输出板失效。. H9 d s) s' \; R: I8 L
- ERR_CALLIO_INTER
, J2 [2 S# E' @ C+ b/ x. @ 系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。; }6 w7 x- X$ P. O6 B* X7 S5 C
- ERR_NAME_INVALID) H8 @& H/ s+ U1 a
输入输出板名称错误或无法进行失效与激活操作。
0 \/ a9 ]9 @- \
8 J( u C6 k+ j. b# Z6 V9 |! S
8 D* _8 W' F) l" w |