机器人教程网

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

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

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

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

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

x
输入输出指令WaitDI-ABB机器人标准指令编程
8 i- Z" e" v" OWaitDI Signal, Value + ]2 Z8 x. }! D! S! U
[\MaxTime][\TimeFlag];% R+ j, I$ h/ k- g! y
Signal:                输入信号名称。   ( signaldi )
* J( `+ G' s% r6 ~0 N# JValue:                输入信号值。           ( dionum )
6 j/ _8 l' h& W( Q" I[\MaxTime]:        最长等待时间 s。( num )
9 }3 @$ k1 O3 \0 I8 D( d$ i/ I[\TimeFlag]:        超时逻辑量。           ( bool )8 B4 Z* Z) i$ ^" I- @
7 m" ^/ a' X0 {, o

( q7 T% g% e2 C% @
应用:
; c% a7 z) M; c' B$ h        等待数字输入信号满足相应值,达到通信目的,是自动化生产重要组成部分,例如:ABB机器人等待工件到位信号。
6 E- a3 Z: P* D1 g
$ i3 t- d% x) K+ l+ e实例:
% x5 h6 S0 P  [7 @- x/ t        PROC PickPart()
, w- Q# Z+ U1 ~- a2 o4 t          MoveJ pPrePick,vFastEmpty,zBig,tool1;
( U. t' j! `" S- f          WaitDI di_Ready,1;  ABB机器人等待输入信号,直到信号 di_Ready 值为 1,才执行随后指令。& l' f2 k4 E$ A
          …
3 x1 V" O5 N- n5 X( u$ t        ENDPROC
9 o5 l$ [3 B' T! g, ?: T! w1 N; B2 D" F
PROC PickPart()
5 H/ B/ F  t) y. T- G          MoveJ pPrePick,vFastEmpty,zBig,tool1;6 i& q2 X* y# ~. B$ Y
          WaitDI di_Ready,1\MaxTime:=5; ABB机器人等待相应输入信号,如果 5 秒内仍没有等到信号 di_Ready 值为 1,自动进行 Error Handler 处理,如果没有 Error Handler,机器人停机报错 。& d# ~$ F$ a0 `, n6 R; O$ u7 V
          …4 \' s: P. H: C6 G1 _& L- O2 h* g
        ERROR% _9 D' j' i$ H4 W; u% g% F
          IF ERRNO=ERR_WAIT_MAXTIME THEN
+ b4 M* t8 q! S+ D2 {2 E            TPWrite “……”;
$ r3 b  |0 q" L            RETRY;' i) M6 `" C, v: Z& @: C! ^) O8 B
          ELSE" @/ f- B; a* x: M/ Z
            RAISE;
9 K& i6 I5 w: ]! [+ m; Z7 `! {8 m- n! {          ENDIF
8 X1 j! A4 l9 M$ u$ ^        ENDPROC$ b7 L% I0 s8 ~5 }$ x! n) I3 m8 X

/ G5 @% v1 _9 f" X* D4 y' r6 R8 u实例:- N3 b" J2 Z9 o7 {+ K1 n
        PROC PickPart()
- t0 Y; y4 V, [5 _# P, }          MoveJ pPrePick,vFastEmpty,zBig,tool1;
+ D& y# D, [% t  u4 M! o          bTimeout:=TRUE;' w6 l! w) H2 x+ J
          nCounter:=0;
4 [$ ]7 E# w& h9 [7 T- E          WHILE bTimeout DO
6 @; U( e9 {2 ?$ ]. k/ R            IF nCounter>3 THEN
9 A" N2 ^" U2 w7 ^1 L# v9 e              TPWrite “……”;
1 q* R+ U/ ?  I3 Z9 ?( ^9 E            ENDIF: f; B0 C1 y* p# s* y2 z
            IF nCounter>30 THEN/ c9 X! ], i. |4 Y3 V
              Stop;) O# x  O& m( J6 @4 i( V( ]
            ENDIF
; ^8 f! d+ i% ~            WaitDI di_Ready,1\MaxTime:=1\TimeFlag:=bTimeout;ABB机器人等待到位信号,如果 1 秒内仍没有等到信号 di_Ready 值为 1,机器人自动执行随后指令,但此时 TimeFlag 值为 TRUE;机器人等到信号 di_Ready 值为 1,此时,TimeFlag 值为 FALSE。- O- B7 r, Y! C, X4 _5 m2 h! P
            Incr nCounter;          * W. r# L0 b- N7 @) D1 @' c4 v
          ENDWHILE
% w8 \4 \! `2 l( T) n# r3 O/ q          …2 f' k! e) g0 w/ @/ d5 P
        ENDPROC; J3 w+ J, n' v$ [7 T2 ^
回复

使用道具 举报

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

GMT+8, 2025-7-12 20:42 , Processed in 0.081249 second(s), 21 queries .

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

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