机器人教程网

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

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

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

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

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

x
输入输出指令WaitDI-ABB机器人标准指令编程
6 L5 N+ V# L2 w$ A8 o' ~9 ^' xWaitDI Signal, Value
0 n, |% e' w; x* b[\MaxTime][\TimeFlag];/ ]$ q' H2 M) ]5 l; \$ ^4 J, L
Signal:                输入信号名称。   ( signaldi )
: ], O+ ]( M/ H# `3 B) z! U/ uValue:                输入信号值。           ( dionum ) / T  K9 ]& Y* T# f3 Y$ Z
[\MaxTime]:        最长等待时间 s。( num ) ) F5 m0 z) c( E* N/ X! _
[\TimeFlag]:        超时逻辑量。           ( bool )
) q/ o. W0 ^2 R" k- \% q0 ^. L0 k/ `( \$ I7 e

! _, L8 O6 a, E9 j2 S" l
应用:
. U2 S2 g8 X/ b        等待数字输入信号满足相应值,达到通信目的,是自动化生产重要组成部分,例如:ABB机器人等待工件到位信号。" n8 p  q2 ^( y) h# R

$ w9 D& Z7 Z) V- C) ~7 N+ j实例:) W. M6 k# I2 k7 `. b4 d0 C$ e1 t
        PROC PickPart()
, W" u- b/ }/ ]- R9 W          MoveJ pPrePick,vFastEmpty,zBig,tool1;4 U& P: ~' {; M$ \5 z' H
          WaitDI di_Ready,1;  ABB机器人等待输入信号,直到信号 di_Ready 值为 1,才执行随后指令。
3 ?2 }/ b; A* m- n) M6 }# U          …4 z2 w: w% `. M$ N/ }9 Q, ?
        ENDPROC
$ K% K& g2 j$ _0 [! c& S+ [5 j( d3 x" u; p
PROC PickPart()! f- w7 C9 [  r6 b- H0 I4 q% r" _# g
          MoveJ pPrePick,vFastEmpty,zBig,tool1;
4 a( P( k& f% K5 }2 N          WaitDI di_Ready,1\MaxTime:=5; ABB机器人等待相应输入信号,如果 5 秒内仍没有等到信号 di_Ready 值为 1,自动进行 Error Handler 处理,如果没有 Error Handler,机器人停机报错 。0 I' y( R: D) T2 ]' G- q& c
          …/ r% Q/ m+ p, w
        ERROR
6 o# A: p) i* ^' l" H9 |          IF ERRNO=ERR_WAIT_MAXTIME THEN
* f+ X. f5 I1 y/ P, Y+ |8 x9 x            TPWrite “……”;
2 e- r/ F5 K  B( f8 Z            RETRY;3 Y* k8 z5 W5 g( U: n
          ELSE/ i# Y9 i. f1 Y, }3 V: w
            RAISE;
0 \3 Y) }! _- n: e! H1 Q# a          ENDIF, }- B* w* G6 m) t
        ENDPROC
9 T, q! L* P9 y+ h, d1 |  `! q
7 t9 c6 _1 f  P) H" E0 B1 \实例:
; Z! b4 {6 w/ q! z( k4 A+ U        PROC PickPart()
# n- {' W& O9 }2 R2 Q# y          MoveJ pPrePick,vFastEmpty,zBig,tool1;. O% T1 y" k! o  ?6 b5 C
          bTimeout:=TRUE;
4 f; |0 z, I; h+ F5 _          nCounter:=0;
* g3 M1 ?: k  H1 w          WHILE bTimeout DO
8 ^" j  }( v& i& r0 A1 q            IF nCounter>3 THEN; c, [! |5 j. K
              TPWrite “……”;
2 J7 S7 w" `; v* C" x' B  Z0 T            ENDIF
, d# D1 ?$ b( ?2 M3 L" c8 C            IF nCounter>30 THEN! J3 {& ]6 T1 q* D" s# k6 T
              Stop;; s  i8 Q( T0 S& R( N
            ENDIF0 Y: \& L# F# H- r3 Y. k+ G
            WaitDI di_Ready,1\MaxTime:=1\TimeFlag:=bTimeout;ABB机器人等待到位信号,如果 1 秒内仍没有等到信号 di_Ready 值为 1,机器人自动执行随后指令,但此时 TimeFlag 值为 TRUE;机器人等到信号 di_Ready 值为 1,此时,TimeFlag 值为 FALSE。7 [8 Y/ ~* p: Q3 E. {- b
            Incr nCounter;         
' o2 W- l- G8 i; a3 r( p          ENDWHILE; [% m* v( N6 c( ~& j* F
          …& |5 n6 r/ q  I" Z& W% _5 t4 s
        ENDPROC+ y* s2 F4 O- {) T9 g
回复

使用道具 举报

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

GMT+8, 2025-10-29 17:25 , Processed in 0.067092 second(s), 21 queries .

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

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