7 OPC UA ObjectTypes ToC Previous Next

7.6 IOLinkPortType ObjectType Definition ToC Previous Next

7.6.3 Variables of ParameterSet ToC Previous Next

In Table 38, the Parameters of the ObjectType, referenced via the ParameterSet Object, are defined.

Table 38 – ParameterSet of IOLinkPortType

References Node Class BrowseName DataType TypeDefinition Modelling Rule
The following Parameters are also referenced by the Capabilities Object          
HasComponent Variable PortClass Byte MultiStateDiscreteType Mandatory
HasComponent Variable MaxPowerSupply Double BaseDataVariableType Mandatory
HasComponent Variable Pin2Support Boolean BaseDataVariableType Mandatory
           
The following Parameters are also referenced by the Configuration Object          
HasComponent Variable CycleTime Duration BaseDataVariableType Mandatory
HasComponent Variable ValidationAndBackup Byte MultiStateDiscreteType Mandatory
HasComponent Variable PortMode Byte MultiStateDiscreteType Mandatory
HasComponent Variable Pin2Configuration Byte MultiStateDiscreteType Mandatory
HasComponent Variable UseIODD Boolean BaseDataVariableType Mandatory
           
The following Parameters are also referenced by the ConfiguredDevice Object, which is part of the Configuration Object          
HasComponent Variable DeviceID UInt32 BaseDataVariableType Mandatory
HasComponent Variable VendorID UInt16 BaseDataVariableType Mandatory
           
The following Parameters are also referenced by the Information Object          
HasComponent Variable Baudrate Byte MultiStateDiscreteType Mandatory
HasComponent Variable ActualCycleTime Duration BaseDataVariableType Mandatory
HasComponent Variable Quality Byte OptionSetType Mandatory
HasComponent Variable Status Byte MultiStateDiscreteType Mandatory
           
The following Parameters are also referenced by the SIOProcessData Object          
HasComponent Variable Pin2ProcessData BaseDataType BaseDataVariableType Optional
HasComponent Variable Pin4ProcessData Boolean BaseDataVariableType Optional
           
The following Parameters are also referenced by the Statistics Object          
HasComponent Variable DateOfLastStatisticsReset DateTime BaseDataVariableType Optional
HasComponent Variable NumberOfAborts UInt32 BaseDataVariableType Optional
HasComponent Variable NumberOfCycles UInt32 BaseDataVariableType Optional
HasComponent Variable NumberOfDevice-HasBeenExchanged UInt32 BaseDataVariableType Optional
HasComponent Variable NumberOfRetries UInt32 BaseDataVariableType Optional

The mandatory, read-only Variable PortClass shall be mapped to the corresponding entry in PortTypes of the MasterIdent structure defined in the SMI (see IO-Link Addendum). The Unsigned8 is mapped directly to the DataType Byte. The Variable is of VariableType MultiStateDiscreteType defined in OPC 10000-8. The mandatory Property EnumStrings of the VariableType, which is an array of LocalizedText, shall contain the following content, defined in Table 39.

Table 39 – Defined elements of EnumStrings array of PortClass Variable

Element number (starting with 0) Message (for locale “en”)
0 CLASS A
1 “” (= Empty String)
2 CLASS B

Servers are only allowed to add additional entries into the EnumStrings array according to the IO-Link Addendum or updates to the IO-Link Specification, also updating element number 1 once it is defined. Servers may provide translations of the texts in different locales.

