OPC Unified Architecture – Your Future at the Edge (Part 4): OPC UA in Edge Computing and Inner/Outer Loop Control

This is the last in a series of blogs detailing the OPC Unified Architecture (UA). You can read the other posts in the series here: post 1 on the client/server structure, post 2 on objects, nodes and information models, and post 3 on the aggregation server. To wrap up:

Edge control systems provide an intelligent and secure infrastructure for customers to create their control applications. These qualities in part are achieved with OPC UA. This blog illustrates how OPC UA in the context of edge control brings intelligence to data and security to a system.

Edge control systems at their core have an object model that represents industrial equipment and the entities that are used to control equipment, such as control modules. The object model provides semantics around the data for things like a level transmitter. This object definition enables HMI graphics, alarms, apps, and logic to work seamlessly together using the same information model for a given ObjectType. This concept is expanded beyond simple devices, like transmitters, to include more complex structures that can be used to create a complete application. This brings new opportunities to compose high-quality applications in less time. The model provides semantic value to data by defining:

  • ObjectTypes that represent entities in a domain
  • Concrete names for properties using the BrowseName attribute
  • ReferenceTypes that convey the relationship between two nodes; e.g. “HasCommandVar” (ReferenceType is used to reference an object to one of its command variables. The reference forms the predicate between the source node and targeted node.)
  • VariableTypes that provide context and restrictions for usage

OPC UA provides a whole extensible infrastructure for information modeling. Leveraging this infrastructure to its fullest has the potential to transform industrial automation by providing semantic interoperability from the device to the cloud. Semantic interoperability allows client applications to generate reports, HMI screens, controls logic and analytics automatically and, when required, on demand. This is powerful because clients not only receive data identified by tag name, but information that can be interpreted so that the client can make decisions real-time on how to convey that information to facilitate better outcomes.

 Inner/Outer Loop Control
A key feature of outcome optimizing edge control is a built-in ecosystem to support inner and outer loop control strategies. As shown in Figure 1, an inner loop provides deterministic control and an outer loop provides non-deterministic advice to the inner loop to achieve a goal, such as minimizing a cost function. The inner loop runs on a PACSystem controller with an embedded OPC UA server. The outer loop runs on a variety of platforms that use Emerson’s Industrial Object Server technology. The Industrial Object Server is a software stack that includes an OPC UA aggregation server, which aggregates information from underlying servers and then exposes that information through an OPC UA server to client apps. The client apps access the aggregated information by using language-specific APIs provided in the Industrial Object Server’s software stack as shown in Figure 2. One of the advantages of the inner and outer loop ecosystem is the  ability to couple the knowledge of OPC UA type definitions with the OPC UA services for discovering information. The type definition indicates to the system what information to seek, and the discovery services give the system the means to find that information. This gives edge control the ability to configure and deploy apps in a semi-automated manner. One example would be using services that find specific nodes based on a type definition. In this case, the app developer would reference variables in the app based on knowledge of the InstanceDeclaration of the ObjectType needed by the app; i.e. reference the app variables in the context of the ObjectType. Then a discovery service, specifically TranslateBrowsePathToNodeId, can be used to map concrete variables to the app variables.

This example is illustrated in Figure 3. Another scenario is the ability of an app to discover objects of a certain type. For example, an app could provide optimization methods for pumps. When deployed, the app could discover all objects of type “pump” and then subscribe to their data. The same mechanism could be used to automatically fulfill many use cases, from populating reports  with data to creating all HMI graphical objects for a given type, ultimately leading to a self-configuring system.

The intelligence of a system is commensurate with its ability to derive meaning from its data. OPC UA information modeling makes it possible to add semantics to data so that its meaning can be IIderived by applications. This results in self-composing client applications that are easy to develop and support.

Together, these attributes of OPC UA make it the ideal communication backbone for Emerson’s edge control systems.

How are you utilizing edge control?