Almost overnight, the 1990’s saw traditional relay logic systems become relics of the past. In their place, Programmable Logic Controllers (PLCs) rose to near universal adoption across modern industrial plants. While the use of PLCs may have become ubiquitous, the specifics of the technology differed greatly between manufacturers. 30 years later, the divisions between PLC manufacturers is more apparent than ever, as industrial protocols like Ethernet IP, Profinet, Ethercat, CC-Link, etc. are completely incompatible with each other. This has led to a splintering in the industry between various families of products centered around these proprietary PLC protocols, hampering innovation and inhibiting natural competition. However, we take for granted the healthy and prospering market for PLC programming talent. Why are the controls engineers that run PLCs and keep every industrial plant in the world running able to freely transfer their skills from say, a Rockwell Micrologix 1400 to a Siemens S7-1200? It is all thanks to one manufacturing standard.
The unceremoniously named IEC 61131-3 at first glance appears to be just another obscure manufacturing standard. In many ways it was when it was first written in 1993 by the International Electrotechnical Commission in London. IEC 61131 is the standard for programmable logic controllers (PLCs) and part 3 is simply titled “Programming Languages”. Despite its modest name, this is the strongest and most enduring standard of what would become a multi-billion dollar industry.
IEC 61131-3 describes the 5 types of programming languages that are used by all major PLC manufacturers, 3 graphical languages and 2 text based languages.
The three graphical languages are:
- Ladder Diagram (LD)
- Function Diagram (FD)
- Sequential Function Chart (SFC)
The two text based languages are:
- Structured Text (ST)
- Instruction List (IL)
Understanding these 5 languages is not only helpful for controls engineers, but also for the maintenance workers, component suppliers, distributors, machine builders, and anyone else who needs to communicate with controls engineers for their business.
The 3 Graphical Languages
Ladder Diagram, frequently called “Ladder Logic” was made to resemble the old electrical diagrams of traditional relay logic systems. Therefore, it received widespread immediate adoption and combined with its less daunting graphical, nature has remained popular. It is very well suited for less complex situations that would be solved by relays. Simple applications that receive an input and then send an output. For example, a water bottle on a conveyor passes by an optical sensor, this input is sent to the PLC, which sends an output to a dispenser to fill it with water. This is a great application for Ladder Diagrams. When applications get more complex, as they increasingly are in the age of advanced controls and SCADA systems, Ladder Diagrams are sometimes insufficient. Here is an example of some Ladder Logic:
Function Block Diagram:
Probably the second most popular, Function Block shares the user-friendly graphical interface of Ladder Logic, but geared towards controls engineers who aren’t coming from the world of relay circuits, an increasingly large cohort. Inputs and Outputs are described as small blocks that are wired together in a more intuitive way than Ladder Logic, with the individual blocks sometimes offering increased functionality over their ladder counterparts. However, much like Ladder Diagrams, Function Blocks suffer with complexity when high number of inputs and outputs are used. Here is a typical Function Block Diagram: