|
注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
输入输出指令WaitDI-ABB机器人标准指令编程$ L% L0 |2 h5 t7 q7 r8 u% [
WaitDI Signal, Value
/ x! a) l; P- ^[\MaxTime][\TimeFlag];, ]1 r0 z( Q+ r X' x3 A/ a3 z( O
Signal: 输入信号名称。 ( signaldi )
/ B! {) |) V A& S$ T8 r0 }Value: 输入信号值。 ( dionum ) & r6 ]: j- h% k+ p# a
[\MaxTime]: 最长等待时间 s。( num )
% [: s r1 M9 S& U% x0 \[\TimeFlag]: 超时逻辑量。 ( bool )
/ K" a4 S2 q3 r# L4 h- L, M0 G. y6 W. ~; b! ]
" w: p% p" s3 x! m/ m& \, k应用:
3 |9 Z9 z6 z7 ~: Q X 等待数字输入信号满足相应值,达到通信目的,是自动化生产重要组成部分,例如:ABB机器人等待工件到位信号。
5 i7 j9 [! N* u3 N+ q* Z2 a6 W7 V$ y% {6 Y$ c
实例:) Y) ?! z0 K; r0 V4 ` j" l
PROC PickPart()
: p2 Z( d0 g s8 j3 \: }* r5 m MoveJ pPrePick,vFastEmpty,zBig,tool1;
/ S+ o( [1 O& t: l WaitDI di_Ready,1; →ABB机器人等待输入信号,直到信号 di_Ready 值为 1,才执行随后指令。
; u+ l/ l/ O) L! }- q …
W. l2 c+ \) R9 G ENDPROC
- i9 E* s5 N5 S4 l1 L5 V" J% q. N% Q, Y
PROC PickPart()
& P- Q& R" A- I& d' a MoveJ pPrePick,vFastEmpty,zBig,tool1;1 V7 O9 S3 n+ {7 A% U6 c) M( Z
WaitDI di_Ready,1\MaxTime:=5; →ABB机器人等待相应输入信号,如果 5 秒内仍没有等到信号 di_Ready 值为 1,自动进行 Error Handler 处理,如果没有 Error Handler,机器人停机报错 。/ V7 J3 Q0 F; P
…9 [4 Y2 ^5 d. O+ m& I
ERROR
! z6 s) ^# ]2 ^* n IF ERRNO=ERR_WAIT_MAXTIME THEN
1 d% _- X8 J* G TPWrite “……”;
! n$ u1 z8 I8 k6 o o6 B4 g RETRY;) u* b- P. [( B; g1 Z2 r6 m" K: W
ELSE
0 P- S1 H2 ^" u+ S8 u RAISE;
1 B; x& b) ~" O$ Z0 I& x# w) n2 H ENDIF
4 I3 T, d( N | _0 _! Z4 _" P; V* } ENDPROC" c" u3 Z* p) h6 Y: @1 [$ p3 Z; A
4 \, k; r7 z! U$ {. {( W实例:- s: b) T& Z7 c6 {5 C
PROC PickPart()
# j; K; s! @5 D5 k/ A Z MoveJ pPrePick,vFastEmpty,zBig,tool1;" n4 p: w1 S, E; n/ Y* z) y# s9 @( A
bTimeout:=TRUE;
) y3 k- u, K' D( ~% I nCounter:=0;8 C% C: z: Z4 U& E
WHILE bTimeout DO
! I" k2 `5 l, `$ y! [& p3 j% S IF nCounter>3 THEN
9 s" |3 v' b- K6 M7 _" p0 B TPWrite “……”;
' p# d- N9 j6 `9 P* i g ENDIF9 |/ g3 Q* {% J$ Y+ A& i+ ]" |0 U
IF nCounter>30 THEN
* I, N% d4 w0 | Stop;, V0 W: [& ]' e8 k* V) h4 M
ENDIF
5 u# }- O- o; H( a# y9 o WaitDI di_Ready,1\MaxTime:=1\TimeFlag:=bTimeout;→ABB机器人等待到位信号,如果 1 秒内仍没有等到信号 di_Ready 值为 1,机器人自动执行随后指令,但此时 TimeFlag 值为 TRUE;机器人等到信号 di_Ready 值为 1,此时,TimeFlag 值为 FALSE。
- C8 l( p6 h- V5 j Incr nCounter;
; {. |* c/ K/ o% `$ F5 m( H; w ENDWHILE
, u3 h, B& Y( q2 p ]3 { …
; B* Q0 v5 p3 _' A8 H* X ENDPROC& T# Y+ I/ ]* A. V/ \8 _
|
|