The difference between PLCs and PACs can leak into many other technologies. For example, systems on a chip (SoCs), embedded PCs, and field-programmable gate arrays (FPGAs) represent some of technology that is replacing or expanding the PLC industry. However, it seems the definitions of these technologies are not set in stone. Bosch Rexroth’s Matteo Dariol defines the following:
PLC: A programmable logic controller is a digital computer designed for automation and industrial controls. It was created to resist to a wide range of operating conditions, including temperature, pressure, electrical noises, and vibrations. The most important feature that truly led to its success is that it is a hard real-time system.
Real-time: Most times, real-time is translated into being “as fast as possible.” This is not true. A real-time system guarantees that all inputs, outputs, and computations process within a specific time constrain, often referred to as a deadline. A hard real-time system considers missing a deadline to be a total failure. A soft real-time system, on the other hand, accepts missing some deadlines even if it degrades the output quality. Some examples include audio and video streaming, VoIP, and video conferencing. The quality may be lacking if the audio and video aren’t able to process a few frames during a conference call, but the message still comes across. This example could be similar for machine vision; a hard deadline may not necessarily be a total failure.
Every time that a PLC program compiles, it calculates if the needed resources are available to perform all of the operations that we are commanding. Then it comes up with a solution for meeting our desired deadline.
PAC: A programmable automation controller is a digital computer that incorporates PLC functionalities. A PAC is a relatively recent innovation, being introduced around 2000. In the majority of cases, the PAC represents an evolution of the PLC. PLCs are a bridge from electric automation, made with cables and relays, to electromechanical programmable automation, where the emphasis moved into the software side of the operation (we are talking about 40 years ago).
SoftPLC: This is a soft real-time system, whereby (as specified before) it does not give guarantees on timely execution of operations. For this reason, they do not work for motion-control tasks. Instead, SoftPLCs are preferred for plant/shop-floor connectivity, for human-to-machine interface (HMIs), and supervisory control and data acquisition (SCADA) applications. It is possible for certain PACs to be SoftPLCs.
Embedded PC: An embedded PC is a non-general-purpose computer, designed and optimized for a single custom application. It is typically built with all of the components on a single board, including microcontrollers or microprocessors, memory, bus, I/O, and other custom chips. The system even includes the software or firmware (firmware usually resides in read-only memory, or ROM). Embedded PCs are truly the intersection between hardware and software, as a tight relationship exists between the two parts: one could not work without the other. Designing with embedded PCs can answer hard or soft real-time needs.