7 Mapping of DataTypes

7.1 Primitive DataTypes

Table 22 shows the mapping between basic data types of both standards.

Table 22 – Mapping of primitive DataTypes

POWERLINK

Basic Data Types

OPC UA DataTypes Description
BOOLEANBoolean1 Bit
INTEGER8SByteSigned integer, 8 Bit
INTEGER16Int16Signed integer, 16 Bit
INTEGER32Int32Signed integer, 32 Bit
INTEGER64Int64Signed integer, 64 Bit
UNSIGNED8ByteUnsigned integer, 8 Bit
UNSIGNED16UInt16Unsigned integer, 16 Bit
UNSIGNED32UInt32Unsigned integer, 32 Bit
UNSIGNED64UInt64Unsigned integer, 64 Bit
REAL32FloatFloat, 32 Bit
REAL64DoubleFloat, 64 Bit
DOMAINByteStringByteString with variable size
IP_ADDRESSPowerlinkIpAddressDataTypeIPV4 Address
OCTET_STRINGByteStringByteString with variable size
VISIBLE_STRINGStringVariable number bytes interpreted as ISO 646-1973(E) 7-bit coded characters

7.2 Enumeration DataTypes

7.2.1 PowerlinkNMTStateEnumeration

This DataType is an enumeration that represents the NMT State. Its values are defined in Table 23. States with the prefix “NMT_XS” represent a state that is existing for the POWERLINK Controlled Node as well as for the POWERLINK Managing Node. For instance, the states NMT_MS_OPERATIONAL and NMT_CS_OPERATIONAL are both represented by the enumeration value NMT_XS_OPERATIONAL_253.

Table 23 – PowerlinkNMTStateEnumeration Values
Value Description
NMT_GS_OFF_0
NMT_GS_INITIALISING_25first state after power-on of the POWERLINK Device
NMT_GS_RESET_APPLICATION_41set manufacturer-specific and standardised device profile area to their power-on values
NMT_GS_RESET_COMMUNICATION_57set communication profile area (except ERR_History_ADOM) to their power-on values
NMT_GS_RESET_CONFIGURATION_121generate the active device configuration
NMT_XS_NOT_ACTIVE_28a non-permanent state which allows a starting device to recognise the current network state
NMT_XS_PRE_OPERATIONAL_1_29the POWERLINK network operates in reduced cycle
NMT_XS_PRE_OPERATIONAL_2_93the POWERLINK network operates in isochronous operation, but the device is still in a configuration state
NMT_XS_READY_TO_OPERATE_109the device configuration is completed and the device is ready to switch over to NMT_XS_OPERATIONAL
NMT_XS_OPERATIONAL_253normal operating state of a POWERLINK Device
NMT_CS_STOPPED_77the device is largely passive, NMT_CS_STOPPED shall be used for controlled shutdown of a selected CN while the system is still running
NMT_XS_BASIC_ETHERNET_30 Legacy Ethernet communication according to IEEE 802.3, no POWERLINK specific network traffic control

Its representation in the AddressSpace is defined in Table 24.

Table 24 – PowerlinkNMTStateEnumeration Definition
Attributes Value
BrowseNamePowerlinkNMTStateEnumeration
Subtype of Enumeration defined in OPC 10000-5.

7.2.2 PowerlinkNMTResetCmdEnumeration

This DataType is an Enumeration that represents the NMT reset commands for POWERLINK. Its values are defined in Table 23.

Table 25 – PowerlinkNMTResetCmdEnumeration Values
Value Description
NMTResetNode_40start application initialisation
NMTResetCommunication_41start communication initialisation
NMTResetConfiguration_42activate device configuration
NMTSwReset_43start basic node initialisation
NMTInvalidService_255readback value for the POWERLINK Object NMT_ResetCmd_U8

Its representation in the AddressSpace is defined in Table 24.

Table 26 – PowerlinkNMTResetCmdEnumeration Definition
Attributes Value
BrowseNamePowerlinkNMTResetCmdEnumeration
Subtype of Enumeration defined in OPC 10000-5.

7.3 OptionSet DataTypes

7.3.1 PowerlinkAttributes

This DataType is an OptionSet that represents the POWERLINK entry attributes. It is a subtype of OptionSet. Its values are defined in Table 27 and the DataType is used for the Property PowerlinkAttributes in the VariableTypes PowerlinkArrayType (5.2.2) and PowerlinkVariableType (5.2.4).

