Data Model and Services

From UaCapabilities
This is the approved revision of this page, as well as being the most recent.
Jump to: navigation, search

Introduction

OPC UA has been designed to provide semantic interoperability. This enables Clients and Servers to exchange data with unambiguous shared meaning.

UA fw InfoAccess.JPG

To make this possible, OPC UA provides an information modeling framework that turns date into information and rules how to represent the information in the Address Space. It defines an Object as the fundamental element to represent the data and activity of an underlying system. Objects contain Variables, Methods, and may generate Events. Objects can have relationships to other Objects.
The collection of Objects that the Server makes available to Clients builds the Address Space which is structured according to principles of the Address Space Model.
OPC UA also allows defining semantics for Variable data. In current systems, the data exposed and exchanged are often just simple data points; i.e., just an Integer, a Float, or a Boolean. OPC UA allows specifying that a Float can be seen as currently measured temperature of an article; a Boolean can signify the state of a valve (open or closed). In addition to simple data types, OPC UA also supports structured data types. Structured data allow specifying user-defined, complex data types. An example of a structure is an Address. It contains the country, region, city, city code, street and street number.

Note – The Address Space Model is specified in OPC UA Part 3 The UA Services are used to access the elements in the Server Address Space like browsing, reading or writing a variable value, calling a method or receiving events from the Object.
Note – The OPC UA Services are specified in OPC UA Part 4

Required Information Access Capabilities

The OPC UA Services and the Address Space Model form the core functionality of every OPC UA application. Still, not all Services and not all facets of information modelling are needed by every application. Following are the minimum required elements.

Connect Services

Description
Support or use the Services

  • to create a Secure Channel.
  • to open and close a Session.
  • to keep a Session alive by using periodic requests.

Usage Considerations

  • Server and Client identify and authenticate each other.
  • A connection is established where requests and responses can be efficiently exchanged.

Address Space

Description
The set of Objects and related information that a Server makes available to Clients is exposed as its AddressSpace.

  • The Objects and their components are represented as a set of Nodes and interconnected by References.
  • The Address Space is built according to the rules of the Address Space model.
  • The Address Space includes the standardized entry points (e.g., Objects, Types).
  • The Address Space includes the Server Object including all mandatory components.

Support or use the Services

  • to navigate through the Server Address Space.
  • to read or write Attributes of Nodes in the Address Space.

Usage Considerations

  • Exchange of Objects, both meta data and instance data.

Conformance Testing

Client Server

Core Server Facet

Advanced Information Access Capabilities

Event Data

URN:          https://opcfoundation.org/wiki/index.php/Data_Model_and_Services#Event_Data

Description
Events represent specific transient occurrences. Examples are system configuration changes and system errors. Servers expose the types of events they support in the Address Space. When an event occurs, the Server sends an event notification to subscribed Clients.
Each event type includes a set of event fields that define the information provided to Clients when an event occurs. These include among others the event id, time of occurrence, severity, and a message text. Clients select the fields they are interested in.

Usage Considerations
Receive unsolicited notifications of significant occurrences within the system represented by the Server.
Areas of interest include (but are not limited to); configuration change notifications, auditing of security or other changes, general purpose notification, safety limits of equipment, event detection, and abnormal situations.


Conformance Testing

Client Server

Event Subscriber

Eventing Profile

Event Areas

URN:          https://opcfoundation.org/wiki/index.php/Data_Model_and_Services#Event_Areas

Description
The events issued by a Server can be organized into notification areas. An area is a grouping of event sources, typically according to areas of operator responsibility. The grouping is server-specific but will often be based on location (all events in hall A) or equipment type (all robots).

Usage Considerations
Monitor / control several, potentially independent areas of a plant.


Conformance Testing

Client Server

Subscribe to individual areas

Multiple notification areas

Methods

URN:          https://opcfoundation.org/wiki/index.php/Data_Model_and_Services#Methods

Description
Methods represent the function calls of Objects. They are invoked with a standard UA Service and return only after completion (successful or unsuccessful). Execution times for methods may vary, depending on the function that they perform.

Usage Considerations

  • Methods are exposed in the Address Space with their name and argument definitions.

Conformance Testing

Client Server

Call arbitrary Methods

Expose Methods and support invocation

Structured Data

URN:          https://opcfoundation.org/wiki/index.php/Data_Model_and_Services#Structured_Data

Description
OPC UA supports arbitrarily complex data structures that can be used as value of a Variable, in Event fields, or as parameter of Methods. The information how to decode structures is provided in the Address Space so that they can be explored and used on the fly.
When used for Variables, the elements of a structure can be exposed as separate (component) Variables with potentially simple data types.

Usage Considerations
Efficient and consistent transfer of data that belong together.


Conformance Testing

Client Server
  • Determine the type and encoding of structures.
  • Read and decode or encode and write arbitrary structures.

Expose Variables with structured types, provide the encoding, provide read/write access

Durable Subscriptions

URN:          https://opcfoundation.org/wiki/index.php/Data_Model_and_Services#Durable_Subscriptions

Description Durable subscriptions are OPC UA subscriptions with a very long lifetime and large queues so that monitored data can be collected and stored during times where the Client is disconnected. When the disconnected Client connects and creates a Session it will transfer the Subscription to this Session and receive the queued data and events.

Usage Considerations

  • "Disconnected Client" - i.e. Client can connect only once or a few times a day
  • Stored data and events are available even after server restart

Conformance Testing

Client Server

Create and manage durable subscriptions

Durable storage of data and events while Client is disconnected

Views

URN:          https://opcfoundation.org/wiki/index.php/Data_Model_and_Services#Views

Description
Underlying systems are often large and Clients often have an interest in only a specific subset of the data. They do not need, or want, to be burdened with viewing portions of the Address Space for which they have no interest. To address this problem, OPC UA defines the concept of a View.

Views can be used to subset the complete Address Space for different uses. An example would be the exposure of plant information with an operation view, with a physical layout view, and an electrical interconnection view.

Usage Considerations
Simpler navigation; client only sees objects that are needed for a specific view.


Conformance Testing

Client Server
  • Identify available Views.
  • Use View Ids in OPC UA Services.
  • Subset the Address Space into multiple Views.
  • View Ids can be used in OPC UA Services.