Content area
Full Text
For slow processes, Linux supports hard real time without changes. For fast processes, kernel changes are necessary.
Off-the-shelf computers provide an inexpensive platform for many of today's automation needs. GNU/Linux is an open-source operating system (OS) adaptable to these platforms and many computing problems.
The question arises: Why not use a combination of off-the-shelf computers and the Linux OS to run a programmable logic controller (PLC)?
When talking about a PLC, we typically refer to the entire controller-hardware components, systems, and application software. In general, the hardware consists of a CPU, some direct analog or digital I/0, network and fieldbus I/0, and at least one serial communications port.
Firmware guarantees that, once booted, the PLC loops eternally through a sequence of control instructions (its application software), which can be changed online or offline by a programming system to which it is connected. From a computing point of view, a traditional PLC is a single process running on the core computer hardware.
PLC Has 'Scan' Architecture
During the PLC's loop cycle, referred to as a "scan," the PLC carries out an input scan, executes the control and timer tasks in a roundrobin manner, and updates the output image.
Either at the end of such a scan or somewhere in between, the communications port is served for upload of data or download of PLC software. However, at no time during the scan do we see such external events as timer interrupt-driven schedulers launching tasks as independent computing entities.
The PLC is designed to run through the loop cycle as fast it can, and the worst-case loop time determines the response time of the system
Enter GNU/Linux, a portable operating system interface exchange (POSIX)compliant, Unixlike, general-purpose OS.
GNU/Linux runs on general-purpose computer hardware, such as off-the-shelf desktop systems, as well as on specialized computers such as CompactPCI or PC/104 systems, based on the same computer architecture. What all these computers have in common is that they utilize modem hardware techniques that push for throughput and average performance across a broad range of applications.
Techniques employed include fast,...