机器人教程网

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

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

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

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

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

x
输入输出指令WaitDO-ABB机器人标准指令编程& q7 m9 U* a* @7 b' p+ f+ p9 D+ ?! s" _: @
WaitDO Signal, Value [\MaxTime][\TimeFlag];
Signal:                输入信号名称。   ( signaldi ) " |8 M3 e: F; H  n
Value:                输入信号值。           ( dionum )
) J+ C" b# p& j" F1 {[\MaxTime]:        最长等待时间 s。( num )
+ s1 y+ i& X1 g6 H! J+ f[\TimeFlag]:        超时逻辑量。           ( bool )$ V: x: I2 Y1 N. S* S2 [6 A7 a

6 V( l/ A. j6 F' E( d- f) Z

( Q4 E, K4 F( \$ }5 f4 r& ^$ i应用:. O5 ?( M) _+ u& Q. Z9 l+ f
        等待数字输出信号满足相应值,达到通信目的,因为输出信号一般情况下受程序控制,此指令很少使用。
7 z+ b3 P2 R2 R5 G  }# G- n9 R/ F
, |/ Z* ^# P2 O" L0 n/ ~实例:3 @6 n" r" r% N2 q! ^/ \9 y+ B# }+ e
        PROC Grip()" ]: ~' u0 }$ W& e# H) s
          Set do03_Grip;' h2 P; w7 w! k+ o( h  [
          WaitDO do03_Grip,1;  →ABB机器人等待输出信号,直到信号 do03_Grip 值为 1,才执行随后相应指令。! ]2 f; w3 @% w1 g2 ~
          …4 i' B4 O- R+ S  {1 I
        ENDPROC
6 H' {6 C0 W" r$ [% S7 N) f  X, u+ v+ X
PROC Grip()
$ [! h0 N- R2 J1 _6 M          Set do03_Grip;
* ]. Z: ]( N6 O; l) E          WaitDO do03_Grip,1\MaxTime:=5;  ABB机器人等待相应输出信号,如果 5 秒内仍没有等到信号 do03_Grip 值为 1,自动进行 Error Handler 处理,如果没有 Error Handler,ABB机器人停机报错 。, D% c! k5 ?9 a
          …
8 C/ o6 N1 F! A6 i7 c6 @1 a+ y        ERROR
+ C2 p! }: |6 b1 Y/ I) \) _          IF ERRNO=ERR_WAIT_MAXTIME THEN1 y  K+ t% e( V" ?. |6 n( _+ B
            TPWrite “……”;9 J: |$ c$ p, U5 }; x$ ]4 X" e
            RETRY;
6 [% ~, [. X. x9 r! D6 ^1 ]          ELSE1 I" C+ }* ~6 M, z8 X4 G6 ~
            RAISE;! @1 V' n5 D& I4 c" K1 b2 S1 b$ s
          ENDIF
5 Y+ ]% B" s+ M0 z8 j, B        ENDPROC0 F/ E% k4 f. O- `8 f  P6 T5 B9 P$ r* f

' }! p3 b! U$ S+ h- ?" ~实例:7 F4 y: G* Z9 u1 l2 J4 M8 ?
        PROC Grip()/ u" g" m9 v% G- d: f) J
          Set do03_Grip;$ d6 Y7 t: f9 B: S
          bTimeout:=TRUE;
6 _+ {4 `1 i( h# f6 ~  V  |          nCounter:=0;& z  A! D' I7 F2 U5 _
          WHILE bTimeout DO7 {# r5 M# Y- @0 ~' ?& X  b, Q3 l
            IF nCounter>3 THEN
% _; u8 K3 Q$ G3 F! Z1 c              TPWrite “……”;
9 T) y& x" E% H( ]            ENDIF8 {8 Y4 e6 q' x, A& z9 |, @, v- _! t
            IF nCounter>30 THEN
( Q1 B, D+ `0 D              Stop;8 t  s- V) h  Z' C0 b
            ENDIF; S9 ?4 t* Q6 }5 W5 ?. T3 ]$ i1 G
            WaitDO do03_Grip,1\MaxTime:=1\TimeFlag:=bTimeout;  ABB机器人等待到位信号,如果 1 秒内仍没有等到信号 do03_Grip 值为 1,ABB机器人自动执行随后指令,但此时 TimeFlag 值为 TRUE;ABB机器人等到信号 do03_Grip 值为 1,此时,TimeFlag 值为 FALSE。# R: J2 n. g2 E5 W
* S" }* ~) i% E& _* J) k
            Incr nCounter;          ) U/ S. k0 c4 k; Y
          ENDWHILE
: Z8 ]' O* Y( E          …* v: Q0 F0 b2 s6 S6 @7 l2 b
        ENDPROC% L3 G- Z4 l5 g) _
回复

使用道具 举报

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

GMT+8, 2024-9-27 08:15 , Processed in 0.060825 second(s), 21 queries .

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

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