Compliance

About OPC-UA

OPC-UA Basics

OPC-UA is a communications and data modelling standard for the exchange of information over TCP/IP networks. The data exchange is performed between client and server applications. Client applications are typically consumers of process data such as visualisation tools like Human Machine interfaces (HMI) and SCADA clients (Supervisory Control And Data Acquisition).

Server applications are typically producers of process data and provide an interface to data that is contained within a PLC, IO block, custom controller or any other embedded system.

OPC-UA Servers

The diagram below represents an OPC-UA Server and shows its key components.

The OPC-UA Server Application contains real process variables that the application wishes to expose. These variables are mapped to nodes in the OPC-UA Server Address Space. Each node contains attributes. These attributes contain information pertaining to the node, the most important of which is the value attribute, representing the value of the process variable.

The address space, or a subset of the address space called a view can be browsed by an OPC-UA client. When a client identifies a node attribute that it wants to read or write, it can do so by sending read and write request messages to the server.

If a client wants to monitor a node attribute for changes in state or value on a periodic basis, the client can create a subscription in the server and add monitored items to the subscription, each monitoring a specific attribute of a node. The monitored items sample the node attributes and queue the results. The subscription communicates the results to the client on a periodic basis.

Sessions and Requests

When a client successfully connects to an OPC-UA server a session is established. This session provides state information related to all communication between client and server. All communication activity between a client and the server application takes place in the context of a session. This activity is always composed of request messages from the client and response messages from the server.

Subscriptions and Monitored items

If a client wishes to monitor values in a polled fashion, the client establishes a subscription with the server. The client adds monitored items to the subscription, each specifying a variable attribute to be sampled by the server. This sampling is performed at a negotiated interval known as the sampling interval. The client sends publish request messages to the server and these requests are queued internally in the subscription. The server periodically dequeues a publish request and sends a response containing notifications of data changes. This happens at a negotiated interval known as the publishing interval.

Address Space

The address space is the heart of the UA Server. It is a representation or model of the real data that the server exposes.

Nodes, References, Attributes and Properties

The address space is constructed of nodes and references. Nodes in the address space contain attributes and properties.

Attributes are the information that makes the node useful such as the value of a variable, the read and write permissions of the variable, a textual description of the variable, etc.

References are the links that connect nodes together. There is great flexibility in how nodes can reference each other.

Properties are standard nodes that a particular type of node references or contains. For example, an AnalogItem node has an EURange property. The EURange property is a child node that contains an upper and lower operating limit for the value exposed by the AnalogItem, in the Engineering Units of the AnalogItem.

Folders

Folders are a type of node that contains other nodes. When we say contains other nodes, in reality they reference other nodes but we can think of them in terms of containing other nodes like a folder contains documents.

Views

Some nodes represent views. Views are a type of folder that contains references to other nodes. If a client starts navigating the address space from a particular view, that view can present nodes to the client that are most relevant to the task the user of the client wants to perform. For example, a server may contain process variables that are interesting to an operator, and configuration variables that are interesting to a technician. These sets of data can be exposed via different views with different read and write permissions to ensure that the end user is presented with data in a way that makes sense to them.

The set of nodes in different views can be overlapping, that is to say that different views can represent the same data in different ways or represent different data, or a combination of both.

Variables

Variables are the most important nodes in the address space as they are the nodes that expose your process data to the client. There are many types of variable node and some node types can themselves contain many different types of data payload.

Embedded Labs – Embedded OPC-UA Device Server SDK Specialists learn more form


Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur excepteur sint occaecat cupidatat non

Embedded Labs – Embedded OPC-UA Device Server SDK Specialistslogin form