Table 27 – PowerlinkAttributes Values
Value Bit Abbreviation Description
Const0CONSTRead access only, the value is not changing
Read1RRead access
Write2WWrite access
Input3IRepresents process input data, object can be used in PDO mapping
Output4ORepresents process output data, object can be used in PDO mapping
Store5SCan be stored to non-volatile memory
ValidOnReset6VROnly valid after reset
DefaultMapping7DEFVariable is included in default mapping
RPDO8RPDOVariable may be mapped into receive PDO
TPDO9TPDOVariable may be mapped into transmit PDO

The expressions in the column ‘Abbreviation’ are used in the OPC UA object definitions.

The Field CurrentRead of the Variables Attribute AccessLevel shall be contain the same value as the Field Read in the Variables Attribute PowerlinkAttributes.

The Field CurrentWrite of the Variables Attribute AccessLevel shall be contain the same value as the Field Write in the Variables Attribute PowerlinkAttributes.

Table 28 – PowerlinkAttributes Definition
Attributes Value
BrowseNamePowerlinkAttributes
Subtype of OptionSet defined in OPC 10000-3.

7.3.2 ErrorRegisterBits

This DataType is an OptionSet that represents the values of the Variable ERR_ErrorRegister_U8. It is a subtype of Byte. Its values are defined in Table 29.

Table 29 – ErrorRegisterBits Values
Value Bit Description
Generic_error0

This bit shall be set if any error is present.

Additionally to this bit, the following bits may be used to signal more detailed error information.

Current1
Voltage2
Temperature3
Communication_error4
Device_profile_specific5
Reserved6always 0
Manufacturer_specific7
Table 30 – ErrorRegisterBits Definition
Attributes Value
BrowseNameErrorRegisterBits
Subtype of OptionSet defined in OPC 10000-3.

7.4 VariableTypes

7.4.1 DIA_ERRStatistics_Type Definition

Table 31 formally defines the VariableType to represent the POWERLINK Record DIA_ERRStatistics_TYPE.

Table 31 – DIA_ERRStatistics_Type Definition
Attribute Value
BrowseNameDIA_ERRStatistics_Type
IsAbstractFalse
References NodeClass BrowseName Data
Type
Type
Definition
Modelling
Rule
Powerlink Attributes
Subtype of PowerlinkRecordType defined in 5.2.3.
HasComponentVariableHistoryEntryWrite_U32UInt32Powerlink‌Variable‌TypeOptionalR
HasComponentVariableEmergencyQueueWrite_U32
HasComponentVariableEmergencyQueueOverflow_U32
HasComponentVariableStatusEntryChanged_U32
HasComponentVariableStaticErrorBitFieldChanged_U32
HasComponentVariableExceptionResetEdgePos_U32
HasComponentVariableExceptionNewEdge_U32

7.4.2 DIA_NMTTelegrCount_Type Definition

Table 32 formally defines the VariableType to represent the POWERLINK Record DIA_NMTTelegrCount_TYPE.

Table 32 – DIA_NMTTelegrCount_Type Definition
Attribute Value
BrowseNameDIA_NMTTelegrCount_Type
IsAbstractFalse
References NodeClass BrowseName Data
Type
Type
Definition
Modelling
Rule
Powerlink Attributes
Subtype of PowerlinkRecordType defined in 5.2.3.
HasComponentVariableIsochrCyc_U32UInt32Powerlink‌Variable‌TypeOptionalR
HasComponentVariableIsochrRx_U32
HasComponentVariableIsochrTx_U32
HasComponentVariableAsyncRx_U32
HasComponentVariableAsyncTx_U32
HasComponentVariableSdoRx_U32
HasComponentVariableSdoTx_U32
HasComponentVariableStatus_U32

7.4.3 DLL_ErrorCntRec_Type Definition

Table 33 formally defines the VariableType to represent the POWERLINK Record DLL_ErrorCntRec_TYPE.

Table 33 – DLL_ErrorCntRec_Type Definition
Attribute Value
BrowseNameDLL_ErrorCntRec_Type
IsAbstractFalse
References NodeClass BrowseName Data
Type
Type
Definition
Modelling
Rule
Powerlink Attributes
Subtype of PowerlinkRecordType defined in 5.2.3.
HasComponentVariableCumulativeCnt_U32UInt32Powerlink‌Variable‌TypeMandatory RW
HasComponentVariableThreshold_U32UInt32Mandatory RW,S,VR
HasComponentVariableThresholdCnt_U32UInt32Mandatory R

