机器人教程网

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

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

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

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

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

x
输入输出指令WaitDI-ABB机器人标准指令编程( _9 @0 F+ @: c  O
WaitDI Signal, Value
4 E8 s# R! F1 ~. }$ t8 q3 V$ W[\MaxTime][\TimeFlag];
8 Q; y! V/ D( bSignal:                输入信号名称。   ( signaldi ) 3 R+ X2 Q3 s  W4 z9 M3 j
Value:                输入信号值。           ( dionum ) $ t6 |4 c. B; B4 b" w1 `% I/ G
[\MaxTime]:        最长等待时间 s。( num ) 2 N' ]# P* V# _' ^6 A( @( V2 N
[\TimeFlag]:        超时逻辑量。           ( bool )
4 P6 x3 J+ R" |3 ?2 g& Y/ g# o
# I( n% N! j# k2 k, m+ `

5 k4 W, z6 J) G  ^0 z( I6 s应用:5 l. V$ |  W; L; r
        等待数字输入信号满足相应值,达到通信目的,是自动化生产重要组成部分,例如:ABB机器人等待工件到位信号。& G# J7 D# A" S+ D
- ~# k; v4 K3 d2 U4 @5 ]
实例:1 Y7 u; a, ~2 ?( `# G
        PROC PickPart(): J9 `# K& K5 N. y
          MoveJ pPrePick,vFastEmpty,zBig,tool1;
3 f6 V$ o. M6 L" d/ J          WaitDI di_Ready,1;  ABB机器人等待输入信号,直到信号 di_Ready 值为 1,才执行随后指令。
$ l' f+ D# P3 M/ K7 p          …
4 C& R5 D6 E% J1 o( O        ENDPROC- N& X8 V. c3 ]# U2 [/ }/ w0 V

% e( J3 G- n' G2 I. k# aPROC PickPart(). x: p9 d8 N& T( H  n
          MoveJ pPrePick,vFastEmpty,zBig,tool1;
  h- R0 ~& y( V          WaitDI di_Ready,1\MaxTime:=5; ABB机器人等待相应输入信号,如果 5 秒内仍没有等到信号 di_Ready 值为 1,自动进行 Error Handler 处理,如果没有 Error Handler,机器人停机报错 。
8 n; s9 J% V  F; j( _          …$ I3 ~& U3 m8 r1 Q: j# V) ~* y
        ERROR
# }/ Z4 A- p  y8 R( U          IF ERRNO=ERR_WAIT_MAXTIME THEN- x% V1 W: ~: E3 ^
            TPWrite “……”;9 s5 |8 n: U* r8 M9 Y) `1 a7 V
            RETRY;8 `4 }/ [+ b: z9 h: o1 u
          ELSE
- j3 s0 V4 A3 v$ o7 e            RAISE;
" m3 N5 L7 A+ |/ @          ENDIF" t4 b* S, X7 Q& f3 Z9 s$ Z/ d
        ENDPROC# H1 k% I% G% J: k& q. h

9 L( ?. l+ R6 M4 x. z  q实例:0 R) ~) w" g/ L: h3 ]
        PROC PickPart()+ J" f# a" i; L  w
          MoveJ pPrePick,vFastEmpty,zBig,tool1;
, S' e; z, M3 U9 C+ S- O& H# b          bTimeout:=TRUE;6 r; e8 k2 m# ?1 B. f) R7 {( ?  G
          nCounter:=0;) B! Q3 c  F- g7 M1 R5 O- a
          WHILE bTimeout DO
7 h% u% k# i4 V0 u, X+ z& ^            IF nCounter>3 THEN1 |3 d- n2 A+ k5 a0 i& b. [
              TPWrite “……”;
& h: l" ~- H4 c4 ^2 M: C1 s2 S+ x            ENDIF
0 F% w0 V% l$ ^# `2 G8 ]& I* Y            IF nCounter>30 THEN, o  B- \3 y  M3 b
              Stop;8 a6 e& e9 \  V" C7 [+ f3 o6 W
            ENDIF7 s/ H! {5 R5 _# e* T
            WaitDI di_Ready,1\MaxTime:=1\TimeFlag:=bTimeout;ABB机器人等待到位信号,如果 1 秒内仍没有等到信号 di_Ready 值为 1,机器人自动执行随后指令,但此时 TimeFlag 值为 TRUE;机器人等到信号 di_Ready 值为 1,此时,TimeFlag 值为 FALSE。
1 k" M2 [2 x. V8 [            Incr nCounter;         
5 M4 w' R" d; N8 R) f0 g( o          ENDWHILE- S0 _/ j1 w; Y# E  N4 C* L
          …
2 o8 T$ X# b) e1 k        ENDPROC
7 T  t+ g, R5 i
回复

使用道具 举报

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

GMT+8, 2025-4-3 20:46 , Processed in 0.063675 second(s), 22 queries .

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

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