Understanding the terms of the test
Industrial control relies on asynchronous loops. The real-time performance of an input/output (I/O) loop within this system is measured by 2 key metrics: screw-to-screw time and jitter.
Screw-to-screw time is the total time it takes for a signal to complete a full round trip through the control system. In literal terms, this means from the physical input wiring terminal (the 1st screw) to the physical output wiring terminal (the 2nd screw).
For simplicity, we will talk about this as 3 distinct asynchronous loops. First, the input, which is when a discrete or analog signal from a field device arrives at the physical input module. The I/O subsystem digitizes this signal and routes it to the controller. Second is processing, when the controller receives the data, executes its control algorithm, and determines the necessary action. Third is output, when the controller sends this result back to the I/O subsystem, which converts it back into an analog signal and delivers it to the physical output module to trigger the field device.
Jitter is any variation or inconsistency in that screw-to-screw time. Because control systems rely on highly precise timing, high levels of jitter can severely disrupt operations. Fluctuations in response time can cause control loop instability, equipment timing failures (such as diverter misses), and downstream manufacturing and quality problems.
When creating a control strategy, the typical process is to come up with a mathematical analysis of the worst-case screw-to-screw time of all the asynchronous system loops. That screw-to-screw time is critical for safety system response calculations, motion controller loop updates, process loop closure, overall line speed of production, and other automation tasks. Once you know your worst-case screw-to-screw time, you can start writing code and understanding how your system is going to operate.
It is the control system’s responsibility to make sure the entire system meets that calculated max round-trip time. Failing to do so can result in catastrophic control system failures, quality problems, machine damage, and production loss. While they often do not meet the needs of digital modernization, traditional proprietary controllers with proprietary OSes are dedicated devices and typically make sure that performance is met. On the other hand, software-based controllers—bare metal, containerized, or virtualized controllers—offer scale, cost, and management benefits to manufacturing. There is, however, concern that these open, software-based solutions cannot meet the screw-to-screw-time and jitter specifications required, as factors such as hardware interrupts, cache flushing by other applications, network card interrupts, or other delays typical in a commercial software/hardware environment all require special handling.
Red Hat® Device Edge or larger scale Red Hat Enterprise Linux both have real-time support that helps solve the challenges found in the typical commercial grade OSes. Coupling Red Hat’s real-time kernel with Intel’s hardware technologies, such as Cache Allocation (CAT), Intel® Time Coordinated Computing Mode (Intel® TCC Mode) mode, and Intel® Speed Shift Technology, provides a performant, real-time, off-the-shelf solution for control. This allows for a more flexible, manageable, and lower cost control solution that is simpler to update and can run on commodity hardware.
In extensive testing we captured the screw-to-screw time and isolated the OS’s contribution to that screw-to-screw time using Red Hat Enterprise Linux running on Intel based hardware. We pulled out jitter numbers to better understand repeatability.
We use these 3 Intel specific features:
- Intel® Speed Shift Technology, which prevents central processing units (CPUs) from going into power saving slower clock speeds
- CAT, which dedicates processor cache space for the control application and prevents it from being flushed from cache.
- Intel® TCC Mode, which is a system wide optimizer for real-time workloads.