6 PROFINET OPC UA Information Model ToC Previous Next

6.3 Base Information Model ToC Previous Next

6.3.1 OPC UA Object Types ToC Previous Next

The first 4 chapters of the base information model include the object types for the internal module/submodule structure of a PROFINET device and controller.

Figure 17 shows a simplified example for a module/submodule object structure. The container folders have been skipped in the figure.

readme_files/image021.png

Figure 17 – Object Structure

The Device View includes devices in the PROFINET network and their real existing modules and submodules.

The Controller / Application View includes the PROFINET connections (Application Relationships) and the expected modules and submodules which have been configured in the PROFINET controller.

Both views relate to each other by non-hierarchical references.

The chapter 6.3.1.7 includes the object types for the PROFINET network mapping.

The chapter 6.3.1.8 includes the 2 object types for the asset identification within a PROFINET device.

6.3.1.1 Object instances lifetime ToC

All object instances of the base information model represent the online view on the PROFINET network.

All PROFINET objects modeled in this specification are only created in the address space when the OPC UA Server detects their PROFINET counterpart. The objects are removed from the address space when the OPC UA Server detects their absence in the PROFINET network or PROFINET device.

The chapter 6.10 of [PN TAD] describes the possible ways of implementing the PROFINET device discovery. The chapter 11.3 of [PN TAD] describes the detection of the real modules and real submodules of a device and how to get their identification and asset data.

All these ContainerType objects only exist if objects are available in the container.

6.3.1.2 Domain ToC

6.3.1.2.1 IPnDomainType ToC

Table 23 – IPnDomainType Definition

Attribute Value        
BrowseName IPnDomainType        
IsAbstract True        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseInterfaceType defined in [OPC 10000-5].          
HasComponent Object Nodes   PnEquipmentContainerType Mandatory

The Nodes object of the Domain includes all device and controller nodes which belong to the PROFINET domain.

6.3.1.3 Node ToC

6.3.1.3.1 IPnEquipmentType ToC

Table 24 – IPnEquipmentType Definition

Attribute Value        
BrowseName IPnEquipmentType        
IsAbstract True        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseInterfaceType defined in [OPC 10000-5].          
HasComponent Object Interfaces   PnInterfaceContainerType Mandatory
HasComponent Object Modules   PnRealModuleContainerType Optional
HasComponent Object Assets   PnAssetContainerType Optional
HasComponent Object IM   PnIdentificationType Optional
HasProperty Variable Vendor String PropertyType Optional
HasComponent Variable Diagnosis PnDeviceDiagnosisDataType[] BaseDataVariableType Optional
HasComponent Object Alarms   FolderType Optional
HasComponent Method ShowLocation   ShowLocationMethod Optional
GeneratesEvent ObjectType PnDiagnosisAlarmType      
GeneratesEvent ObjectType PnAssetChangedEventType      

If the IM component is provided, it must contain the data of the representative submodule for the device in accordance with the I&M0FilterDataDevice block (See [PN TAD] – Identification & Maintenance).

The Assets and IM objects are optional. If the interface is used with the OPC UA facet model, the asset data can be part of another facet (See chapter 6PROFINET OPC UA Information Model” and Figure 16 – “Facet” modelling approach for I4.0 System Modelling).

The <Assets> objects are only assets which are directly related to this device. Assets related to the modules or submodules are components of these objects.

The server may provide diagnosis data with the Diagnosis variable or by sending PnDiagnosisAlarmType events. The diagnosis data at the device object includes the diagnosis information of the whole device including the one of all real modules and real submodules. An OPC UA Server might provide instances of the PnDiagnosisAlarmType as objects under the Alarms object.

Mapping to PROFINET properties:

BrowseName Method Source  
Vendor DCP DeviceVendorBlockRes DeviceVendorValue
Diagnosis Read DiagnosisData (0xF80C device specific)  

6.3.1.3.1.1 ShowLocation Method ToC

This optional method shall trigger a perceivable signal which allows the identification of the physical device represented by the device object the method is invoked on. This is usually accomplished with a blinking LED.

The method has no parameters (no [in] and no [out] parameters) and no return value.

Signature

ShowLocation (
);

6.3.1.3.2 PnEquipmentContainerType ToC

Table 25 – PnEquipmentContainerType Definition

Attribute Value        
BrowseName PnEquipmentContainerType        
IsAbstract False        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseObjectType defined in [OPC 10000-5].          
HasComponent Object <PnEquipments>   BaseObjectType Optional
Placeholder

The <PnEquipments> shall have the references and components defined in Table 26 and Table 27.

Table 26 – PnEquipmentContainerType Additional References

Source Path Reference Type Is Forward Target Path
<PnEquipments> 0:HasInterface True    0:ObjectTypes
   0:BaseObjectType
   0:BaseInterfaceType
   IPnEquipmentType

Table 27 – PnEquipmentContainerType Additional Subcomponents

Source Path References NodeClass BrowseName DataType
TypeDefinition
Others
Applied from IPnEquipmentType          
<PnEquipments> 0:HasComponent Object Interfaces PnInterfaceContainerType M
<PnEquipments> 0:HasComponent Object Modules PnRealModuleContainerType O
<PnEquipments> 0:HasComponent Object Assets PnAssetContainerType O
<PnEquipments> 0:HasComponent Object IM PnIdentificationType O
<PnEquipments> 0:HasProperty Variable Vendor String PropertyType O
<PnEquipments> 0:HasComponent Variable Diagnosis PnDeviceDiagnosisDataType[] BaseDataVariableType O
<PnEquipments> 0:HasComponent Object Alarms FolderType O
<PnEquipments> 0:HasComponent Method ShowLocation ShowLocationMethod O
<PnEquipments> 0:GeneratesEvent ObjectType PnDiagnosisAlarmType    
<PnEquipments> 0:GeneratesEvent ObjectType PnAssetChangedEventType    

