All of the “things” that make modern life possible are manufactured in facilities that are an interplay of machines, sensors,
motion controls, programmable logic controllers (PLCs) and enterprise software.
From automobiles to pharmaceutical production, we collectively rely on this web of electronics and software to reliably
manufacture the items needed to improve our quality of life. Constructing reliable Industrial 4.0 systems requires engineering
teams to think about connectivity and interoperability at the start of the design process.
Security, reliability, interoperability and longevity are key pieces to the connectivity puzzle. Industry 4.0 is about more
than transmitting raw data. We can use the power of the information to translate the complex web of components into actionable
intelligence to keep our production systems operating at peak efficiency.
The distinction between raw data and information is an important one. Operational decisions need to be made on information,
often fused from several raw data sources. Modeling information is a key part of Industry 4.0. A tool for building interoperable
Industry 4.0 systems is the
OPC Unified Architecture (UA).
OPA UA Fundamentals
OPC UA is an information architecture designed to enable interoperability between industrial components. Based upon a deep,
collective experience in the industrial sector, OPC-UA was constructed upon several key pillars to ensure a long lifetime of
open information exchange.
Information Modeling, Interoperability and Access
Many communications standards are focused on the movement of raw data. OPC UA standardizes how information is communicated. The
starting point in OPC UA is a foundation of fundamental
data types. These data
types are assembled into arbitrary information structures that can model any type of sensor, machine or process.
The OPC UA has standardized models for many common industrial machines and processes. For example, a CNC system can be modeled
using
OPC 40502-1. This means software
can access the state of an OPC UA compliant CNC machine in a standard way, simplifying the systems integration.
Beyond the standard information models, vendors can add extensions to enable specific features for their equipment. The
mechanism for accessing information is standardized in OPC UA. Vendor specific information can be discovered and queried through
standardized OPC UA access mechanisms. OPC UA also enables the ability to execute tasks, or domain-specific APIs on target
equipment.
There are two primary approaches for accessing information in an OPC UA system: Client-Server and
Publish-Subscribe (Pub-Sub).
When the OPA UA was first released in 2008, the client-server paradigm was the primary model for information exchange. This was
the result of the historical precedent from which OPC UA was derived. The client-server model is based on TCP transport and
HTTP/SOAP.
OPC UA Client Server model with Request Response
For a better experience, download the
block diagram.
The client-server model can work well in many use cases. A client needs to be in charge of the information access it requires.
If several clients need the same data from a single OPC UA server, each must independently request the data. This approach can
lead to a significant increase in network traffic and system complexity.
To address these use cases and access patterns, the OPC foundation added a
publish-subscribe
pattern to the specification. With the Pub-Sub pattern, devices that generate information can publish to a “broker”. Devices
needing access can look to this broker for specific information through “topics”.
OPC UA Pub-Sub Access Pattern
For a better experience, download the
block diagram.
The broker can be one of several open message oriented middleware software so as AMPQ (
ISO/IEC 19464:2014)
or the common MQTT ( ISO/IEC 20922:2016)
messaging system.
The important aspect here is that OPC UA defines the structure of the information such that endpoints can process information in
a standardized way. The advantage of the Pub-Sub approach is that system complexity can be reduced when many devices need access
to the same information.
OPC UA also defines a broker-less model for information exchange. In this model, no additional software/middleware is required.
OPC UA Security
OPC UA typically uses TCP/IP transport (both TCP and UDP) to move information. Data is secured using standards compliant
methods. TCP sessions between a client and server (or with an information broker) use session encryption. This can include
X.509 certificates
so both ends of the information exchange can validate that the authentication is valid. Messages can be signed such that the
recipient can verify the identity of the requestor. OPC UA includes auditing functionality, such as access that can be logged to leave
an audit trail.
Platform and Runtime Independence
Because OPC UA runs on TCP/IP and Ethernet, virtually any hardware with Ethernet capability can participate in an OPC UA system.
It is possible to run client or server functions on a MPU like i.MX 93 running on Linux, an i.MX RT crossover MCU such as the
i.MX RT1180 using RTOS or even bare metal on a
microcontroller such as the MCX N947. Solutions
can include high-level, powerful operating systems such as Linux. A starting point for a software implementation could be the
open source open62541 or
S2OPC stack. Many
commercial offerings
are also available to accelerate development.
Deterministic Communications with OPC UA and Time Sensitive Networking (TSN)
Many industrial applications require deterministic timing for delivery of information and critical control. One method to meet a
deterministic, real-time requirement is via TSN Ethernet technology.
Used in conjunction with IEEE1588v2 Precision Time Protocol, TSN enables deterministic behavior by defining fixed periods of
time when a node can communicate on the network without contention.
TSN was developed independently of OPC UA. However, OPC UA can interoperate on any Ethernet network. As OPC UA evolved, the
foundation added cross-layer control so high priority information could be prioritized. OPC UA and TSN can work together for
interoperable, deterministic systems.
NXP devices, such as the i.MX RT1180, include hardware support for Gigabit-capable TSN.
The i.MX RT1180 can be a solution for an OPC UA node. With up to 5 Gb ports, the i.MX RT1180 supports the latest TSN standards
making real-time control possible in an Industry 4.0 solution.
Using NXP to Implement an OPC UA Solution
OPC UA is an information architecture built to be extensible, open and secure for Industry 4.0 applications. It enables
engineers to design automation solutions that can “plug in” to a complex production scenario, simplifying information exchange.
The open nature of OPC UA enables equipment that can be over lifecycles commensurate with rugged industrial equipment.
NXP offers several options to implement an OPC UA solution.
-
An Ethernet-enabled microcontroller such as the
MCX N947 running bare metal or using a simple
RTOS such as FreeRTOS
-
A TSN-capable crossover MCU such as the
i.MX RT1180 running a more capable RTOS such
as Zephyr
-
An industrial applications processor such as the
Layerscape LS1028A running Linux
There are
commercial software enabled options for OPC UA
as well as open source variants that are platform independent.