Programming for the Future

Think about the people that will have to work on your project someday down the road. You can make their job easier, and one of those people may be you.


Have you ever gone online with a PLC and realized it contained no structure, the I/O was all over the place, and there were no comments in the logic? Fortunately, all projects are not retrofits or adding code to an existing PLC program. Sometimes you get to start from scratch. There are some good practices to follow when launching a new project that will help simplify a complicated program and make it easier to follow should someone else need to edit the code in the future.


There is a difference between a program that merely works and one that is well thought out and elegantly executed. The beginning of a well structured program is not just adding contacts to ladder rungs. Just because a PLC program can control a process or equipment when the process is running well does not mean it is a well-written program. A well-written program gathers and incorporates information about the process and handles the process when it is not functioning as expected. This is what separates it from just a piece of code.


Review and study the documentation provided about the process and pay attention to every detail. Thoroughly review the P&ID drawings, specifications, and any information provided about the system. Talk with maintenance and operations personnel to provide you with information to control the process from an operations perspective. This will allow you to provide a system that will function well and will contain items that you may not have thought of yourself.


Program code should be grouped in logical routines based on equipment by area. Each rung should contain a comment that provides enough information to clarify each section of the program. There is no such thing as too much documentation when you are having an issue and are trying to resolve problems quickly within the process. Grouping the program code by area and providing extensive documentation will provide more efficient troubleshooting, which will result in less downtime for the process. The primary goal of process control is to provide a robust system that will handle interruptions, but if an unforeseen problem should arise, code that is grouped in a logical order and is well documented can be interpreted easily by the customer.


Another good practice is to separate safety and interlocking logic from the process logic. This logic should still be organized by area similar to process logic, but provides a quick reference for safety and interlocking process control logic.


One key to saving time when developing a program is to familiarize yourself with the software you will be using. The software product you will be programming with may already contain instructions that will save you time just by have a good knowledge of the programming software and the instruction set that it contains.


This post was written by Stephen Carson. Stephen is a project engineer at MAVERICK Technologies, a leading system integrator providing industrial automation, operational support and control systems engineering services in the manufacturing and process industries. MAVERICK delivers expertise and consulting in a wide variety of areas including industrial automation controls, distributed control systems, manufacturing execution systems, operational strategy, and business process optimization. The company provides a full range of automation and controls services – ranging from PID controller tuning and HMI programming to serving as a main automation contractor. Additionally MAVERICK offers industrial and technical staffing services, placing on-site automation, instrumentation and controls engineers. 

No comments
The Engineers' Choice Awards highlight some of the best new control, instrumentation and automation products as chosen by...
The System Integrator Giants program lists the top 100 system integrators among companies listed in CFE Media's Global System Integrator Database.
The Engineering Leaders Under 40 program identifies and gives recognition to young engineers who...
This eGuide illustrates solutions, applications and benefits of machine vision systems.
Learn how to increase device reliability in harsh environments and decrease unplanned system downtime.
This eGuide contains a series of articles and videos that considers theoretical and practical; immediate needs and a look into the future.
Choosing controllers: PLCs, PACs, IPCs, DCS? What's best for your application?; Wireless trends; Design, integration; Manufacturing Day; Product Exclusive
Variable speed drives: Smooth, efficient, electrically quite motion control; Process control upgrades; Mobile intelligence; Product finalists: Vote now; Product Exclusives
Machine design tips: Pneumatic or electric; Software upgrades; Ethernet advantages; Additive manufacturing; Engineering Leaders; Product exclusives: PLC, HMI, IO
This article collection contains the 5 most referenced articles on improving the use of PID.
Learn how Industry 4.0 adds supply chain efficiency, optimizes pricing, improves quality, and more.

Find and connect with the most suitable service provider for your unique application. Start searching the Global System Integrator Database Now!

Cyber security cost-efficient for industrial control systems; Extracting full value from operational data; Managing cyber security risks
Drilling for Big Data: Managing the flow of information; Big data drilldown series: Challenge and opportunity; OT to IT: Creating a circle of improvement; Industry loses best workers, again
Pipeline vulnerabilities? Securing hydrocarbon transit; Predictive analytics hit the mainstream; Dirty pipelines decrease flow, production—pig your line; Ensuring pipeline physical and cyber security