Mapping to PROFINET properties:

BrowseName Method Source
<PnEquipments> DCP List of IdentifyResBlock

6.3.1.3.3 IPnDeviceType ToC

Table 28 – IPnDeviceType Definition

Attribute Value        
BrowseName IPnDeviceType        
IsAbstract True        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of IPnEquipmentType          
HasProperty Variable GSDDescription String PropertyType Optional
HasComponent Variable State PnDeviceStateEnumeration BaseDataVariableType Optional

The BrowseName of a device object instance shall be the content of the NameOfStation variable of the first interface sub module. If the NameOfStation variable is not set, the content of the MAC Address variable of the first interface sub module shall be used. The MAC address string should use the canonical format (separated with -, e.g. AC-FD-CE-EC-03-80).

If the GSDDescription property is provided, it must contain the InfoText with Device Id from the GSD (see mapping table below).

Mapping to PROFINET properties:

BrowseName Method Source    
GSDDescription GSD DeviceIdentity InfoText with Device Id  
State Read ARData NumberOfARs ARProperties Empty block if offline. Online if at least one ARProperties block with ARProperties.DeviceAccess != 1 can be found in the record data.

6.3.1.3.4 IPnControllerType ToC

Table 29 – IPnControllerType Definition

Attribute Value        
BrowseName IPnControllerType        
IsAbstract True        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of IPnEquipmentType          
HasComponent Object ARs   PnApplicationRelationContainerType Optional

6.3.1.4 Application Relationship ToC

6.3.1.4.1 PnApplicationRelationType ToC

Table 30 – PnApplicationRelationType Definition

Attribute Value        
BrowseName PnApplicationRelationType        
IsAbstract False        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseObjectType defined in [OPC 10000-5].          
HasComponent Object Modules   PnExpectedModuleContainerType Optional
HasComponent Variable State PnARStateEnumeration BaseDataVariableType Mandatory
HasProperty Variable Id Guid PropertyType Mandatory
HasProperty Variable Type PnARTypeEnumeration PropertyType Mandatory
HasProperty Variable SendClockFactor UInt16 PropertyType Optional
HasProperty Variable ReductionRatio UInt16 PropertyType Optional
HasProperty Variable DataHoldFactor UInt16 PropertyType Optional

The BrowseName of an application relationship object instance shall be the Id in standard GUID string format.

The Modules container object is the root of the configuration hierarchy consisting of the expected modules of the application relationship and their expected submodules (See chapter 6.3 - Base Information Model and Figure 17 – Object Structure).

The State variable has always the value CONNECTED on devices since the object only exists if an AR is established.

An IsPnApplicationRelationControllerInterface reference points to the interface object of the controller used for the AR. If the AR relates to the device an IsPnApplicationRelationDeviceInterface reference points to the interface object of the device. See sections 6.3.2.11 and 6.3.2.12 also.

Mapping to PROFINET properties:

BrowseName Method Source    
Id Read ARData ARUUID  
Type Read ARData ARType  
SendClockFactor Read available also on Device/Gateway since PROFINET V2.4 via ARData SendClockFactor or PDSyncData SendClockFactor
ReductionRatio Read available also on Device/Gateway since PROFINET V2.4 via ARData ReductionRatio  
DataHoldFactor Read IOCRBlockReq DataHoldFactor (not available on Device/Gateway)  

6.3.1.4.2 PnApplicationRelationContainerType ToC

Table 31 – PnApplicationRelationContainerType Definition

Attribute Value        
BrowseName PnApplicationRelationContainerType        
IsAbstract False        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseObjectType defined in [OPC 10000-5].          
HasPnApplicationRelation Object <ARs>   PnApplicationRelationType Optional
Placeholder

Mapping to PROFINET properties:

BrowseName Method Source    
<ARs> Read ARData NumberOfARs entries ARUUID

6.3.1.5 Module ToC

6.3.1.5.1 IPnModuleType ToC

Table 32 – IPnModuleType Definition

Attribute Value        
BrowseName IPnModuleType        
IsAbstract True        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseInterfaceType defined in [OPC 10000-5].          
HasProperty Variable Slot UInt16 PropertyType Mandatory
HasProperty Variable IdentNumber UInt32 PropertyType Mandatory
HasProperty Variable GSDName String PropertyType Optional
HasProperty Variable GSDDescription String PropertyType Optional

The properties Slot and IdentNumber must contain the data as described in the mapping table provided for the subtypes IPnRealModuleType and IPnExpectedModuleType.

Mapping to PROFINET properties:

BrowseName Method Source      
GSDName GSDML ModuleList ModuleItem ModuleInfo Name
GSDDescription GSDML ModuleList ModuleItem ModuleInfo InfoText

6.3.1.5.2 IPnRealModuleType ToC

Table 33 – IPnRealModuleType Definition

Attribute Value        
BrowseName IPnRealModuleType        
IsAbstract True        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of IPnModuleType          
HasComponent Object Submodules   PnRealSubmoduleContainerType Optional
HasComponent Object IM   PnIdentificationType Optional
HasComponent Variable Diagnosis PnDeviceDiagnosisDataType[] BaseDataVariableType Optional
HasComponent Object Alarms   FolderType Optional
GeneratesEvent ObjectType PnDiagnosisAlarmType      
GeneratesEvent ObjectType PnAssetChangedEventType      

The BrowseName of a module object instance shall be the content of the Slot variable in decimal number string format.

