Datentypzuordnung TwinCAT <=> OPC UA

Die folgenden drei Tabellen geben einen Überblick über die Zuordnung von TwinCAT-Datentypen (IEC61131-3) und deren entsprechenden OPC UA Datentypen (Built-In-Types), wie sie im OPC UA Core Namespace http://opcfoundation.org/UA/ definiert sind.

Datentypzuordnung TwinCAT <=> OPC UA 1:

TwinCAT 3 Bibliothek - Tc3_OpcUa

Bei der Installation des Editors via TcPkg wird die Bibliothek Tc3_OpcUa installiert. Diese enthält einige Typdefinitionen, welche in Kombination mit dem Editor genutzt werden können.

Die folgende Tabelle ordnet jedem TwinCAT Datentyp dessen laut PLC-Open Spezifikation zugehörigen OPC UA BaseDataType (Built-In) zu. Bitte beachten Sie, dass für den TwinCAT-Datentypen BIT kein OPC UA Datentyp existiert. Außerdem werden die TwinCAT-Spezialdatentypen gesondert behandelt.

TwinCAT Datentyp

OPC UA BaseDataType (Built-In)

__XINT (x64: LINT | x86: DINT)

(see below for platform specific type)

__UXINT (x64: ULINT | x86: UDINT)

(see below for platform specific type)

__XWORD (x64: LWORD | x86: DWORD)

(see below for platform specific type)

BIT

-

BOOL

Boolean

SINT

SByte

USINT

Byte

INT

Int16

UINT

UInt16

DINT

Int32

UDINT

UInt32

LINT

Int64

ULINT

UInt64

BYTE

Byte

WORD

UInt16

DWORD

UInt32

LWORD

UInt64

REAL

Float

LREAL

Double

TIME

Int64

LTIME

Int64

DATE

DateTime

LDATE

Int64

TIME_OF_DAY / TOD 

UInt32

LTIME_OF_DAY / LTOD

Int64

DATE_AND_TIME / DT

DateTime

LDATE_AND_TIME / LDT

Int64

STRING

String

WSTRING

String

Die folgende Tabelle ordnet jedem OPC UA BaseDataType (Built-In) die möglichen TwinCAT Datentypen zu. Bitte beachten Sie, dass für einige OPC UA Datentypen (noch) kein TwinCAT Datentyp existiert.

OPC UA BaseDataType (Built-In)

TwinCAT Datentyp

Boolean

BOOL

SByte

SINT

Byte

USINT, BYTE

Int16

INT, WORD

UInt16

UINT, WORD

Int32

DINT, DWORD

UInt32

UDINT, DWORD, TOD

Int64

LINT, LTIME, LDATE, LTOD, LDT

UInt64

ULINT, LWORD

Float

REAL

Double

LREAL

String

STRING, WSTRING

DateTime

DATE, DT

Guid

-

ByteString

Tc3_OpcUa.UA_ByteString

XmlElement

-

NodeId

Tc3_OpcUa.UA_NodeId

ExpandedNodeId

-

StatusCode

UDINT

QualifiedName

-

LocalizedText

Tc3_OpcUa.UA_LocalizedText

ExtensionObject => (i=22 | Structure)

Abstrakter Typ. Siehe unten für Auswahl konkreter Beispiele.

DataValue

-

Variant => (i=24 | BaseDataType)

Abstrakter Typ.

DiagnosticInfo

-

Die folgende Tabelle ordnet jedem OPC UA BaseDataType (nicht Built-In) aus der OPC UA Core-Spezifikation den passenden TwinCAT Datentypen zu.

OPC UA BaseDataType (nicht Built-In)

TwinCAT Datentyp

EUInformation [ExtensionObject]

Tc3_OpcUa.UA_EUInformation

Range [ExtensionObject]

Tc3_OpcUa.UA_Range

TimeZoneDataType [ExtensionObject]

Tc3_OpcUa.UA_TimeZoneDataType

UtcTime [DateTime]

Tc3_OpcUa.UA_UtcTime

OptionSet [ExtensionObject]

Tc3_OpcUa.UA_OptionSet &
Tc3_OpcUa
.UA_OptionSetOption