7.4.4 IDENTITY_Type Definition

Table 34 formally defines the VariableType to represent the POWERLINK Record IDENTITY.

Table 34 – IDENTITY_Type Definition
Attribute Value
BrowseNameIDENTITY_Type
IsAbstractFalse
References NodeClass BrowseName Data
Type
Type
Definition
Modelling
Rule
Powerlink Attributes
Subtype of PowerlinkRecordType defined in 5.2.3.
HasComponentVariableVendorId_U32UInt32Powerlink‌Variable‌TypeMandatoryCONST
HasComponentVariableProductCode_U32UInt32OptionalCONST
HasComponentVariableRevisionNo_U32UInt32OptionalCONST
HasComponentVariableSerialNo_U32UInt32OptionalCONST

7.4.5 INP_ProcessImage_Type Definition

Table 35 formally defines the VariableType to represent the POWERLINK Record INP_ProcessImage_TYPE.

Table 35 – INP_ProcessImage_Type Definition
Attribute Value
BrowseNameINP_ProcessImage_Type
IsAbstractFalse
References NodeClass BrowseName Data
Type
Type
Definition
Modelling
Rule
Powerlink Attributes
Subtype of PowerlinkRecordType defined in 5.2.3.
HasComponentVariableSelectedRange_U32UInt32Powerlink‌Variable‌TypeMandatoryRW
HasComponentVariableProcessImageDomain_DOMByteStringMandatoryRW

7.4.6 NMT_BootTime_Type Definition

Table 36 formally defines the VariableType to represent the POWERLINK Record NMT_BootTime_TYPE.

Table 36 – NMT_BootTime_Type Definition
Attribute Value
BrowseNameNMT_BootTime_Type
IsAbstractFalse
References NodeClass BrowseName Data
Type
Type
Definition
Modelling
Rule
Powerlink Attributes
Subtype of PowerlinkRecordType defined in 5.2.3.
HasComponentVariableMNWaitNotAct_U32UInt32Powerlink‌Variable‌TypeMandatoryRW,S,VR
HasComponentVariableMNTimeoutPreOp1_U32UInt32MandatoryRW,S,VR
HasComponentVariableMNWaitPreOp1_U32UInt32OptionalRW,S,VR
HasComponentVariableMNTimeoutPreOp2_U32UInt32MandatoryRW,S,VR
HasComponentVariableMNTimeoutReadyToOp_U32UInt32MandatoryRW,S,VR
HasComponentVariableMNIdentificationTimeout_U32UInt32OptionalRW,S,VR
HasComponentVariableMNSoftwareTimeout_U32UInt32OptionalRW,S,VR
HasComponentVariableMNConfigurationTimeout_U32UInt32OptionalRW,S,VR
HasComponentVariableMNStartCNTimeout_U32UInt32OptionalRW,S,VR
HasComponentVariableMNSwitchOverPriority_U32UInt32OptionalRW,VR
HasComponentVariableMNSwitchOverDelay_U32UInt32OptionalRW,VR
HasComponentVariableMNSwitchOverCycleDivider_U32UInt32OptionalRW,VR

7.4.7 NMT_CycleTiming_Type Definition

Table 37 formally defines the VariableType to represent the POWERLINK Record NMT_CycleTiming_TYPE.

Table 37 – NMT_CycleTiming_Type Definition
Attribute Value
BrowseNameNMT_CycleTiming_Type
IsAbstractFalse
References NodeClass BrowseName Data
Type
Type
Definition
Modelling
Rule
Powerlink Attributes
Subtype of PowerlinkRecordType defined in 5.2.3.
HasComponentVariableIsochrTxMaxPayload_U16UInt16Powerlink‌Variable‌TypeMandatoryCONST
HasComponentVariableIsochrRxMaxPayload_U16UInt16MandatoryCONST
HasComponentVariablePResMaxLatency_U32UInt32OptionalCONST
HasComponentVariablePReqActPayloadLimit_U16UInt16OptionalRW,S,VR
HasComponentVariablePResActPayloadLimit_U16UInt16OptionalRW,S,VR
HasComponentVariableASndMaxLatency_U32UInt32OptionalCONST
HasComponentVariableMultiplCycleCnt_U8ByteMandatoryRW,S,VR
HasComponentVariableAsyncMTU_U16UInt16MandatoryRW,S,VR
HasComponentVariablePrescaler_U16UInt16OptionalRW,S,VR
HasComponentVariablePResMode_U8ByteOptionalR
HasComponentVariablePResTimeFirst_U32UInt32OptionalR
HasComponentVariablePResTimeSecond_U32UInt32OptionalR
HasComponentVariableSyncMNDelayFirst_U32UInt32OptionalR
HasComponentVariableSyncMNDelaySecond_U32UInt32OptionalR
HasComponentVariableLeaseTime_U32UInt32OptionalR

