6.5.1  间接编程地址

6.5.1 间接编程地址

在间接编程地址时,扩展的地址(索引)由一个合适的变量类型替代。但在下列情况中,不能间接编程地址:

①N(程序段段号)。

②L(子程序)。

③可调用地址。例如,X[1]代替X1是不允许的。

(1)编程格式

<地址>[<索引>]

(2)指令参数说明

<地址>[...]:带扩展名(索引)的固定地址。

<索引>:变量,例如主轴编号、轴等。

(3)编程示例

例1 间接编程一个主轴编号。

①直接编程:

程序代码 注释

S1=300;主轴转速300r/min,编号为1

②间接编程:

978-7-111-43457-3-Chapter06-6.jpg

例2 间接编程一个轴。

①直接编程:

程序代码 注释

$AA_MM[X];读取轴的测头——测量值(MKS)“X”

②间接编程:

程序代码 注释

DEF AXIS AXVAR3=X;定义一个AXIS型变量和赋值

$AA_MM[AXVAR3];为轴读取测头——测量值(MKS),其名称保存在变量AXVAR3中

例3 间接编程数组元素。

①直接编程:

程序代码 注释

DEF INT DATA_1[4,5];定义数组DATA_1

②间接编程

程序代码 注释

DEFINE DIM1 AS 4 ;定义数组维数,必须将数组(维数)大小设定为固定值

DEFINE DIM2 AS 5 ;定义数组维数

DEF INT DATA_1[DIM1,DIM2] ;定义数组DATA_1

DATA_1[DIM1-1,DIM2-1]=5 ;对数组单元[3,4]赋值5

例4 间接调用子程序。

程序代码 注释

CALL"L"<<R10;调用其编号在R10中的程序(字符串级联)