机器人教程网

 找回密码
 立即注册
查看: 6378|回复: 0
打印 上一主题 下一主题
收起左侧

[ABB示教] 输入输出指令WaitDO-ABB机器人标准指令编程

[复制链接]
跳转到指定楼层
楼主
发表于 2019-9-3 17:02:01 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

注册用户,获取RB币,享更多免费资源下载和阅读权限。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
输入输出指令WaitDO-ABB机器人标准指令编程
* z. R; W* K$ P4 ?
WaitDO Signal, Value [\MaxTime][\TimeFlag];
Signal:                输入信号名称。   ( signaldi )
4 B5 K$ G0 [' e2 y7 U* pValue:                输入信号值。           ( dionum )
" D+ @( B0 Y+ F, u2 L5 |7 I- n% W* c[\MaxTime]:        最长等待时间 s。( num ) % W! W$ k, G/ [' S& d+ n0 w) x
[\TimeFlag]:        超时逻辑量。           ( bool )
( d6 R: W& O8 {6 ?
3 B$ _% p+ _* c( {

8 a, A/ b! t+ B8 r3 Z  s应用:& d" U0 p. w6 Z. a# _( @7 k
        等待数字输出信号满足相应值,达到通信目的,因为输出信号一般情况下受程序控制,此指令很少使用。
4 J9 L; p% ~4 p) U2 l' K9 s( y2 F: e" ~+ B( c
实例:
. A4 R0 P: v: H! C1 i' B! v        PROC Grip()
& j7 M# w" S# a; o0 V5 |9 j" c  K, L          Set do03_Grip;' Q+ y7 ^* C9 f2 r9 X" r" g
          WaitDO do03_Grip,1;  →ABB机器人等待输出信号,直到信号 do03_Grip 值为 1,才执行随后相应指令。
1 |% g4 L9 g0 z- S  I. k; j" R          …5 U1 _. L* A; p2 A9 N
        ENDPROC
) O  R1 y' |# X# e) ~0 w9 i
1 O/ ^1 F8 }  K6 a" v: \PROC Grip()
8 a+ G" F9 z8 l, R1 F          Set do03_Grip;: u5 _+ s5 `! |1 O- G
          WaitDO do03_Grip,1\MaxTime:=5;  ABB机器人等待相应输出信号,如果 5 秒内仍没有等到信号 do03_Grip 值为 1,自动进行 Error Handler 处理,如果没有 Error Handler,ABB机器人停机报错 。
2 `4 t- b6 I7 o+ d' c* w          …
, e( `6 F1 m/ ]& \        ERROR
2 o3 c4 O( ]  c8 n5 d8 X$ e( N          IF ERRNO=ERR_WAIT_MAXTIME THEN
  h9 D8 f4 i- ]) w" `% _7 [            TPWrite “……”;- f+ W! z- V, ~
            RETRY;! q5 j8 N$ a1 N+ E) D
          ELSE
/ H$ U$ j+ K) C( f6 I; [            RAISE;
8 z0 ]- \5 W% m- ^0 S          ENDIF0 R& E: z' \0 A* E
        ENDPROC& M2 K7 C( `" u- C

7 n. K  K# q9 M% E+ V9 [实例:
, u3 ]+ L, G% p& W8 Y# P% g        PROC Grip()
; g9 q% S0 i( m( F/ N: L: v! |0 L# ]          Set do03_Grip;
4 D0 z# R5 |& p$ ]2 {& t$ l  y          bTimeout:=TRUE;- q# B5 x9 M/ t3 X/ {# z" P. Y
          nCounter:=0;3 E/ B$ |! n$ j! i# _% y
          WHILE bTimeout DO2 i+ P0 N7 c0 A! `1 B5 @5 b
            IF nCounter>3 THEN6 n) P& ~' S, G5 c* |% _& C
              TPWrite “……”;0 S# R- r6 Y) }/ R
            ENDIF
: v6 s; N( ~- e& Z7 C            IF nCounter>30 THEN5 x- U/ R- _7 Z2 q
              Stop;
" m. O* s7 j9 J            ENDIF/ J" C; {! d2 A3 @8 S) V' U
            WaitDO do03_Grip,1\MaxTime:=1\TimeFlag:=bTimeout;  ABB机器人等待到位信号,如果 1 秒内仍没有等到信号 do03_Grip 值为 1,ABB机器人自动执行随后指令,但此时 TimeFlag 值为 TRUE;ABB机器人等到信号 do03_Grip 值为 1,此时,TimeFlag 值为 FALSE。" y! a0 j- T  @  Q

! Z/ c2 e9 o9 Y6 g7 S            Incr nCounter;         
8 ^; k. ^! w6 H. r/ H; _          ENDWHILE" y2 @0 D6 u; P# k' q3 p$ P
          …" z/ V  L7 k" k$ j
        ENDPROC2 [0 {; `+ }/ V, a% {9 h
回复

使用道具 举报

QQQQ:345103927|Archiver|手机版|禁闭室|问答社区|机器人教程网

GMT+8, 2025-6-27 02:50 , Processed in 0.062230 second(s), 22 queries .

Powered by Robotjc.com(网站备案信息:粤ICP备17111093号-1 )

快速回复 返回顶部 返回列表