机器人教程网

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

[ABB示教] 程序流程指令WaitUntil-ABB机器人标准指令编程

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

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

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

x
程序流程指令WaitUntil-ABB机器人标准指令编程" J9 m; H8 V# V% m% i- |9 y. d
WaitUntil [\InPos,] Cond [\MaxTime][\TimeFlag];
$ T* r) H) J$ ][\InPos] :                提前量开关。        ( switch )       4 b* \* T% ]/ L2 z. B- H1 j
Cond:                判断条件。        ( bool ) - D& f3 c  Q: h/ g5 |- ^  R
[\MaxTime]:        最长等待时间 s。( num )
" N& `8 U& }" D0 ]" E[\TimeFlag]:        超时逻辑量。        ( bool )
  N& H- H. }& ?) M7 Q
* o; j! |5 K; u2 k- @
ABB机器人程序流程指令WaitUntil-应用:# F/ x) W6 h8 X: z6 b0 D
        当前指令用于等待满足相应判断条件后,才执行以后指令,使用参变量 [\InPos],机器人及其外轴必须在完全停止的情况下,才进行条件判断,此指令比可以指令 WaitDI 的功能更广,可以替代其所有功能。
' z: a% [, r  n( M3 A- [# N
: ?) [3 f# n( h, H2 j  aABB机器人程序流程指令WaitUntil-限制:8 k7 N0 x! ~2 U6 F+ W" {3 r# ^
  • 当前指令在使用参变量 [\InPos] 时,遇到程序突然停止运行,机器人不能其保证停在最终停止点进行条件判断。; p1 z! A* S/ L' d  w7 [, ]
6 o8 s2 c; h) f! A0 B. u/ A. o
ABB机器人程序流程指令WaitUntil-实例:
. [9 p  S  L$ r7 x5 R        PROC PickPart(), O5 P1 u) N' u$ ^- _! j
          MoveJ pPrePick,vFastEmpty,zBig,tool1;8 p6 w: i8 F$ y8 ~  e& Z: |& x9 f
          WaitUntil di_Ready=1;  →机器人等待输入信号,直到信号 di_Ready 值为 1,才执行随后指令。  N% W' ^+ i: X  v- D
          (WaitDI di_Ready,1;)
. |9 a; D7 }# C2 {  v0 x- G' a: G! ^6 e; W
        PROC PickPart()) y. S5 j$ e8 N0 A, O
          MoveJ pPrePick,vFastEmpty,zBig,tool1;
% Y$ |# W  l; ~, N          WaitUntil nCounter=4\MaxTime:=5;  i/ h) u% J0 H0 V, r3 l5 K- P) k
          …  →机器人等待相应数据输入,如果 5 秒内仍没有得到相应数据值 4,自动进行 Error Handler 处理,如果没有 Error Handler,机器人停机报错 。1 R4 B) G+ _# S2 I- X, E4 H/ z0 W
        ERROR5 Z& G% r  n( [* L& ^6 q- R
          IF ERRNO=ERR_WAIT_MAXTIME THEN
+ w  n* A0 x6 m0 N1 O5 [            TPWrite “……”;
+ Q% w( ?7 H$ e* c            RETRY;
( L% }  A& D$ p1 W: G          ENDIF# e9 K* u  s% H# s' v! M; v  o7 f& Y
        ENDPROC3 V% U! {: T3 ?2 H! c* n" H2 p
+ k9 l. T- V1 E, C3 Y& t
ABB机器人程序流程指令WaitUntil-实例:
: F, H1 w. k8 E) |3 t1 z. N        PROC PickPart()( y3 x0 D' h* p
          MoveJ pPrePick,vFastEmpty,zBig,tool1;7 L7 Q4 I7 k- U. [
          bTimeout:=TRUE;  |0 _, F! q% m4 {/ Q7 k8 G
          nCounter:=0;0 @. F' v' I$ {* p% A/ \
          WHILE bTimeout DO6 b+ |' }$ [/ J+ W# j* Q" Q; d
            IF nCounter>3 THEN5 }# J- R8 K/ W  B. E
              TPWrite “……”;9 B1 @/ |# ?& Y2 M6 C: G
            ENDIF
+ V+ I1 B6 y  _2 s5 |            IF nCounter>30 THEN
- H: ^( v! Q- i! N              Stop;3 H" M% O1 d7 N6 d% D9 D: P, x
            ENDIF
3 Y7 S9 N- ]; m5 x1 r            WaitUntil bOK=TRUE\MaxTime:=1\TimeFlag:=bTimeout;
: R/ |. V6 c0 V+ V) n2 ]            Incr nCounter;   →机器人等待相应逻辑值,如果 1 秒内仍没有得到相应值,机器人自动执行随后指令,但此时 TimeFlag 值为 TRUE;机器人得到相应逻辑值,TimeFlag 值为 FALSE。
. B% ^* F' n3 s) U          ENDWHILE
2 ], I* r& ?7 i. u4 e4 L+ J9 K! Y/ f          …# L. E( ^9 [/ G$ v
        ENDPROC
, K: ~$ I2 X" g3 Q, r6 n
回复

使用道具 举报

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

GMT+8, 2024-5-17 16:40 , Processed in 0.056660 second(s), 21 queries .

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

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