Micro-PLC motion control made practical
Modern micro-PLCs combined with stepper motor controllers make advanced motion control and edge integration simple for smaller systems.
Motion Control Insights
- Micro programmable logic controllers (PLCs) have helped with motion control applications. A micro-PLC and stepper motor can economically provide closed-loop motion control, saving money over servo motors.
- Micro-PLCs are more approachable and easier to program than larger PLC product lines, especially for smaller applications.
- The micro-PLC can automate parts of a machine and provide seamless edge and Industrial Internet of Things (IIoT) connectivity.
Small programmable logic controllers (PLCs) more easily can be used with stepper motors provide greater precision in applications previously that only more expensive servo motor systems could control. Micro-PLCs bring other benefits to a motion-control design, also.
Electronic motion control for motors is widely used with industrial machinery to perform rapid, accurate, and energy-efficient movements of parts and mechanisms. Original versions introduced as early as the 1960s were complicated individual devices requiring coordination. Later, more integrated versions of electronic motion control for motors, compatible with programmable logic controllers (PLCs), were introduced. However, closed-loop motion controls have remained expensive and complex, and they are often reserved for only the most demanding applications.
Although closed-loop motion control remained commercially and technically out of reach for many smaller applications, users have searched for ways to benefit from the technology and incorporate it as part of a greater edge solution. Two recent developments have changed the situation, making PLC-controlled motion easy and cost-effective, suitable for industrial, commercial, and hobbyist applications. The first innovation is a micro-PLC with motion-specific instructions, and the second is the open-loop stepper motor (some with integrated drives) providing sufficient power, speed, and accuracy for most applications (Figure 1).
Motor selection options for motion applications
Standard ac induction and dc motors are ideal for on/off and continuous operation at fixed speeds, and they can be used at varying speeds with the appropriate drives. However, high-performance positioning, velocity/acceleration profiles and intermittent movements call for more expensive servo motors and drives, which use closed-loop feedback to ensure accurate and responsive operation.
Stepper motors are another motion-control option, combining some of the best aspects of electric motors, and they are available in dc and ac versions. A stepper motor requires a drive, which converts pulse commands – typically very rapid – into small discrete step movements. Stepper motors have varying speed and torque capabilities, and because torque falls off as speed increases, they often work best below 1,000 rotations per minute (RPM). They can be operated at fixed or varying speeds like a standard motor, or they can be driven to specific velocities and positions as desired.
Most stepper motors are operated open-loop, although it is becoming more common to implement them in a closed-loop manner with sensors. Open-loop steppers are popular for commercial applications such as 3D printers and are useful for operating many types of industrial machinery, such as lathes and computer numerical control (CNC) machines.
Although servo motor systems provide full torque at all speeds and ultra-precise motion, they can cost up to four times as much as a stepper to implement. For many machinery applications, stepper motor systems are an economical way to provide the required performance.
PLC choices for motor technologies
Each motor technology requires a drive of some type and performing coordinated motor movements requires a motion controller to command the drive. Each motor to be controlled is called an “axis,” and for larger machines it is often necessary to coordinate many “axes” in operation with each other. The motion controller can be integrated with the drive, or the two can be separate devices. However, even when a dedicated motion controller is used, it often must still be integrated with other supervisory PLC controls.
For flexibility and easy integration with other automated controls, some PLCs include motion control command capabilities. Unfortunately, this functionality typically only was available with premium product lines. Most small PLCs, which work well for other aspects of machine control, had no native means of integrating with motors for streamlined motion control.
Some applications require larger PLCs because of the overall input/output (I/O) count and many axes of motion which must be coordinated. For instance, a printing press with multiple material rollers and moving elements would call for a large PLC. But there are plenty of applications where no more than three axes are needed – often the X, Y and Z positioning of equipment – so a large PLC would be excessive.
The narrative has changed now that motion control capabilities have trickled down to micro-PLCs, just as many other computing, communication, and other features have migrated from large PLCs down to smaller versions. Micro-PLCs are more approachable and easier to program than larger PLC product lines, especially for smaller applications, making the combination of a micro-PLC with stepper motors and drives compelling for many projects.
Micro-PLC motion control control capabilities
While there is no hard definition of a micro-PLC, they usually have low I/O counts of 15 to 128 points. Some are self-contained bricks, but newer designs come in a more flexible, stackable, and modular configuration so users can select appropriate I/O types and counts.
These micro-PLCs have added features over the years, including high-speed inputs – necessary for triggering, timing, and counting functions – analog I/O, proportional-integral-derivative (PID) loop control, Ethernet networking, data handling, and others. They can be used for direct control, smart remote I/O, or data acquisition and Industrial Internet of Things (IIoT) projects.
The two critical capabilities to look for when using a micro-PLC for stepper motor motion control are high-speed digital pulse train discrete outputs, and dedicated motion instructions.
Discrete outputs from a PLC can be used to drive a stepper motor controller, and even some servo motor controllers, if desired. Two outputs are needed for each controller; one for the pulse frequency, and the other for direction. Stepper motors can operate in several modes, such as full-step (200 steps per revolution), half-step (400 steps per revolution), and all the way up to 50,000 steps per revolution. Finer step modes improve accuracy and smoothness, but limit maximum speed. Users must select a step mode appropriate to the application considering tradeoffs among these characteristics.
Of course, the PLC also will need an associated hardware configuration mode to define which digital outputs are associated with a stepper drive, and associated scaling. This setup should be intuitive and arranged to help users get the devices operating.
While some esoteric motion applications may require advanced commands, most applications are implemented if PLC commands include a compressed and simplified instruction set with the following aspects:
- Homing (Figure 2):
Because a stepper system does not use encoder feedback, it is necessary to periodically drive the hardware to a known location (usually one or more limit switches) to verify or “home” the calibration of each axis. There are six common homing approaches based on the application:
- Move to switch 1, creep to switch 2, then halt
- Move to switch 1, then halt
- Move to switch 1, then decelerate
- Move to switch 1, then away and back
- Move to switch 1, then decelerate a distance (registration)
- Set the current position as home.
- Velocity move:
This move allows a user to define the target velocity a motor axis should be driven to, and the associated acceleration or deceleration desired to achieve it. An enhancement option called “S-curve” can be enabled to ensure acceleration and deceleration rates are started and finished smoothly to prevent position loss or unintended product motion due to inertia or friction loss.
- Position move (Figure 3):
This move allows the user to define the target position that up to three axes should be driven to, including the associated acceleration, deceleration, and velocity to achieve the position. S-curve also should be an option for this type of move.
The capability of joining two or three axes for combined movements, via one instruction to create a combined vector, is powerful. The controller calculates the acceleration, velocity, and deceleration of each axis, so all axes will begin and end in synchronization. This is a common need for equipment, which often uses X-Y or X-Y-Z motion.
Motion made simple with micro-PLC motion capabilities
Developers of motion applications must make informed decisions about implementation, considering elements such as motor-monitoring and status information, the means and frequency of homing operations (such as once per cycle, mid-cycle, or more/less often), and the appropriate failure mode.
These developers will find advanced motion control is simplified when using modern micro-PLCs – with basic configuration provisions and homing, velocity, and position instructions – in conjunction with stepper motor controllers. As an additional benefit, the micro-PLC can automate other aspects of the same machine and provide seamless edge and IIoT connectivity.
Conor Perry is the technical product manager for the HMI and Click product groups at AutomationDirect.