OPC UA Redefines Automation Architectures

OPC UA Redefines Automation Architectures

 
By Bill Lydon - Contributing Editor
 
OPC UA for Leaner, Faster System Architectures
 
Introduction
The new OPC UA technology provides an efficient and secure infrastructure for communications - from sensor to business enterprise computing for all automation systems in manufacturing and process control.  OPC UA leverages web services to provide a single programming paradigm in a scalable architecture that can be implemented is a range of devices - from embedded to enterprise. 
 
OPC UA leverages Web Services, which is becoming the preferred method for system communications and interaction for all networked devices. The World Wide Web Consortium (W3C) is the main international standards organization for the World Wide Web and defines a Web Service as "a software system designed to support interoperable machine-to-machine interaction over a network." In practice, the term refers to clients and servers that communicate using the Hypertext Transfer Protocol (HTTP) and Extensible Markup Language (XML) messages. 
 
Over the last 10 years, OPC has become a real workhorse replacing custom HMI drivers and connecting controls & automaton to the business enterprise. The introduction of OPC UA is a major step forward.  By taking advantage of WEB services, object oriented software, and networking advancements, OPC-UA provides a scalable information and control architecture from embedded to enterprise devices in a secure environment. 
 
The architecture provides opportunities to flatten system architectures by implementing embedded controls and sensors with built in OPC UA technology. For example, a sensor or controller can provide performance data directly to enterprise systems without going through intermediate HMI servers, therefore making systems more efficient and responsive.
 
OPC UA is also platform-independent by design - a big change - allowing it to be implemented easily in embedded systems and enterprise systems in any operating system environment.
 
OPC UA leverages the latest computing technologies to improve automation architectures. The ability to embed OPC UA into devices such as sensors and controlling devices (example: motor controls; contactors) creates a direct linkage from the edge of automation systems to operations. The result should be easier system integration and more responsive systems.
 
Why New Architecture?
The factors cited by the OPC Foundation that influenced the decision to create a new architecture include:
 
  • Microsoft adoption of Web Services and SOA (Service Oriented Architecture) and move away from COM.
  • OPC Vendors desire for a single set of services to expose the OPC data models (DA, A&E, HDA ...).
  • OPC Vendors requirement to implement OPC in non-Microsoft systems.
  • Intelligent embedded network connected devices becoming more popular.
  • Other collaborating organizations need a reliable, efficient way to move higher level structured data.
 
Architecture
The Unified Architecture (OPC-UA) is described in a layered set of specifications. It is purposely described in abstract terms, then in later parts married to existing technology on which software can be built.  This layered design isolates changes in OPC-UA from any changes in the technology used to implement it.
 
OPC UA Base Services are fundamental and generic in the architecture, providing the mechanism to support present and future data models.  This insures that OPC UA can be extended into a wide range of future applications that are undefined at this time. Base services include fundamentals including query, browse, read, write, and subscribe. OPC UA data is self-describing using objects. Another feature of OPC UA is that all data has a consistent model including basic data, historic data, array structures, and alarm data. Devices can use OPC UA Base Services to discover and access all data on a server.
 
 
The OPC Information Models define unique functions such as Data Access, Alarm & Events, and Historical Access and rely on the Base Services.  The new architecture is easily extensible as illustrated by new implantations based on OPC UA; including PLCopen IEC 61131-3 functions, MIMOSA, IEC 61850, S95, and others.
 
OPC UA profiles are used to enable embedded and large devices to utilize the architecture. Profiles are used to define subsets of functionality for different use cases and devices. For example, embedded systems would not implement all the features used by higher level systems. The Low End Device Server profile defines a bare bones functionality set that low end devices with limited resources may use.
 
Security
OPC UA addresses security by design, rather than an option or outside add-on. 
 
 
OPC UA features bidirectional application authentication, Signing and encryption of messages, user authentication on application level, and integrated audit mechanisms.
 
Implementation Tools
Three separate code bases are being developed to provide OPC UA and insure portability to a wide variety of systems and environments:
 
ANSI C/C++
This code will be as portable as possible with specific requirements for embedded systems.  The portability layer source code is provided for MS Windows.  Linux and other environments can be adapted by editing the source code in a small portability layer.
 
JAVA
A portable JAVA implementation is being developed.  Phase 1 will provide a JAVA API on top of the C/C++ stack.  Phase 2 will provide a pure JAVA implementation.
 
Microsoft .NET
The Microsoft .NET platform code base will utilize .NET 3.0 SP1 and the Windows Communication Foundation, providing an easy way to build WEB services into software.
 
 
I expect a new class of controllers and sensors that will leverage OPC UA and be easier to use and integrate than today’s controls.
 
More Information
 
OPC Foundation:
 
Windows Communication Foundation Portal:
 
A Developer’s Introduction to Windows Communication Foundation (WCF):
 
PLCopen OPC UA Committee: