机器人教程网

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

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

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

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

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

x
输入输出指令WaitDI-ABB机器人标准指令编程
* \6 }1 Q$ u% h; W6 j4 @WaitDI Signal, Value
* @2 j( e) i( v8 }" O; L, H+ [[\MaxTime][\TimeFlag];
* v, h$ x/ }' w/ ~: @$ cSignal:                输入信号名称。   ( signaldi ) - |9 }% k: C8 H5 U* l* @1 H7 `4 r- G
Value:                输入信号值。           ( dionum ) 4 s! S. u  W, {8 e
[\MaxTime]:        最长等待时间 s。( num ) : T" H# l. u% d9 [( ~( i
[\TimeFlag]:        超时逻辑量。           ( bool )
7 m% ]( ]8 Q( ^- R$ o
; P. ]0 n! X8 \
1 e5 b. F; f+ s2 v) ?/ l* h6 D$ r
应用:
5 Q6 y+ ]' G* l2 ?        等待数字输入信号满足相应值,达到通信目的,是自动化生产重要组成部分,例如:ABB机器人等待工件到位信号。
7 E: B0 @/ ]& S2 H
6 L6 I2 e& n& y* _1 b; H实例:
: W3 W' C; `  a2 d$ z& L8 c! _        PROC PickPart()
$ J- J, R9 B( y* y! l          MoveJ pPrePick,vFastEmpty,zBig,tool1;+ V# ]# U. f( E8 d+ j6 r0 G
          WaitDI di_Ready,1;  ABB机器人等待输入信号,直到信号 di_Ready 值为 1,才执行随后指令。8 ?) N: h. V, N0 Y. V; U5 ~
          …7 E/ S/ {$ H# U7 t$ u
        ENDPROC* A/ ^5 [, W, D- V  H( ?

- B" e* F* F+ Q  l, w! Y4 H0 _8 \PROC PickPart()% Q! F2 I5 K$ B* O* K
          MoveJ pPrePick,vFastEmpty,zBig,tool1;+ O5 B9 ~; ~  C, X+ K6 X
          WaitDI di_Ready,1\MaxTime:=5; ABB机器人等待相应输入信号,如果 5 秒内仍没有等到信号 di_Ready 值为 1,自动进行 Error Handler 处理,如果没有 Error Handler,机器人停机报错 。$ D) \/ c  }3 o' P0 h# W' V: Z
          …
4 s4 z* C) V% g5 P) l        ERROR
3 R1 a2 R" m% ~, A/ c% j) ~' C' ~          IF ERRNO=ERR_WAIT_MAXTIME THEN
8 `3 W9 I3 k  Y; \- J            TPWrite “……”;
2 @. R/ _/ ^% N            RETRY;1 V# H  G* J' j7 G: [+ M
          ELSE
4 y# K* K' m5 @; p5 F* y; x6 `/ j            RAISE;
& O; ^! Q* h  ^! \( L, p          ENDIF6 \7 M% ?& R$ P
        ENDPROC8 y  Q8 l4 i; E% C2 V. }  l4 |

. s4 x3 n8 k* B+ R: M" u- F实例:; u6 h+ H; a9 o/ F9 m+ g5 S
        PROC PickPart()4 g. u, W0 o+ w7 a
          MoveJ pPrePick,vFastEmpty,zBig,tool1;
4 S, r$ A. Q8 V6 ?8 K6 E: ^          bTimeout:=TRUE;% O  y! F) q1 q! y6 ], ~4 y$ j# r
          nCounter:=0;8 J" y% Y0 P; c
          WHILE bTimeout DO* s" M: A8 Y6 m0 S: P
            IF nCounter>3 THEN9 d& M0 n% E$ a9 a* s: i
              TPWrite “……”;
2 G( n3 ]; R9 v4 i* O7 c            ENDIF
  E2 P9 Y+ @7 V+ u6 b% S; H            IF nCounter>30 THEN) o/ Y3 B, N/ D7 W
              Stop;
+ D* ^3 v" w/ G% |+ f7 R# Z- h+ H            ENDIF; G% U0 ^! \9 U7 v1 G+ l, W$ o
            WaitDI di_Ready,1\MaxTime:=1\TimeFlag:=bTimeout;ABB机器人等待到位信号,如果 1 秒内仍没有等到信号 di_Ready 值为 1,机器人自动执行随后指令,但此时 TimeFlag 值为 TRUE;机器人等到信号 di_Ready 值为 1,此时,TimeFlag 值为 FALSE。
) p% l# z5 `0 ?4 B5 E            Incr nCounter;          ( v; O5 L4 {  f  o  b' H. O# k
          ENDWHILE& D; {6 V1 h7 ~6 t
          …5 v5 x+ ]1 e4 }- d
        ENDPROC7 ?4 [) n8 `7 V: E, i, O
回复

使用道具 举报

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

GMT+8, 2025-4-2 23:27 , Processed in 0.068215 second(s), 21 queries .

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

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