公司动态
当前位置:首页 > 公司动态 > 配套规范的数据类型
配套规范的数据类型

数据类型的映射

下表显示了各个 OPC UA 数据类型的兼容 SIMATIC 数据类型。

根据下图所示,*数据类型(SIMATIC 数据类型 - OPC UA 数据类型)。系统不支持其它分配方式。STEP 7 不会检查是否遵循该规则,因此也不会预防分配错误。用户需确保所做的选择和数据类型分配符合规则。

例如,所列出的数据类型,也可用作自定义服务器方法中输入和输出参数结构 / UDT 的元素(UAMethod_InParameters 和 UAMethod_OutParameters)。


列表: 数据类型的映射

SIMATIC 数据类型

OPC UA 数据类型性

BOOL

Boolean

SINT

SByte

INT

Int16

DINT

Int32

LINT

Int64

USINT

Byte

UINT

UInt16

UDINT

UInt32

ULINT

UInt64

REAL

Float

LREAL

Double

LDT

DateTime

WSTRING

String

DINT

Enumeration (Encoding Int32) 和所有派生的数据类型

所需的用户自定义数据类型(UDT,user-defined data type)

用户创建的自定义数据类型必须以“Union_”为前缀,如“Union_MyDatatype”。请参见表格下方的示例。

在 UDT 中,**个元素 (Selector) 的数据类型必须为“UDINT”。

UNION 和所有派生的数据类型


所需的 UNION 用户自定义数据类型

下图显示了数据类型为“Union_MyDatatype”的变量“MyVariable”。

此 SIMATIC 数据类型对应于数据类型为 UNION 的 OPC UA 变量。

下图显示了声明示例:当 Selector = 1 时,Union 取 ByteArray;当 Selector = 2 时,Union 取 WString。


使用其它 OPC UA 基本数据类型

除了“映射数据类型”部分列出的 OPC UA 数据类型以及 SIMATIC 端对应的数据类型之外,还可使用以下 OPC UA 基本数据类型:

OpcUa_NodeId

OpcUa_QualifiedName

OpcUa_Guid

OpcUa_LocalizedText

OpcUa_ByteString

OpcUa_XmlElement 

在应用程序中使用上文中所示基本数据类型的变量时,应满足以下要求:基本数据类型需用作复杂数据类型,且结构与相应的 OPC UA 基本数据类型完全相同。

OpcUa_NodeId 和 OpcUa_QualifiedName 可用作系统数据类型;因此,这些数据类型不仅可用于单个变量,也可用作结构中的元素。

对于其余基本类型,需基于 OPC UA 规范创建一个 PLC 数据类型,之后再将其用作某个结构中的元素,以便使用 Typedictionary 对这些元素的数据类型进行解析。在下文中,介绍了每个基本数据类型所对应的 PLC 数据类型。例如,在“EUInformation”示例中,使用了数据结构 UDT“LocalizedText”。“EUInformation”中包含有关 EngineeringUnits 的信息。有关 EUInformation 数据结构的实现示例,请参见 PLC 数据类型说明的结尾处。

系统数据类型“OPC_UA_NodeId”

在下表中,列出了 OPC UA 基本数据类型“OpcUa_NodeId”各个参数的含义。OPC_UA_NodeId 用于识标 OPC UA 服务器中的节点。


参数

S7 数据类型

含义

NamespaceIndex

UINT

OPC UA 服务器中,节点的命名空间索引。

例如,节点可以是一个变量。

Identifier

WSTRING[254]

节点(对象或变量)的名称取决于标识符类型:

数字标识符:节点使用一个数字进行标记,如“12345678”。

字符串标识符:节点使用一个名称进行标记,如“MyTag”。不区分大小写。

IdentifierType

UDINT

标识符的类型

0:数字标识符

1: 字符串标识符

2: GUID

3:Opaque

系统数据类型“OPC_UA_QualifiedName”

请参见下表中系统数据类型“OPC_UA_QualifiedName”的结构:

名称

S7 数据类型

含义

NamespaceIndex

UINT

名称的命名空间索引。

Name

WSTRING[64]

节点或变量的名称。

UDT“Guid”

对于基本数据类型“Guid”,创建以下 PLC 数据类型。示例中使用的默认值也可设置为不同值。


UDT“LocalizedText”

为基本数据类型“LocalizedText”创建以下 PLC 数据类型:



EncodingByte 用于指示可用的字段(Locale 或 Text):

编码字节

含义

0

字段 Locale 和 Text 为空

1

字段 Locale 中有内容,字段 Text 为空

2

字段 Locale 为空,字段 Text 中有内容

3

字段 Locale 和 Text 中均有内容


UDT“ByteString”

为基本数据类型“ByteString”创建以下 PLC 数据类型;例如,创建一个包含有 12 个元素的 ByteString 数组:



UDT“XmlElement”

XmlElement 是一种序列化的 XML 段(UTF 8 字符串)。

为基本数据类型“XmlElement”创建以下 PLC 数据类型:



示例:UDT为“LocalizedText”的 EUInformation 的结构


shtxjd.cn.b2b168.com/m/