注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程0 ~6 ?& f; E0 R# V
IODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num )
1 M9 R# H6 T# h* A; MMaxTime: 最长等待时间。 ( num )/ ?, o$ v+ f2 L$ E' {
: j" W" ~7 z4 n% i9 t ! X" h6 S* L% `* n7 |8 W0 l
应用:: s/ [7 D, z2 |4 { f2 l) E8 ? J& l
通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。; L) R& R8 w. f8 l2 t& h
& S4 _7 L0 {( q9 K# o& m实例:$ r- I; m) [3 i. |( O' y! m
PROC go_home()
1 Z+ W3 V9 c& ~ recover_flag:=1;
2 t% d6 V' L i8 R IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】1 \/ a+ L% H8 P( P
MoveJ home,v1000,fine,tool1;/ m6 M$ X8 f' S j
recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】
4 @. E0 f1 A; L IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】
' {( M; P, c. Q4 X! |6 u ERROR! c; q6 }/ i( u4 G8 O
IF ERRNO=ERR_IODISABLE THEN
g8 T# \# m& V* n% b+ ^5 ] IF recover_flag=1 THEN
( p# l6 P9 n W% s* ]7 [7 ^ TRYNEXT;8 u2 Y \% @6 i6 R% E _1 ]
ELSEIF recover_flag=2 THEN
0 x& ~# f3 _& l) A/ h RETRY;' W% V9 Q" j$ P- s) j( \) ^
ENDIF: z) \$ t7 c) L( N- k5 ~- ~% B
ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】. ^/ w8 Z% x( I+ Q$ H! R I
ErrWrite “IODisable error”,“Restart the program”;
& e$ z8 D8 E# s% ~" }! R Stop;
- B+ L- K- D3 b( a: M: x' i ENDIF& C6 T* x, q7 q! l* `- I
ENDPROC- O/ q" m, g, l z/ Y
) |4 J O" }1 }
Error Handling:
! g) m0 [* E9 W/ E- ERR_IODISABLE
4 ~, A, ]: t5 u. x% E% R/ G7 ]# K 超过最长等待时间,系统仍未完成输入输出板失效。, D' N9 x- Y! [5 u8 T
- ERR_CALLIO_INTER
( z0 N! c: V# |2 L9 O( {0 e 系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。# _$ d4 R4 Z3 Z) P) j. b5 }
- ERR_NAME_INVALID
7 Z1 k3 A8 L7 q: P" _: Q3 U 输入输出板名称错误或无法进行失效与激活操作。
: R0 C7 B1 h7 n, `' n) o- X+ [- h+ U! Z3 T, O; t) s4 X8 j
5 @/ ]/ @8 s0 R F |