机器人教程网

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

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

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

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

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

x
输入输出指令WaitDI-ABB机器人标准指令编程
% {* P$ D3 A! F9 G, S% J; [WaitDI Signal, Value
; |1 f2 E6 i, e1 A& |. J[\MaxTime][\TimeFlag];+ y; f: Y, h' i5 l
Signal:                输入信号名称。   ( signaldi ) ! b2 o  C- t: x' m9 s; P* m+ i/ _
Value:                输入信号值。           ( dionum )
% [: E% W: R0 l! E7 o. w* {  E[\MaxTime]:        最长等待时间 s。( num )
* G" n  I& S& \' S" t3 E[\TimeFlag]:        超时逻辑量。           ( bool ): H! B& G; k; L/ F0 O/ G2 e

( L* I4 ?. H$ ], _
  e& J% U$ r2 ]9 I
应用:
. |4 q) s" E7 H9 V3 {1 O        等待数字输入信号满足相应值,达到通信目的,是自动化生产重要组成部分,例如:ABB机器人等待工件到位信号。& V  H; J0 k. i6 \: o7 g" d
9 C, H, v3 V% r2 o9 P: Y' \1 N) a
实例:
) U* B( E1 n! R' K5 `% t) B* Y        PROC PickPart()
1 ^( \2 h! `" N% n' s5 x          MoveJ pPrePick,vFastEmpty,zBig,tool1;
; a& D  \" o2 F6 S4 Q; I          WaitDI di_Ready,1;  ABB机器人等待输入信号,直到信号 di_Ready 值为 1,才执行随后指令。: t+ k: W+ W9 p9 p7 e2 f
          …
- n: C+ z; S% x) q) g  X# O        ENDPROC, R' r+ J# }( X) ~& S

1 q5 N+ O+ E) a- H& QPROC PickPart()
: `( ~0 \/ v# b; N          MoveJ pPrePick,vFastEmpty,zBig,tool1;
  t: D/ @, \' {          WaitDI di_Ready,1\MaxTime:=5; ABB机器人等待相应输入信号,如果 5 秒内仍没有等到信号 di_Ready 值为 1,自动进行 Error Handler 处理,如果没有 Error Handler,机器人停机报错 。
3 P2 u" |( N# f% a          …
6 `( r# w7 U% f+ B        ERROR& n0 C# b0 {( a& w$ \/ B
          IF ERRNO=ERR_WAIT_MAXTIME THEN% E1 r( p7 y& b' W- ?
            TPWrite “……”;7 H5 n4 s# q+ d6 j- i: B
            RETRY;6 k- s4 d5 d5 E2 y( D
          ELSE
* E# l" G3 }. }  o/ U. D  H) C            RAISE;% K" P) s& G- M" }' y2 s5 a
          ENDIF
- v. y( w0 R& K0 A# O$ G        ENDPROC0 [( n( b+ o1 s! W; y7 s9 K

! Q* j# _. C9 W. R7 {: D实例:6 @9 r1 Y0 {9 `( K: j% V5 B+ L
        PROC PickPart()
+ t5 E5 o' z4 m% m          MoveJ pPrePick,vFastEmpty,zBig,tool1;( N2 O6 b7 C) L. z( e  V$ [  N
          bTimeout:=TRUE;0 v2 B2 @% A3 z' R+ G  Q
          nCounter:=0;
/ B7 m2 ]3 w* O" W8 |2 i. g          WHILE bTimeout DO
0 g8 n" e) H, P: ]            IF nCounter>3 THEN0 b+ D1 ]0 y. B  [6 ?
              TPWrite “……”;6 P: r3 a8 ^. s. p: P: h
            ENDIF! w+ b" W' I9 A- `. ~* V4 Q
            IF nCounter>30 THEN( i1 f- Y0 a  {" j; z0 _" G( C
              Stop;
! Z8 M: ]6 M$ W! L& b0 S( l            ENDIF
* e- S* a. u0 q4 a            WaitDI di_Ready,1\MaxTime:=1\TimeFlag:=bTimeout;ABB机器人等待到位信号,如果 1 秒内仍没有等到信号 di_Ready 值为 1,机器人自动执行随后指令,但此时 TimeFlag 值为 TRUE;机器人等到信号 di_Ready 值为 1,此时,TimeFlag 值为 FALSE。
4 M; l/ A# w2 J& v* u            Incr nCounter;          ) @4 K$ U% Z0 T
          ENDWHILE" ~6 i3 c8 `6 |1 Z, Q1 F
          …' p; H( Y8 a6 c3 J
        ENDPROC
! O- D. P# p1 F- x( I! g' s, T8 F! N
回复

使用道具 举报

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

GMT+8, 2024-9-28 00:21 , Processed in 0.075838 second(s), 21 queries .

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

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