As the “brain” of a servo system, a motion controller is responsible for ensuring the motor is following the specified motion profile and correcting any errors between the commanded value (in terms of position, speed, or torque) and the motor’s actual value. The motion controller also handles other supervisory and processing tasks, such as ensuring safety limits are not exceeded and managing I/O (input and output) from devices such as actuators and sensors.
For industrial automation applications (including linear motion systems), three of the most common types of motion controller are programmable logic controllers (PLCs), programmable automation controllers (PACs), and industrial PCs (IPCs). Although overlapping functionality between the three often means that more than one type of motion controller is suitable for a given application, each controller type has unique capabilities that make it the best-fit choice for certain application requirements.
PLCs: Capable and simple
The programmable logic controller (PLC) is probably the most widely-used controller in automation and manufacturing applications. It was originally designed to mimic electrical circuits, replacing the switches and relays that controlled machine motions, for reduced wiring cost and complexity. A basic PLC consists of a processor, memory, I/O to control inputs and outputs, and a user interface, although other peripherals are common.
There are five standard programming languages for PLCs, as defined in IEC 61131-3, allowing programmers to address virtually any application requirement, but the most common is language is arguably ladder diagram (also referred to as “ladder logic”). PLCs can communicate with other devices via protocols ranging from the relatively simple RS-232 serial communication to Ethernet-based protocols such as EtherCAT or EtherNet/IP.
PLCs have the benefit of being familiar (both in terms of hardware and software) to machine programmers and technicians, making them simple to program, diagnose, and service. However, limited processing and storage capabilities make PLCs best-suited for applications such as single-axis motion, which don’t require complex calculations or data handling.
PACs: PLC functionality with PC processing power
Programmable automation controllers (PACs) are considered by some to be a hybrid PLC/PC device, combining the functionality of modern, advanced PLCs with the processing capability of a PC. There is no formal definition of a PAC, but the ARC Advisory Group, which is widely recognized as having coined the term “Programmable Automation Controller,” says that a PAC should have the following characteristics:
- Multi-domain functionality
- A single, multi-discipline development platform
- Flexible software tools that maximize process flow across machines or processes
- An open, modular architecture
- Compatibility with enterprise networks
While many of these capabilities are found in advanced PLCs, PACs are often distinguished from PLCs by two characteristics: modular design and open architecture. PACs can also handle a larger number of I/O than most PLCs and can exchange data with other applications and devices, including with other PACs to form a distributed control system.
Programming can be done in any of the five programming languages defined by IEC 61131-3 for PLCs or in standard PC programming languages such as C/C++. Although many PLCs offer advanced functionality that encroaches on PAC territory, the communication and interoperability of PACs with other devices and systems, coupled with the ability to handle more I/O and larger memory, make PACs a good choice for applications that require complex controls, such as coordinated, multi-axis motion or circular interpolation. PACs are often the best choice for applications that require monitoring and control over multiple domains, such as motion and process control, or over an entire plant floor.
IPCs: Fast processors and large memory
Industrial PCs (IPCs) are, in many ways, similar to standard PCs, but they’re built with more rugged components to withstand the harsh environments often found in industrial applications, such as wet or dusty conditions, temperature and humidity extremes, or vibrations and shocks. Because they’re based on standard PCs, IPCs offer a familiar interface and form factor.
One downside of the standard PC is that it does not deliver real-time, deterministic performance — a necessity in complex applications such as coordinated motion. To solve this problem, industrial PCs often run both a conventional operation system (such as Windows) and a real-time operating system (RTOS) that allows them to provide deterministic control.
IPCs offer better memory and data processing capabilities than PLCs, making them best for applications that require intensive calculations and data storage, such as those that integrate vision or imaging systems. IPCs are also able to interface with higher-level plant operating systems, such as ERP (enterprise resource planning) systems, BAS (building automation systems), or SCADA (supervisory control and data acquisition) systems.