admin管理员组文章数量:1577482
2024年3月30日发(作者:)
ABB机器人用户定义的数据类型
1、数组
支持一维、二维和三维数组的成员数据类型。数组可在POU的声明部分和全局变量表中定
义。
语法:
lt;数组名>:ARRAY[..,..]OF
ll1,ll2为数组维数的下限标识,ul1和ul2为数组维数的上限标识。数值范围必须为整数。
示例:
Card_game:ARRAY[1..13,1..4]OFINT;
数组的初始化:
可以对数组中的所有元素进行初始化,或不进行初始化。
数组初始化示例:
arr1:ARRAY[1..5]OFINT:=1,2,3,4,5;
arr2:ARRAY[1..2,3..4]OFINT:=1,3(7);(*等同1,7,7,7*)
arr3:ARRAY[1..2,2..3,3..4]OFINT:=2(0),4(4),2,3;(*等同0,0,4,4,4,4,2,3*)
结构化中的数组初始化示例:
TYPESTRUCT1
TRUCT
1:int;
2:int;
3:dword;
END_STRUCT
ARRAY[1..3]OFSTRUCT1:=(p1:=1;p2:=10;p3:=4723),(p1:=2;p2:=0;p3:=299),
1:=14;p2:=5;p3:=112);
数组部分元素初始化示例:
arr1:ARRAY[1..10]OFINT:=1,2;
数组中的元素如果没有初始化值,则用基本类型的缺省值初始化其值。在上例中,元素arr1[3]
到元素arr1[10]均被初始化为0。
二维数组的元素存取,使用下列语法:
lt;数组名>[Index1,Index2]
示例
Card_game[9,2]
注:
如果你在项目中定义了一个名为CheckBounds的功能,则可以自动检查数组的上下限超限
错误!下图中给出了如何实现该功能的示例。
2、指针
当程序运行时,变量或功能块地址保存在指针中。指针声明为如下句法形式:<指针名
>:POINTERTO<数据类型/功能块>;
指针可指向任何数据类型、功能块和用户定义的数据类型。对地址操作的ADR功能,可将
变量或功能块的地址指向指针。指针后加内容操作符”^”可取出指针中的数据。
示例:
t:POINTERTOINT;
var_int1:INT:=5;
var_int2:INT;
t:=ADR(var_int1);
var_int2:=pt^;(*var_int2的值为5*)
3、牧举
牧举为用户定义的数据类型,并由一组字符串常数组成。这些常数被视为牧举值。牧举值在
项目中为全局使用的变量,即使它们在POU中为本地声明的变量。创建牧举变量的最好方法是
在数据类型对象组织下创建。用关键字TYPE开始,END_TYPE结束。
句法:
版权声明:本文标题:ABB机器人用户定义的数据类型(精品) 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://www.elefans.com/xitong/1711792479a327708.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论