This content has moved to a new space on the Internet.

Go to new location

 


Available data types troughout the standards

Bits C# IEC 61131 FDCML C++ OPC UA
1 BOOL BOOL Bit/BOOL boolean Boolean
16 UInt16 WORD Bitstring16 uint16 UInt16
32 UInt32 DWORD Bitstring32 uint32 UInt32
64 UInt64 LWORD Bitstring64 uint64 UInt64
8 Byte BYTE Bitstring8 uint8 Byte
8 Byte BYTE BYTE uint8 Byte
32 Int32 DINT DINT int32 Int32
32 UInt32 DWORD DWORD uint32 UInt32
32 Single REAL Float32 float32 Float
64 Double LREAL Float64 float64 Double
16 Int16 INT INT int16 Int16
64 Int64 LDATE LDATE int64 DateTime  2   
64 Int64 LDATE_AND_­TIME LDATE_AND_­TIME int64 DateTime  
64 Int64 LDT LDT int64 DateTime 1  
64 Int64 LINT LINT int64 Int64
64 Double LREAL LREAL float64 Double
64 Int64 LTIME LTIME int64 Duration 4  
64 Int64 LTIME_OF_DAY LTIME_OF_DAY int64 DateTime  
64 Int64 LTOD LTOD int64 DateTime 1  3 
64 UInt64 LWORD LWORD uint64 UInt64
8 Byte BYTE Octetstring1 uint8 Byte
16 UInt16 WORD Octetstring2 uint16 UInt16
32 UInt32 DWORD Octetstring4 uint32 UInt32
64 UInt64 LWORD Octetstring8 uint64 UInt64
32 Single REAL REAL float32 Float
16 Int16 INT Signed16 int16 Int16
32 Int32 DINT Signed32 int32 Int32
64 Int64 LINT Signed64 int64 Int64
8 SByte SINT Signed8 int8 SByte
8 SByte SINT SINT int8 SByte
n*8 String STRING StringASCII StaticString *
32 Int32 TIME TIME int32 Duration  
32 UInt32 UDINT UDINT uint32 UInt32
16 UInt16 UINT UINT uint16 UInt16
64 UInt64 ULINT ULINT uint64 UInt64
16 UInt16 UINT Unsigned16 uint16 UInt16
32 UInt32 UDINT Unsigned32 uint32 UInt32
64 UInt64 ULINT Unsigned64 uint64 UInt64
8 Byte USINT Unsigned8 uint8 Byte
8 Byte USINT USINT uint8 Byte
16 UInt16 WORD WORD uint16 UInt16

* Not yet implemented

 

1 Due to the lower time resolution of the OPC UA data type DateTime of 100 ns compared to the resolution of the IEC 61131 data types LDATE, LTOD and LDT of 1 ns, the values that can be displayed are in the range from 1677-09-21T00:12:43.1452243Z to 2262-04-11T23:47:16.8547757Z. Rounding errors of up to 99 ns occur during reading. When writing OPC UA DateTime values less than or equal to 1677-09-21T00:12:43.1452242Z or greater than or equal to 2262-04-11T23:47:16.8547758Z, it is saturated to the corresponding values. When reading OPC UA DateTime values equal to or greater than 1677-09-21T00:12:43.1452242Z or equal to 2262-04-11T23:47:16.8547758Z, these values are mapped to 1601-01-01T00:00:00.0000000Z or 9999-01-01T23:59:59.0000000Z, respectively, to indicate underflow or overflow of the value range.

 

2 When writing, the time part of OPC UA DateTime is also converted according to LDT. To avoid this the time part must be set to 00:00:00.0000000. When reading, the time part is also converted to OPC UA DateTime according to LDT. It may therefore deviate from 00:00:00.0000000.

 

3 When writing, the date part of OPC UA DateTime is also converted according to LDT. To avoid this the date part must be set to 1970-01-01. When reading, the date part is also converted to OPC UA DateTime according to LDT. It may therefore deviate from 1970-01-01.

 

4 Due to the conversion of the basic IEC 61131 data type int64 to OPC UA Double and the lower time resolution of the OPC UA data type Duration of 1 ms, compared to IEC 61131 LTIME of 1 ns, the values that can be displayed are in the range from -9223372036854.775 ms to 9223372036854.775 ms. During reading, rounding errors up to 2047 ns occur increasingly towards the edge of the value range.

 

 


 • Published/reviewed: 2020-08-07 • Revision 35 •