机器人教程网

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

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

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

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

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

x
输入输出指令WaitDI-ABB机器人标准指令编程
* h: n, Q# z* {( ?9 `, lWaitDI Signal, Value 6 [! x: ~, a6 z$ k& S$ [8 N
[\MaxTime][\TimeFlag];3 f' a& \* {1 j1 V$ B
Signal:                输入信号名称。   ( signaldi )
5 ~. x, K# O9 f: x+ o7 n+ r9 L  X4 x1 |Value:                输入信号值。           ( dionum )
; W+ h. {8 k* Y9 f3 P' F[\MaxTime]:        最长等待时间 s。( num ) 6 E4 v5 N+ W1 F1 N' |/ o
[\TimeFlag]:        超时逻辑量。           ( bool )2 f- A  |& `. K/ ]1 e. r9 W9 E
3 u) M2 z+ `/ C1 E2 l( S- Y  [


9 v' a4 K6 w, ?5 a2 C4 O应用:
. M$ W- w0 m! u        等待数字输入信号满足相应值,达到通信目的,是自动化生产重要组成部分,例如:ABB机器人等待工件到位信号。
4 k: z% M3 s3 l; F1 z' z
" J- y$ b9 m: S6 |/ W实例:
! k- F9 F6 s" V        PROC PickPart()9 @/ }% U* l6 D; |
          MoveJ pPrePick,vFastEmpty,zBig,tool1;; g1 W: Q1 F! [) ?* h; O+ V! i
          WaitDI di_Ready,1;  ABB机器人等待输入信号,直到信号 di_Ready 值为 1,才执行随后指令。# G7 l- T1 Y9 T
          …, x$ y8 ^% B0 e% N( s$ b
        ENDPROC) b0 ^" S+ w0 j$ S, B

" I. L/ q" f, V; m- m% o( }PROC PickPart()
1 e- W+ _* H9 i9 Z          MoveJ pPrePick,vFastEmpty,zBig,tool1;% K* z( m& Z/ B+ i
          WaitDI di_Ready,1\MaxTime:=5; ABB机器人等待相应输入信号,如果 5 秒内仍没有等到信号 di_Ready 值为 1,自动进行 Error Handler 处理,如果没有 Error Handler,机器人停机报错 。
1 B" w3 ], J4 j2 E* [. f          …
- b% [0 z; ~- `; X: y        ERROR( o8 y8 Y8 c5 w6 F: Y. t
          IF ERRNO=ERR_WAIT_MAXTIME THEN8 j' y; C  Z& g8 i) ^9 X7 |! o
            TPWrite “……”;
) B2 [  H8 ^: }9 f7 f            RETRY;  A2 c  u8 _8 m8 J* \
          ELSE
, ^" G# W! B$ L+ I% M0 z            RAISE;
9 O8 g, t, g+ i: b2 R          ENDIF3 a6 a" X4 Q- h8 G' r
        ENDPROC
# z# X4 A! e: C4 [/ e* i
+ _2 h- K3 H; B! N' p7 k5 a$ p实例:
7 W) S- q$ R5 t7 w% |        PROC PickPart()* H. ~3 ~* S. d, @/ t
          MoveJ pPrePick,vFastEmpty,zBig,tool1;0 K) t$ `( g/ i3 u! g: m. K
          bTimeout:=TRUE;1 ~% i3 _- d" ]6 r% @* U
          nCounter:=0;$ e7 p" \$ U* v8 I
          WHILE bTimeout DO4 b* u) a, |6 R2 X6 g. W* k
            IF nCounter>3 THEN
; W) V' w, u4 ?# V, k              TPWrite “……”;4 b1 h* S/ A2 a. r% E5 m- m
            ENDIF" b! w5 Y1 m- I- L0 K7 n) n
            IF nCounter>30 THEN. D! E5 T) T# I  X
              Stop;
! }/ J1 _( [/ ^( Z' b            ENDIF
! E6 p' G' ~8 _# K. g: ]' W            WaitDI di_Ready,1\MaxTime:=1\TimeFlag:=bTimeout;ABB机器人等待到位信号,如果 1 秒内仍没有等到信号 di_Ready 值为 1,机器人自动执行随后指令,但此时 TimeFlag 值为 TRUE;机器人等到信号 di_Ready 值为 1,此时,TimeFlag 值为 FALSE。' k$ @- h2 `: s" |, W: }$ w0 V$ T2 o
            Incr nCounter;          3 ~+ u! U# g; Z+ @7 F
          ENDWHILE
* C3 n0 M% A2 Z+ q1 P          …
" m5 g) u  G; ]1 E& @        ENDPROC
; j7 o2 }6 @2 i, t0 _. Z
回复

使用道具 举报

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

GMT+8, 2025-1-30 13:53 , Processed in 0.061143 second(s), 21 queries .

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

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