注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程! Q/ e6 e0 n+ f' y9 I* r3 s
IODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num )
1 D# q* G: T" _MaxTime: 最长等待时间。 ( num )
/ r1 F6 r/ W1 x1 d0 {
4 H: l$ ]: _, a5 P4 \) T6 j & k0 g1 o" c" h& G1 R& b
应用:, s0 y+ Q$ g) ?9 U' c; G
通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。
1 w' B$ O# H' L; S- u& n0 |$ ]/ I! @$ @1 s* k& d
实例:
7 K3 _1 M, z, H! N& n PROC go_home()
- }* u7 h1 D5 z/ S# K2 a7 m* ^5 L0 [ recover_flag:=1;6 K0 k1 u# A9 J6 V" K
IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】# `3 f* b1 |! j- H
MoveJ home,v1000,fine,tool1;& y9 n. [6 k/ ^( b- `* V' l
recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】, ? ^8 e+ @+ L& F/ F: `- A
IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】
" ~4 e' P! m, M, D/ w" X# P7 [+ B+ k ERROR
8 f9 |2 D- E' ^8 E IF ERRNO=ERR_IODISABLE THEN
$ g- ^* t6 q* A5 e" w IF recover_flag=1 THEN
% D+ u/ t* F; j' D" A TRYNEXT;
6 r! e, u( r4 h( I# y( c ELSEIF recover_flag=2 THEN
- t+ Q4 \3 ~$ C" H( ]2 I3 N RETRY;
4 t3 M$ K5 [1 K3 ^9 ? ENDIF
5 Y2 U* \* p! L( e$ T ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】% o. t& g) l N1 U& @
ErrWrite “IODisable error”,“Restart the program”;
+ ]+ P" ?( t% K" Z/ s Stop;
% ~# F$ u3 s- d. P u( r- K ENDIF& V# k g2 a, l% }
ENDPROC
" {; z% V8 g" Q; `" ?0 I/ v1 L( q" ?0 i% x$ F& T# C
Error Handling:8 L. G7 O& T! @. a. h8 E
- ERR_IODISABLE; t% L+ }$ [& _( x
超过最长等待时间,系统仍未完成输入输出板失效。
" g" E" d& A! m# M- ERR_CALLIO_INTER$ S! Z- S* i7 ~# d9 {7 z
系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。! D8 R B' o' F F% }4 p) o
- ERR_NAME_INVALID
' Q7 c0 l+ k# I& r& T; r% m$ G, H 输入输出板名称错误或无法进行失效与激活操作。# I2 g8 K3 ^- b6 v
) i) z, S$ W9 Y. \6 ]
8 Y9 Q1 B' j6 ] |