OPC 30020: MDIS OPC UA Companion Specification
Deprecated 1.2 (Replaced by 1.3)
2018-10-03
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
1.1 Introduction
1.2 Concepts / Definitions
1.2.1 Introduction
1.2.2 API Standard 17F concepts
1.2.3 MDIS Mandatory & Optional Items / Objects
1.2.4 OPC Compliance & Certification
1.3 OPC Definitions
1.4 Industry Typical Abbreviations, Acronyms & Definitions
2 Reference documents
3 OPC UA Overview
3.1 Introduction
3.2 What is OPC UA?
3.3 Basics of OPC UA
3.4 Information Modelling in OPC UA
3.4.1 Concepts
3.4.2 Namespaces
3.4.3 Companion Specifications
4 Architectures
4.1 Overview
4.2 DCS Implemented Functions
4.2.1 Main Process Responsibility
4.2.2 Control and Monitoring of Subsea Equipment
4.2.3 Subscriptions
4.3 DCS or SCV Implemented Functions
4.3.1 Introduction
4.3.2 Data Arbitration
4.3.3 SEM Control Selection
4.3.4 Interlocks
4.3.4.1 Introduction
4.3.4.2 Process Interlocks
4.3.4.3 Product or System Interlocks
4.3.5 Shutdown Sequences
4.3.6 Automated Control Sequences
4.3.7 Determining Valve Statuses
4.3.8 Determining / Updating Choke Calculated Position
4.3.9 HPU Interface
4.3.10 EPU Interface
4.3.11 Valve Profile / Signature Validation
4.3.12 Topsides Chemical Injection System Interface
4.4 Subsea Controls Vendor-Implemented Functions
4.4.1 Introduction
4.4.2 Managing Subsea Communications
4.4.3 Operation of Subsea Devices
4.4.4 Handing off Process Sensor Data to DCS
4.4.5 Configuration of Operational Parameters
4.4.6 Handing off Valve Profiles / Signatures
4.4.7 Calculation of Engineering Values
4.4.8 Handing off Product Statuses
4.4.9 Handing Off Diagnostic Information
4.4.10 EPU Interface
4.4.11 Subsea Control Paths / Network Routing
5 MDIS ObjectTypes
5.1 Overview
5.1.1 MDISBaseObjectType
5.1.2 MDISDiscreteInstrumentObjectType
5.1.3 MDISDiscreteOutObjectType
5.1.4 MDISDigitalInstrumentObjectType
5.1.5 MDISDigitalOutObjectType
5.1.6 MDISInstrumentObjectType
5.1.7 MDISInstrumentOutObjectType
5.1.8 MDISChokeObjectType
5.1.9 MDISValveObjectType
5.1.10 MDISAggregateObjectType
5.1.11 MDISTimeSyncObjectType
5.1.12 MDISInformationObjectType
5.2 MDISBaseObjectType
5.2.1 Overview
5.2.2 MDISBaseObjectType Definition
5.2.3 EnableDisable Method
5.3 MDISDiscreteInstrumentObjectType
5.3.1 Introduction
5.3.2 Overview
5.3.3 MDISDiscreteInstrumentObjectType Definition
5.3.4 MDISDiscreteOutObjectType Definition
5.3.5 WriteValue Method
5.4 MDISDigitalInstrumentObjectType
5.4.1 Introduction
5.4.2 Overview
5.4.3 MDISDigitalInstrumentObjectType Definition
5.4.4 MDISDigitalOutObjectType
5.4.5 WriteState Method
5.5 MDISInstrumentObjectType
5.5.1 Introduction
5.5.2 Overview
5.5.3 MDISInstrumentObjectType Definition
5.5.4 MDISInstrumentOutObjectType Definition
5.5.5 Instrument WriteValue Method
5.6 MDISChokeObjectType
5.6.1 Introduction
5.6.2 Overview
5.6.3 MDISChokeObjectType Definition
5.6.4 Choke Move Method
5.6.5 Choke Step Method
5.6.6 Choke Abort Method
5.6.7 Choke SetCalculatedPosition Method
5.7 MDISValveObjectType
5.7.1 Introduction
5.7.2 Overview
5.7.3 MDISValveObjectType Definition
5.7.4 Move Method
5.8 MDISAggregateObjectType
5.8.1 Overview
5.8.2 MDISAggregateObjectType Definition
5.9 MDISTimeSyncObjectType
5.9.1 Introduction
5.9.2 Overview
5.9.3 MDISTimeSyncObjectType Definition
5.9.4 SetTime Method
5.10 MDISInformationObjectType
5.10.1 Introduction
5.10.2 Overview
5.10.3 MDISInformationObjectType Definition
6 MDIS VariableTypes
6.1 InterlockVariableType Definition
6.2 MDISVersionVariableType Definition
7 MDIS DataTypes
7.1 Enumerations
7.1.1 ChokeMoveEnum
7.1.2 ChokeCommandEnum
7.1.3 SetCalculatedPositionEnum
7.1.4 SignatureStatusEnum
7.1.5 CommandEnum
7.1.6 SEMEnum
7.1.7 ValvePositionEnum
7.2 Structures
7.2.1 MDISVersionDataType
8 MDIS ReferenceTypes
8.1 HasInterlock ReferenceType
8.2 InterlockFor
8.3 HasSignature ReferenceType
9 MDIS AddressSpace Information
9.1 Introduction
9.2 Instance AddressSpace
9.3 Value reporting
9.4 UANodeSet Development
9.5 Object Development
9.5.1 Introduction
9.5.2 Object Collection, Aggregation and Extension Definition
9.5.3 Object Creation
9.5.4 Object Aggregation Example
10 Time Synchronisation
11 Redundancy
11.1 General
11.2 OPC UA Redundancy Overview
11.3 OPC UA MDIS Redundancy
11.4 MDIS Minimum Requirements
12 OPC UA MDIS Profiles and Conformance Units
12.1 Test requirements
12.2 ConformanceUnits
12.2.1 Overview
12.2.2 Server
12.2.3 Client
12.3 Facet
12.3.1 Overview
12.3.2 Server
12.3.2.1 MDIS Base Functionality Server Facet
12.3.2.2 MDIS Valve Model Server Facet
12.3.2.3 MDIS Instrument Model Server Facet
12.3.2.4 MDIS Instrument Out Model Server Facet
12.3.2.5 MDIS Discrete Model Server Facet
12.3.2.6 MDIS Discrete Out Model Server Facet
12.3.2.7 MDIS Digital Model Server Facet
12.3.2.8 MDIS Digital Out Model Server Facet
12.3.2.9 MDIS Choke Model Server Facet
12.3.2.10 MDIS Redundancy Server Facet
12.3.2.11 MDIS Aggregate Object Server Facet
12.3.2.12 MDIS Extension Object Server Facet
12.3.2.13 MDIS Signature Transfer Server Facet
12.3.2.14 MDIS TimeSync Object Server Facet
12.3.3 Client
12.3.3.1 MDIS Base Client Facet
12.3.3.2 MDIS Valve Model Client Facet
12.3.3.3 MDIS Instrument Model Client Facet
12.3.3.4 MDIS Instrument Out Model Client Facet
12.3.3.5 MDIS Discrete Model Client Facet
12.3.3.6 MDIS Discrete Out Model Client Facet
12.3.3.7 MDIS Digital Model Client Facet
12.3.3.8 MDIS Digital Out Model Client Facet
12.3.3.9 MDIS Choke Model Client Facet
12.3.3.10 MDIS Redundancy Client Facet
12.3.3.11 MDIS Aggregate Object Client Facet
12.3.3.12 MDIS Extension Object Client Facet
12.3.3.13 MDIS Extension Extra Object Client Facet
12.3.3.14 MDIS Signature Transfer Client Facet
12.3.3.15 MDIS TimeSync Object Client Facet
12.4 MDIS OPC UA Profiles
12.4.1 Overview
12.4.2 MDIS Solution Client Profile
12.4.3 MDIS Solution Server Profile
12.5 Equipment Certification
13 Namespaces
13.1 Status Codes
13.2 Handling of OPC UA Namespaces
Annex A Sequence Diagrams(Informative)
A.1 Introduction
A.2 MDIS Discrete Instrument Object Sequence Diagrams
A.2.1 Enable Disable
A.3 MDIS Digital Instrument Object Sequence Diagrams
A.3.1 Enable Disable
A.4 MDIS Instrument Object Sequence Diagrams
A.4.1 Enable Disable
A.4.2 Write to Setpoint
A.4.3 Display Limits
A.4.4 Display Engineering units
A.5 MDIS Choke Object Sequence Diagrams
A.5.1 Overview
A.5.2 Move to Position – Success
A.5.3 Move to Position – Fault
A.5.4 Move to Position – Failure, Interlock active
A.5.5 Abort Choke (Position)
A.5.6 Defeat / Override Interlock (Move)
A.5.7 Fault – No Move Operation
A.5.8 Step Open / Close – Success
A.5.9 Step Open / Close – Failure, choke fault
A.5.10 Abort Choke (Step)
A.5.11 Set Calculated Position
A.5.12 Enable Disable Choke
A.5.13 Defeat / Override Interlock (Step)
A.6 MDIS Valve Object Sequence Diagrams
A.6.1 Overview
A.6.2 Valve command – Success
A.6.3 Valve command – Overridden Interlock
A.6.4 Valve command –- Interlocked not overridden
A.6.5 Valve command – Disabled
A.6.6 Valve command – Failed – Fault case 1
A.6.7 Valve command – Failed – Fault case 2
A.6.8 Valve Signature Request – Completed
A.6.9 Valve command – Shutdown
Annex B Recommended Practice (Normative)
B.1 Introduction
B.2 Architecture Implementation
B.3 Security
B.4 Performance
B.5 Data Priority
B.6 Documentation
B.7 Interface Testing
B.8 Project Check List
B.8.1 Introduction
B.8.2 Front End Engineering Design (FEED)
B.8.3 Project Execution
B.8.4 Closeout
Annex C Alternative MDIS Applications (Normative)
C.1 Introduction
C.2 Read Only Interface
C.3 Signature File Transfer