机器人教程网

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

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

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

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

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

x
输入输出指令WaitDI-ABB机器人标准指令编程
# E  ~, H+ W$ C' I( D+ IWaitDI Signal, Value ! C6 y7 n( Y3 S6 v  X
[\MaxTime][\TimeFlag];: j/ [: Q" g! P) Z
Signal:                输入信号名称。   ( signaldi )
4 s5 `  Z  g- g) ?# L" C% r$ E) [Value:                输入信号值。           ( dionum ) & E" B7 S" ^+ g: `
[\MaxTime]:        最长等待时间 s。( num ) 8 E% b" [/ {" C: k. M* v0 o5 h2 p
[\TimeFlag]:        超时逻辑量。           ( bool )& E4 R8 _6 u) Z. q

! i  L( x# q" Y' t: L& o% A1 J
& V% L. O" X, l6 e0 s
应用:+ e/ M& V+ W% R/ F' |/ F" O8 z4 {
        等待数字输入信号满足相应值,达到通信目的,是自动化生产重要组成部分,例如:ABB机器人等待工件到位信号。
" S  `+ X, G# ?* l' o2 f0 V) X; [  q+ c  S7 D. K, V% ]9 p
实例:
: n. v: S: U/ |! ^) I* W" a        PROC PickPart(). ]5 c; I- i, F$ B1 ?. u# A0 ]$ ]3 S
          MoveJ pPrePick,vFastEmpty,zBig,tool1;) b: u) t8 e. M+ @
          WaitDI di_Ready,1;  ABB机器人等待输入信号,直到信号 di_Ready 值为 1,才执行随后指令。5 ]; w0 u4 Q& F" g" A+ W: n
          …( ^- l% B$ O9 G1 \
        ENDPROC
; K* B5 J$ H) J* m, t  y( G- h" Q' X7 s4 b3 c& H- K2 T
PROC PickPart()8 D+ g: S) @0 M. R; Y# v- b
          MoveJ pPrePick,vFastEmpty,zBig,tool1;' A- d+ T( S7 L" O, S
          WaitDI di_Ready,1\MaxTime:=5; ABB机器人等待相应输入信号,如果 5 秒内仍没有等到信号 di_Ready 值为 1,自动进行 Error Handler 处理,如果没有 Error Handler,机器人停机报错 。* Q1 J6 h6 B7 x2 T
          …
- _9 x! m8 O) E, O        ERROR% s: B% t  G% N% ^" R
          IF ERRNO=ERR_WAIT_MAXTIME THEN
3 e" S0 B1 u  E+ i# ^! ]            TPWrite “……”;4 _( U' k7 e% z- ?8 u
            RETRY;
4 W& B) R+ C" ]; _( z8 {0 R          ELSE" w9 n4 {; U& o' r1 F$ P& C. {+ c
            RAISE;
$ I2 d% Q) g! _2 E/ R5 O          ENDIF! |% u. Q$ G' ~* H9 N
        ENDPROC; j5 h; B/ k9 q8 `
% \* P+ @7 [  ^0 O
实例:0 N7 E/ ~4 M0 D( K+ i6 ^) J4 w
        PROC PickPart()
7 `! R6 G* |9 p# H          MoveJ pPrePick,vFastEmpty,zBig,tool1;9 e" V0 Z) M3 e
          bTimeout:=TRUE;
5 U* D3 O8 c2 J2 D/ _+ k& y$ d          nCounter:=0;
9 X! h) ~" i% B7 K5 l          WHILE bTimeout DO
6 T6 f# c4 T) ^' _/ u7 I$ @, |            IF nCounter>3 THEN/ @4 N- ]/ r4 a+ N$ d! ]
              TPWrite “……”;
5 u& C+ O/ e, }4 }+ [            ENDIF8 g! ?: R$ }3 N) m
            IF nCounter>30 THEN
( w& N* Y1 N$ U! G& l- E2 ]! u              Stop;
, e9 B$ l/ _  u/ m            ENDIF
9 _) K. ~; J" [% k) Z            WaitDI di_Ready,1\MaxTime:=1\TimeFlag:=bTimeout;ABB机器人等待到位信号,如果 1 秒内仍没有等到信号 di_Ready 值为 1,机器人自动执行随后指令,但此时 TimeFlag 值为 TRUE;机器人等到信号 di_Ready 值为 1,此时,TimeFlag 值为 FALSE。
# q# W) M+ y1 V4 A1 }! H            Incr nCounter;         
, o* x/ A$ n. f" V+ _          ENDWHILE0 P) q- Z9 ]9 o  n  U3 r: `
          …7 W6 g2 R, D9 W# k
        ENDPROC" U4 C9 C: E5 B# U& R. q& z% ]
回复

使用道具 举报

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

GMT+8, 2026-9-12 14:09 , Processed in 0.065088 second(s), 22 queries .

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

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