机器人教程网

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

作者: 我是机器人    时间: 2019-9-3 17:02
标题: 输入输出指令WaitDO-ABB机器人标准指令编程
输入输出指令WaitDO-ABB机器人标准指令编程, }- f* T4 O* S/ ]6 ]3 r9 q$ r
WaitDO Signal, Value [\MaxTime][\TimeFlag];
Signal:                输入信号名称。   ( signaldi )
& s5 u: F0 u4 ?0 S4 Z1 yValue:                输入信号值。           ( dionum ) 8 B, p8 [6 z# \1 Z" O( {
[\MaxTime]:        最长等待时间 s。( num )
. `/ ~* \: [: H1 u5 a/ ^1 F[\TimeFlag]:        超时逻辑量。           ( bool )
* T  K8 k+ K  p# E3 K% E" X* J9 k) l' f& ]& Y" J! V. y5 Z$ t


2 {6 a8 ^. G2 x: e5 a, \3 t" m) A6 F应用:7 z5 E: X+ i' i' U1 Q7 o
        等待数字输出信号满足相应值,达到通信目的,因为输出信号一般情况下受程序控制,此指令很少使用。
- x2 R) O: n% f: {. l- I& ?( @0 g& D  X  i. ^$ a$ U
实例:
1 L: I: O: W2 L% p/ h- E" q( f* U        PROC Grip()
0 ?, m3 P. U- M1 V2 P          Set do03_Grip;) f8 g" r2 I% G) e6 A
          WaitDO do03_Grip,1;  →ABB机器人等待输出信号,直到信号 do03_Grip 值为 1,才执行随后相应指令。
. ]5 Y8 X+ u' F1 r+ S! l          …
& b" w% G  F/ y6 i1 v( h: A        ENDPROC
; V5 D/ g, P  I! O+ e: ?( X& u: t* ]
9 z1 F0 c: {- v8 ]% I) l* `PROC Grip()) y" P3 p$ V! u: o- v
          Set do03_Grip;
+ H* T' i) }0 r, x+ e, U          WaitDO do03_Grip,1\MaxTime:=5;  ABB机器人等待相应输出信号,如果 5 秒内仍没有等到信号 do03_Grip 值为 1,自动进行 Error Handler 处理,如果没有 Error Handler,ABB机器人停机报错 。
5 I9 y4 [( Q( K' f* h* r          …
0 o9 W. T3 p: |: V* S        ERROR4 A* G2 s/ C! Z' i$ F. b
          IF ERRNO=ERR_WAIT_MAXTIME THEN
+ K7 o" \- J  O. [& N3 ^            TPWrite “……”;
# s6 u% l, f( Q: ?2 N% N) B            RETRY;7 ]8 t6 P" `9 f2 P% J( \* w. g+ V
          ELSE: h- ?# o3 L  @  b+ |9 ^+ _0 Y3 ]5 P
            RAISE;
; D9 J1 E  M# D6 b1 A7 A          ENDIF. B' F. ^& K& s$ e
        ENDPROC
  C- g. X& T1 M+ Y7 }" R; j% _0 i/ q$ F0 q5 u
实例:
* {# K# r6 f# H- O) w# b" \        PROC Grip()) u$ G: Y+ X6 z* K8 {
          Set do03_Grip;& y0 a, @" P" K0 Y# T
          bTimeout:=TRUE;/ o5 f$ {6 ?" z4 k: q- I% g
          nCounter:=0;
; P5 u  R+ o% I2 u+ c          WHILE bTimeout DO
2 v' }2 D2 q* P% X& u5 s9 \            IF nCounter>3 THEN. i! ^- d- P9 c, `5 q
              TPWrite “……”;
* G7 W, I' q0 w+ o            ENDIF
4 |3 r0 A( t9 i: ]  w1 \* F# @" m( ~            IF nCounter>30 THEN3 Q8 R. r7 \8 d
              Stop;
( j  n" i7 D( |4 J; P( h- H8 p/ Q            ENDIF8 _) y5 W7 {# z4 g' z
            WaitDO do03_Grip,1\MaxTime:=1\TimeFlag:=bTimeout;  ABB机器人等待到位信号,如果 1 秒内仍没有等到信号 do03_Grip 值为 1,ABB机器人自动执行随后指令,但此时 TimeFlag 值为 TRUE;ABB机器人等到信号 do03_Grip 值为 1,此时,TimeFlag 值为 FALSE。
) R" ?' E8 s5 D
0 H% A* Y7 t; S  O2 l            Incr nCounter;         
5 M& d* D+ H; s2 K          ENDWHILE
. t$ P9 ^4 D) i' f, y          …4 _" E$ R+ P4 {% P7 v
        ENDPROC* l& ^/ l0 h# K





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