Joseph Ting
Product Support Manager
Jayson Wilkinson
Product Manager
National Instruments
Austin, Tex.

Edited by Miles Budimir

PC-based motion-control systems do away with stand-alone  controllers, placing all of the controller functionality on the control  board mounted in the PC's ISA/PCI bus slot. The controller board handles  the data from encoders and limit switches, and generates the required  motion profiles for the motor drive.

PC-based motion-control systems do away with stand-alone controllers, placing all of the controller functionality on the control board mounted in the PC's ISA/PCI bus slot. The controller board handles the data from encoders and limit switches, and generates the required motion profiles for the motor drive.


A noninterpolated move isn't the shortest distance to  the target destination. Instead, both axes start simultaneously, but the  <i />Y </i>axis completes its trajectory before the <i>X </i>axis. Linear  interpolation causes the two motors to start and stop simultaneously and  arrive at the target destination using the shortest possible path, a straight  line.

A noninterpolated move isn't the shortest distance to the target destination. Instead, both axes start simultaneously, but the Y axis completes its trajectory before the X axis. Linear interpolation causes the two motors to start and stop simultaneously and arrive at the target destination using the shortest possible path, a straight line.


Dropping a drill bit at the path edge could cause an  uneven cut. Cuts with no edge discontinuities require drilling into the  center of the larger circle. Then, cutting a half circle with a diameter  equal to the radius of the larger one smoothly blends the smaller half-circle  with the larger one.

Dropping a drill bit at the path edge could cause an uneven cut. Cuts with no edge discontinuities require drilling into the center of the larger circle. Then, cutting a half circle with a diameter equal to the radius of the larger one smoothly blends the smaller half-circle with the larger one.


Software packages such as National Instruments' LabView  6i make building complete motion-control systems relatively painless.  In this application, the first three icons configure the velocity and  acceleration for the two axes. The next three icons move the <I />Z </i>axis  to the correct position. The remaining icons create the half circle and  blend it with the large circle.

Software packages such as National Instruments' LabView 6i make building complete motion-control systems relatively painless. In this application, the first three icons configure the velocity and acceleration for the two axes. The next three icons move the Z axis to the correct position. The remaining icons create the half circle and blend it with the large circle.


Not too long ago, programmable logic controllers (PLCs) or proprietary hardware were the only choices for motion-control systems. More and more, machine builders are using off-the-shelf components and leveraging PC architecture for motion and numerical control of machines. However, such equipment often required custom software to make the systems work. But that's changing as increased demand for user-friendly software is making PC-based machine control easier than ever.

Benefits of PC-based motion control
There are several advantages to PC-based motion control including lower system cost, flexibility, ease of integration with other PC-based components, and continuous improvement of PC technology.

Supplanting proprietary, custom components, with flexible off-the-shelf hardware lowers system cost. Proprietary, closed-architecture hardware, in contrast, is often difficult to modify for different requirements. In fast-growing industries such as fiber optics, closed-architecture machines that meet present requirements may not be flexible enough to anticipate future demands. Open-architecture components eliminate the shortcomings.

PC-based motion controls also integrate easily with other system components such as PC-based machine vision or data acquisition. A single platform can synchronize each of these pieces to one another, opening up new possibilities for automated inspection.

Another advantage is that PC speed and processing power improves every year while costs drop. Users can upgrade certain components as newer, more-powerful versions become available. With closed architecture systems, an entire machine may need replacement to incrementally improve performance.

Selecting components
Selecting components is step one when designing a PC-based motion-control system. These include the mechanical fixtures, the motor or actuator, the drive or amplifier, the controller, and the controller interface software.

Selecting components for a PC-based motion-control system is fundamentally no different than component selection in traditional motion-control systems. Typically, the motion components in a machine are selected starting with the mechanical fixture and going up to the controller, because the function of the machine defines the mechanical framework and actuators which, in turn, limits the motor-selection parameters.

To size a motor for the mechanical fixture, the class of motor and the type of feedback are selected first. Common choices include stepper, ac, dc brushless, and dc brushed. Motor type depends on the application. Generally speaking, brushless motors should be used for applications requiring smoother operation at higher torques and speeds greater than 3,000 rpm. Less-expensive brushed motors are appropriate for speeds less than 3,000 rpm but greater than 600 rpm. Lastly, stepper motors excel in applications where high resolution and stall torque is needed at a minimal cost.

Torque and inertia calculations can be done manually, although several motor vendors offer motor-sizing software to assist in the process. In the end, the matching motor torque/speed curve should be upsized by 10 to 20% to compensate for unforeseeable loads. XY stages or X-Y-Z gantry systems typically have prefitted motors, so sizing is done already.

Drives are the next component to consider. The drive should match the class, current, and voltage specifications of the motor to which it will connect. Drives send high currents through the motor using low-level analog or digital control voltages. Drives range from single-axis panel mount units with no power supply, to multiaxis arrangements with a basic controller enclosed.

Drives and controllers use industry-standard protocols to communicate between components. The controller for a stepper-motor drive, for instance, sends digital TTL pulses to the motor drive for step and direction (clockwise or counterclockwise). Servodrives, on the other hand, typically operate in torque or velocity mode, and accept a ±10V command signal from the controller.

Modern, off-the-shelf motion controllers replace most custom-design and low-level programming with DSPs, microcontrollers, and firmware. These devices are programmed in high-level, visual and graphical programming languages. Use of high-level languages helps speed up development time by allowing the emphasis to be placed on the specifics of the application and less on programming.

Typical controller features
Controllers generate several types of motion profiles including point-to-point, linear/circular interpolation, and contouring.

Point-to-point motion is the most basic type of controlled motion. As the name implies, an axis is made to move from one position to another. Point-to-point motion is used in applications where complex trajectories are not important such as moving a slide to a certain position or indexing a conveyor belt.

Linear interpolation extends the point-to-point approach to include coordinated motion between two or more axes. Linear interpolation specifies a target destination in two or three dimensional space. Axes move in concert plotting a direct path to the specified destination.

Circular interpolation also involves coordination of multiple axes. Circular interpolation is a hardware feature of many controllers that creates smooth circular paths without chordal error by connecting several short linear moves or chords. The combination of circular and linear interpolation enables the creation of many complex trajectories.

Some paths, however, can't be defined using simple lines and arcs. Such complex paths require controllers that support contouring. Contouring can be used for special applications like complex CNC machining, earthquake simulation, or even flight simulation using precalculated parallel kinematics.

Developing a motion application
Consider a machine that makes speaker cabinets. First, the hole for the speaker must be cut. Assume that a mechanical fixture has been designed and a three-axis gantry system with servomotors is in place.

The motion path defines the controller functions. The servomotors, which are steered using circular interpolation, make the initial half-circle smoothly and continuously blend with the larger circle.

Programming depends on the controller and which languages it supports. Some common languages used are C, Visual Basic, and LabView.

Creating the program is fairly simple. After initializing the controller and giving it the necessary system parameters, actual programming can begin. The program will consist of three distinct steps: move Z axis down through center position; create half circle of size X/2; and blend with the larger circle of radius X.

Some controllers also store and run the program on the controller board, thus offloading the PC and keeping the motion-control operations safe from operating system crashes. These and other features can make the final system more robust.