The mandatory, read-only Variable MaxPowerSupply shall provide the maximum amount of power provided on the port. The Variable shall provide the EngineeringUnits Property defined in OPC 10000-3, having the value set to {namespaceUri = “http://www.opcfoundation.org/UA/units/un/cefact”; unitId = 4279632; displayName = {“en”,”A”}; description = {“en”, “ampere”}} (for ampere). The Property shall be read-only and have the ModellingRule Mandatory, so it is reflected on all instances. Note that the IOLinkMasterType also provides a MaxPowerSupply and potentially not all ports can consume the MaxPowerSupply at the same time.

The mandatory, read-only Variable Pin2Support indicates whether the port does support Pin2 at all. “False” means it is not supported, “True” means it can be supported. If it is supported, the Parameter Pin2Configuration can be used to configure how to use it and in case it is used to read or write values the Parameter Pin2ProcessData can be used to access the value.

All Variables provided directly under the Configuration Object are read-only. To change the configuration, the UpdateConfiguration Method defined in Table 43 needs to be executed. The Method call ensures that all configuration data is provided at once by the client in a consistent state.

The mandatory, read-only Variable CycleTime shall be mapped to the PortCycleTime of the PortConfigList structure defined in the SMI (see IO-Link Addendum). The data type mapping is defined in 12.2.7.2, having “0” as special meaning for “as fast as possible”.

The mandatory, read-only Variable ValidationAndBackup shall be mapped to “Validation&Backup” of the PortConfigList structure defined in the SMI (see IO-Link Addendum). The Unsigned8 is mapped directly to the Byte DataType. The Variable is of VariableType MultiStateDiscreteType defined in OPC 10000-8. The mandatory Property EnumStrings of the VariableType, which is an array of LocalizedText, shall contain for locale “en” exactly the text as defined in the SMI. Servers are not allowed to add additional entries into the EnumStrings array, only based on updates of the IO-Link Specification. Servers may provide translations of the texts in different locales.

The mandatory, read-only Variable PortMode shall be mapped to PortMode of the PortConfigList structure defined in the SMI (see IO-Link Addendum). The Unsigned8 is mapped directly to the DataType Byte. The Variable is of VariableType MultiStateDiscreteType defined in OPC 10000-8. The mandatory Property EnumStrings of the VariableType, which is an array of LocalizedText, shall contain the following content, defined in Table 40.

Table 40 – Defined elements of EnumStrings array of PortMode Variable

Element number (starting with 0) Message (for locale “en”)
0 DEACTIVATED
1 IOL_MANUAL
2 IOL_AUTOSTART
3 DI_C/Q (Pin4)
4 DO_C/Q (Pin4)

Servers are allowed to add additional entries into the EnumStrings array. Servers may provide translations of the texts in different locales.

The mandatory, read-only Variable Pin2Configuration shall be mapped to “I/Q behaviour” of the PortConfigList structure defined in the SMI (see IO-Link Addendum). The Unsigned8 is mapped directly to the Byte DataType. The Variable is of VariableType MultiStateDiscreteType defined in OPC 10000-8. The mandatory Property EnumStrings of the VariableType, which is an array of LocalizedText, shall contain for locale “en” exactly the text as defined in the SMI. Servers are not allowed to add additional entries into the EnumStrings array, only based on updates of the IO-Link Specification. Servers may provide translations of the texts in different locales.

The mandatory, read-only Variable UseIODD defines whether the server shall use an IODD for the connected IO-Link Device or not. Details on the selection process are defined in section 6.1.7.

The mandatory, read-only Variable DeviceID shall be mapped to DeviceID of the PortConfigList structure defined in the SMI (see IO-Link Addendum), both of data type UInt32.

The mandatory, read-only Variable VendorID shall be mapped to VendorID of the PortConfigList structure defined in the SMI (see IO-Link Addendum), both of data type UInt16.

The mandatory, read-only Variable Baudrate shall be mapped to TransmissionRate of the PortStatusList structure defined in the SMI (see IO-Link Addendum). The UInteger8 shall directly be mapped to the Byte DataType. The EnumStrings Property of the MultiStateDiscreteType shall be used according to the values defined for the TransmissionRate in IO-Link Addendum, and shall at least provide all valid Values supported by the IO-Link Master.

The mandatory, read-only Variable ActualCycleTime shall be mapped to the MasterCycleTime of the PortStatusList structure defined in the SMI (see IO-Link Addendum). The data type mapping is defined in 12.2.7.2.

The mandatory, read-only Variable Quality shall be mapped to “PortQualityInfo” of the PortStatusList structure defined in the SMI (see IO-Link Addendum). The Unsigned8 is mapped directly to the Byte DataType. The Variable is of VariableType OptionSetType defined in OPC 10000-5. The mandatory Property OptionSetValues of the VariableType, which is an array of LocalizedText, shall contain the following content, defined in Table 41. Servers are not allowed to add additional entries into the OptionSetValues array, only based on updates of the IO-Link Specification. Servers may provide translations of the texts in different locales.

Table 41 – Defined elements of OptionSetValues array of Quality Variable

Element number (starting with 0) Text (for locale “en”)
0 PDIn invalid
1 PDOut invalid

The mandatory, read-only Variable Status shall be mapped to PortStatusInfo of the PortStatusList structure defined in the SMI (see IO-Link Addendum). The Unsigned8 is mapped directly to the Byte DataType. The Variable is of VariableType MultiStateDiscreteType defined in OPC 10000-8. The mandatory Property EnumStrings of the VariableType, which is an array of LocalizedText, shall contain the following content, defined in Table 42.

Table 42 – Defined elements of EnumStrings array of Status Variable

Element number (starting with 0) Text (for locale “en”)
0 NO_DEVICE
1 DEACTIVATED
2 INCORRECT_DEVICE
3 PREOPERATE
4 OPERATE
5 DI_C/Q (Pin4)
6 DO_C/Q (Pin4)
7-253 “” (= Empty String)
254 PORT_FAULT
255 NOT_AVAILABLE

Servers may update the values for 7-253 when the IO-Link Specification gets updated. Servers may provide translations of the texts in different locales.

The date since connection is running or not running is shown in SourceTimestamp of the Status. Because of this a server that supports persistent statistics shall not change the SourceTimestamp of Status on restart of the IO-Link Master or OPC UA Server.

The optional Variable Pin2ProcessData provides the process data value of the Pin2. The DataType is vendor-specific.

The optional Variable Pin4ProcessData provides the process data value of the Pin4. The Variable shall only be provided when the PortMode is set to “DI_C/Q (Pin4)” or “DO_C/Q (Pin4)”.

The optional, read-only Variable DateOfLastStatisticsReset contains the timestamp of the answer to the last call of the Method ResetStatistics, respectively ResetStatisticsOnAllPorts defined on the IOLinkMasterType. The timestamp information shall be as precise as possible. If the reset Methods were never called then DateOfLastStatisticsReset indicates the startup time. The optional Variable shall be provided when the optional Method ResetStatistics is provided.

The following Variables indicate the incidents since DateOfLastStatisticsReset. The server should persist statistics, also when the IO-Link Master or the OPC UA Server is restarted. However, if the statistics become inconsistent, the server is allowed to do an internal reset. This will result in the update of DateOfLastStatisticsReset. If the value of a counting Variable becomes larger than the maximum value of the DataType, the value shall remain on the maximum value.

The optional, read-only Variable NumberOfCycles contains the number of IO-Link frames on the wire since DateOfLastStatisticsReset. One cycle consists out of one request and response pair.

There are several reasons for the case that an IO-Link Master cannot receive a valid response of an IO-Link Device. It could be that electromagnetic interference (EMI) destroys a packet or that the device is not communicating or that the device was plugged off. If a master cannot receive a valid response, it sends the same frame once more (first retry) and if it gets no answer to this repetition, it sends the frame a third time (second retry). If there is no answer to the second retry, the communication is aborted.

The optional, read-only Variable NumberOfRetries contains the number of retries since DateOfLastStatisticsReset.

The optional, read-only Variable NumberOfAborts contains the number of times the communication was aborted since DateOfLastStatisticsReset.

The optional, read-only Variable NumberOfDeviceHasBeenExchanged contains the number of times a device with different RevisionID, VendorID, DeviceID or SerialNumber has been plugged in since DateOfLastStatisticsReset.

The SourceTimestamp of the counting Variables shall contain the time when the incident occurred and shall not change on restart of the OPC UA Server. This allows Clients to figure out when the variable changed the last time, e.g. when there was the last retry.

Previous Next