Recent developments in PLC hardware and software have increased the range of motion applications that these devices can control. These developments have also placed the PLC in strong competition with a PC in these same applications. Here’s what you need to know to choose the right control for your application
Not only have semiconductor-integrated circuits and the Windows operating system helped programmable controller (PLC) vendors cut prices while expanding features, these developments have also helped PLCs branch into motion control applications previously dominated by process and motion- control computers. The result: engineers can better match a PLC to motion control needs.
Today’s PLCs use the latest microprocessors and offer more “open” configurations.
Processors. Performance gains come from powerful 16 and 32-bit CPUs. These processors permit faster motor movements than earlier CPUs, which results in finer motor resolution for more accurate control. A PLC with a 32-bit chip, for example, can provide better than 2 billion counts for its precision calculations.
Industrial robots are one device that has benefited from the PLC’s more powerful processors. An older PLC, even one only 3 or 4 years old, may cause the motion of a multi-axis robot arm to be jerky. (This is assuming the motor the PLC is controlling is not a step motor). This jerkiness stems from the slow response time of the PLC processor as it performs inverse- kinematic calculations, which convert robot arm-tip coordinates to joint coordinates. PLCs with 486 or Pentium CPUs can process coordinate data quickly enough to smooth the robot-arm motion, and save the expense of using a step motor.
Many of the newer processors, such as the ones mentioned above, use a computing technique known as reduced instruction set computing (RISC). A PLC with such a CPU can execute commands in a program that is 32 K-words long at a “speed” of 0.15 sec/instruction. This fast instruction execution lets PLCs handle coordinated arc interpolation and Scurve profiles, which enable smooth motor acceleration. (Before development of these CPUs, PLCs were limited to trapezoidal motion profiles.)
Because of these fast processors and their ability to handle S-curves, new PLC models can control high-speed stitching machines, pick-and-place robotics, automated gantry systems, and potters. And the more powerful the CPU, the greater the number of motion axes a PLC can control. For example, a PLC with the RISCbased CPU can control up to 24 axes.
Some PLCs use two or more processors with one dedicated to motion-control tasks. This frees the master processor for overall control functions and the other processors for specific tasks.
I/O. PLCs are still grouped into sizes based on the number of I/O points they handle. MicroPLCs have 20 to 60 I/O points, and nanoPLCs have 14 I/O or less. Despite their size, these controls offer features previously found only in their larger brothers. Features such as highspeed interrupt; PID loop control; double- precision math; compatibility with analog feedback devices such as thermocouples, tachometers, and RTD; PWM; and flash memory are all available in many micro and a few nanoPLCs.
These smaller PLCs, which range from $200 to $400, are moving into motion control applications, such as controlling:
• Movement of docking doors.
• Sortation and placement machines.
• Bagging machines.
Vending machines and restaurant equipment are additional applications that use smaller PLCs.
A nanoPLC’s temperature feature, for example, improved quality in an automotive parts-bagging application where a constant temperature was critical. Before the PLC solution, when temperature increased, so did the speed of the bagging- machine motor. This caused the machine to operate faster, which led to faster bag sealing, and resulted in uneven bag size. Because the nanoPLC could be programmed to keep the temperature constant through its analog feedback capabilities, the problem was solved.
In a car-wash facility, a microPLC sends signals to start and stop the motors that run the cloth washers, start a conveyor belt that brings the car forward, and signals the dryer to start. Then, it tells the dryer motor to move the air blower up, and so on.
For additional I/O in a PLC, engineers can plug in I/O cards. These are printed circuit boards with I/O points in multiples of four that plug into the PLC motherboard or backplane. These boards enhance PLC flexibility by adding or changing its functions. For example a plug-in I/O board can let one PLC simultaneously control several motors.
Vendors tend to group software into control and operator interface categories.
Control. PLC vendors developed software specific to the control needs of PLCs. This software executes commands in real time, that is, in a millisecond or less; handles multiple tasks in a timeslicing (multitasking) format; and protects the manufacturing process should a fault or shut down occur.
A subset of control software is application programming software. Engineers used to have only one programming language for the development of application programs — relay ladder logic language (RLL) — which was designed for discrete control. It doesn’t lend itself to motion control because it forces programmers to focus on individual PLC outputs rather than on the flow and operation of a motion system. To use RLL, a programmer must instruct the PLC every step of the way, resulting in many lines of code.
The IEC-1131-3 specification is a solution to this programming limitation. It defines five languages, including relay ladder logic, that programmers can use to create application code. Any one or all are available in a control, and any one or all can be used to program a manufacturing sequence of operations. The other four are:
• Function block diagram defines code that is used in several applications or repeated in several segments of a program, such as counting or timing.
• Instruction list is a low-level language, similar to assembler in computers, for simple commands.
• Sequential function chart is based on Grafcet. It uses a flow-chart format to describe sequential steps in a process.
• Structured text is a high-level language that offers Boolean and arithmetic statements. It represents analog and digital values, such as complex math algorithms and PID loops. With this language, a typical motion move may take 2 or 3 lines, but will take 20 lines of RLL code to describe.
PLCs have also worked with another language for years. This language, G-language, is primarily associated with robotics and was first used in CNCs. This language lets users take three data points — start velocity, acceleration, and dwell time — to define one movement. The next movement can then be described in terms of the number of pulses required to produce the desired amount of movement.
Operator interface. To create the displays operators and engineers see, most vendors offer PC-based languages such as Windows and its display development tools such as Visual Basic. These programming aids help create the windows, pulldown menus, and fill-the-blank formats popularized by the personal computer.
The hardware used to program PLCs is usually a PC. The PLC programming languages mentioned earlier are readily available on PCs. Third-party vendors also offer application development programs for use on PCs. Many of these programs — like those from Opto 22 Corp. and Grayhill Co. — drive third-party I/O that offer motion- control routines. For example, a user can program PLC I/Os to indicate home position, overtravel, or to trigger a motor’s movement. In addition to the Windows family of operating systems, these thirdparty programs are available in OS/2 and Unix operating systems.
Other hardware devices engineers can use to program a PLC range from a twoline numeric display to touch screen monitors. These monitors, however, can add $1,000 or more to the cost of a PLCbased motion system.
Several programs also have import and export capabilities, which allow data to flow between the PLC and a drive, sensor, or other production device.
Networks.Engineers have several choices for communicating between a PLC and a motor-drive system. Some applications may require several networks between a PLC and a series of drives. For example, an ac drive may be connected to a PLC through remote I/O while another drive uses a Modicon Modbus network. A PLC with multiple communication interfaces, such as remote-slave, network-master, and remote-I/O, can increase system uptime. If one interface goes down, routines are in place that prevent the remaining interfaces from shutting off. Users can duplicate interfaces for backup security, which is what many companies in chemical, mining, and food industries do.
Other networks for motion control include the VMEbus for backplane plug-in cards, DeviceNet, LONworks from Echelon, Profibus from Siemens, and Seriplex from Square D.
Selecting the right network for an application depends on several variables, including the type of signal protocol the drive accepts, such as RS-422, RS-485, or 4 to 20 mA loop, the type of signal the network sends, and data throughput requirements of the application.
Some motion applications require networks that transmit data from the drive to the PLC at 500 kbits/sec. (For comparison, a PID loop transmits at a much slower rate of 50 to 100 ms.) Conveying applications often require such throughput speeds. Most networks that meet these needs are proprietary.
One network that is open and claims a throughput of over 4 Mbit/sec is Sercos (serial real-time communication system). It is a digital fiber-optic, open-architecture standard. An alternative to the variable 10-V analog network, it offers the possibility of greater reliability regardless of the distance or the environmental conditions that surround a PLC and motor. Its openness is making it a popular network. But, be aware, its presence is sparking a debate in the motion world about what features are really needed in motion control networks including open vs. proprietary vs. performance, throughput speed vs. the number of axes controlled, and others.
Milton Navarro is product manager at Aromat Corp., New Providence, N.J.