ABB机器人CallByVar指令
1、指令功能
指令CallByVar(Call By Variable)是通过不同的变量调用不同的例行程序,即可用于调用具有特定名称的无返回值程序。
2、指令格式
指令格式:CallByVar Name,Number
Name:例行程序名称的第一部分,数据类型string
Number:例行程序名称第二部分,数据类型num
程序名=name+number(=string+num)
例如:CallByVar rProc,2;
执行CallByVar后,调用例行程序名为:rProc2。
3、使用举例
(1)运行程序
主程序:
PROC main()
reg1 := 1;
WHILE TRUE DO
CallByVar 'hanjie', reg1;
WaitTime 0.2;
ENDWHILE
ENDPROC
程序1:
PROC hanjie1()
WaitTime 0.5;
ENDPROC
程序2:
PROC hanjie10()
WaitTime 0.5;
ENDPROC
程序3:
PROC hanjie100()
WaitTime 0.5;
ENDPROC
程序4:
PROC hanjie1000()
WaitTime 0.5;
ENDPROC
(2)说明
主程序连续运行过程当中,当给reg1不同的值,机器人会调用不同的例行程序hanjie+reg1;这里方便了程序选择,只需要更改reg1的值,就可以调用对应name+num的例行程序。但是当调用name+num的例行程序不存在时,机器人会停止并报错,所以机器人调用的例行程序必须存在,例如下图调用不存在例行程序报错:
图片1:
图片2:
4、使用限制和应用
(1)仅可用于调用不带参数的无返回值程序;
(2)无法用于调用局部无返回值程序;
(3)执行CallByVar,将花费比执行普通过程调用略长的时间;
(4)所有被调用的例行程序名称的第一部分必须相同,如rproc1,rproc2,rproc3等;
(5)使用CallByVar指令,就可以通过PLC输入数字编号来调用对应不同的例行程序,这样给程序扩展带来了极大的方便,特别是多工位程序程序调用。
联系客服