Skip to main content

数据类型

CODESYS Safety Extension,非安全导向数据(IEC 标准数据类型)和安全导向数据(前缀 SAFE)。映射输入和输出通道时,安全现场设备的输入和输出通道始终具有以下类型 SAFExxx 而非安全现场设备的SAFE 类型。PLCopen 链接规则的检查 SAFEBOOL 数据和其他类似的链接规则 SAFEXXX 数据类型是编程系统中错误条件检查的一部分。

7. IEC 标准数据类型

数据类型

位长度

值范围

描述

BOOL

1

0,1

0 对应于 FALSE

1 对应于 TRUE

DINT

32

-2,147,483,648 … 2,147,483,647

INT

16

-32,768 … 32,767

TIME

32

0 … 2,147,483,647 s

期间

WORD

16

0 … 65,535

16#00 … 16#FFFF



提示

BYTEDWORDSAFEBYTE, 和 SAFEDWORD 数据类型只能出现在 逻辑 I/O 并且可以在扩展级程序中用作通道变量(类别:全局变量,声明为 VAR_EXTERNAL)。

8. 安全数据类型

数据类型

位长度

值范围

描述

SAFEBOOL

1

0,1

0 对应于 FALSE

1 对应于 TRUE

SAFEDINT

32

-2,147,483,648 … 2,147,483,647

SAFEINT

16

-32,768 … 32,767

SAFETIME

32

0 … 2,147,483,647 s

SAFEWORD

16

0 … 65,535

16#00 … 16#FFFF



提示

REAL 数据类型在安全编程中是不允许的。如果仍然使用,则会导致转换错误。

用户定义的数据类型

用户定义类型 数据类型类别包含安全应用程序的功能块和库。此类别可在输入助手中选择,输入助手在 插入变量声明 点击对话框 SafetyEllipsesButton.png 按钮。对于已声明的变量,数据类型的输入助手将按如下方式打开:

  1. 在声明窗口中,选择相应变量的类型单元格。

  2. 在列表框中,单击 ... 象征。

47. 声明视图:类型的下拉列表
声明视图:类型的下拉列表


类型化的一般规则

INT 多态性

类型的值 INT 或者 SAFEINT 总是有类型 DINT 或者 SAFEDINT 以及。 INTDINT 导致 DINT 价值 (int + dint 类型为 DINT)。

安全多态性

类型的值 SAFEXXX 总是有类型 XXX 即,高完整性的值始终也可以用作低完整性的值。这意味着转换函数 SAFEBOOL_TO_BOOL PLCopen 中提到的隐含 CODESYS Safety Extension 并且没有明确写出。

安全常数

常量始终是最高完整性的值(即 SAFEXXX)由于 SAFE 多态性仍然可以作为正常值。这样就省去了两种不同的值(safebool#1bool#1)。bool#1SAFEBOOL (和 BOOL);其他文字常量也同样如此。

外管局降级

链接值的一般规则如下:当且仅当所有操作数都有 SAFE 类型,则结果有一个 SAFE 类型。

例外SAFEBOOL AND BOOL 有值 SAFEBOOL