If the IM component is provided, it must contain the data of the representative submodule for the module in accordance with the I&M0FilterDataModule block (See [PN TAD] – Identification & Maintenance).

The server may provide diagnosis data with the Diagnosis variable or by sending PnDiagnosisAlarmType events. The diagnosis data at the real module object includes the diagnosis information of the whole module including the one of the real submodules of the module. An OPC UA Server may provide instances of the PnDiagnosisAlarmType as objects under the Alarms object.

Mapping to PROFINET properties:

BrowseName Method Source  
Slot Read RealIdentificationData SlotNumber
IdentNumber Read RealIdentificationData IdentNumber
Diagnosis Read DiagnosisData (0xC00C slot specific)  

6.3.1.5.3 PnRealModuleContainerType ToC

Table 34 – PnRealModuleContainerType Definition

Attribute Value        
BrowseName PnRealModuleContainerType        
IsAbstract False        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseObjectType defined in [OPC 10000-5].          
HasPnRealModule Object <Modules>   BaseObjectType Optional
Placeholder

The <Modules> shall have the references and components defined in Table 35 and Table 36.

Table 35 – PnRealModuleContainerType Additional References

Source Path Reference Type Is Forward Target Path
<Modules> 0:HasInterface True    0:ObjectTypes
   0:BaseObjectType
   0:BaseInterfaceType
   IPnModuleType
   IPnRealModuleType

Table 36 – PnRealModuleContainerType Additional Subcomponents

Source Path References NodeClass BrowseName DataType
TypeDefinition
Others
Applied from IPnRealModuleType          
<Modules> 0:HasProperty Variable Slot UInt16
PropertyType
M
<Modules> 0:HasProperty Variable IdentNumber UInt32
PropertyType
M
<Modules> 0:HasProperty Variable GSDName String PropertyType O
<Modules> 0:HasProperty Variable GSDDescription String PropertyType O
<Modules> 0:HasComponent Object Submodules PnRealSubmoduleContainerType O
<Modules> 0:HasComponent Object IM PnIdentificationType O
<Modules> 0:HasComponent Variable Diagnosis PnDeviceDiagnosisDataType[] BaseDataVariableType O
<Modules> 0:HasComponent Object Alarms FolderType O
<Modules> 0:GeneratesEvent ObjectType PnDiagnosisAlarmType    
<Modules> 0:GeneratesEvent ObjectType PnAssetChangedEventType    

Mapping to PROFINET properties:

BrowseName Method Source    
<Modules> Read RealIdentificationData NumberOfSlots entries SlotNumber

6.3.1.5.4 IPnExpectedModuleType ToC

Table 37 – IPnExpectedModuleType Definition

Attribute Value        
BrowseName IPnExpectedModuleType        
IsAbstract True        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of IPnModuleType          
HasComponent Object Submodules   PnExpectedSubmoduleContainerType Optional
HasComponent Variable State PnModuleStateEnumeration BaseDataVariableType Mandatory

The BrowseName of a module object instance shall be the content of the Slot variable in decimal number string format.

An IsPnRealModule reference points to the real module which is the real realization of the expected module. See section 6.3.2.9 also.

Mapping to PROFINET properties:

BrowseName Method Source  
Slot Read ExpectedIdentificationData SlotNumber
IdentNumber Read ExpectedIdentificationData IdentNumber
State Read ModuleDiffBlock ModuleState

6.3.1.5.5 PnExpectedModuleContainerType ToC

Table 38 – PnExpectedModuleContainerType Definition

Attribute Value        
BrowseName PnExpectedModuleContainerType        
IsAbstract False        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseObjectType defined in [OPC 10000-5].          
HasPnExpectedModule Object <Modules>   BaseObjectType Optional
Placeholder

The <Modules> shall have the references and subcomponents defined in Table 39 and Table 40.

Table 39 – PnExpectedModuleContainerType Additional References

Source Path Reference Type Is Forward Target Path
<Modules> 0:HasInterface True    0:ObjectTypes
   0:BaseObjectType
   0:BaseInterfaceType
   IPnModuleType
   IPnExpectedModuleType

Table 40 – PnExpectedModuleContainerType Additional Subcomponents

Source Path References NodeClass BrowseName DataType
TypeDefinition
Others
Applied from IPnExpectedModuleType          
<Modules> 0:HasProperty Variable Slot UInt16
PropertyType
M
<Modules> 0:HasProperty Variable IdentNumber UInt32
PropertyType
M
<Modules> 0:HasProperty Variable GSDName String PropertyType O
<Modules> 0:HasProperty Variable GSDDescription String PropertyType O
<Modules> 0:HasComponent Variable State PnModuleStateEnumeration
BaseDataVariableType
M
<Modules> 0:HasComponent Object Submodules PnExpectedSubmoduleContainerType O

Mapping to PROFINET properties:

BrowseName Method Source    
<Modules> Read ExpectedIdentificationData NumberOfSlots entries SlotNumber

6.3.1.6 Submodule ToC

6.3.1.6.1 IPnSubmoduleType ToC

Table 41 – IPnSubmoduleType Definition

Attribute Value        
BrowseName IPnSubmoduleType        
IsAbstract True        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseInterfaceType defined in [OPC 10000-5].          
HasProperty Variable API UInt32 PropertyType Mandatory
HasProperty Variable Subslot UInt16 PropertyType Mandatory
HasProperty Variable IdentNumber UInt32 PropertyType Mandatory
HasProperty Variable GSDName String PropertyType Optional
HasProperty Variable GSDDescription String PropertyType Optional

The properties GSDName and GSDDescription must contain the data from the GSD, as described in the mapping table provided for the subtypes IPnRealSubmoduleType and IPnExpectedSubmoduleType.

