机器人教程网

标题: 输入输出指令WaitDO-ABB机器人标准指令编程 [打印本页]

作者: 我是机器人    时间: 2019-9-3 17:02
标题: 输入输出指令WaitDO-ABB机器人标准指令编程
输入输出指令WaitDO-ABB机器人标准指令编程- x% \) E9 I# [( D2 c. a; E
WaitDO Signal, Value [\MaxTime][\TimeFlag];
Signal:                输入信号名称。   ( signaldi )
! b: o+ q* J# r0 U" s& w. AValue:                输入信号值。           ( dionum )
0 a. J% j1 i3 G4 g3 C* x5 S[\MaxTime]:        最长等待时间 s。( num ) 9 m3 e, J2 f7 p
[\TimeFlag]:        超时逻辑量。           ( bool )% X; C' o6 U/ }" e0 T7 Y# J
, Q, F) C! S* g" H$ M$ i! o

& M( j$ S) \6 N
应用:
" D5 [/ J" [, q7 j        等待数字输出信号满足相应值,达到通信目的,因为输出信号一般情况下受程序控制,此指令很少使用。- [7 e, B- [* a1 Y9 G  {
% C$ \$ I( H4 S7 a3 d: H) Z
实例:
1 ^, H8 @; B# p        PROC Grip()
* j( H: q7 b7 S          Set do03_Grip;
4 h) _$ N+ L# b          WaitDO do03_Grip,1;  →ABB机器人等待输出信号,直到信号 do03_Grip 值为 1,才执行随后相应指令。: C  I& q( @2 p3 j  \
          …
# m' L& `. k& n3 U/ K! V        ENDPROC) N+ Z' X6 q0 V+ x6 }

! t4 f  M! v' M6 U1 OPROC Grip()
, Z! z9 B( U1 S          Set do03_Grip;3 H7 S( e9 _+ R9 s$ Q( |8 X' X& F1 n
          WaitDO do03_Grip,1\MaxTime:=5;  ABB机器人等待相应输出信号,如果 5 秒内仍没有等到信号 do03_Grip 值为 1,自动进行 Error Handler 处理,如果没有 Error Handler,ABB机器人停机报错 。' J2 {5 v1 z5 z$ n$ X' ?! @
          …* @  c  O+ [6 ?; M( Q, Z
        ERROR/ P' a5 R6 k6 F0 c  b/ u9 M, x
          IF ERRNO=ERR_WAIT_MAXTIME THEN* `  h& S+ t9 T: W& W; M
            TPWrite “……”;, D( b& y: H! ~9 }  R' O6 g
            RETRY;, t% H) v1 e" m, s" n
          ELSE' T( Z* D: \2 U
            RAISE;
( c" a" M2 T, Z          ENDIF  ~" m3 \- A6 d: G
        ENDPROC
  ?3 \% y0 x& k
. ~5 Q7 ~7 i/ n实例:& }5 O2 Z; k; T+ Q  F  C( r3 r
        PROC Grip()0 Q+ D0 Y6 f$ h0 D6 Z% |) y' S
          Set do03_Grip;
- T' ~( g0 M* t0 N5 W# [0 [- w          bTimeout:=TRUE;7 {# ?8 }8 \* U5 h; V- \- Q
          nCounter:=0;
$ D8 t0 k! h) d          WHILE bTimeout DO6 Z6 C, h  I: P. C/ f2 [
            IF nCounter>3 THEN
4 v0 H, E- f. B* n" L# q- P. b' a              TPWrite “……”;
# m1 |% W' P. `9 u            ENDIF( _- k" M" m' n, g) z5 A
            IF nCounter>30 THEN: g% f. G2 m! u! Y
              Stop;- k% b; w- I: M7 }$ r8 q6 _
            ENDIF9 t" T/ W# |) ~, p) F# Z6 i
            WaitDO do03_Grip,1\MaxTime:=1\TimeFlag:=bTimeout;  ABB机器人等待到位信号,如果 1 秒内仍没有等到信号 do03_Grip 值为 1,ABB机器人自动执行随后指令,但此时 TimeFlag 值为 TRUE;ABB机器人等到信号 do03_Grip 值为 1,此时,TimeFlag 值为 FALSE。1 J7 c( ~2 j6 |- r3 }/ o/ k0 k" j8 y
6 K' _$ k: o3 b/ w, I
            Incr nCounter;         
$ X% o6 F% Y0 c" \9 S6 P          ENDWHILE
) h  G8 F' k8 K/ P          …. ~, I) [( U% G4 j0 g& x
        ENDPROC/ D2 w) T: V( {# t2 B; |





欢迎光临 机器人教程网 (http://robotjc.com/) Powered by Discuz! X3.2