Plant owners and system integrators assemble complex systems using best-of-breed solutions from multiple vendors in today's modern plants. Successfully integrating products like PLCs, DCS controllers, or PAS applications from different vendors can require a great deal of effort. Industrial automation has not effectively solved this problem to date. UAFX Controller-to-Controller communication delivers a genuinely multi-vendor interoperable, real-time solution.


Figure 9 – Controller-to-Controller communication

The UAFX specification addresses multi-controller environments, as shown in Figure 9. The Controllers in this illustration may be an IPC with visualisation, a PLC, a DCS controller, or something else. All communication partners are modelled as AutomationComponents defined in OPC 10000-81. An AutomationComponent provides an abstract model that allows vendors to describe the Controller's assets, automation functions, and a standard interface for Connections that provides interoperability for exchanging data. AutomationComponents, Assets, and FunctionalEntities also include identification information allowing compatibility to be verified for each Connection.

This release of the UAFX specification defines Connections using OPC UA PubSub for data exchange, including the usage of TSN. Connections using OPC UA Client Server for data exchange are planned for future releases of the specification. Exchanged data can be standard process data or SafetyData. Both bidirectional and unidirectional traffic can be used (see OPC 10000-81). TSN can provide guaranteed bounded latency delivery of data within an Ethernet network. For network convergence, UAFX will follow IEC/IEEE 60802 TSN Profile for Industrial Automation (see 6.3).

When layered over Ethernet-APL, UAFX provides an intrinsically safe communications solution for hazardous zones and divisions. Furthermore, functionally safe communications using PubSub, and eventually Client Server, can be addressed by adding the OPC UA Safety protocol (see OPC 10000-15). Authenticated and encrypted Connections and Client Server messages provide Cyber Security protection using standard OPC UA security mechanisms (see OPC 10000-2).

OPC 10000-81 defines the base Information Model and communication concepts that UAFX provides to meet the use cases of process and factory automation applications. These communication concepts utilise the communication models defined in OPC UA, such as PubSub and Client Server1. The UAFX Information Model is based on the basic building blocks provided in OPC 10000-5 and utilises Interfaces and Object Types described in OPC 10000-100. This base Information Model can, in turn, be utilised and extended in other specifications (e.g., motion or process instruments). Additionally, the UAFX Information Model may be used together with existing companion specifications, where existing definitions are merged into the UAFX Information Model.

An AutomationComponent is an entity that performs one or more automation functions. All Automation Components are composed of Assets and FunctionalEntities. An AutomationComponent also contains information related to communication capabilities and diagnostic information. OPC 10000-81 formally describes AutomationComponent, Asset, and FunctionalEntity.

A Connection is a logical relationship between FunctionalEntities for exchanging information and coordinating joint operations. Data and event information may be exchanged. The first release of the UAFX specifications includes the exchange of data information. Future releases are planned to include the exchange of event information. Connections are mapped to a communication model such as PubSub or Client Server and different QoS classes in the application configuration. OPC 10000-81 formally describes Connections.

The ConnectionManager, described in OPC 10000-81, is the entity responsible for establishing Connections. The ConnectionManager may be part of an AutomationComponent or a separate entity like a central configuration server. There may be multiple ConnectionManagers in the system operating independently of one another.

UAFX defines an agnostic application layer from the underlying transport, allowing for implementations using various types of networks (e.g., Ethernet, SPE/APL, WLAN, or cellular networks, including 5G). However, the operation of UAFX requires the underlying communication layer to fulfil a set of requirements to enable IT/OT network convergence and co-existence with other applications. This release of the specification includes requirements for a network station model, bridge component, remote management, topology discovery, and time synchronisation. See OPC 10000-82 for details.

UAFX builds on the IEC/IEEE 60802 TSN Profile for Industrial Automation, which defines a selection of Quality of Service mechanisms specified by the IEEE 802.1 TSN Task Group for use in converged industrial automation networks. Once released, the requirements included in IEC/IEEE 60802 will be removed from the UAFX specification.

OfflineEngineering is an essential element for an automation system's development, commissioning, operation, and maintenance phases. By allowing the user to understand the automation system's operation before deploying the system in physical hardware, the user can be assured the system will perform up to the user's expectations once the physical system is in place. Once the system is commissioned, the user can simulate changes and updates (e.g., using a digital twin) before changing the physical system. OfflineEngineering significantly increases efficiency during the commissioning phase when deploying multiple instances of the same system.

The UAFX OfflineEngineering Specification, OPC 10000-83, defines a standardised archive file called a Descriptor for provisioning and sharing the information required for OfflineEngineering. The contents of a Descriptor (see OPC 10000-83) is a structured set of documents describing the functionality, capabilities, and configuration of the AutomationComponents. Descriptors may also contain supporting documentation such as user manuals and drawings.

A Profile is a named aggregation of ConformanceUnits and other Profiles (OPC 10000-7). UAFX Profiles are defined in OPC 10000-84. All OPC UA AutomationComponents will support one or more Profiles and any or all of its optional Facets.