注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程
' L( b2 n% U# P0 q! b2 h. c8 `6 HIODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num ) ) ~; b5 V+ ]+ W1 `
MaxTime: 最长等待时间。 ( num )
' @* n) f5 P8 Q7 | v5 v# k8 r- V" i9 ]8 u5 \
( k0 z1 U- B! y& d% H: N7 n# k应用:
" o& S& Z" s; _" v9 b3 t$ t 通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。5 x5 l# c. q: h# n# x
; d$ |. m; G: w( E! |
实例:
" s( T; R9 [+ H v; g) n+ F2 m0 l PROC go_home()$ x0 d4 D M( [1 t7 F: |) b; p
recover_flag:=1;# h- Q' T$ `5 T/ b( x
IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】, T6 G; w) u5 Y( R1 M1 }. G1 x
MoveJ home,v1000,fine,tool1;5 y3 U5 \# m, [+ k5 Q
recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】! I- W4 g/ r) M5 `; x0 N
IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】 y& _0 U/ T, x$ z8 Y0 d% v
ERROR
1 p) m/ {( o3 Q" W' I- @ IF ERRNO=ERR_IODISABLE THEN
5 Y3 o, C" K* G IF recover_flag=1 THEN$ f, G- ?; [. h5 a8 f. V
TRYNEXT;
1 }0 x: ]% K+ ]0 ~ ELSEIF recover_flag=2 THEN+ ^ K4 K; d2 a2 t
RETRY;
: N$ O/ J: j9 P( F* r, x( {+ S ENDIF* T1 {! v+ x7 T) G, {
ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】7 r* b M0 X: S, Y5 L" u" T: p
ErrWrite “IODisable error”,“Restart the program”;
# U8 F4 {; S, D6 X Stop;3 Y. `& J b9 J: o, R: h
ENDIF5 l# m3 p/ O9 A/ |8 h
ENDPROC
3 J! F% D1 g4 m
' D& B" L5 S. r. i ^Error Handling:4 p- v* [0 V9 R' m. ?7 _
- ERR_IODISABLE
/ ?0 F5 O5 M: N# g6 F8 k1 [ 超过最长等待时间,系统仍未完成输入输出板失效。. [* {) ]/ U. f- {- f" o1 D
- ERR_CALLIO_INTER
s# a7 l" n5 J3 G: L1 Q 系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。
+ X& z2 t3 \5 K; f- ERR_NAME_INVALID
~$ x3 C3 V+ m1 K+ ` 输入输出板名称错误或无法进行失效与激活操作。9 a! w1 L' ]# }! E1 ^
. \0 J8 L( a. R
i$ c1 {; y$ [3 M% f3 ~% ^& M
|