6 PROFINET OPC UA Information Model

6.3 Base Information Model

6.3.3 OPC UA Data Types

6.3.3.1 Structures 
6.3.3.1.1 PnDeviceDiagnosisDataType 
Table 81 – PnDeviceDiagnosisDataType Structure
Name | Type | Description |
---|---|---|
PnDeviceDiagnosisDataType | Structure | |
API | UInt32 | |
Slot | UInt16 | |
Subslot | UInt16 | |
ChannelNumber | UInt16 | |
Type | PnChannelTypeEnumeration | |
Accumulative | PnChannelAccumulativeEnumeration | |
Maintenance | PnChannelMaintenanceEnumeration | |
Specifier | PnChannelSpecifierEnumeration | |
Direction | PnChannelDirectionEnumeration | |
UserStructureIdentifier | UInt16 | |
ChannelErrorType | UInt16 | |
ExtChannelErrorType | UInt16 | |
ExtChannelAddValue | UInt32 | |
QualifiedChannelQualifier | UInt32 | |
ManufacturerData | ByteString | Manufacturer specific diagnosis data |
Message | LocalizedText | Diagnosis message read from the GSDML |
HelpText | LocalizedText | Help text read from the GSDML |
If the field UserStructureIdentifier indicates manufacturer specific diagnosis information, the ByteString ManufacturerData contains the manufacturer specific diagnosis data.
The Message and the HelpText variables are retrieved from the GSDML file. If the Message includes a dynamic format string, this is replaced by the ExtChannelAddValue.
6.3.3.1.2 PnIM5DataType 
Table 82 – PnIM5DataType Structure
Name | Type | Description | |
---|---|---|---|
PnIM5DataType | Structure | Contains the fields of the APDU element I&M5 | I&M5Data |
Annotation | String | I&M5Data | IM_Annotation |
OrderId | String | I&M5Data | IM_OrderID |
VendorId | UInt16 | I&M5Data | VendorID |
SerialNumber | String | I&M5Data | IM_Serial_Number |
HardwareRevision | String | I&M5Data | IM_Hardware_Revision |
SoftwareRevision | String | I&M5Data | IM_Software_Revision |
6.3.3.2 OptionSets 
6.3.3.2.1 PnDeviceRoleOptionSet 
Table 83 – PnDeviceRoleOptionSet
Value | Bit No. | Description |
---|---|---|
IO_DEVICE | 0 | The device contains an IO device interface. |
IO_CONTROLLER | 1 | The device contains an IO controller interface. |
IO_MULTIDEVICE | 2 | The device contains multiple IO device interfaces. |
IO_SUPERVISOR | 3 | The device contains an IO supervisor interface. |
IO_CIM | 4 | The device contains a CIM device interface. |
The PnDeviceRoleOptionSet representation in the AddressSpace is defined in Table 84.
Table 84 – PnDeviceRoleOptionSet Definition
Attribute | Value |
---|---|
BrowseName | PnDeviceRoleOptionSet |
IsAbstract | False |
Subtype of the OptionSet type defined in [OPC 10000-5]
References | NodeClass | BrowseName | DataType | TypeDefinition | Other |
---|---|---|---|---|---|
0:HasProperty | Variable | 0:OptionSetValues | 0:LocalizedText [] | 0:PropertyType |
See: [PN Protocol], Table – DeviceRoleDetails
6.3.3.3 Enumerations 
6.3.3.3.1 PnDeviceStateEnumeration 
Table 85 – PnDeviceStateEnumeration
Name | Description |
---|---|
OFFLINE_0 | The device is not online, or no information is available. The device is offline if no ARs other than possible Device Access AR’s exist. |
OFFLINE_DOCKING_1 | The device is a docking device and currently not online. |
ONLINE_2 | The device is online. This is the case if at least one AR other than possible Device Access AR’s exists. |
ONLINE_DOCKING_3 | The device is a docking device and currently online. |
6.3.3.3.2 PnARStateEnumeration 
Table 86 – PnARStateEnumeration
Name | Description |
---|---|
CONNECTED_0 | The AR connection to the device is established |
UNCONNECTED_1 | The AR connection to the device is not established |
UNCONNECTED_ERR_DEVICE_NOT_FOUND_2 | The AR connection to the device is not established because the device is not available in the network |
UNCONNECTED_ERR_DUPLICATE_IP_3 | The AR connection to the device is not established because the IP address of the device exists multiple times |
UNCONNECTED_ERR_DUPLICATE_NOS_4 | The AR connection to the device is not established because the Name of Station of the device exists multiple times |
6.3.3.3.3 PnARTypeEnumeration 
Table 87 – PnARTypeEnumeration
Name | Description |
---|---|
IOCARSingle_0 | - |
IOSAR_6 | The supervisor AR is a special form of the IOCARSingle allowing takeover of the ownership of a submodule |
IOCARSingleUsingRT_CLASS_3_16 | This is a special form of the IOCARSingle indicating RT_CLASS_3 communication |
IOCARSR_32 | The SR AR is a special form of the IOCARSingle indicating system redundancy or dynamic reconfiguration usage |
See: [PN Protocol], Table 508 – ARType
6.3.3.3.4 PnModuleStateEnumeration 
Table 88 – PnModuleStateEnumeration
Name | Description |
---|---|
NO_MODULE_0 | For example module not plugged |
WRONG_MODULE_1 | For example ModuleIdentNumber wrong |
PROPER_MODULE_2 | Module is okay but at least one submodule is locked, wrong or missing |
SUBSTITUTE_3 | Module is not the same as requested – but the IO device was able to adapt by its own knowledge |
OK_4 | Default state |
See: [PN Protocol], Table 586 – ModuleState
6.3.3.3.5 PnSubmoduleAddInfoEnumeration 
Table 89 – PnSubmoduleAddInfoEnumeration
Name | Description |
---|---|
NO_ADD_INFO_0 | - |
TAKEOVER_NOT_ALLOWED_1 | This Submodule is not available for takeover by IOSAR. |
See: [PN Protocol], Table 587 – SubmoduleState.AddInfo
6.3.3.3.6 PnSubmoduleARInfoEnumeration 
Table 90 – PnSubmoduleARInfoEnumeration
Name | Description |
---|---|
OWN_0 | This AR is owner of the submodule |
APPLICATION_READY_PENDING_128 | This AR is owner of the submodule but it is blocked. For example parameter checking pending |
SUPERORDINATED_LOCKED_256 | This AR is not owner of the submodule. It is blocked by superordinated means |
LOCKED_BY_IO_CONTROLLER_384 | This AR is not owner of the submodule. It is owned by another IOAR |
LOCKED_BY_IO_SUPERVISOR_512 | This AR is not owner of the submodule. It is owned by another IOSAR |
See: [PN Protocol], Table 592 – SubmoduleState.ARInfo
6.3.3.3.7 PnSubmoduleIdentInfoEnumeration 
Table 91 – PnSubmoduleIdentInfoEnumeration
Name | Description |
---|---|
OK_0 | OK |
SUBSTITUTE_2048 | Substitute (SU) |
WRONG_4096 | Wrong (WR) |
NO_SUBMODULE_6144 | NoSubmodule (NO) |
See: [PN Protocol], Table 593 – SubmoduleState.IdentInfo
6.3.3.3.8 PnChannelTypeEnumeration 
Table 92 – PnChannelTypeEnumeration
Name | Description |
---|---|
UNSPECIFIC_0 | Shall be used if the field ChannelNumber contains the value 0x8000 (submodule) Furthermore, it shall be used if none of the below defined types are appropriate. |
1BIT_1 | The data length of this channel is 1 Bit. |
2BIT_2 | The data length of this channel is 2 Bit. |
4BIT_3 | The data length of this channel is 4 Bit. |
8BIT_4 | The data length of this channel is 8 Bit. |
16BIT_5 | The data length of this channel is 16 Bit. |
32BIT_6 | The data length of this channel is 32 Bit. |
64BIT_7 | The data length of this channel is 64 Bit. |
See: [PN Protocol], Table 651 – ChannelProperties.Type
6.3.3.3.9 PnChannelAccumulativeEnumeration 
Table 93 – PnChannelAccumulativeEnumeration
Name | Description |
---|---|
SINGLE_0 | Single channel Diagnosis only for the reported channel |
ACCUMULATIVE_256 | Multiple channel Accumulative diagnosis from more than one channel |
See: [PN Protocol], Table 652 – ChannelProperties.Accumulative
6.3.3.3.10 PnChannelMaintenanceEnumeration 
Table 94 – PnChannelMaintenanceEnumeration
Name | Description |
---|---|
FAULT_0 | Fault |
MAINTENANCE_REQUIRED_512 | Maintenance required |
MAINTENANCE_DEMANDED_1024 | Maintenance demanded |
USE_QUALIFIED_CHANNEL_QUALIFIER_1536 | Use QualifiedChannelQualifier variable |
See: [PN Protocol], Table 653 – ChannelProperties.Maintenance
6.3.3.3.11 PnChannelSpecifierEnumeration 
Table 95 – PnChannelSpecifierEnumeration
Name | Description |
---|---|
ALL_DISAPPEARS_0 | The Diagnosis ASE contains no longer any entries (of any severity) for this channel |
APPEARS_2048 | An event appears and/or exists further The Diagnosis ASE contains this and possible other entries for this channel. |
DISAPPEARS_4096 | An event disappears and/or exists no longer The Diagnosis ASE contains no longer any entries of the same severity for this channel |
DISAPPEARS_OTHER_REMAIN_6144 | An event disappears The Diagnosis ASE still contains other entries of the same severity for this channel |
See: [PN Protocol], Table 656 – ChannelProperties.Specifier
6.3.3.3.12 PnChannelDirectionEnumeration 
Table 96 – PnChannelDirectionEnumeration
Name | Description |
---|---|
MANUFACTURER_SPECIFIC_0 | Manufacturer specific |
INPUT_CHANNEL_8192 | Input |
OUTPUT_CHANNEL_16384 | Output |
BIDIRECTIONAL_CHANNEL_24576 | Input/Output |
See: [PN Protocol], Table 585 – ChannelProperties.Direction
6.3.3.3.13 PnAssetTypeEnumeration 
Table 97 – PnAssetTypeEnumeration
Name | Description |
---|---|
DEVICE_0 | Device |
MODULE_1 | Real Module |
SUBMODULE_2 | Real Submodule |
ASSET_3 | Asset |
6.3.3.3.14 PnAssetChangeEnumeration 
Table 98 – PnAssetChangeEnumeration
Name | Description |
---|---|
INSERTED_0 | Asset has been added |
REMOVED_1 | Asset has been removed |
CHANGED_2 | Asset has been changed |
6.3.3.3.15 PnLinkStateEnumeration 
Table 99 – PnLinkStateEnumeration
Name | Description |
---|---|
UP_1 | Ready to pass packets |
DOWN_2 | No packets are passed |
TESTING_3 | In some test mode |
UNKNOWN_4 | Status cannot be determined |
DORMANT_5 | In pending state waiting for some external event |
NOT_PRESENT_6 | Port not present |
LOWER_LAYER_DOWN_7 | Down due to lower layer |
6.3.3.3.16 PnPortStateEnumeration 
Table 100 – PnPortStateEnumeration
Name | Description |
---|---|
UNKNOWN_0 | Status cannot be determined |
DISABLED_DISCARDING_1 | The port is administratively disabled and discarding frames |
BLOCKING_2 | The port blocks incoming frames |
LISTENING_3 | The port is listening to and sending BPDUs (Bridge Protocol Data Units). |
LEARNING_4 | The port is listening for and processing BPDUs and starts learning MAC’s |
FORWARDING_5 | The port is processing BPDUs and forwarding frames |
BROKEN_6 | The port blocks incoming frames since a configuration error is detected |
6.3.3.3.17 IMTagSelectorEnumeration 
Table 101 – IMTagSelectorEnumeration
Name | Description |
---|---|
FUNCTION_0 | The Tag_Function argument shall be written. |
LOCATION_1 | The Tag_Location argument shall be written. |
BOTH_2 | Both arguments, Tag_Function and Tag_Location, shall be written. |