6.3.1.6.2 IPnRealSubmoduleType ToC

Table 42 – IPnRealSubmoduleType Definition

Attribute Value        
BrowseName IPnRealSubmoduleType        
IsAbstract True        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of IPnSubmoduleType          
HasComponent Object IM   PnIdentificationType Optional
HasComponent Variable Diagnosis PnDeviceDiagnosisDataType[] BaseDataVariableType Optional
HasComponent Object Alarms   FolderType Optional
GeneratesEvent ObjectType PnDiagnosisAlarmType      
GeneratesEvent ObjectType PnAssetChangedEventType      

The BrowseName of a sub module object instance shall be the content of the Subslot variable in hexadecimal number string format (e.g. 0x8001).

If the IM component is provided, it must contain the data in accordance with the I&M0FilterDataSubmodule block (See [PN TAD] – Identification & Maintenance).

The server can provide diagnosis data with the Diagnosis variable or by sending PnDiagnosisAlarmType events. The diagnosis data at the real submodule object includes only the diagnosis information of the real submodule. An OPC UA Server might provide instances of the PnDiagnosisAlarmType as objects under the Alarms object.

An IsPnInterface reference exists if the submodule is an interface submodule. See section 6.3.2.13 also.

An IsPnPort reference exists if the submodule is a port submodule. It points to the PnPortType object. See section 6.3.2.14 also.

Mapping to PROFINET properties:

BrowseName Method Source                  
API Read RealIdentificationData API                
SubSlot Read RealIdentificationData SubslotNumber                
IdentNumber Read RealIdentificationData SubmoduleIdentNumber                
GSDName GSDML SubmoduleList SubmoduleItem ModuleInfo Name or SubmoduleList VirtualSubmoduleItem ModuleInfo Name or SubmoduleList PortSubmoduleItem ModuleInfo Name
GSDDescription GSDML SubmoduleList SubmoduleItem ModuleInfo InfoText or SubmoduleList VirtualSubmoduleItem ModuleInfo InfoText or SubmoduleList PortSubmoduleItem ModuleInfo InfoText
Diagnosis Read DiagnosisData (0x800C subslot specific)                  

6.3.1.6.3 PnRealSubmoduleContainerType ToC

Table 43 – PnRealSubmoduleContainerType Definition

Attribute Value        
BrowseName PnRealSubmoduleContainerType        
IsAbstract False        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseObjectType defined in [OPC 10000-5].          
HasPnRealSubmodule Object <Submodules>   BaseObjectType Optional
Placeholder

The <Submodules> shall have the references defined in Table 44 and Table 45.

Table 44 – PnRealSubmoduleContainerType Additional References

Source Path Reference Type Is Forward Target Path
<Submodules> 0:HasInterface True    0:ObjectTypes
   0:BaseObjectType
   0:BaseInterfaceType
   IPnSubmoduleType
   IPnRealSubmoduleType

Table 45 – PnRealSubmoduleContainerType Additional Subcomponents

Source Path References NodeClass BrowseName DataType
TypeDefinition
Others
Applied from IPnRealSubmoduleType          
<Submodules> 0:HasProperty Variable API UInt32
PropertyType
M
<Submodules> 0:HasProperty Variable Subslot UInt16
PropertyType
M
<Submodules> 0:HasProperty Variable IdentNumber UInt32
PropertyType
M
<Submodules> 0:HasProperty Variable GSDName String PropertyType O
<Submodules> 0:HasProperty Variable GSDDescription String PropertyType O
<Submodules> 0:HasComponent Object IM PnIdentificationType O
<Submodules> 0:HasComponent Variable Diagnosis PnDeviceDiagnosisDataType[] BaseDataVariableType O
<Submodules> 0:HasComponent Object Alarms FolderType O
<Submodules> 0:GeneratesEvent ObjectType PnDiagnosisAlarmType    
<Submodules> 0:GeneratesEvent ObjectType PnAssetChangedEventType    

Mapping to PROFINET properties:

BrowseName Method Source    
<Submodules> Read RealIdentificationData NumberOfSubslots entries SubslotNumber

6.3.1.6.4 IPnExpectedSubmoduleType ToC

Table 46 – IPnExpectedSubmoduleType Definition

Attribute Value        
BrowseName IPnExpectedSubmoduleType        
IsAbstract True        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of IPnSubmoduleType          
HasComponent Object State   PnSubmoduleStateType Optional

An IsPnRealSubmodule reference points to the real submodule which is the real realization of the expected submodule. See section 6.3.2.10 also.

Mapping to PROFINET properties:

BrowseName Method Source                  
API Read ExpectedIdentificationData API                
SubSlot Read ExpectedIdentificationData SubslotNumber                
IdentNumber Read ExpectedIdentificationData SubmoduleIdentNumber                
GSDName GSDML SubmoduleList SubmoduleItem ModuleInfo Name or SubmoduleList VirtualSubmoduleItem ModuleInfo Name or
SubmoduleList
PortSubmoduleItem ModuleInfo Name
GSDDescription GSDML SubmoduleList SubmoduleItem ModuleInfo InfoText or
SubmoduleList
VirtualSubmoduleItem ModuleInfo InfoText or
SubmoduleList
PortSubmoduleItem ModuleInfo InfoText
State Read ModuleDiffBlock SubmoduleState                

6.3.1.6.5 PnExpectedSubmoduleContainerType ToC

Table 47 – PnExpectedSubmoduleContainerType Definition

Attribute Value        
BrowseName PnExpectedSubmoduleContainerType        
IsAbstract False        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseObjectType defined in [OPC 10000-5].          
HasPnExpectedSubmodule Object <Submodules>   BaseObjectType Optional
Placeholder

