Process Control - Getting Your PLC Project Done

Programmable Logic controller in industrial control panel
Programmable logic controllers combine inputs, outputs,
and processing in a compact unit
Programmable logic controllers have been around for decades, but continue to supplant component oriented control schemes everywhere. The basic PLC consists of a variety of inputs from the process and its equipment, outputs to the process equipment, and internal processing (logic) that interrelates the two. PLCs have distinct advantages making them a first choice for many process control applications.
  • Compactness: A PLC packs a comparatively huge amount of inputs, outputs, control loops, and relay contacts in a small package. Wiring is simplified and severely reduced, since the bulk of the switch logic is accomplished without relays and wiring in the PLC software.
  • Functionality: In addition to duplicating the function of countless relays and discrete controllers, the logic functions of the PLC and the integration of multiple controls, inputs, and outputs into a single device empower the designer to provide functionality that is difficult, impractical, or impossible with discrete control component designs.
A programmable logic controller is not purpose specific. In actuality, it does not really do much of anything right out of the box. Every controller must be programmed to perform the tasks necessary to effectively and safely regulate the process. Programming a PLC is not intrinsically difficult. There are various programming tools available for almost every brand that provide options for textual, symbolic, and even ladder logic programming. These tools adroitly accommodate the manner in which the programmer envisions the logic. My personal preference is for ladder logic because it resembles a wiring diagram.

If planning on incorporating a PLC into your control scheme, here are some things you should consider early on to make the project successful.
  • Schedule out all the inputs and outputs that will be needed. Incorporate excess capacity. It is likely you will want to add functionality in the future.
  • Evaluate the control scheme for potential added features and functions that have not been previously considered. This is especially true when replacing an existing discrete component control system with a PLC based design. There are often relationships among the various inputs and outputs that can be exploited to provide better monitoring or control.
  • If there are multiple machines, valves, or other major components in the control scheme, make sure your program design properly coordinates or interlocks their operation.
  • Develop operating schemes for responding to faults or malfunction detected in the PLC itself or the connected devices or machines. There may be other safety devices that operate independent of the PLC. Consider them as last resort devices and design your program to handle faults before they become real problems.
  • Structure the program thoughtfully. Make it as easy to read and understand as you possibly can because, at some future time, somebody is going to need to decipher what has been done. Include notes and descriptions for every logical block of code. Use labels for program elements that provide useful information about the function of the element. Make allowances for future modification.
  • In some cases, it may be useful to produce a text document that describes the function of each logical program block, the reason for its existing structure, how it relates to other functions. This can be a substantial amount of work, but instills discipline in the programming process and provides any operator with a reference for how the control system is supposed to work.
  • The function of a PLC is to bring the knowledge of the process operator to bear on the control of the process. The programmer should have substantial knowledge of the equipment being controlled, as well as a good understanding of process operation and goals.
The hardware part of the project will likely be the easy part. Developing a good operating program that serves the long term needs of the operation is the real challenge. It can be difficult to find individuals with combinations of good programming skills, writing skills, and technical knowledge of the process and numerous equipment and control elements. A good solution may be to outsource the programming to a firm experienced in PLC applications involving processes and equipment similar to yours.