注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程& n( b$ s9 o7 Y# ^, F9 F* x
IODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num )
: X9 e+ @( f0 {: B: pMaxTime: 最长等待时间。 ( num )# ?# o4 \( r& X h
" v& }$ T9 b7 a; Q 8 E* m9 P: U6 e
应用:
7 J9 M7 ^! }8 d4 W. [ 通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。
! [9 j, l Q, Q; \9 t) v- B
) Q( t% O# N# S) Q1 f8 s+ n& ~实例:
2 \, ^! F# w; k* d0 R/ p& |! D- ~9 Z4 d PROC go_home()
: {3 W7 ` y7 @1 h8 \ recover_flag:=1;) K0 v' t, f" Z$ R& x% k* L
IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】& v6 l2 }! n. q' ]9 @, E* q
MoveJ home,v1000,fine,tool1;$ |5 _4 H( U: c* T
recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】
, q4 o& F3 F: |9 p, ~" {( l IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】
0 ~4 S7 L4 Q1 [' b* U9 ^" Z; X; X ERROR
& x9 n0 h" }! d3 G! l IF ERRNO=ERR_IODISABLE THEN0 _. K6 }; Q+ p: {% ?4 g
IF recover_flag=1 THEN7 y- A! [9 g X2 a% g B9 z
TRYNEXT;; R, h, \: y) C* `
ELSEIF recover_flag=2 THEN( _# {* h$ Q8 i Q; D" S
RETRY;2 W# h9 N- `6 x3 g4 n
ENDIF
4 r/ {- x% ?; l& i6 Z ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】
- t8 _3 v1 j$ b; _' k0 z9 ^' T ErrWrite “IODisable error”,“Restart the program”;
2 B9 l$ ]6 p* k$ W Stop;; q4 A% a1 D. s" A+ {
ENDIF
j" i& u0 p1 b: n ENDPROC4 \# F8 z3 O: Y. q$ o* @* B% ?
q! s t4 p0 w9 q, P) v2 H" LError Handling:
, c) b' c8 o6 f- i2 H+ u8 G- ERR_IODISABLE
H, l5 b* a$ G7 c1 G) u9 L 超过最长等待时间,系统仍未完成输入输出板失效。
+ H, h$ A9 j, ?/ v, e- ERR_CALLIO_INTER/ }$ H4 n; U: M( C
系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。
8 y) B# o0 b7 z6 l: N) p- J( \- ERR_NAME_INVALID: e& |4 n: | w+ U! ^- p
输入输出板名称错误或无法进行失效与激活操作。
1 Y& ?( s8 W' J- h& W' f/ Q( x# `* A' J) |" _* x
& a. `' I# a( v7 ~* C |