机器人教程网

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

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

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

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

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

x
输入输出指令WaitDI-ABB机器人标准指令编程( F, t* g, m$ p/ }7 Y9 L% o
WaitDI Signal, Value
  c8 ^3 S0 F0 F0 `0 I[\MaxTime][\TimeFlag];1 T. @( P! U1 f' _7 h
Signal:                输入信号名称。   ( signaldi ) % z( a; T3 b/ ]! W0 o
Value:                输入信号值。           ( dionum ) ! J  [$ o' W5 ^6 V* y. }: W
[\MaxTime]:        最长等待时间 s。( num )
6 Z5 m& H' M! i/ ]; Y) k( ~[\TimeFlag]:        超时逻辑量。           ( bool )
. C; E- o# s2 I) }' S2 @: {3 x: g

, [( f7 m/ {4 b$ G
应用:" W2 r  J" x9 Y0 I
        等待数字输入信号满足相应值,达到通信目的,是自动化生产重要组成部分,例如:ABB机器人等待工件到位信号。" l" `) ^4 d- e; ~% p0 N
+ i  T! R0 j6 C" [- K4 ^4 J
实例:1 V7 E( ^+ _$ E9 T/ M: g& V# w
        PROC PickPart()2 {: Z( }* \" h$ ~
          MoveJ pPrePick,vFastEmpty,zBig,tool1;
( z9 O* {' X7 \* a# y) a5 ~0 T. x          WaitDI di_Ready,1;  ABB机器人等待输入信号,直到信号 di_Ready 值为 1,才执行随后指令。
5 b6 s& K6 J1 o* B; x          …) t( @6 O: I5 d+ T2 o" ?
        ENDPROC: F! U7 \5 F; L) u' H
" ~$ T% p% z" o$ N/ G, c6 u8 w
PROC PickPart()7 j8 ^  i( m$ D
          MoveJ pPrePick,vFastEmpty,zBig,tool1;& S5 [( J1 r/ s" P' |
          WaitDI di_Ready,1\MaxTime:=5; ABB机器人等待相应输入信号,如果 5 秒内仍没有等到信号 di_Ready 值为 1,自动进行 Error Handler 处理,如果没有 Error Handler,机器人停机报错 。6 n1 f7 F8 T% J; l1 N6 X) j
          …
6 P, b! I" o/ i        ERROR6 L0 a* [+ W+ N2 \! C  G) N
          IF ERRNO=ERR_WAIT_MAXTIME THEN
- @* Y9 n  j' V' b            TPWrite “……”;6 j1 |( I1 |) r; {
            RETRY;
' a) r4 ]5 u; ]          ELSE8 H  r+ H" f8 i/ u
            RAISE;
- m/ H5 n2 g  l          ENDIF3 v0 t  f2 {5 i6 t( H% e% Y, u. Z
        ENDPROC
. s! [  }7 @- V, d
4 b1 B2 M, {/ }8 t! c实例:4 F+ H1 O3 r4 c: E* j3 m" e5 _
        PROC PickPart()4 c! P1 x5 Y9 o) d* l8 z
          MoveJ pPrePick,vFastEmpty,zBig,tool1;, z  a" t3 A" E2 l- l6 P
          bTimeout:=TRUE;
3 V3 B: p, o2 V3 y+ Z2 C3 ?+ l          nCounter:=0;. i& ^$ x! M' s* W; Q
          WHILE bTimeout DO
( d7 C) l" k7 e. Q            IF nCounter>3 THEN$ w- ^0 O6 v$ Y; c" V% \7 {
              TPWrite “……”;/ x& ]2 p# \0 x% Z! K) B
            ENDIF
8 j- c& X! d/ L  I$ s            IF nCounter>30 THEN6 z' S6 |& \, R
              Stop;
# P4 |' Q* Z/ w4 F5 O) q& p            ENDIF
. }* j3 \8 `& V) }            WaitDI di_Ready,1\MaxTime:=1\TimeFlag:=bTimeout;ABB机器人等待到位信号,如果 1 秒内仍没有等到信号 di_Ready 值为 1,机器人自动执行随后指令,但此时 TimeFlag 值为 TRUE;机器人等到信号 di_Ready 值为 1,此时,TimeFlag 值为 FALSE。, u7 e) x# u' n  p! T9 S. ~
            Incr nCounter;         
. Y; L9 W; k6 `! n- W          ENDWHILE5 m- F- ]. z1 a& A" ^/ ^# }0 f
          …
5 A" {: f+ ~/ C4 v, ^: w& o        ENDPROC
# ]4 g& \7 W7 `$ S/ k" d- g$ i
回复

使用道具 举报

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

GMT+8, 2025-5-1 18:09 , Processed in 0.065399 second(s), 21 queries .

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

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