The IOLinkPortType provides information of one port of an IO-Link Master and is formally defined in Table 8.
Table 31 – IOLinkPortType Definition
Attribute |
Value |
||||
BrowseName |
IOLinkPortType |
||||
IsAbstract |
False |
||||
References |
Node Class |
BrowseName |
DataType |
TypeDefinition |
Modelling Rule |
Subtype of TopologyElementType defined in OPC 10000-100. |
|||||
HasComponent |
Object |
2:ParameterSet |
|
BaseObjectType |
Mandatory |
HasComponent |
Object |
2:MethodSet |
|
BaseObjectType |
Mandatory |
|
|
|
|
|
|
HasProperty |
Variable |
DeviceConfigurationDisabled |
Boolean |
PropertyType |
Mandatory |
|
|
|
|
|
|
HasComponent |
Object |
Capabilities |
|
FunctionalGroupType |
Mandatory |
HasComponent |
Object |
Information |
|
FunctionalGroupType |
Mandatory |
HasComponent |
Object |
Statistics |
|
FunctionalGroupType |
Mandatory |
HasComponent |
Object |
Configuration |
|
FunctionalGroupType |
Mandatory |
HasComponent |
Object |
SIOProcessData |
|
FunctionalGroupType |
Mandatory |
|
|
|
|
|
|
HasComponent |
Object |
Device |
|
IOLinkDeviceType |
Optional |
HasComponent |
Object |
Alarms |
|
FolderType |
Optional |
|
|
|
|
|
|
GeneratesEvent |
ObjectType |
IOLinkPortEventType |
Defined in 9.5. |
||
GeneratesEvent |
ObjectType |
IOLinkPortAlarmType |
Defined in 9.10 |
The IOLinkPortType ObjectType is a concrete type and can be used directly. Vendors may create subtypes of the IOLinkPortType to add vendor-specific extensions.
The ObjectType inherits the following InstanceDeclarations directly or indirectly from the TopologyElementType defined in OPC 10000-100.
- The optional Object ParameterSet is used to reference all Parameters and shall be provided. Therefore, the ObjectType overrides the Object and changes its ModellingRule to Mandatory.
- The optional Object MethodSet is used to reference all Methods and shall be provided. Therefore, the ObjectType overrides the Object and changes its ModellingRule to Mandatory.
- The optional Object Identification is not used in this ObjectType.
- The Object <GroupIdentifier > has the ModellingRule OptionalPlaceholder and is intended to group the Parameters. It is already used in this ObjectType by adding various FunctionalGroupType Objects. Vendors may add vendor-specific Objects to group additional Parameters.
- The optional Object Lock can be supported by a server to provide locking capabilities (see OPC 10000-100 for details). This is intended to prevent different clients and users to configure an IO-Link Master at the same time. Locking the Port also locks the connected IO-Link Device.
The ObjectType defines additional InstanceDeclarations:
- The mandatory Variable DeviceConfigurationDisabled indicates whether configuration changes of the connected IO-Link Device (Device Object) are allowed via OPC UA. If set to “True”, nearly all configuration settings become read-only and cannot be changed via OPC UA anymore. The Variable setting is vendor-specific, including whether it can be changed via OPC UA. For example, if a fieldbus is currently active on the IO-Link Master, a server might set this Variable to “True” on all its ports.
That includes in detail following rules:
- For the IO-Link Device connected to the IO-Link Port (Device Object) all Parameters become read-only.
- For the IO-Link Device connected to the IO-Link Port (Device Object) all Methods defined in the IOLinkDeviceType except ReadISDU become not executable.
- For the IO-Link Device connected to the IO-Link Port (Device Object) all Methods created based on the IODD become not executable unless the Methods only trigger the reading of ISDUs.
The Method ResetStatistics on the IO-Link Port and ResetStatisticsOnAllPorts on the IO-Link Master shall still be executable.
There is no direct relation between the DeviceConfigurationDisabled Variable and the Lock Object on the IOLinkDeviceType. The Lock Object prevents different OPC UA Clients to configure the IO-Link Device at the same time whereas the DeviceConfigurationDisabled Variable indicates that the IO-Link Master is in a state that does not allow the IO-Link Device to be configured by any OPC UA Client. When the DeviceConfigurationDisabled Variable is set to “True” Servers may prevent the usage of the Lock Object for all Clients.
- The mandatory Object Capabilities shall reference the Parameters defined in Table 32. Servers may add vendor-specific Parameters to the Object.
Table 32 – References of Capabilities Object
References |
BrowseName |
Comment |
Organizes |
PortClass |
Variable defined in Table 38. |
Organizes |
MaxPowerSupply |
Variable defined in Table 38. |
Organizes |
Pin2Support |
Variable defined in Table 38. |
- The mandatory Object Configuration shall reference the Parameters and Methods defined in Table 33. Servers may add vendor-specific Parameters and Methods to the Object.
Table 33 – References of Configuration Object
References |
BrowseName |
Comment |
Organizes |
CycleTime |
Variable defined in Table 38. |
Organizes |
ValidationAndBackup |
Variable defined in Table 38. |
Organizes |
PortMode |
Variable defined in Table 38. |
Organizes |
Pin2Configuration |
Variable defined in Table 38. |
Organizes |
UseIODD |
Variable defined in Table 38. |
|
|
|
Organizes |
ConfiguredDevice |
Object of type FunctionalGroupType with ModellingRule Mandatory, its references are defined in Table 34. |
|
|
|
Organizes |
UpdateConfiguration |
Method defined in Table 43. |
- The mandatory Object ConfiguredDevice of the Configuration Object shall reference the Parameters defined in Table 34. Servers may add vendor-specific Parameters to the Object.
Table 34 – References of ConfiguredDevice Object
References |
BrowseName |
Comment |
Organizes |
DeviceID |
Variable defined in Table 38. |
Organizes |
VendorID |
Variable defined in Table 38. |
- The mandatory Object Information shall reference the Parameters defined in Table 35. Servers may add vendor-specific Parameters to the Object.
Table 35 – References of Information Object
References |
BrowseName |
Comment |
Organizes |
Baudrate |
Variable defined in Table 38. |
Organizes |
ActualCycleTime |
Variable defined in Table 38. |
Organizes |
Quality |
Variable defined in Table 38. |
Organizes |
Status |
Variable defined in Table 38. |
- The mandatory Object SIOProcessData shall reference the Parameters defined in Table 36. Servers may add vendor-specific Parameters to the Object.
Table 36 – References of SIOProcessData Object
References |
BrowseName |
Comment |
Organizes |
Pin2ProcessData |
Variable defined in Table 38. |
Organizes |
Pin4ProcessData |
Variable defined in Table 38. |
- The mandatory Object Statistics shall reference the Parameters defined in Table 37. Servers may add vendor-specific Parameters to the Object.
Table 37 – References of Statistics Object
References |
BrowseName |
Comment |
Organizes |
DateOfLastStatisticsReset |
Variable defined in Table 38. |
Organizes |
NumberOfAborts |
Variable defined in Table 38. |
Organizes |
NumberOfCycles |
Variable defined in Table 38. |
Organizes |
NumberOfDeviceHasBeenExchanged |
Variable defined in Table 38. |
Organizes |
NumberOfRetries |
Variable defined in Table 38. |
|
|
|
Organizes |
ResetStatistics |
Method defined in Table 43. |
- The optional Alarms Object is used to group all alarms of the instance, in case the server supports representing the alarms as Objects in the AddressSpace. If the server does not support this, the Object shall not be provided.