The <Submodules> shall have the references and subcomponents defined in Table 48 and Table 49.

Table 48 – PnExpectedSubmoduleContainerType Additional References

Source Path Reference Type Is Forward Target Path
<Submodules> 0:HasInterface True    0:ObjectTypes
   0:BaseObjectType
   0:BaseInterfaceType
   IPnSubmoduleType
   IPnExpectedSubmoduleType

Table 49 – PnExpectedSubmoduleContainerType Additional Subcomponents

Source Path References NodeClass BrowseName DataType
TypeDefinition
Others
Applied from IPnExpectedSubmoduleType          
<Submodules> 0:HasProperty Variable API UInt32
PropertyType
M
<Submodules> 0:HasProperty Variable Subslot UInt16
PropertyType
M
<Submodules> 0:HasProperty Variable IdentNumber UInt32
PropertyType
M
<Submodules> 0:HasProperty Variable GSDName String PropertyType O
<Submodules> 0:HasProperty Variable GSDDescription String PropertyType O
<Submodules> 0:HasComponent Object State PnSubmoduleStateType O

Mapping to PROFINET properties:

BrowseName Method Source    
<Submodules> Read ExpectedIdentificationData NumberOfSubslots entries SubslotNumber

6.3.1.6.6 PnSubmoduleStateType ToC

Table 50 – PnSubmoduleStateType Definition

Attribute Value        
BrowseName PnSubmoduleStateType        
IsAbstract False        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseObjectType defined in [OPC 10000-5].          
HasComponent Variable AddInfo PnSubmoduleAddInfoEnumeration BaseDataVariableType Optional
HasComponent Variable QualifiedInfo Boolean BaseDataVariableType Optional
HasComponent Variable Maintenance
Required
Boolean BaseDataVariableType Optional
HasComponent Variable Maintenance
Demanded
Boolean BaseDataVariableType Optional
HasComponent Variable DiagInfo Boolean BaseDataVariableType Optional
HasComponent Variable ARInfo PnSubmoduleARInfoEnumeration BaseDataVariableType Optional
HasComponent Variable IdentInfo PnSubmoduleIdentInfoEnumeration BaseDataVariableType Optional

Mapping to PROFINET properties:

BrowseName Method Source  
AddInfo Read ModuleDiffBlock SubmoduleState.AddInfo
If entry not found, use: None
QualifiedInfo Read ModuleDiffBlock SubmoduleState.Advice
If entry not found, use: No Advice information available
MaintenanceRequired Read ModuleDiffBlock SubmoduleState.MaintenanceRequired
If entry not found, use: No MaintenanceRequired information available
MaintenanceDemanded Read ModuleDiffBlock SubmoduleState.MaintenanceDemanded
If entry not found, use: No MaintenanceDemanded information available
DiagInfo Read ModuleDiffBlock SubmoduleState.Fault
If entry not found, use: No Fault information available
ARInfo Read ModuleDiffBlock SubmoduleState.ARInfo
If entry not found, use: Own
IdentInfo Read ModuleDiffBlock SubmoduleState.IdentInfo
If entry not found, use: OK

6.3.1.7 Network ToC

This chapter includes all object types needed to represent the physical network topology of a PROFINET network.

Figure 18 shows an example which illustrates the relations between network objects of a single port PROFINET device and a 4 port Ethernet switch.

readme_files/image022.png

Figure 18 – Network Topology

The Ethernet interface, ports and cables are represented by objects in the address space. This Ethernet objects relate to each other by CommLinkTo references. This enables the OPC UA Server to represent the physical network topology of the PROFINET network.

6.3.1.7.1 IPnInterfaceType ToC

Table 51 – IPnInterfaceType Definition

Attribute Value        
BrowseName IPnInterfaceType        
IsAbstract True        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseInterfaceType defined in [OPC 10000-5].          
HasComponent Object Ports   PnPortContainerType Mandatory
HasProperty Variable NameOfStation String PropertyType Mandatory
HasProperty Variable DeviceRole PnDeviceRoleOptionSet PropertyType Mandatory
HasProperty Variable DeviceVendor String PropertyType Optional
HasProperty Variable VendorId UInt16 PropertyType Mandatory
HasProperty Variable DeviceId UInt16 PropertyType Mandatory
HasProperty Variable DeviceInstance UInt16 PropertyType Optional
HasProperty Variable OEMVendorId UInt16 PropertyType Optional
HasProperty Variable OEMDeviceId UInt16 PropertyType Optional
CommLinkTo Object EthernetInterface   EthernetInterfaceType Optional
HasComponent Object Statistic   PnPortStatisticType Optional
HasComponent Method SetNameOfStation   SetNameOfStationMethod Optional

The BrowseName of an interface object instance shall be the PROFINET interface id with the range 1..16 in decimal number string format.

The NameOfStation variable may be set with the SetNameOfStation method. Nevertheless, the variable itself shall always be read-only.

The CommLinkTo reference points to an EthernetInterfaceType object instance. An object of the IPv4FeatureType must be implemented in this EthernetInterfaceType object instance.

Mapping to PROFINET properties:

BrowseName Method Source    
NameOfStation DCP DCP-Identify-ResPDU NameOfStationValue  
DeviceRole DCP DCP-Identify-ResPDU DeviceRoleDetails  
DeviceVendor DCP DCP-Identify-ResPDU DeviceVendorValue  
VendorId DCP DCP-Identify-ResPDU DeviceIDBlockRes DeviceIDValue
DeviceId DCP DCP-Identify-ResPDU DeviceIDBlockRes DeviceIDValue
DeviceInstance DCP DCP-Identify-ResPDU DeviceInstanceValue  
OEMVendorId DCP DCP-Identify-ResPDU OEMDeviceIDBlockRes DeviceIDValue
OEMDeviceId DCP DCP-Identify-ResPDU OEMDeviceIDBlockRes DeviceIDValue

