机器人教程网

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

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

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

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

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

x
输入输出指令WaitDI-ABB机器人标准指令编程
7 D) K, M" u% N& `* h$ @% EWaitDI Signal, Value ; J- _2 O, d6 a* u: T7 `) P
[\MaxTime][\TimeFlag];) z9 A2 Y& }3 m( a
Signal:                输入信号名称。   ( signaldi )
5 L! q. W+ [! c7 ?Value:                输入信号值。           ( dionum ) ! `" n- E  c2 R4 U  n: B
[\MaxTime]:        最长等待时间 s。( num ) 4 \+ ?' d( N. i( B( X$ \
[\TimeFlag]:        超时逻辑量。           ( bool )
: Q2 Y# D( G  k" A4 w: C7 c, @" O* ^8 p% Y9 `: m" [7 D3 L

( H* \; N3 y. M2 |! D0 E, l) r
应用:
- w4 }0 ~  ^; j9 P( p5 Y        等待数字输入信号满足相应值,达到通信目的,是自动化生产重要组成部分,例如:ABB机器人等待工件到位信号。" g3 \- ], g6 j9 ~- q
" f& O  f$ O" @. D" Z) Z
实例:
- E% l! j* _4 R0 ]' w9 M        PROC PickPart()) v3 L% e. m8 Y; Y0 ]8 p
          MoveJ pPrePick,vFastEmpty,zBig,tool1;) w2 Z0 {# p0 {+ ^9 W9 @: a
          WaitDI di_Ready,1;  ABB机器人等待输入信号,直到信号 di_Ready 值为 1,才执行随后指令。
( ^8 ?3 k3 z2 D9 U! l' v, c          …- x- g8 L& K$ N/ C( G& h; z
        ENDPROC
. b% u; Y8 B: L. T' a) e2 D, M" u
PROC PickPart()8 g5 W9 Y% G7 M0 B& j% z4 H
          MoveJ pPrePick,vFastEmpty,zBig,tool1;
2 j: ?5 L8 a# S" y          WaitDI di_Ready,1\MaxTime:=5; ABB机器人等待相应输入信号,如果 5 秒内仍没有等到信号 di_Ready 值为 1,自动进行 Error Handler 处理,如果没有 Error Handler,机器人停机报错 。1 Z/ F1 V5 G: c% `) D4 A- j
          …3 e5 O  `8 g5 k* u
        ERROR
' A2 H5 g* r3 J8 I. Q9 ?/ d" U          IF ERRNO=ERR_WAIT_MAXTIME THEN& J! ?% I2 t$ k
            TPWrite “……”;
6 r" X4 V( y* x* [( V+ D            RETRY;8 L! H- U1 l; ~+ C' ~4 A
          ELSE
) f$ m( n" \3 w) @* f; h# r2 J, H            RAISE;
; \' e5 C/ h6 n          ENDIF, R# `! s9 j( Z8 _& s! ]
        ENDPROC
5 ^# w3 i2 P; m  S' o* G  E; c( G- D& S( q$ A, M) S
实例:: Y; |$ f0 R& Y& e6 L2 ~+ P& I" U
        PROC PickPart()  y% I; ?$ Y% I) F
          MoveJ pPrePick,vFastEmpty,zBig,tool1;+ x2 c3 e9 ~+ e
          bTimeout:=TRUE;7 c( [" L! y# o
          nCounter:=0;, ~/ M: [( j. R* [# Y
          WHILE bTimeout DO1 T' c4 }7 H3 R5 e) `4 w: h
            IF nCounter>3 THEN
& H5 k  x" H. k, h7 U! K6 E              TPWrite “……”;
" l# T2 ?: v* W) X( X. h" ^. Q            ENDIF
! T; w: p# E* W6 T( r2 o            IF nCounter>30 THEN
5 r8 L" {, }( [; {# k# C7 }1 R. O              Stop;
  x. B" }. {; ], O6 l% ~1 }; h* P            ENDIF
- c8 D. L% r  f            WaitDI di_Ready,1\MaxTime:=1\TimeFlag:=bTimeout;ABB机器人等待到位信号,如果 1 秒内仍没有等到信号 di_Ready 值为 1,机器人自动执行随后指令,但此时 TimeFlag 值为 TRUE;机器人等到信号 di_Ready 值为 1,此时,TimeFlag 值为 FALSE。" x9 Y, k* P+ I
            Incr nCounter;          0 f* j/ Q; @! ~6 n) P- O8 X
          ENDWHILE
" B2 \$ e' J' a2 v( b9 R          …. x/ s' f- x; {& c
        ENDPROC
) \8 g" m) d; s% M9 k
回复

使用道具 举报

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

GMT+8, 2024-6-1 18:45 , Processed in 0.060363 second(s), 22 queries .

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

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