注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程
$ t% e$ t1 Q7 T: N$ F, [% vIODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num ) + a% d3 ~+ B, _* h3 O% ^, J
MaxTime: 最长等待时间。 ( num )) m9 f! b/ t' [* n/ M! _
7 \/ | @# ?4 N: C* n
# I( l4 Q4 U6 [" T应用:
# E' ]3 m" G" \) \, Y" a 通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。
% A* e U* a1 k6 d, C y" s+ u; s9 L8 b9 S
实例:" M! {6 `) @$ R, O* h1 ?, U
PROC go_home()
7 L: F* [+ V- M, y recover_flag:=1;
8 b/ s9 a x3 b IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】
! h: Q4 D/ L/ v/ O- n4 o. c( w5 y @ MoveJ home,v1000,fine,tool1;! m( U3 w3 e( m7 M7 l9 ?, \, D
recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】3 F& l$ u' L& T9 [, a9 I( {& {/ u8 W
IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】
. B7 A1 P; J) p* q3 E: _ ERROR" |+ X# Z7 `& q% m
IF ERRNO=ERR_IODISABLE THEN
1 b8 s& m: w' m) N1 U' u' k' a IF recover_flag=1 THEN4 _, N3 i. F- ]& ~5 @6 c G j' ~/ e
TRYNEXT;/ e/ W- x# [/ l% K: x1 D! v. S
ELSEIF recover_flag=2 THEN C. c& [0 P% a/ O
RETRY;% ?* Q6 y: S3 Y
ENDIF
+ I. E) x) F' ]. p ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】
2 |/ _, c3 ^% [$ U+ j0 x: q ErrWrite “IODisable error”,“Restart the program”;
% n2 I/ U2 C d7 l Stop;
3 z+ V) i+ [. p$ ]/ }1 y+ G5 k+ ? ENDIF7 R$ ^; Y- z* D% s
ENDPROC2 G9 R4 n; X) h# V0 {- Z- \
6 I1 l5 N6 c/ A) g' x" K7 yError Handling:! N; A8 a- }, }! f7 |
- ERR_IODISABLE
5 J# @ `+ @8 k% N! T* ~) T 超过最长等待时间,系统仍未完成输入输出板失效。% r% e1 H" I, v3 P4 V! K7 E
- ERR_CALLIO_INTER6 |& V. E' P( Y5 y
系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。
& I. m* z) Z/ ]% E" ~+ x: C- ERR_NAME_INVALID! p0 c) X! s) l! _: T
输入输出板名称错误或无法进行失效与激活操作。! B4 B3 U3 l) _9 H6 j. P
% E, a4 k! `3 _( i. T, j
5 K. r" Q( K% o: v! q1 g! d9 T |