|
|
注册用户,获取RB币,享更多免费资源下载和阅读权限。
您需要 登录 才可以下载或查看,没有帐号?立即注册
x
例行程序调用指令CallByVar-ABB机器人标准指令编程
& ~) y7 _0 d( u( ^* oCallByVar Name, Number; Name: 例行程序名称第一部分。( string )
7 {3 l8 ~ I) f+ r8 F" I6 _+ r7 vNumber: 例行程序名称第二部分。( num )
% o+ J8 V' L2 G7 \/ h( d2 u t1 j, n% L3 R0 e, V' k/ N5 s. z; T& P9 @
4 ?+ z' s0 I- Q+ O" A" `5 M9 m2 x8 y7 h
CallByVar指令应用:
D r; c3 W, a7 u 通过指令中相应数据,ABB机器人调用相应例行程序,但无法调用带有参数的例行程序。
& U9 w0 V! ^1 d( Q- C
9 O9 S, ]* h. G$ { u" F* u# S; ECallByVar指令实例:* L6 k3 P! U: t4 F: x9 w: z
reg1:=Ginput(gi_Type);
, |- ^. {7 W T' z9 K+ ^ CallByVar “Proc”,reg1; H0 n/ e- w) x# h, q% B" N: l, X( v
1 { G! M. T" Y! Y; t. qCallByVar指令限制:
# I8 E s: x: N4 `. c- 不能调用带参数的例行程序。
- 所有被调用的例行程序名称第一部分必须相同,例如:proc1、proc2、proc3。
- 使用 CallByVar 指令调用例行程序比直接采用 ProcCall 调用例行程序需要更长时间。, t. B2 U# \% K K8 M
: j J* M: K0 i% K
Error Handling:
. ]0 i' e0 X( X9 ~- N- ERR_REFUNKPRC
* f" v& z1 q" G 系统无法找到例行程序名称第一部分。9 u8 g/ \7 W; |, q! t5 _
- ERR_CALLPROC
: ~' X# ^3 V, N" S0 S 系统无法找到例行程序名称第二部分。
; o" a* m8 U V8 f/ n( |9 d" B; ~# k/ D
CallByVar指令实例比较:, ?% v, i& F6 K& l; s# l
TEST reg1 3 S& W; B/ ? u, u$ `, s& i, {
CASE 1: $ ?3 R" y1 t% h( `( f" e4 [6 [
lf_door door_loc;
7 f9 z/ \6 I4 k. F6 J3 x1 d& G CASE 2:
+ L. j8 E' F( N rf_door door_loc;
' R6 D: m3 b, k2 F2 J) { CASE 3: + }9 X/ {" X) E
lr_door door_loc; . j1 R; @8 N! L7 b7 S: C9 I
CASE 4: 7 J& U+ O; i7 h( I3 q8 G
rr_door door_loc;
/ @. V' S6 r m |+ _% s DEFAULT: 5 N9 M, w; H. E) J
EXIT;
! q8 [: c: s# k ENDTEST
" d- l. P/ N2 d9 K/ \! | CallByVar “proc”,reg1; → 指令 CallByVar 不能调用带有参数的例行程序。8 S" f Y) R! B* r4 A
%”proc”+NumToStr(reg1,0)% door_loc; → 通过 RAPID 结构仍可以调用带有参数的例行程序。& k6 D7 a, w. {2 Y
|
|