6.4.1 基本使用方法
(1)指令功能 一个用户变量可以定义为1~3维数组。用户变量可以定义为以下类型的数组:BOOL、CHAR、INT、REAL、STRING、AXIS、FRAME数组元素的赋值。可以在以下时间为数组元素赋值:
1)定义数组时(初始化值)。
2)在程序执行过程中可以通过以下方法赋值:
①显式(编写时直接)指定一个数组元素(DEF)。
②显式指定一个数组元素为起始元素并给出值列表(SET)。
③显式指定一个数组元素为起始元素并给出值列表以及重复的频率(REP)。
说明:不能向FRAME数据类型的用户变量分配初始化值。
(2)编程格式
1维数组:DEF<数据类型><变量名称>[<n>]
2维数组:DEF<数据类型><变量名称>[<n>,<m>]
3维数组:DEF<数据类型><变量名称>[<n>,<m>,<o>]
字符型(STRING)数据类型的用户变量可以最大定义为2维数组。
1)编程格式1(DEF)定义数组元素。
DEF<数据类型><变量名称>[<n>,<m>,<o>]
DEF STRING[<字符串长度>]<变量名称>[<n>,<m>]
2)编程格式2(DEF…=SET…)使用值列表。
①定义时:
DEF<数据类型><变量名称>[<n>,<m>,<o>]=SET(<值1>,<值2>,…)
DEF<数据类型><变量名称>[<n>,<m>,<o>]=(<值1>,<值2>,…)
在通过值列表进行初始化时,可以选择给定SET。
②赋值时:<变量名称>[<n>,<m>,<o>]=SET(<值1>,<值2>,…)
3)编程格式3(DEF…=REP…)使用重复值。
①定义时:
DEF<数据类型><变量名称>[<n>,<m>,<o>]=REP(<值>)
DEF<数据类型><变量名称>[<n>,<m>,<o>]=REP(<值>,<数量_数组元素>)
②赋值时:<变量名称>[<n>,<m>,<o>]=REP(<值>)
<变量名称>[<n>,<m>,<o>]=REP(<值>,<数量_数组元素>)
(3)指令参数说明
DEF:变量定义指令。
<数据类型>:变量数据类型。
取值范围:
①对于系统变量:BOOL、CHAR、INT、REAL、STRING、AXIS。
②对于GUD或LUD变量:BOOL、CHAR、INT、REAL、STRING、AXIS、FRAME。
<字符串长度>:STRING数据类型下允许的最大字符数。
<变量名称>:变量名称。
[<n>,<m>,<o>]:数组长度或数组索引。
<n>:1维的数组长度或数组索引。类型:INT(对于系统变量也为AXIS);取值范围:最大数组长度(65535);数组索引:0≤n≤65534。
<m>:2维的数组长度或数组索引。其余同上。
<o>:3维的数组长度或数组索引。其余同上。
SET:通过给出的值列表赋值。
(<值1>,<值2>,…):值列表。
REP:通过给出的<值>赋值。
<值>:数组元素在带REP的初始化时具有的数值。
<数量_数组元素>:使用给定<值>的数组元素的数量。其他的数组元素取决于不同时间点:
①数组定义时初始化:剩下的数组元素赋值为零。
②在程序运行过程中赋值:数组元素的当前值保持不变。如果没有定义该参数,所有的数组元素都会分配到<值>。如果参数为零,则取决于不同的时间点:
①数组定义时初始化:所有元素预定为零。
②在程序运行过程中赋值:数组元素的当前值保持不变。