机器人教程网

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

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

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

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

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

x
输入输出指令WaitDI-ABB机器人标准指令编程3 u) z8 n- q. w: y# ]
WaitDI Signal, Value
! @2 D+ q; J/ r" _! \[\MaxTime][\TimeFlag];
' J( p7 J) r0 p7 X, E( `Signal:                输入信号名称。   ( signaldi )
  i; [* L/ y* B2 CValue:                输入信号值。           ( dionum ) - v: s  S' A/ M* _$ U; E
[\MaxTime]:        最长等待时间 s。( num )
1 D* P$ q0 H$ f  u[\TimeFlag]:        超时逻辑量。           ( bool )" s6 p. M* i3 c3 g. Z. @

9 ^% b# B) ^! X4 |
% s% z( [9 O- f. a
应用:0 D+ ?; s! b* C9 k8 A# b. \
        等待数字输入信号满足相应值,达到通信目的,是自动化生产重要组成部分,例如:ABB机器人等待工件到位信号。
5 g# a9 O7 I) t0 x8 Z' r# T, a% D" s( @' I6 d, _: K
实例:
1 Z7 Q) E' \$ G% g; x. P; w        PROC PickPart()/ v( Q0 i5 I$ j; W( R& Q
          MoveJ pPrePick,vFastEmpty,zBig,tool1;
# N) W( g: @- j, ?  d+ b: a          WaitDI di_Ready,1;  ABB机器人等待输入信号,直到信号 di_Ready 值为 1,才执行随后指令。+ M% x& U) ?& A
          …
1 I- ]  q  g4 K3 {( A        ENDPROC) D+ _8 d0 H9 a7 Y

1 ~! j% `0 r3 m. Y; TPROC PickPart()/ J4 m: w( j% B( t! B1 A, C
          MoveJ pPrePick,vFastEmpty,zBig,tool1;
; F' o& q6 O4 z# U7 |% ?          WaitDI di_Ready,1\MaxTime:=5; ABB机器人等待相应输入信号,如果 5 秒内仍没有等到信号 di_Ready 值为 1,自动进行 Error Handler 处理,如果没有 Error Handler,机器人停机报错 。
; }  ?( K1 U1 |$ T* z          …
" l+ d4 |* T6 a* f; L; ]        ERROR* d7 U  O$ N. P/ ]4 N+ i
          IF ERRNO=ERR_WAIT_MAXTIME THEN9 h; Z1 w( R5 g$ r
            TPWrite “……”;% N$ ^9 M8 B6 y6 T  _5 |$ e
            RETRY;
! A9 o; {% ?+ _& j5 m          ELSE
/ P" q5 e, J3 C1 G$ f' |            RAISE;6 P5 X% {: T: D$ G
          ENDIF% x3 n; l$ a1 v% X
        ENDPROC
( }; E* Q. r4 O. ?) Z1 ]7 U* C  q& H' c; H5 A, I7 d+ _+ H  {
实例:
. f7 B" c7 ?9 M        PROC PickPart()/ R  t& q/ h2 ?  k: D2 i
          MoveJ pPrePick,vFastEmpty,zBig,tool1;
8 F5 A" W& w. P0 @          bTimeout:=TRUE;" k: M2 B$ `  J( P7 B
          nCounter:=0;5 K1 r' Y5 C  H5 C! `* _/ g0 a
          WHILE bTimeout DO
+ ^$ t. G  s* s: D& g: d. X            IF nCounter>3 THEN3 Z: A0 f9 U. m- H* X- {/ d8 e
              TPWrite “……”;9 L- v& T. r% x
            ENDIF, D' z: e. T* W9 L9 s! i
            IF nCounter>30 THEN
& p1 Z5 N& X2 K              Stop;
2 ?5 m6 s4 C2 I& B            ENDIF- b  D; i9 k1 d" I" j
            WaitDI di_Ready,1\MaxTime:=1\TimeFlag:=bTimeout;ABB机器人等待到位信号,如果 1 秒内仍没有等到信号 di_Ready 值为 1,机器人自动执行随后指令,但此时 TimeFlag 值为 TRUE;机器人等到信号 di_Ready 值为 1,此时,TimeFlag 值为 FALSE。/ B2 H! ^& q/ N: P9 W" y
            Incr nCounter;          $ q/ D# n+ Y9 T
          ENDWHILE
) J+ V5 G4 @* b          …
) \; C! k/ T4 n% I        ENDPROC
* h/ o0 t: x7 H5 X1 L- |# J
回复

使用道具 举报

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

GMT+8, 2024-9-28 02:16 , Processed in 0.065247 second(s), 22 queries .

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

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