机器人教程网

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

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

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

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

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

x
输入输出指令WaitDI-ABB机器人标准指令编程' K7 b) _' e! @; }
WaitDI Signal, Value
% b4 Y3 q) `+ U2 E" n[\MaxTime][\TimeFlag];
, p3 V' Q- l% \4 m( C2 ?/ `% kSignal:                输入信号名称。   ( signaldi ) 7 O% O7 D- O% e& ], I" ?  L
Value:                输入信号值。           ( dionum )
3 o4 F% R: X6 V9 b[\MaxTime]:        最长等待时间 s。( num ) * x" H" V& d: z) Q( u8 C6 {$ m
[\TimeFlag]:        超时逻辑量。           ( bool )( s- X! q2 A0 {& [3 v4 H, k

7 U' _, I, a$ m& Q! y/ ?

. H$ x" d9 G4 V应用:
* f+ [( c( v: x/ Z& x        等待数字输入信号满足相应值,达到通信目的,是自动化生产重要组成部分,例如:ABB机器人等待工件到位信号。
6 b4 N, w0 [0 k8 q
+ D- n* n" h9 `5 }! k/ A. Z实例:; S  o0 r/ O& U" x$ ^- a5 Y
        PROC PickPart()' H2 ?1 N# D% \/ t. x
          MoveJ pPrePick,vFastEmpty,zBig,tool1;
6 c* l5 Q' s" q0 V" V          WaitDI di_Ready,1;  ABB机器人等待输入信号,直到信号 di_Ready 值为 1,才执行随后指令。
6 y4 s' ~: F# V# p  ]. m* i          …
- m7 E8 n+ a0 E+ v7 ^8 t% ]        ENDPROC
( `" W$ p6 ~8 {" w& `: [
/ [2 m8 n# T7 \$ Y8 W& `PROC PickPart()
; ?) L0 Q( D2 c. m          MoveJ pPrePick,vFastEmpty,zBig,tool1;0 K4 c3 i1 Q! }: z, V
          WaitDI di_Ready,1\MaxTime:=5; ABB机器人等待相应输入信号,如果 5 秒内仍没有等到信号 di_Ready 值为 1,自动进行 Error Handler 处理,如果没有 Error Handler,机器人停机报错 。
" r& T' L8 O4 c# e# ~' A! Z5 t          …
2 Z5 c! y  x/ b8 ^/ v6 `        ERROR
6 \/ P5 a/ N. T" m' L          IF ERRNO=ERR_WAIT_MAXTIME THEN  I& G; X# r- x4 U2 E0 S5 Y0 H+ v
            TPWrite “……”;! S' N' _2 Q% `# Q6 R1 E
            RETRY;
' G- n+ i6 \* g. G7 w          ELSE5 J+ ]3 e+ m3 i" z" n
            RAISE;
* ?# U& F; e( l: E$ o7 B) s/ ?9 U          ENDIF# ~2 H) U( V) w9 y& ^$ z
        ENDPROC
. c# P: s( P, u: A3 z2 ?; m4 u& ]( }
8 C& b0 B9 s0 H! j+ F4 G% u实例:  F/ d1 m2 \, l4 m6 u
        PROC PickPart()3 j1 j' A; P! P# e+ p" q+ i! G3 ~
          MoveJ pPrePick,vFastEmpty,zBig,tool1;
( g( P5 y1 J+ e$ ^' Q$ B& W          bTimeout:=TRUE;/ L$ R0 P0 J* D! e: N) `. ~
          nCounter:=0;- [, \+ e$ T  g/ H
          WHILE bTimeout DO& _/ p% O7 c: ~5 U
            IF nCounter>3 THEN4 j% A8 g5 }2 `+ K+ i0 z
              TPWrite “……”;- J2 ^" |( h, _* q
            ENDIF
1 @! e& u- L) y( g0 o: u4 U            IF nCounter>30 THEN% b. D0 e# i, N7 a. u
              Stop;
) S; S9 e7 b- Y7 b+ Y& {/ n) k            ENDIF
/ U+ D" L7 }- Z* b0 w/ v) I* n/ R            WaitDI di_Ready,1\MaxTime:=1\TimeFlag:=bTimeout;ABB机器人等待到位信号,如果 1 秒内仍没有等到信号 di_Ready 值为 1,机器人自动执行随后指令,但此时 TimeFlag 值为 TRUE;机器人等到信号 di_Ready 值为 1,此时,TimeFlag 值为 FALSE。& J- k3 `: |' c, I
            Incr nCounter;         
+ J6 q+ H& N& x/ S- {          ENDWHILE
* y( j; i% p# l0 l* @/ Y9 Q          …# T8 \/ H0 ^: B' R& d  I
        ENDPROC
. V0 M) Y* a' \2 X7 }
回复

使用道具 举报

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

GMT+8, 2025-6-27 07:54 , Processed in 0.065367 second(s), 22 queries .

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

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