Multi-axis controllers are controls for which the entire hardware and software structure is organized around managing complex motion. Given the compute capability of today’s PC processors, any recent generation PAC or PC based controller can handle multi-axis motion control. However, each platform can address the problem in different ways. It’s common to have many independent axes of motion in a machine — with each one operating independently based on a start signal input. But multi-axis motion usual work to coordinate multiple axes that are mathematically defined.
Development of multi-axis controllers
The earliest example of multi-axis motion control is computer numerical control (CNC) systems of the late 1950s. These controls had customized computer hardware with tailored programming languages dedicated to automating the manufacture of metal parts. The advent of the transistor and integrated circuit drastically reduced the size weight and cost of the computer hardware, but the command language and architecture persists even to today.
Multi-axis motion controllers evolved over time as a separate class of controls to satisfy unique programming-environment requirements. This was complicated by how suppliers chose different processor platforms with their own programming languages. Complex user libraries arose to give users higher-level programming tools …
… but these were vendor specific and very time-consuming systems to use.
The problem multi-axis controllers address
The computing problem can be exemplified by trying to draw a circle with two linear mechanical axes. The coordination requires that each axis position be updated as quickly as possible, it’s position compared to the predicted position at that exact instant and then an error correction fed to the speed command of each motor driving an axis. This is considered among the most demanding of real time requirements. The speed of the internal execution by the processor must by orders of magnitude faster than the speed of the motor feedback.
PAC vendors’ goal is to produce a generation of general purpose computer-based control hardware that is easily integrated into IT networks yet retains the rugged and modular form factor typical of PLCs. This requires a higher performance approach to controller hardware so that PACs can function in any control application. This also means that PACs are equally capable of managing large data gathering networks, or running machine control logic, or doing both simultaneously.
When it comes to running multi-axis motion control, getting compute power is easy. However, systems may need different software. IEC61131 is the standard for ladder logic programming, but versions 3 and 4 incorporate motion extensions that allow programming of motion in the ladder environment. Depending on the exact motion tasking being done, the ladder approach may be fine … but it is not usually multi-axis.
Inputs and outputs for motion controllers need to be carefully considered. Limit switches, homing switches and encoder feedback are high-level inputs that must be dedicated to the specific axis with which they’re designed to work.