机器人教程网

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

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

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

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

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

x
输入输出指令WaitDI-ABB机器人标准指令编程
) h: n) H5 e+ |' I9 `: [* _WaitDI Signal, Value . {1 M+ e5 X' c* ?7 f
[\MaxTime][\TimeFlag];. y1 ~% i" Q/ H3 r* ^
Signal:                输入信号名称。   ( signaldi )
4 }$ x# {0 I/ J( KValue:                输入信号值。           ( dionum )
: S9 i2 p' @9 I# y; F& S[\MaxTime]:        最长等待时间 s。( num )
" c. }5 T, V, l# K) T/ i6 ?5 t[\TimeFlag]:        超时逻辑量。           ( bool ); W3 h" Z- `+ K/ Y) y

/ `% y- `; W! r* n% Y1 U3 B7 L

8 T" C4 d5 w7 e! b应用:6 t. S  ^4 g& s9 [
        等待数字输入信号满足相应值,达到通信目的,是自动化生产重要组成部分,例如:ABB机器人等待工件到位信号。
' B! p* d5 ?, w  P( @( P6 l, R
) H3 P) g1 ?  j实例:4 e2 Z& d7 _. }1 @0 D6 j6 h- K2 q# q
        PROC PickPart()) P7 H  {; U/ x& k2 A
          MoveJ pPrePick,vFastEmpty,zBig,tool1;( ?& ]* _3 }& A0 w* K6 }
          WaitDI di_Ready,1;  ABB机器人等待输入信号,直到信号 di_Ready 值为 1,才执行随后指令。
8 g9 n; U7 _: G8 N* o) e4 e          …$ R1 h+ C4 f8 S) o; B
        ENDPROC  P. _- e( l4 \: i# N6 {4 W, |
0 G( `8 N7 |$ P9 l- o* l
PROC PickPart()
4 R& m+ S6 J9 a          MoveJ pPrePick,vFastEmpty,zBig,tool1;
7 \; K7 ~9 C( y          WaitDI di_Ready,1\MaxTime:=5; ABB机器人等待相应输入信号,如果 5 秒内仍没有等到信号 di_Ready 值为 1,自动进行 Error Handler 处理,如果没有 Error Handler,机器人停机报错 。
4 V/ M) N9 S6 q" @5 S1 e, Q          …  A6 Y7 d' k0 \6 o) X/ z2 e/ N& k
        ERROR. q/ S/ W! ~1 `" b* O( i
          IF ERRNO=ERR_WAIT_MAXTIME THEN5 m7 h, l7 j2 e' y7 n
            TPWrite “……”;0 y  A' a& j7 R( _1 }5 Z" X
            RETRY;
5 {0 T  h" Z5 [# ^          ELSE& @6 G, ~  g) b$ v
            RAISE;
9 w6 Q+ S- \) |" `( }; Q4 ~          ENDIF& @5 W7 n$ G: j. S4 d' u
        ENDPROC
, i& b0 E/ ~" x: o  G+ B8 h" ]7 ?' Q) ^7 f. _; y; d! E' u
实例:
6 l5 L: w# g* U) s% ]6 m        PROC PickPart()# M# \. t" I" l
          MoveJ pPrePick,vFastEmpty,zBig,tool1;: j/ K8 d/ {' T* ^9 q
          bTimeout:=TRUE;
  H  B4 {9 N) u1 q5 y- P" C5 z          nCounter:=0;
' w- ~/ M1 T2 e* V- S! \          WHILE bTimeout DO
& b7 V; |$ k- i6 M/ x! |            IF nCounter>3 THEN3 _% x# ?6 ?" t% I
              TPWrite “……”;
! D; B" |! v* T) |/ ]4 \            ENDIF
/ b8 l* B0 y- G            IF nCounter>30 THEN3 n0 N% Z' l( I6 [1 k1 k
              Stop;7 W- l" y( J9 M7 O9 m6 l* \
            ENDIF
/ o8 O' ^/ e% w: _; ?$ l7 N            WaitDI di_Ready,1\MaxTime:=1\TimeFlag:=bTimeout;ABB机器人等待到位信号,如果 1 秒内仍没有等到信号 di_Ready 值为 1,机器人自动执行随后指令,但此时 TimeFlag 值为 TRUE;机器人等到信号 di_Ready 值为 1,此时,TimeFlag 值为 FALSE。
7 `$ Q+ h: l8 {) E( k0 a" O            Incr nCounter;         
- r$ w9 O- h8 J          ENDWHILE: N9 L6 v& W5 D! s  q: F0 c- p
          …$ g* @: F+ a+ w, Y
        ENDPROC6 L5 a3 m8 X9 l" \7 ?, O; X
回复

使用道具 举报

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

GMT+8, 2024-5-18 22:06 , Processed in 0.061319 second(s), 21 queries .

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

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