OPC 30120: IO-Link Devices and IO-Link Masters
Released 1.00
2018-12-01
This document is subject to the license terms described here.
The general OPC Foundation specification license agreement also applies and can be found here.
This document is a copy of the original which can be found here.
This document defines nodes in the following nodesets:
1 Scope
2 Normative References
3 Terms, Definitions, and Conventions
3.1 Overview
3.2 OPC UA for IO-Link Information Model Terms
3.2.1 IO-Link Device
3.2.2 IO-Link Master
3.3 Abbreviations and Symbols
3.4 Conventions used in this Document
3.4.1 Conventions for Terms
3.4.2 Conventions for Node Descriptions
3.4.3 NodeIds and BrowseNames
3.4.3.1 NodeIds
3.4.3.2 BrowseNames
3.4.4 Common Attributes
3.4.4.1 General
3.4.4.2 Objects
3.4.4.3 Variables
3.4.4.4 VariableTypes
3.4.4.5 Methods
4 General Information on IO-Link and OPC UA
4.1 Introduction to IO-Link
4.1.1 What is IO-Link?
4.1.2 Basics of IO-Link
4.1.3 Device Description
4.2 Introduction to OPC Unified Architecture
4.2.1 What is OPC UA?
4.2.2 Basics of OPC UA
4.2.3 Information Modelling in OPC UA
4.2.3.1 Concepts
4.2.3.2 Graphical Notation
4.2.4 OPC UA Profiles
4.2.5 Namespaces
4.2.6 Companion Specifications
5 Combining OPC UA and IO-Link
5.1 System Architecture
5.2 Use Cases
5.2.1 UC.001: Configure an IO-Link Master
5.2.2 UC.002: Find IO-Link Masters
5.2.3 UC.003: Find IO-Link Devices
5.2.4 UC.004: Initial commissioning of IO-Link Device
5.2.5 UC.005: Configure device metadata
5.2.6 UC.006: Configure IO-Link subscriptions
5.2.7 UC.007: Disconnection of IO-Link Device
5.2.8 UC.008: Read product identification
5.2.9 UC.009: Read diagnostics data
5.2.10 UC.010: Read operating and failure statistics
5.2.11 UC.011: Reset operating and failure statistics
5.2.12 UC.012: Optimize machine settings
5.2.13 UC.013: Plant and machine status supervision
5.2.14 UC.014: Faulty device replacement
5.2.15 UC.015: Firmware update
5.2.16 UC.016: Asset Management
5.2.17 UC.017: Cloud-connectivity at Edge Gateway
6 IO-Link Information Model Overview
6.1 Modelling Concepts
6.1.1 IO-Link Master
6.1.2 IO-Link Port
6.1.3 IO-Link Device
6.1.4 IO-Link Events
6.1.5 Block operations: Up- and Download
6.1.6 Managing IODDs
6.1.7 Relating IO-Link Devices to IO-Link Ports
6.2 Model Overview
6.3 Mapping IODD information to OPC UA ObjectTypes
7 OPC UA ObjectTypes
7.1 IOLinkDeviceType ObjectType Definition
7.1.1 Example
7.1.2 Overview
7.1.3 Variables of ParameterSet
7.1.4 Methods of MethodSet
7.1.4.1 ReadISDU
7.1.4.2 WriteISDU
7.1.4.3 SystemCommand
7.1.4.4 ParamUploadFromDeviceStart
7.1.4.5 ParamUploadFromDeviceStop
7.1.4.6 ParamDownloadToDeviceStart
7.1.4.7 ParamDownloadToDeviceStop
7.1.4.8 ParamDownloadToDeviceStore
7.1.4.9 ParamBreak
7.1.4.10 DeviceReset
7.1.4.11 ApplicationReset
7.1.4.12 RestoreFactorySettings
7.2 IOLinkIODDDeviceType
7.2.1 General information on IODDs
7.2.2 Example
7.2.3 Overview
7.2.4 Variables of the ParameterSet Object
7.2.5 Variables of the IODDInformation Object
7.2.6 Variables of the DeviceTypeImage Object
7.3 ObjectTypes generated based on IODDs
7.3.1 General
7.3.2 NodeId of generated ObjectTypes and their InstanceDeclarations
7.3.3 Namespace of the BrowseNames
7.3.4 Mapping to InstanceDeclarations inherited from IOLinkIODDDeviceType
7.3.5 Mapping of IODD Menus
7.3.6 Mapping of IODD Variables
7.3.7 Mapping of Methods from IODD Menus
7.3.8 Mapping of StdVariableRef and StdRecordItemRef
7.3.9 Mapping of ProcessDataCollection and ProcessDataRefCollection
7.3.10 Mapping of DirectParameterOverlay
7.3.11 Mapping of Default Values
7.3.12 Mapping of DeviceVariantCollection
7.3.13 Mapping of EventCollection
7.4 Creation of Instances based on ObjectTypes generated out of IODDs
7.5 IOLinkMasterType ObjectType Definition
7.5.1 Example
7.5.2 Overview
7.5.3 Variables of ParameterSet
7.5.4 Methods of MethodSet
7.5.4.1 Restart
7.5.4.2 ResetStatisticsOnAllPorts
7.6 IOLinkPortType ObjectType Definition
7.6.1 Example
7.6.2 Overview
7.6.3 Variables of ParameterSet
7.6.4 Methods of MethodSet
7.6.4.1 ResetStatistics
7.6.4.2 UpdateConfiguration
7.7 DeviceVariantType
8 OPC UA Objects, Variables and Methods
8.1 General
8.2 IODDManagement Object
8.3 RemoveIODD Method
8.4 IOLinkMasterSet Object
9 OPC UA EventTypes
9.1 General
9.2 IOLinkEventType
9.3 IOLinkDeviceEventType
9.4 IOLinkIODDDeviceEventType
9.5 IOLinkPortEventType
9.6 IOLinkMasterEventType
9.7 IOLinkAlarmType
9.8 IOLinkDeviceAlarmType
9.9 IOLinkIODDDeviceAlarmType
9.10 IOLinkPortAlarmType
9.11 IOLinkMasterAlarmType
10 OPC UA VariableTypes
10.1 ProcessDataVariableType
11 OPC UA ReferenceTypes
11.1 HasIdentificationMenu
11.2 HasParameterMenu
11.3 HasObservationMenu
11.4 HasDiagnosisMenu
12 Mapping of DataTypes
12.1 Overview
12.2 Primitive DataTypes
12.2.1 Boolean DataType
12.2.2 Integer DataTypes
12.2.3 Float DataType
12.2.4 String DataType
12.2.5 Byte[] DataType
12.2.6 DateTime DataType
12.2.6.1 Overview
12.2.6.2 Conversion from IO-Link TimeT to OPC UA DateTime
12.2.6.3 Conversion from OPC UA DateTime to IO-Link TimeT
12.2.6.4 Conversion of special values (Summary)
12.2.7 Duration DataType
12.2.7.1 Duration DataType used for TimeSpanT
12.2.7.1.1 Overview
12.2.7.1.2 Conversion from IO-Link TimeSpanT to OPC UA Duration
12.2.7.1.3 Conversion from OPC UA Duration to IO-Link TimeSpanT
12.2.7.2 Duration DataType used for values coded with 1 byte
12.3 Mapping of Records and Arrays
12.3.1 Overview
12.3.2 Structure DataType
12.3.3 Array DataTypes
12.4 Enumeration and OptionSet DataTypes
12.4.1 EncodingEnum
13 Standardized Properties and Mapping to the Properties
13.1 InstrumentRange
13.2 InstrumentRanges
13.3 EnumValues
13.4 TrueState and FalseState
13.5 Encoding
13.6 DisplayFormat
14 ISDU Error Handling
14.1 Overview
14.2 Occurrence of ISDU Errors
14.3 Mapping of ISDU Errors in DiagnosticInfo
14.4 Content of localizedText in DiagnosticInfo
14.4.1 No IODD information available
14.4.2 IODD information available
15 Profiles and Namespaces
15.1 Namespace Metadata
15.1.1 Namespace http://opcfoundation.org/UA/IOLink/
15.1.2 Namespace http://opcfoundation.org/UA/IOLink/IODD/
15.2 Conformance Units and Profiles
15.3 Server Facets
15.3.1 IO-Link Event Facet
15.3.2 IO-Link Base Condition Facet
15.3.3 IO-Link Alarm Facet
15.4 Server Profiles
15.4.1 IO-Link Base Profile
15.4.2 IO-Link Advanced Profile
15.5 Client Facets
15.6 Handling of OPC UA namespaces
Annex A (normative): OPC UA for IO-Link Namespace and Mappings
A.1 Namespace and identifiers for OPC UA for IO-Link Information Model
A.2 Profile URIs for OPC UA for IO-Link Information Model
Annex B (informative): Aggregation as System Architecture Option
B.1 Overview
B.2 System Architecture
Annex C (normative): EngineeringUnits
C.1 Overview