Skip to main content

对象:DUT

DUT(数据单位类型)声明的用户定义数据类型超出了预定义的标准类型。

. 符号:

你可以在应用程序下方或视图中看到这样的对象 POU 添加。创建对象时,打开对话框 添加 DUT。您可以在此处命名新的数据类型,并在 “结构”、“枚举”、“别名” 和 “联合” 类别之间进行选择

用户定义的数据类型类别

30. 语法
TYPE <identifier> :
    <data type declaration>
END_TYPE

TYPEEND_TYPE DUT 声明包含在方括号中。

TYPE <identifier> :
STRUCT
    <member deklaration>
END_STRUCT
END_TYPE

a 的声明 结构

在结构中,至少有两个成员 STRUCTEND_STRUCT 加括号的。

TYPE <identifier> :
(
    <list of members>
) <base data type> := <inittialization> ;
END_TYPE

a 的声明 列举

在枚举中,至少两个成员被圆括号包围。各个成员用逗号分隔。所有成员都具有相同的数据类型。文本列表也可以支持枚举

有关更多信息,请参阅: 支持文本列表的枚举

文本列表用于本地化枚举的值。然后,该对象还具有本地化视图

TYPE <identifier> : <data type name> ;
END_TYPE

a 的声明 别名

别名是替代标识符。

TYPE <identifier> :
UNION
    <member declaration>
END_UNION
END_TYPE

a 的声明 联盟

联合允许将多种不同类型的数据同时存储在同一个存储区域中。联合体的大小等于其包含的最大数据类型的大小。最后一次写入的成员的值始终存储在内存中

就联盟而言,其至少有两名成员为 UNIONEND_UNION 加括号的。



520. STRUCT 示例

结构声明 S_POLYGONLINE 包括成员的部分初始化

TYPE S_POLYGONLINE :
STRUCT
    aiStart : ARRAY[1..2] OF INT := [-99, -99];
    aiPoint1 : ARRAY[1..2] OF INT;
    aiPoint2 : ARRAY[1..2] OF INT;
    aiPoint3 : ARRAY[1..2] OF INT;
    aiPoint4 : ARRAY[1..2] OF INT;
    aiEnd : ARRAY[1..2] OF INT := [99, 99];
END_STRUCT
END_TYPE

结构声明 S_PENTAGON 作为 S_POLYGONLINE

TYPE S_PENTAGON EXTENDS S_POLYGONLINE :
STRUCT
    aiPoint5 : ARRAY[1..2] OF INT;
END_STRUCT
END_TYPE


521. 枚举示例

枚举声明 E_TRAFFICSIGNAL

{attribute 'qualified_only'}
{attribute 'strict'}
TYPE E_TRAFFICSIGNAL :
(
    eRed,
    eYellow,
    eGreen := 10
);
END_TYPE

本地化视图中支持文本列表的枚举

_cds_enum_trafficsignal_localizationview.png

这个 _cds_img_button_textual_view.png 文字视图_cds_img_button_tabular_view.png 本地化视图 按钮位于编辑器的右边缘。单击按钮可在视图之间切换。



522. 别名示例

别名声明

TYPE A_MESSAGE : STRING[50];
END_TYPE


523. UNION 示例

a 的声明 UNION

TYPE U_DATA :
UNION
    lrA : LREAL;
    liA : LINT;
    dwA : DWORD;
END_UNION
END_TYPE


对话框:添加 DUT

函数: 该对话框用于配置新的 DUT 对象(数据单位类型)。

打电话: 项目添加对象DUT 菜单;应用程序对象的快捷菜单

姓名

新品的名字 DUT 数据类型

示例: S_POLYGONLINE

31. 数据类型

结构

创建一个对象,该对象声明一个结构,该结构将具有不同数据类型的多个变量组合成一个逻辑单元

在结构中声明的变量称为成员。

示例: S_POLYGONLINE

高级

standard icon: 将现有结构扩展到更多成员

在输入字段中,指定现有结构。现有结构的成员在新结构中自动可用。

示例: S_PENTAGON

枚举

创建一个对象,该对象声明将多个整数常量组合成逻辑单元的枚举

在枚举中声明的常量也称为枚举值。

示例: E_TRAFFICSIGNAL

枚举也可以有文本列表。这用于本地化枚举的值。因此,该对象还具有本地化视图。

添加文本列表支持

_cds_icon_option_deactivated.png: 添加一个 列举 添加

standard icon: 添加一个 支持文本列表的枚举 添加。文本列表允许您本地化枚举值的名称

别名

创建一个对象,该对象声明一个别名,使用该别名为基本类型、数据类型或函数块声明备用名称

示例: A_MESSAGE

联盟

创建一个对象,该对象声明一个联合体,该联合将具有不同数据类型的多个成员合并为一个逻辑单元

所有成员的偏移量都相同,因此它们占用相同的内存。联盟的内存要求由其 “最大” 成员的内存要求决定。

示例: U_DATA

添加

关闭对话框并创建新对象

该对象显示为 cds_icon_add_dut.png 设备树或设备中的符号 POU 观点。当还存储了该对象的文本列表时, _cds_icon_textlist_dut.png 显示符号。