注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程0 Q$ K, K: `7 z. z2 U: P6 |3 j
IODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num ) ) n; w0 C9 M! _, {
MaxTime: 最长等待时间。 ( num )
0 T+ S [+ l/ v# C) _
! F i1 J# i" u, o- _
1 l% T" N* M9 n0 r应用:$ A/ q- s" o2 [" t) F' y
通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。
# k8 g: s5 u( Q+ M6 b2 e7 B" J- E5 e( o' P' Q, R
实例:
* ?, b6 z5 d9 H) @! P. ?8 }$ j PROC go_home()% k% o3 l3 q; i8 O8 o8 S, E% V9 {
recover_flag:=1; v( f. C. K( w- I( t1 H
IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】
3 q% v, s5 k; |) _- y; M MoveJ home,v1000,fine,tool1;
" t1 x- Y/ l- [1 i& p4 C- Q" K8 r recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】
; J3 S) ~1 [' ]8 l3 M IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】
- u$ @$ Z4 Y& m5 t3 a5 k ERROR
3 q& r5 X8 n! D4 c) Q- D) K IF ERRNO=ERR_IODISABLE THEN3 X; L& p( [; R4 [
IF recover_flag=1 THEN
9 c2 j1 S) y2 }4 Z( _0 D TRYNEXT;1 X8 G: P% o( }. X' ]4 m
ELSEIF recover_flag=2 THEN
6 S! v: L0 p2 E% |, N4 M RETRY;
4 k1 l" X7 Z% ^, d ENDIF
5 Q9 z+ e, L- W; k) S: n' }5 o ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】
( { j# G. X9 n" I; y ErrWrite “IODisable error”,“Restart the program”;
& e+ a+ I2 [- M( G% E5 T Stop;6 j3 v7 Y( r2 v( C+ R3 q
ENDIF8 e* x' ^$ e2 P$ X3 i
ENDPROC
4 h3 Y' H' r8 _5 C7 q) I5 I" P+ S" B/ a8 \. q& h6 i" Q6 Y
Error Handling:
% E5 D% z C9 T* G- ERR_IODISABLE
" k: [9 I2 K5 ~# f4 @# V& J. ` 超过最长等待时间,系统仍未完成输入输出板失效。# x: z! A' H# K! _+ J3 F
- ERR_CALLIO_INTER
2 B, N% p# f, J2 V 系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。$ P) p; m, @' P5 d* J
- ERR_NAME_INVALID
+ l/ D2 I; [ E, E4 Q* s5 O 输入输出板名称错误或无法进行失效与激活操作。
# R% O$ j- a. e" g/ a
4 ^+ T6 A& ]5 }6 A; c
! `" T( y8 N, T. l |