机器人教程网

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

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

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

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

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

x
输入输出指令WaitDI-ABB机器人标准指令编程
# @8 R; _; ~" x7 |/ P$ U& m8 G' mWaitDI Signal, Value 5 O1 D# x" u  h; k8 }' h8 c
[\MaxTime][\TimeFlag];
  ^9 n5 b  C6 l7 X/ m+ w& oSignal:                输入信号名称。   ( signaldi )
* H0 E" `$ L1 j6 c4 X( nValue:                输入信号值。           ( dionum ) 0 \' i+ l8 }, m/ `  n
[\MaxTime]:        最长等待时间 s。( num ) 8 z0 Q3 g* P5 T: Y6 T
[\TimeFlag]:        超时逻辑量。           ( bool )
- g* e  \( H- {& y2 r  B3 a  {
: o4 w* @! y8 _) W. b2 f' C% ^  r
$ {! y/ }; x2 \" q- D  o
应用:
9 o- F7 r4 b1 k) w; `        等待数字输入信号满足相应值,达到通信目的,是自动化生产重要组成部分,例如:ABB机器人等待工件到位信号。
7 X) r9 U. x9 n% D- a; @( P7 T( `6 V7 K
实例:
& ^4 i- g# n* V6 U* `5 f" B        PROC PickPart()+ C% y: L8 y3 _, O
          MoveJ pPrePick,vFastEmpty,zBig,tool1;
# C; ^; U/ U' l          WaitDI di_Ready,1;  ABB机器人等待输入信号,直到信号 di_Ready 值为 1,才执行随后指令。+ {  m) z+ I% w0 x
          …3 C/ r4 A/ _) M) U! F
        ENDPROC
, j- `, d& D: t3 P
* [. t; w; W( a" ^" k' UPROC PickPart()
3 r8 B2 e4 h/ G. Z- b4 @3 V8 D" t          MoveJ pPrePick,vFastEmpty,zBig,tool1;
$ _& h4 t* e( v% J2 P8 u          WaitDI di_Ready,1\MaxTime:=5; ABB机器人等待相应输入信号,如果 5 秒内仍没有等到信号 di_Ready 值为 1,自动进行 Error Handler 处理,如果没有 Error Handler,机器人停机报错 。3 d3 A: S/ ^+ S% T" J
          …7 [8 r' z2 `5 {* q5 N8 {
        ERROR; J" a/ y1 h7 Z$ g$ L
          IF ERRNO=ERR_WAIT_MAXTIME THEN
6 ^! t& @* h) L6 M            TPWrite “……”;
0 l7 M% y# E! p8 U7 E2 |* ~            RETRY;
6 s+ I0 B( y! U, l          ELSE1 k0 Y! K- s% x$ P
            RAISE;
7 W. @! U+ H. i8 G" J: P' }          ENDIF
4 y! X- y% Y" i6 H7 K( I        ENDPROC' j# u4 a* Q% t7 L

2 {6 [. X2 |6 m- _: p& p% l4 ^实例:
& X4 P7 g0 [- ^$ X& _        PROC PickPart()
: P) ~* ]& X+ x( N          MoveJ pPrePick,vFastEmpty,zBig,tool1;
1 L4 k2 y  `' o          bTimeout:=TRUE;
. @+ r0 z- t) _3 ]! A) b# S          nCounter:=0;
# }1 }, G; s, B4 u- m$ A; t          WHILE bTimeout DO2 B% K0 c2 O2 {, B) r! H
            IF nCounter>3 THEN
$ S9 k# C" ~. c4 h0 E/ [              TPWrite “……”;/ ?6 |+ a- D( U& g
            ENDIF# Y. q4 ]8 b. e1 D
            IF nCounter>30 THEN
% w' _) ]1 n3 |9 [              Stop;
; K) [( F, U) s            ENDIF# T1 F$ R% O0 v
            WaitDI di_Ready,1\MaxTime:=1\TimeFlag:=bTimeout;ABB机器人等待到位信号,如果 1 秒内仍没有等到信号 di_Ready 值为 1,机器人自动执行随后指令,但此时 TimeFlag 值为 TRUE;机器人等到信号 di_Ready 值为 1,此时,TimeFlag 值为 FALSE。4 {9 j% V. z7 V* P$ |$ s! k
            Incr nCounter;         
  P3 w, r: M$ R) [0 O# V" c          ENDWHILE0 |/ k+ ^) I$ v" w$ d0 ]: t! A
          …- l, {/ [3 w9 X% M+ ~
        ENDPROC
! e. [# F; t* `+ l, z9 m
回复

使用道具 举报

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

GMT+8, 2025-8-22 08:34 , Processed in 0.066967 second(s), 22 queries .

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

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