PLC Open and OPC Work to Combine UA with 61131

July 6, 2010
A combined working group from the OPC Foundation and PLC Open has been examining how to simplify the engineering and enhance the reusability of communications between controllers and visualization modules.

A combined working group from the OPC Foundation and PLC Open has been examining how to simplify the engineering and enhance the reusability of communications between controllers and visualization modules. For those able to evade the volcanic ash cloud, last month’s Hanover Fair provided a taste of where their work might eventually lead and a demonstration of how combining OPC UA (Unified Architecture) with the IEC 61131-3 programming standard offers the potential drastically to reduce the engineering effort involved in developing complex systems.

The aim of the working group was to make a PLC project running on different control platforms from different suppliers look exactly the same to a visualization tool or MES/ERP application by representing the IEC 61131-3 software model with all its PLC objects and their detailed descriptions in the OPC UA namespace. In contrast to the legacy data exchange protocols still in use in many industries today, OPC UA offers the basis for universal, secure and reliable network communication, with the capability to monitor configurable timeouts and connecting interruptions and encrypted communication. It thus provides an additional level of interoperability on top of IEC 61131-3.

Standard View
The working group’s first step was to map the IEC 61131-3 software model to an OPC UA information model, thereby standardizing the way controllers with integrated OPC UA server technology expose their data structures and function blocks to OPC UA clients such as HMIs.

This was achieved quite quickly, but it still meant that, while it was possible to communicate with different controllers from different vendors running the same IEC 61131-3 program and to access process variables, the representation in the namespace of the OPC UA servers was different for each platform. A visualization program had, therefore, to be adapted for each controller, although the control code was identical.

However, user expectations are that identical control projects can be accessed via OPC UA in the same way. That requires that, besides providing access to the controller variables, further information is needed on such issues as how complex data structures are constructed, what function blocks are being used, the number of tasks and their cycle times. To that end, the entire IEC 61131-3 software model and the content of the controller programs has been mapped into the OPC UA namespace within an OPC UA server integrated into an embedded controller. In effect, OPC UA is being used to describe not just the variables to be exchanged, but also the functions and "metadata" of the control logic.

The working group believes its results provide the basis for further development. At Hanover, for example, it was able to demonstrate how an HMI can now provide a picture template for a function block in the form of a graphic element which can communicate directly with all controllers on which the function block is present, greatly simplifying the engineering process. Further work on the information model will see the inclusion of communication function blocks linking the controller directly to the OPC UA environment, eliminating much of the current complexity resulting from having to work with branch-specific protocols that are adapted and extended to support security and further data objects. Combining PLC Open with OPC UA has the potential to provide an additional level of standardized interoperability on top of IEC 61131-3.