7.4.8 NMT_EPLNodeID_Type Definition

Table 38 formally defines the VariableType to represent the POWERLINK Record NMT_EPLNodeID_TYPE.

Table 38 – NMT_EPLNodeID_Type Definition
Attribute Value
BrowseNameNMT_EPLNodeID_Type
IsAbstractFalse
References NodeClass BrowseName Data
Type
Type
Definition
Modelling
Rule
Powerlink Attributes
Subtype of PowerlinkRecordType defined in 5.2.3.
HasComponentVariableNodeID_U8BytePowerlink‌Variable‌TypeMandatoryR
HasComponentVariableNodeIDByHW_BOOLBooleanMandatoryR
HasComponentVariableSWNodeID_U8ByteOptionalRW,S,VR

7.4.9 NMT_InterfaceGroup_Type Definition

Table 39 formally defines the VariableType to represent the POWERLINK Record NMT_InterfaceGroup_Xh_TYPE.

Table 39 – NMT_InterfaceGroup_Type Definition
Attribute Value
BrowseNameNMT_InterfaceGroup_Type
IsAbstractFalse
References NodeClass BrowseName Data
Type
Type
Definition
Modelling
Rule
Powerlink Attributes
Subtype of PowerlinkRecordType defined in 5.2.3.
HasComponentVariableInterfaceIndex_U16UInt16Powerlink‌Variable‌TypeMandatoryR
HasComponentVariableInterfaceDescription_VSTRStringMandatoryCONST
HasComponentVariableInterfaceType_U8ByteMandatoryCONST
HasComponentVariableInterfaceMtu_U16UInt16MandatoryCONST
HasComponentVariableInterfacePhysAddress_OSTRByteStringMandatoryCONST
HasComponentVariableInterfaceName_VSTRStringMandatoryR
HasComponentVariableInterfaceOperStatus_U8ByteMandatoryR
HasComponentVariableInterfaceAdminState_U8ByteMandatoryRW,S
HasComponentVariableValid_BOOLBooleanMandatoryRW,S
HasComponentVariablePortEnableMask_U64UInt64OptionalR

7.4.10 NMT_MNCycleTiming_Type Definition

Table 40 formally defines the VariableType to represent the POWERLINK Record NMT_MNCycleTiming_TYPE.

Table 40 – NMT_MNCycleTiming_Type Definition
Attribute Value
BrowseNameNMT_MNCycleTiming_Type
IsAbstractFalse
References NodeClass BrowseName Data
Type
Type
Definition
Modelling
Rule
Powerlink Attributes
Subtype of PowerlinkRecordType defined in 5.2.3.
HasComponentVariableWaitSoCPReq_U32UInt32Powerlink‌Variable‌TypeMandatoryRW,S,VR
HasComponentVariableAsyncSlotTimeout_U32UInt32OptionalRW,S,VR
HasComponentVariableASndMaxNumberByteOptionalRW,S,VR
HasComponentVariableMinRedCycleTime_U32UInt32OptionalRW,S,VR

7.4.11 NMT_ParameterStorage_Type Definition

Table 41 formally defines the VariableType to represent the POWERLINK Record NMT_ParameterStorage_TYPE.

Table 41 – NMT_ParameterStorage_Type Definition
Attribute Value
BrowseNameNMT_ParameterStorage_Type
IsAbstractFalse
References NodeClass BrowseName Data
Type
Type
Definition
Modelling
Rule
Powerlink Attributes
Subtype of PowerlinkRecordType defined in 5.2.3.
HasComponentVariableAllParam_U32UInt32Powerlink‌Variable‌TypeMandatoryRW
HasComponentVariableCommunicationParam_U32UInt32OptionalRW
HasComponentVariableApplicationParam_U32UInt32OptionalRW
HasComponentVariableManufacturerParam_XXh_U32UInt32Optional
Placeholder
RW

7.4.12 NMT_RequestCmd_Type Definition

Table 42 formally defines the VariableType to represent the POWERLINK Record NMT_RequestCmd_TYPE.

Table 42 – NMT_RequestCmd_Type Definition
Attribute Value
BrowseNameNMT_RequestCmd_Type
IsAbstractFalse
References NodeClass BrowseName DataType Type
Definition
Modelling
Rule
Powerlink Attributes
Subtype of PowerlinkRecordType defined in 5.2.3.
HasComponentVariableRelease_BOOLBooleanPowerlink‌Variable‌TypeMandatoryRW
HasComponentVariableCmdID_U8ByteMandatoryRW
HasComponentVariableCmdTarget_U8ByteMandatoryRW
HasComponentVariableCmdData_DOMByteStringOptionalRW

7.4.13 NWL_IpAddrTable_Type Definition

Table 43 formally defines the VariableType to represent the POWERLINK Record NWL_IpAddrTable_TYPE.

Table 43 – NWL_IpAddrTable_Type Definition
Attribute Value
BrowseNameNWL_IpAddrTable_Type
IsAbstractFalse
References NodeClass BrowseName DataType Type
Definition
Modelling
Rule
Powerlink Attributes
Subtype of PowerlinkRecordType defined in 5.2.3.
HasComponentVariableIfIndex_U16UInt16Powerlink‌Variable‌TypeMandatoryR
HasComponentVariableAddr_IPADPowerlinkIpAddressDatatTypeMandatoryRW,S
HasComponentVariableNetMask_IPADPowerlinkIpAddressDatatTypeMandatoryRW,S
HasComponentVariableReasmMaxSize_U16UInt16MandatoryR
HasComponentVariableDefaultGateway_IPADPowerlinkIpAddressDatatTypeMandatoryRW,S

7.4.14 PDO_CommParamRecord_Type Definition

Table 44 formally defines the VariableType to represent the POWERLINK Record PDO_CommParamRecord_TYPE.

Table 44 – PDO_CommParamRecord_Type Definition
Attribute Value
BrowseNamePDO_CommParamRecord_Type
IsAbstractFalse
References NodeClass BrowseName DataType Type
Definition
Modelling
Rule
Powerlink Attributes
Subtype of PowerlinkRecordType defined in 5.2.3.
HasComponentVariableNodeID_U8BytePowerlink‌Variable‌TypeMandatoryRW,S
HasComponentVariableMappingVersion_U8ByteMandatoryRW,S

7.5 Structure DataTypes

7.5.1 PowerlinkErrorEntryDataType

Table 45 formally defines the Structure DataType PowerlinkErrorEntryDataType to represent the entries of the POWERLINK Object ERR_History_ADOM.

Table 45 – PowerlinkErrorEntryDataType Structure
Name Type Description
PowerlinkErrorEntryDataTypeStructure

entryType

UInt16Entry type as defined in the Powerlink specification EPSG DS 301

errorCode

UInt16Error code as defined in the Powerlink specification EPSG DS 301

timeStamp

UInt64SoC Nettime from the cycle when the error/event was detected

additionalInformation

UInt64This field contains device profile or vendor specific additional error information

7.5.2 PowerlinkIpAddressDataType

Table 46 formally defines the Structure DataType PowerlinkIpAddressDataType to represent POWERLINK Objects of the POWERLINK data type IP_ADDRESS.

Table 46 – PowerlinkIpAddressDataType Structure
Name Type Description
PowerlinkIpAddressDataTypeStructure

b1

Byte1st byte of the IP-Address, e.g. 192 for the Address 192.168.100.1

b2

Byte2nd byte of the IP-Address, e.g. 168 for the Address 192.168.100.1

b3

Byte3rd byte of the IP-Address, e.g. 100 for the Address 192.168.100.1

b4

Byte4th byte of the IP-Address, e.g. 1 for the Address 192.168.100.1

7.5.3 PowerlinkPDOMappingEntryDataType

Table 47 formally defines the Structure DataType PowerlinkPDOMappingEntryDataType to represent the entries of POWERLINK Objects like PDO_RxCommParam_00h_REC.

Table 47 – PowerlinkPDOMappingEntryDataType Structure
Name Type Description
PowerlinkPDOMappingEntryDataTypeStructure

length

UInt16Index of the object to be mapped

offset

UInt16Sub-Index of the object to be mapped

reserved

Bytefor alignment purpose

subIndex

ByteOffset related to start of PDO payload (Bit count)

index

UInt16Length of the mapped object (Bit count)