注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令WaitDO-ABB机器人标准指令编程1 I8 C/ K4 x& N
WaitDO Signal, Value [\MaxTime][\TimeFlag]; Signal: 输入信号名称。 ( signaldi )
$ S( Z4 n; X6 C2 v7 a" RValue: 输入信号值。 ( dionum ) # G: I7 }6 m. a, g& B
[\MaxTime]: 最长等待时间 s。( num ) 2 F, z4 V$ @, @4 s. c$ G. J
[\TimeFlag]: 超时逻辑量。 ( bool )
z) Z) t% c8 _% W% F' F
* U+ w7 o# O% l) s$ k
, ]# S. V" j* c$ W应用:
6 b; E2 R A/ M 等待数字输出信号满足相应值,达到通信目的,因为输出信号一般情况下受程序控制,此指令很少使用。, O& g" h; A1 ~, U4 y
5 _# _$ _1 m" ~ |+ Y实例:
: q) G8 `4 f; {9 `1 O4 } PROC Grip()
9 q+ ^) X2 E7 z: t$ `% G Set do03_Grip; T" C$ @6 k6 P8 ~ K: d
WaitDO do03_Grip,1; →ABB机器人等待输出信号,直到信号 do03_Grip 值为 1,才执行随后相应指令。
+ q H& e" `: K8 Z' ]! Z …9 }5 |4 V1 A# X
ENDPROC( K7 r, J+ Z# g- O* T% y
# M# r0 c" p# S! dPROC Grip()
3 `8 b) C7 e. i" p0 |. P Set do03_Grip;, r3 p& s6 U( H: p
WaitDO do03_Grip,1\MaxTime:=5; →ABB机器人等待相应输出信号,如果 5 秒内仍没有等到信号 do03_Grip 值为 1,自动进行 Error Handler 处理,如果没有 Error Handler,ABB机器人停机报错 。$ `- |5 h1 l' G/ f$ H" B/ M# s
…8 j5 ~* o+ `. \/ x3 ^
ERROR/ B P5 c4 y( K m
IF ERRNO=ERR_WAIT_MAXTIME THEN
7 T- o: ]0 l( L& Y TPWrite “……”;0 D9 k% E; o2 G
RETRY;
6 g2 k+ L% _$ t, A: a }5 n ELSE
6 ^/ P: ^' |. f5 m. h0 e# Y RAISE;9 d$ o& l0 l! q! P( n* [( J
ENDIF1 v* a0 H6 X" {8 T! G8 Y
ENDPROC% w* U; f$ q9 ]6 i. Q" ], I
6 Y; _% G, c; b( k实例:0 |& z+ J+ R$ |" T/ V+ p. N
PROC Grip()
' ^1 H8 [( K' R3 }0 s Set do03_Grip;9 @5 D% i( h" Y
bTimeout:=TRUE;
( _0 E% o# D) @# Y: A- I; Z _* s nCounter:=0;
" }4 p" j( K- Y6 Y WHILE bTimeout DO
$ ? h9 \$ E. K6 X IF nCounter>3 THEN
5 e+ U- J' y6 H TPWrite “……”;0 s/ R4 J3 h( _! Y i
ENDIF
% }( W, T( z4 l9 B# \ IF nCounter>30 THEN8 B: o2 x6 _6 u
Stop;
5 K& b( z. r3 t/ @ ENDIF
7 y# T' i3 r5 b7 L2 R$ s( M5 Q WaitDO do03_Grip,1\MaxTime:=1\TimeFlag:=bTimeout; →ABB机器人等待到位信号,如果 1 秒内仍没有等到信号 do03_Grip 值为 1,ABB机器人自动执行随后指令,但此时 TimeFlag 值为 TRUE;ABB机器人等到信号 do03_Grip 值为 1,此时,TimeFlag 值为 FALSE。
; N: |1 s7 c; ?9 _$ X& w/ e9 j$ M X/ g
Incr nCounter; 9 x2 O* x9 g- _! C+ b
ENDWHILE
4 I+ o4 l2 [) A7 N# T5 k# |' @4 ] …- b2 F+ d( G4 \
ENDPROC
# p+ \3 ?% U/ T. P |