6.3.1.7.1.1 SetNameOfStation Method ToC

This optional method writes the NameOfStation remanent to the PROFINET device and sets the NameOfStation variable accordingly.

Signature

SetNameOfStation (
[in]	String NameOfStation
);

Argument Description
NameOfStation String containing the new NameOfStation to be written remanent to the device. The maximum length shall be limited to 240 characters (See [PN Protocol] for details).

Method Result Codes

ResultCode Description
Bad_InvalidArgument The Server is not able to apply the name. The name may be too long or may contain invalid characters.
Bad_UnexpectedError The Server is not able to apply the name because an unexpected error occurred. The device might be temporarily unavailable or unreachable due to network failure.

6.3.1.7.2 PnInterfaceContainerType ToC

Table 52 – PnInterfaceContainerType Definition

Attribute Value        
BrowseName PnInterfaceContainerType        
IsAbstract False        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseObjectType defined in [OPC 10000-5].          
HasPnInterface Object <Interfaces>   BaseObjectType Optional
Placeholder

The <Interfaces> shall have the references defined in Table 53 and Table 54.

Table 53 – PnInterfaceContainerType Additional References

Source Path Reference Type Is Forward Target Path
<Interfaces> 0:HasInterface True    0:ObjectTypes
   0:BaseObjectType
   0:BaseInterfaceType
   IPnInterfaceType

Table 54 – PnInterfaceContainerType Additional Subcomponents

Source Path References NodeClass BrowseName DataType
TypeDefinition
Others
Applied from IPnInterfaceType          
<Interfaces> 0:HasComponent Object Ports PnPortContainerType M
<Interfaces> 0:HasProperty Variable NameOfStation String
PropertyType
M
<Interfaces> 0:HasProperty Variable DeviceRole PnDeviceRoleOptionSet
PropertyType
M
<Interfaces> 0:HasProperty Variable DeviceVendor String PropertyType O
<Interfaces> 0:HasProperty Variable VendorId UInt16
PropertyType
M
<Interfaces> 0:HasProperty Variable DeviceId UInt16
PropertyType
M
<Interfaces> 0:HasProperty Variable DeviceInstance UInt16 PropertyType O
<Interfaces> 0:HasProperty Variable OEMVendorId UInt16 PropertyType O
<Interfaces> 0:HasProperty Variable OEMDeviceId UInt16 PropertyType O
<Interfaces> CommLinkTo Object EthernetInterface EthernetInterfaceType O
<Interfaces> 0:HasComponent Object Statistic PnPortStatisticType O
<Interfaces> 0:HasComponent Method SetNameOfStation SetNameOfStationMethod O

6.3.1.7.3 PnPortType ToC

The PnPortType Object Type includes the port specific data of a port submodule.

A PnRealSubmoduleType instance representing a port submodule has an IsPnPort reference to a PnPortType object instance.

Table 55 – PnPortType Definition

Attribute Value        
BrowseName PnPortType        
IsAbstract False        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseObjectType defined in [OPC 10000-5].          
HasComponent Object Statistic   PnPortStatisticType Optional
HasComponent Variable LinkState PnLinkStateEnumeration BaseDataVariableType Optional
HasComponent Variable PortState PnPortStateEnumeration BaseDataVariableType Optional
HasComponent Variable MAUType UInt16 BaseDataVariableType Optional
HasComponent Variable CableDelay UInt32 BaseDataVariableType Optional
HasComponent Variable PowerBudget UInt32 BaseDataVariableType Optional
HasComponent Variable IsWireless Boolean BaseDataVariableType Optional
CommLinkTo Object EthernetPort   EthernetPortType Optional
GeneratesEvent ObjectType PnTopologyChangedEventType      

Mapping to PROFINET properties:

BrowseName Method Source    
MAUType Read PDPortDataReal MAUType  
CableDelay Read PDPortDataReal LineDelay  
PowerBudget Read PDPortFODataReal FiberOpticDiagnosisInfo FiberOpticPowerBudgetReal
IsWireless Read PDPortDataReal MediaType  

6.3.1.7.4 PnPortContainerType ToC

Table 56 – PnPortContainerType Definition

Attribute Value        
BrowseName PnPortContainerType        
IsAbstract False        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseObjectType defined in [OPC 10000-5].          
HasPnPort Object <Ports>   PnPortType Optional
Placeholder

6.3.1.7.5 PnPortStatisticType ToC

Table 57 – PnPortStatisticType Definition

Attribute Value        
BrowseName PnPortStatisticType        
IsAbstract False        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseObjectType defined in [OPC 10000-5].          
HasComponent Variable InOctets UInt32 BaseDataVariableType Optional
HasComponent Variable OutOctets UInt32 BaseDataVariableType Optional
HasComponent Variable InDiscards UInt32 BaseDataVariableType Optional
HasComponent Variable OutDiscards UInt32 BaseDataVariableType Optional
HasComponent Variable InErrors UInt32 BaseDataVariableType Optional
HasComponent Variable OutErrors UInt32 BaseDataVariableType Optional

The port statistic counters can be read from a PROFINET device with the Read PD Port Statistic PROFINET service.

6.3.1.7.6 NetworkComponentType ToC

The NetworkComponentType is the abstract base ObjectType for different types of network components.

Table 58 – NetworkComponentType Definition

