The mission of every controller is to, by God, get its job done and give its users the capability and flexibility to complete their tasks. As Yoda says, "There is no try."
For about 40 years, microprocessors and software have worked together in programmable controllers to perform the calculations needed to take in and analyze data from sensors and I/O points, and then formulate and send out appropriate responses and commands. Just as PLCs could digitally do the jobs of dozens or hundreds of relays and reduce wiring and maintenance, many functions in controller operating systems (OSs) have migrated from dedicated, hard-coded, inflexible firmware to simpler, purer software that's easier to manipulate and reprogram.
In short, where users previously had to swap circuit boards and CPUs or type in complex coding changes to adjust programs on each controller, now they can point and click on a screen and automatically update software on dozens or hundreds of controllers.
However, despite these overall technical gains, there are still times when it's crucial to access and adjust programming at the level of the real-time operating system (RTOS), kernel and central processing unit (CPU) itself. This could be needed to prevent unauthorized software changes, protect intellectual property, ensure security or enable other high-priority functions.
Open Source Aids OS
S.E.A. Datentechnik manufactures test and measurement systems in Troisdorf, Germany. It recently needed to build an affordable, universal condition monitor for recurring applications in machine supervision and structural health, which would handle modular sensor inputs and signals types. As a result, the company developed its SEA 3200 rugged, sealed data acquisition and processing system, which can continuously monitor sensor and machine data and is based on a National Instruments CompactRIO module with a Linux RTOS, analog-to-digital converter modules and two modules for wireless networking and health monitoring.
Also read: How controls make for a better machine
"We've used Angstrom Linux for a long time in our products and have extensive prior expertise working with this type of OS, but the Linux-based RTOS on CompactRIO really changes the game," says Wolfram Koerver of SEA. "By leveraging the open Linux-based real-time OS on a commercial, off-the-shelf (COTS) controller, we could port our existing Linux software components in a very short time, which saved us at least three months of added development time."
Sanjay Challa, NI's embedded software product manager, adds that, "A lot of large, sophisticated builders with big teams that always have done custom designs want their operating systems to be just as flexible for special time synchronization or I/O requirements on high-performance machines or testing equipment, so they need to go beyond regular PLC functions to custom controller designs. Besides reducing costs, users are looking for open and flexible OSs, and they also want to reuse code."
RTOS Ins and Outs
"The RTOS is the controller's manager, and it works on top of the controller's CPU," says Jeff Payne, automation controls product manager at AutomationDirect, which sells Koyo and other PLCs. "Firmware is written and embedded in the hardware, the RTOS provides hooks into the firmware, and that's how they share data. Many CPUs chips are enclosed, so more field-programmable gate arrays (FPGAs) are used that allow developers to tailor functions to individual specifications, such as special math or motion tasks."
Dan Fenton, product marketing specialist for controllers and software at Phoenix Contact, adds that 95% of machine builders and other implementing controllers don't need to alter their OSs, but Phoenix Contact can help the 5% who do. "One user had to access their I/O much more directly, so we added software hooks into the backplane of the controller," Fenton explains.
"Another wanted to swap out entire logic programs on the fly to go along with tooling changes for manufacturing different products. This was beyond simply changing recipes, but it also had to be done without reprogramming the whole line. So we work with customers with these challenges and decide whether a software change or a hardware change is needed."
Likewise, Paul Whitney, commercial program manager for Integrated Architecture at Rockwell Automation, says his company doesn't usually seek to reprogram OSs on PLCs. "But if a user in the converting or web-printing field needs to run servo drives at 200% of peak, then we'll undertake an engineering project, enter the firmware and develop servo drives able to operate at 250% of their former peak," Whitney says.
"It's simpler and easier to adjust software that sits on a controller's OS by adding a configuration or runtime file about how to ramp up a drive." Also, our Studio 5000 design environment for writing code has added functions like consistent flow and naming, as well as modular code sets to help designers share information and tailor functions."
Rebuilt Brain for Bending
Just as operating systems can be repartitioned and reorganized to allow new innovations and functions, sometimes they need to be rebuilt or replaced with a whole new strategy. For example, Haeusler in Duggingen, Switzerland, and Rheinfelden-Herten, Germany, builds 20 types of plate-bending on roller plate and section-bending machines and can process plates up to 320 mm thick (Figure 1). "Bending diameters 16 to 64 inches and lengths over 12 meters are among the usual formats for us in pipe manufacturing plants," says Michael Fabianek, Haeusler's manager of automation technology, IT and hydraulics.
To better control its cold-forming process, Haeusler decided to replace its former control strategy, which consisted of separate a CNC and PLC that communicated at the I/O level. Consequently, Haeusler developed its Bend-IT Swiss Technology control system, which includes its proprietary solution for the NC controller and a 19-in. panel PC with an embedded Windows XP OS, TwinCAT PLC software and EtherCAT fieldbus from Beckhoff Automation. The core is an HMI based on Microsoft .Net and programmed in C# with integrated 3D visualization.
"The so-called ‘virtual' machine offers both NC and CNC functionality and covers all axes," Fabianek explains. "We use one processor core of the dual-core CPU for the user interface and data management, and the other core for PLC and NC or CNC motion control."
Reorganize the Core
To offer deterministic, real-time performance for other users, Freescale Semiconductor reports it recently formed a partnership with ISaGraf, QNX Software Systems and konig-pa to develop and use the EtherCAT PLC reference platform for OEMs that seek to develop a controller that can act as an EtherCAT master and provide deterministic, real-time performance.
The reference platform combines a Freescale processor, QNX RTOS, ISaGraf's PLC firmware and konig-pa's master stack software to deliver 1-ms cycle time with less than 1% CPU overhead, and it integrates the four participants at the system-on-a-chip (SoC) level. This lets them use new Ethernet-based and real-time automation technology, but also reuse or adapt existing automation algorithms built from ladder logic or function blocks. This solution also includes ISaGraf 6 Workbench software and konig-pa's KPA Studio software, which serve as the offline development environment (Figure 2).
Software Guys, Chipmakers Get Onboard
Not surprisingly, once machine and automation builders start messing with OSs and kernels in controllers, it's going to attract the interest from developers on the microprocessor side.
"Machine builders continue to program their own operating systems, but as more software guys come into the industry, many don't like ladder logic or IEC 61131 because they're more comfortable with C++ or C#," says Phoenix Contact's Fenton. "Many fundamental differences still exist between PLCs and PCs, but their features are overlapping, and their OSs enable it. So from firmware microcode on PLCs that was very hard to change, we're going to full-blown Windows CE OSs running on PLCs with real-time kernels, which are more modular and allow features to be moved around more easily as needed."
Likewise, Intel Corp. reports it will launch its Industrial Solutions System Consolidation Series in 2014. Tim Appleton, industrial marketing manager in Intel's Internet of Things Solutions Group, says this solution will be based on its Intel Core I7 processor and will unify its OS, hypervisor, security capability and HMI in one application-ready platform. "This is a home for soft PLC applications to sit on, and PLC applications can be delivered from it," says Appleton.
More from Control Design: