注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令-IODisable-ABB机器人标准指令编程! x: K* ?5 \7 P0 Q+ d
IODisable UnitName, MaxTime; UnitName: 输入输出板名称。( num ) . b3 `6 k! @9 A' P! z4 f6 a4 R
MaxTime: 最长等待时间。 ( num )
^" q: h& Y, B! m* D+ U; O8 m- g% K" J
! D! N+ K6 z8 S2 y应用:
* V. O( ?, m- W! d0 R/ h2 `2 h" n3 T 通过指令可以使机器人输入输出板在程序运行时自动失效,系统将一块输入输出板失效需要 2-5 秒。如果失效时间超过最长等待时间,系统将进入 Error Handler 处理,错误代码为 ERR_IODISABLE,如果例行程序没有 Error Handler 机器人将停机报错。
8 W# ?1 N8 w; s# R' c2 X
, A" U4 x2 G: L5 B N实例:) v2 S; X5 _ G% q0 l9 ?
PROC go_home() F8 B1 _4 f2 j" e
recover_flag:=1;
1 \/ ~5 f! C1 Q# ^2 {, e3 f IODisable “cell1”,0; 【输入输出板 cell1 开始失效,最长等待时间为 0,肯定进入 Error Handler 处理。】$ {- z! |: z* q2 ~( [
MoveJ home,v1000,fine,tool1;3 y% p2 d5 i4 ?4 Y1 Y6 x E
recover_flag:=2; 【利用机器人移动至 home 的时间完成输入输出板失效。】% X! _$ e6 |$ e8 w6 s
IODisable “cell1”,5; 【确认输入输出板 cell1 失效。】
3 T3 Z# I9 W. R- ^" P ERROR, t9 R J. o( g
IF ERRNO=ERR_IODISABLE THEN7 i, }+ B; W/ B+ h9 l. A
IF recover_flag=1 THEN
8 G b$ a9 [& |% A TRYNEXT;
6 z$ w; c3 d' {2 X) H4 o4 @/ j; ? ELSEIF recover_flag=2 THEN. Y5 l; u, U4 X/ q2 \; V# S, A1 ^
RETRY;8 D. B- b" x" [! K6 l d
ENDIF/ c, U% ]. l6 J: N
ELSEIF ERRNO=ERR_EXCRTYMAX THEN 【连续 5 次 RETRY,仍无法完成输入输出板失效。】( ]8 C0 l9 \3 N# A: `7 {% I
ErrWrite “IODisable error”,“Restart the program”;
, _) T Z9 k, I) K X& K3 ]1 t Stop;1 _- }! K2 M; K% m( j" @+ ?) ?! V! v
ENDIF% j. m g J+ P, ?
ENDPROC
0 v3 l1 x) W9 u
( B. V. ~1 n* K7 V$ k+ k' v1 QError Handling:
" V: ?' i6 D8 ]6 ?- ERR_IODISABLE
8 r0 t+ L0 Y& w8 j6 `+ I" h 超过最长等待时间,系统仍未完成输入输出板失效。; j U( L% @' |) g
- ERR_CALLIO_INTER4 [9 H' N5 D! Q1 |2 `- D3 s6 e
系统在执行输入输出板失效与激活时,当前输入输出板再次被失效或激活,形成冲突。
2 }& ^ p( k/ u3 P3 s" A5 |- ERR_NAME_INVALID
4 g4 H5 K8 c7 w1 W 输入输出板名称错误或无法进行失效与激活操作。- s, l8 K0 s1 e0 t" X
( u( |: L* v [' n! F! m2 t4 R- n. }% q+ j# s, H! V& Z
|