Attribute Value        
BrowseName NetworkComponentType        
IsAbstract True        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseObjectType defined in [OPC 10000-5].          
HasComponent Object <FeatureName>   NetworkComponentFeatureType OptionalPlaceholder
HasComponent Variable Enabled Boolean BaseDataVariableType Optional
CommLinkTo Object <ComponentName>   NetworkComponentType OptionalPlaceholder

The Enabled variable indicates if the network component is activated (Enabled == True) or deactivated (Enabled == False).

6.3.1.7.7 EthernetInterfaceType ToC

The EthernetInterfaceType is used to represent Ethernet network interfaces.

Table 59 – EthernetInterfaceType Definition

Attribute Value        
BrowseName EthernetInterfaceType        
IsAbstract False        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of NetworkComponentType.          
HasComponent Variable MacAddress Byte [6] BaseDataVariableType Mandatory
CommLinkTo Object <PortName>   EthernetPortType MandatoryPlaceholder

The MacAddress Variable is read only and represents the unique Layer2 source MAC address of the related interface.

Mapping to PROFINET properties:

BrowseName Method Source    
MacAddress DCP DCP-Identify-ResPDU MACAddressBlockRes MACAddressValue

6.3.1.7.8 EthernetPortType ToC

The EthernetPortType is used to represent Ethernet ports.

Table 60 – EthernetPortType Definition

Attribute Value        
BrowseName EthernetPortType        
IsAbstract False        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of NetworkComponentType.          
HasComponent Variable PhysAddress Byte [6] BaseDataVariableType Optional
CommLinkTo Object <EthernetPort>   EthernetPortType Optional

The PhysAddress Variable is read only and contains a MAC address representing the Port.

6.3.1.7.9 NetworkComponentFeatureType ToC

The NetworkComponentFeatureType is the abstract base ObjectType for different types of network components.

Table 61 – NetworkComponentFeatureType Definition

Attribute Value        
BrowseName NetworkComponentFeatureType        
IsAbstract True        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseObjectType defined in [OPC 10000-5].          

6.3.1.7.10 IPv4FeatureType ToC

The IPv4FeatureType is used to represent IPv4 settings of a network interface.

Table 62 – IPv4FeatureType Definition

Attribute Value        
BrowseName IPv4FeatureType        
IsAbstract False        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of NetworkComponentFeatureType.          
HasComponent Variable IpAddress Byte[4] BaseDataVariableType Mandatory
HasComponent Variable SubnetMask Byte[4] BaseDataVariableType Mandatory
HasComponent Variable DefaultGateway Byte[4] BaseDataVariableType Mandatory
HasComponent Variable DhcpEnabled Boolean BaseDataVariableType Mandatory

Mapping to PROFINET properties:

BrowseName Method Source      
IpAddress DCP DCP-Identify-ResPDU IPParameterBlockRes IPParameterValue IPAddress
SubnetMask DCP DCP-Identify-ResPDU IPParameterBlockRes IPParameterValue Subnetmask
DefaultGateway DCP DCP-Identify-ResPDU IPParameterBlockRes IPParameterValue StandardGateway
DhcpEnabled DCP DCP-Identify-ResPDU DHCPParameterBlockRes DHCPParameter DHCPParameterLength

The IpAddress Variable describes the IPv4 address on the interface.

The SubnetMask Variable describes the IPv4 Subnet mask on the interface.

The DefaultGateway Variable describes the IPv4 address of the default gateway.

The DhcpEnabled Variable specifies whether the DHCPv4 Client functionality for this interface is enabled.

6.3.1.8 Identification ToC

6.3.1.8.1 PnIdentificationType ToC

Table 63 – PnIdentificationType Definition

Attribute Value        
BrowseName PnIdentificationType        
IsAbstract False        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseObjectType defined in [OPC 10000-5].          
HasProperty Variable VendorId UInt16 PropertyType Mandatory
HasProperty Variable OrderId String PropertyType Mandatory
HasProperty Variable SerialNumber String PropertyType Mandatory
HasProperty Variable SoftwareRevision String PropertyType Mandatory
HasProperty Variable HardwareRevision String PropertyType Mandatory
HasProperty Variable ProfileId UInt32 PropertyType Mandatory
HasProperty Variable ProfileSpecificType UInt16 PropertyType Mandatory
HasProperty Variable Version String PropertyType Mandatory
HasProperty Variable RevisionCounter UInt16 PropertyType Optional
HasProperty Variable IMSupported UInt16 PropertyType Optional
HasProperty Variable TagFunction String PropertyType Optional
HasProperty Variable TagLocation String PropertyType Optional
HasProperty Variable Date Date PropertyType Optional
HasProperty Variable Descriptor String PropertyType Optional
HasProperty Variable Signature ByteString PropertyType Optional
HasProperty Variable IM5 PnIM5DataType[] PropertyType Optional
HasComponent Method SetTags   SetTagsMethod Optional
HasComponent Method SetDate   SetDateMethod Optional
HasComponent Method SetDescriptor   SetDescriptorMethod Optional

Mapping to PROFINET properties:

BrowseName Method Source    
VendorId Read I&M0 VendorID  
OrderId Read I&M0 OrderID  
SerialNumber Read I&M0 IM_Serial_Number  
SoftwareRevision Read I&M0 IM_Software_Revision  
HardwareRevision Read I&M0 IM_Hardware_Revision  
ProfileId Read I&M0 IM_Profile_ID  
ProfileSpecificType Read I&M0 IM_Profile_Specific_Type  
Version Read I&M0 IM_Version  
RevisionCounter Read I&M0 IM_Revision_Counter  
IMSupported Read I&M0 IM_Supported  
TagFunction Read I&M1 IM_Tag_Function  
TagLocation Read I&M1 IM_Tag_Location  
Date Read I&M2 IM_Date  
Descriptor Read I&M3 IM_Descriptor  
Signature Read I&M4 IM_Signature  
IM5 Read I&M5 I&M5Data, see chapter 6.3.3.1.2 for details
Array size: I&M5
NumberOfEntries

