OPC 30000: PLC Model based on IEC 61131-3
Released 1.02
2020-11-25
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 IEC 61131-3 terms
3.2.1 Controller
3.3 Abbreviations and symbols
3.4 Conventions used in this document
3.4.1 Conventions for Node descriptions
3.4.2 NodeIds and BrowseNames
3.4.2.1 NodeIds
3.4.2.2 BrowseNames
3.4.3 Common Attributes
3.4.3.1 General
3.4.3.2 Objects
3.4.3.3 Variables
3.4.3.4 VariableTypes
3.4.3.5 Methods
3.4.4 Reference to IEC 61131-3 Definitions
4 General information to IEC 61131-3 and OPC UA
4.1 Introduction to IEC 61131-3
4.1.1 Common Elements
4.1.1.1 Data Typing
4.1.1.2 Ctrl Variables
4.1.1.3 Ctrl Configuration, Ctrl Resources and Ctrl Tasks
4.1.1.4 Ctrl Program Organization Units
4.1.1.5 Ctrl Functions
4.1.1.6 Ctrl Function Blocks
4.1.1.7 Sequential Function Chart
4.1.1.8 Ctrl Programs
4.1.2 Programming Languages
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 Namespaces
4.2.3.3 Companion Specifications
4.2.3.4 Introduction to OPC UA Devices
4.3 Introductory Example
5 Use cases
6 IEC 61131-3 Information Model overview
7 OPC UA ObjectTypes
7.1 CtrlConfigurationType ObjectType Definition
7.1.1 Overview
7.1.2 Resources components
7.1.3 MethodSet components
7.2 CtrlResourceType ObjectType Definition
7.2.1 Overview
7.2.2 Tasks components
7.2.3 Programs components
7.2.4 MethodSet components
7.3 CtrlProgramOrganizationUnitType ObjectType Definition
7.4 CtrlProgramType ObjectType Definition
7.5 CtrlFunctionBlockType ObjectType Definition
7.6 CtrlTaskType ObjectType Definition
7.7 SFCType ObjectType Definition
8 Reference Types
8.1 General
8.2 HasInputVar
8.3 HasOutputVar
8.4 HasInOutVar
8.5 HasLocalVar
8.6 HasExternalVar
8.7 With
9 Definition of Ctrl Variable Attributes and Properties
9.1 Common Attributes
9.2 DataType
9.2.1 Mapping of elementary data types
9.2.2 Mapping of generic data types
9.2.3 Mapping of derived data types
9.2.3.1 Mapping of enumerated data types
9.2.3.2 Mapping of subrange data types
9.2.3.3 Mapping of array data types
9.2.3.4 Mapping of structure data types
9.2.3.4.1 Deprecated Mapping of structure data types
9.2.3.4.2 Mapping of structure data types
9.2.3.4.3 Structure and VariableType
9.3 Variable specific Node Attributes
9.3.1 General
9.3.2 Access Level
9.4 Variable Properties
9.4.1 IEC Ctrl Variable Keywords
9.4.2 Configuration of OPC UA defined Properties
10 Objects used to organise the AddressSpace structure
10.1 DeviceSet as entry point for engineering applications (Mandatory)
10.2 CtrlTypes Folder for server specific Object Types (Mandatory)
10.3 Entry point for Observation and Operation (Examples)
11 System Architecture
11.1 General
11.2 Embedded OPC UA Server
11.3 PC based OPC UA Server
11.4 PC based OPC UA Server with engineering capabilities
12 Profiles and Namespaces
12.1 Namespace Metadata
12.2 Conformance Units and Profiles
12.3 Server Facets
12.4 Client Facets
12.5 Handling of OPC UA Namespaces
Annex A (normative): IEC 61131-3 Namespace and mappings
A.1 Namespace and identifiers for IEC 61131-3 Information Model
A.2 Profile URIs for IEC 61131-3 Information Model
A.3 Namespace for IEC61131-3 Function Blocks
Annex B (informative): PLCopen XML Additional Data Schema
B.1 XML Schema