机器人教程网

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

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

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

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

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

x
输入输出指令WaitDI-ABB机器人标准指令编程
# u4 ?$ U  ?- l0 X9 \WaitDI Signal, Value 7 g0 S% s9 H  I0 e) I% w
[\MaxTime][\TimeFlag];
  ~/ b/ ~0 z) T+ x  fSignal:                输入信号名称。   ( signaldi )
) E! g, h% [+ O% eValue:                输入信号值。           ( dionum ) 8 h% a0 W% t& d' F1 b$ K
[\MaxTime]:        最长等待时间 s。( num )
$ C) O5 O& x' B- e8 C[\TimeFlag]:        超时逻辑量。           ( bool )
, g' a) S8 ?! I0 G
3 }1 i3 G) |. r+ z; m1 e# A4 p( P

, N$ V9 W/ B* _应用:
2 h% X  {- n% p" Z        等待数字输入信号满足相应值,达到通信目的,是自动化生产重要组成部分,例如:ABB机器人等待工件到位信号。
: f+ K6 Q- L6 [6 v3 H
. W( C2 T6 R, d' j2 v# d; c实例:
1 W7 ^8 ^* [9 s        PROC PickPart()
; f; W2 M8 x* j3 H8 m5 c! N! H; b: L5 C/ l          MoveJ pPrePick,vFastEmpty,zBig,tool1;
& G; f+ i5 l, C& d  X          WaitDI di_Ready,1;  ABB机器人等待输入信号,直到信号 di_Ready 值为 1,才执行随后指令。
6 H! v* ~  M; ?- t) {5 |& q, W. D          …
8 n  G, b. x1 m: w6 _        ENDPROC
' q- y% S) p9 n* M4 j
) f# M) F1 h' y) M& @  L) `PROC PickPart()
% i5 {* m' u% X& N+ q9 z" [4 y5 @          MoveJ pPrePick,vFastEmpty,zBig,tool1;5 \. g0 I* q' c7 @
          WaitDI di_Ready,1\MaxTime:=5; ABB机器人等待相应输入信号,如果 5 秒内仍没有等到信号 di_Ready 值为 1,自动进行 Error Handler 处理,如果没有 Error Handler,机器人停机报错 。
0 x' q( g1 w  ~& Y" B          …% n6 R2 o8 o1 k. g" k3 n- g
        ERROR
% E# s" r" k5 d+ J( W          IF ERRNO=ERR_WAIT_MAXTIME THEN( }& D' A6 M0 R' ]
            TPWrite “……”;
) v% g1 [" Y0 N            RETRY;
4 d5 o& c6 k6 r% d, g          ELSE) k7 t/ I  e- A" s" z, m
            RAISE;: b' {" q. B) S1 _( n
          ENDIF  |: C$ t, I- [! j
        ENDPROC; u/ a( I) `$ Q% t

" w3 |3 D# _) c$ m9 j实例:7 q5 I9 X7 k0 z$ ^* k' L
        PROC PickPart()- ]: _! Q. @. E( A1 ^
          MoveJ pPrePick,vFastEmpty,zBig,tool1;
& T& h4 U+ ]$ N          bTimeout:=TRUE;  l3 m0 Q: P' b6 k' X$ K
          nCounter:=0;
. Q- @& Y) Q( }3 m! [# A/ ~+ {          WHILE bTimeout DO
0 G/ ?0 V: T& J2 B% t# Q" F            IF nCounter>3 THEN+ u% U$ a3 Y& W: d
              TPWrite “……”;
4 l& t8 W4 w. W$ @            ENDIF% T7 G( R& ]6 {8 H2 q& ~9 ~9 f# R$ ~
            IF nCounter>30 THEN
. g) A- r! ?2 Y8 k( n* L/ S5 S4 N              Stop;8 G2 \" f/ M$ e/ Z/ Y- Q" J
            ENDIF
5 Y* Y! G2 L0 [5 [            WaitDI di_Ready,1\MaxTime:=1\TimeFlag:=bTimeout;ABB机器人等待到位信号,如果 1 秒内仍没有等到信号 di_Ready 值为 1,机器人自动执行随后指令,但此时 TimeFlag 值为 TRUE;机器人等到信号 di_Ready 值为 1,此时,TimeFlag 值为 FALSE。* p/ a: _+ X4 Y* D& _3 ?# L2 }
            Incr nCounter;          , `4 Z" h/ B9 ^5 a
          ENDWHILE
& O; Z& [* w5 E* ^1 p' ?2 E8 A% @          …7 n( F4 R, \  Q3 N! u7 P7 s
        ENDPROC% S* ~+ ]0 O+ Z3 P( _
回复

使用道具 举报

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

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

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

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