6.3.1.8.1.1 SetTags Method ToC

This optional method writes the I&M1 fields IM_TagFunction and IM_Tag_Location remanent to the PROFINET device and sets the TagFunction and TagLocation variables accordingly.

Signature

SetTags (
[in] IMTagSelectorEnumeration Tag_Selector,
[in] String Tag_Function,
[in] String Tag_Location
);

Argument Description  
Tag_Selector If FUNCTION, Tag_Function shall be written, If LOCATION, Tag_Location shall be written, if BOTH both.  
Tag_Function String containing the new I&M1 IM_Tag_Function to be written remanent to the device.
Tag_Location String containing the new I&M1 IM_Tag_Location to be written remanent to the device.

Method Result Codes

ResultCode Description
Bad_InvalidArgument The Server is not able to apply an argument. The argument may be too long or may contain invalid characters.
Bad_UnexpectedError The Server is not able to apply the name because an unexpected error occurred. The device might be temporarily unavailable or unreachable due to network failure.

6.3.1.8.1.2 SetDate Method ToC

This optional method writes the I&M2 field IM_Date remanent to the PROFINET device and sets the Date variable accordingly.

Signature

SetDate (
[in] Date IM_Date
);

Argument Description  
IM_Date New I&M2 IM_Date to be written remanent to the device.

Method Result Codes

ResultCode Description
Bad_InvalidArgument The Server is not able to apply an argument.
Bad_UnexpectedError The Server is not able to apply the name because an unexpected error occurred. The device might be temporarily unavailable or unreachable due to network failure.

6.3.1.8.1.3 SetDescriptor Method ToC

This optional method writes the I&M3 field IM_Descriptor remanent to the PROFINET device and sets the Descriptor variable accordingly.

Signature

SetDescriptor (
[in] String Descriptor
);

Argument Description  
Descriptor New I&M3 IM_Descriptor to be written remanent to the device.

Method Result Codes

ResultCode Description
Bad_InvalidArgument The Server is not able to apply an argument. The argument may be too long or may contain invalid characters.
Bad_UnexpectedError The Server is not able to apply the name because an unexpected error occurred. The device might be temporarily unavailable or unreachable due to network failure.

6.3.1.8.2 PnAssetType ToC

Table 64 – PnAssetType Definition

Attribute Value        
BrowseName PnAssetType        
IsAbstract False        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseObjectType defined in [OPC 10000-5].          
HasProperty Variable UniqueIdentifier Guid PropertyType Mandatory
HasProperty Variable Location String PropertyType Mandatory
HasProperty Variable Annotation String PropertyType Mandatory
HasProperty Variable OrderId String PropertyType Mandatory
HasProperty Variable SoftwareRevision String PropertyType Optional
HasProperty Variable HardwareRevision String PropertyType Optional
HasProperty Variable SerialNumber String PropertyType Mandatory
HasProperty Variable TypeIdentification UInt16 PropertyType Mandatory
HasProperty Variable Organization UInt16 PropertyType Mandatory
HasProperty Variable VendorId UInt16 PropertyType Mandatory
HasProperty Variable DeviceId UInt16 PropertyType Mandatory
HasProperty Variable DeviceSubId UInt16 PropertyType Mandatory
GeneratesEvent ObjectType PnAssetChangedEventType      

The BrowseName of an asset object instance shall be the content of the UniqueIdentifier variable in standard GUID string format.

Mapping to PROFINET properties:

BrowseName Method Source  
UniqueIdentifier Read AssetManagementData IM_UniqueIdentifier
Location Read AssetManagementData AM_Location
Annotation Read AssetManagementData IM_Annotation
OrderId Read AssetManagementData IM_OrderID
SoftwareRevision Read AssetManagementData IM_Software_Revision or AM_SoftwareRevision
HardwareRevision Read AssetManagementData IM_Hardware_Revision or AM_HardwareRevision
SerialNumber Read AssetManagementData IM_Serial_Number
TypeIdentification Read AssetManagementData AM_TypeIdentification
Organization Read AssetManagementData AM_DeviceIdentification.Organization
VendorId Read AssetManagementData AM_DeviceIdentification.VendorID
DeviceId Read AssetManagementData AM_DeviceIdentification.DeviceID
DeviceSubId Read AssetManagementData AM_DeviceIdentification.DeviceSubID

If the AM_Location field is coded using the level tree format, each used level shall be encoded in the Location string with a ‘.’ followed by the value of the level bits encoded as decimal number string. According to [PN TAD] – Figure 38, the HART sensor has the Location string ”.0.4.1.1”.

If the AM_Location field is coded using the slot- and subslotnumber format, the Location string shall be encoded as ‘BeginSlotNumber/BeginSubslotNumber-EndSlotNumber/EndSubslotNumber’. BeginSlotNumber and EndSlotNumber shall be encoded as decimal number strings. BeginSubslotNumber and EndSubslotNumber shall be encoded as hexadecimal number strings (0x…) According to [PN TAD] – Figure 38, the IO-MC 1 asset has the Location string ”2/0x1-4/0x1”.

6.3.1.8.3 PnAssetContainerType ToC

Table 65 – PnAssetContainerType Definition

Attribute Value        
BrowseName PnAssetContainerType        
IsAbstract False        
References Node Class BrowseName DataType TypeDefinition Modelling Rule
Subtype of BaseObjectType defined in [OPC 10000-5].          
HasPnAsset Object <Assets>   PnAssetType Optional
Placeholder

Previous Next