There is an ongoing effort to make programming languages and software platforms for machine automation easier to use and more versatile, to speed commissioning and improve equipment performance. Scott Hibbard discusses Bosch Rexroth’s new controls-programming capability, Open Core Engineering.

What is Open Core Engineering?

It’s a new automation software and programming platform that combines the previously separate worlds of PLC and IT programming into one comprehensive software portfolio. Open Core Engineering is not a stand-alone product. Rather, the software tools, function modules, libraries, and support for higher-level languages are built into Rexroth’s control firmware.

Why is it needed?

While open standards such as IEC 61131 and PLCopen have helped improve machine automation programming, “open” is a relative term. Many programmers — including those recently out of school or with backgrounds in networking and Web applications — are well-versed in standard languages like C++, Visual Basic for Applications (VBA), and Java, or mobile platforms such as Google Android and Apple iOS. When they start working in an industrial environment, the first thing they face is learning to program automation applications using languages that are specific to industrial controls, most often based on ladder logic. These programmers may have innovative ideas for new applications that can be created with higher-level languages commonly used in the IT world. But translating those ideas into applications using traditional PLC programming tools can be difficult and time consuming.

Can you give an example?

Although it is possible to create automation and motion sequences using higher-level languages (instead of PLC/IEC 61131 tools), the process of integrating programs written in higher-level languages can be convoluted and inefficient.

For example, if a machine builder wants to offer a data-gathering feature that automatically captures and generates Excel reports on specific machine sensor data, a programmer would typically use Microsoft’s VBA to write some simple code to capture that data. However, it can be challenging to have that application communicate with PLCs using VBA — and if you want to add a mobile-app interface that runs on both iOS and Android devices, the challenges multiply. It can be done, but usually with multiple software steps instead of simple function blocks.

How does Open Core Engineering address this?

It bridges the gap with common languages and a platform that more easily “opens up” industrial controls programming to the wider world of higher-level languages. This doesn’t mean leaving IEC 61131/PLC languages behind — they are amazing tools that deliver great performance for many fundamental automation tasks. Instead, it combines the previously separate environments of PLC and IT programming into one comprehensive software portfolio. Open Core Engineering gives programmers access to the PLC “core” kernel, letting them use standard IT development tools such as C++, VBA, and Java to create automation functions and applications, as an alternative to IEC 61131 and PLCopen.

This means software professionals and programmers experienced with technologies like mobile platforms and smartphones will not necessarily need to become experts in IEC 61131 PLC languages. The end result is that OEMs and end users will have a wider range of options to improve machine performance.

What are some potential applications for OEMs?

The range of possibilities is extensive, from real-time automation sequences such as complex multiaxis motion, to remote diagnostics apps, to data-gathering functions like energy efficiency tracking on PCs, tablets, or smartphones.

Smart mobile devices are rapidly becoming standard tools on the plant floor — for example in configuring automation systems or for servicing and operating equipment. Open Core Engineering’s support of Android and iOS opens up a wide range of mobile applications without the need to create complex, intermediate steps in machine-level languages.

Another benefit is that machine builders can create new or custom features on their own, to provide competitive differentiation for their products. Previously, they had to partner with the controls supplier to do this, limiting their ability to offer original or proprietary capabilities.

Will Open Core Engineering replace PLCs?

No, it augments the PLC engineering framework to widen the range of choices for automation programming. We anticipate that many automation tasks will still be programmed using standard PLC languages. However, Open Core Engineering lets programmers easily write specific functions in other languages that run as real-time operations within the PLC, or as external applications that run in parallel with the core PLC motion and logic functions.