What are Programmable Logic Controllers?

Posted on
3D Insider is ad supported and earns money from clicks and other ways.

Automation of industrial processes has become the backbone of modern manufacturing. By reducing the need for manual operator input, manufacturing facilities have made their processes more reliable and reduced their manpower expenses. This has resulted in better profitability and more consistent adherence to quality standards.

At the core of any automated process is a programmable logic controller or a PLC. This is the brain that connects every component in a process, doing the job or interpreting inputs and reacting with the corresponding outputs. What exactly is a PLC and how does it work? What are their advantages and disadvantages?

What is a PLC?


A programmable logic controller (PLC) is an industrial solid-state computer which has been adapted for the control of manufacturing processes. To put it briefly, the function of a PLC is to monitor inputs and outputs from the various components of the process, make logic-based decisions based on the data it receives and pre-programmed parameters, and issue commands for components involved in the process. PLCs have become mainstays in many manufacturing processes such as assembly lines.

PLCs are quite versatile in the type of input and output they can receive and transmit. They can be designed for both digital and analog signals and can be made robust enough for use in high-temperature and high-impact industrial settings.

A brief history of PLCs

Before PLCs or any other type of automated controllers, the decision-making and operations in manufacturing processes all had to be done manually. For instance, an operator measuring an equipment’s temperature gauge may observe shooting up of the values beyond the targeted range. They would then have to radio another operator who will shut down the steam supply to the equipment. This reliance on human decision-making made older industrial processes slower and with less continency on their results.

Logic systems predated PLCs by a few decades. These logic systems were the first type of automated controllers for industrial processes. Instead of a programmable computer, early logic systems relied on drum sequences and electrical relay circuits to execute timed or automated process steps.

The problem with early logic systems they lacked flexibility. Not only were they limited in the types of input signals they could receive but making changes to the system often involved rewiring of the whole relay network. Accordingly, the documentation had to be updated regularly to aid in troubleshooting and wire terracing.

The PLC in its earliest form was developed in the 1960s specifically for the automotive industry. It replaced the old relay systems with a digital computer that used a simple programming language and allowed for modular I/O modules. This means that a PLC can be easily expanded with more modules without making complicated hardware changes.

The Allen-Bradley PLC was developed almost in parallel by Odo Josef Struger, who is known today as the “father of the programmable logic controller.” Aside from coining the “PLC” acronym, the Allen-Bradley brand went on to become a major PLC manufacturer and was instrumental in creating PLC programming language standards.

Programming language

programming code

At the core of a PLC is a programming code that the computer uses to determine the appropriate outputs given a set of inputs. As with any program, this code has to be written in some form of programming language with a consistent set of rules, relationships, and input and output parameters.

It’s interesting to know that a programming language used in some of the earliest PLCs – ladder logic – continues to be commonly used until today. Ladder logic is so-called because the relationships between input and output are arranged vertically, similar to the rungs of a ladder. For each rung, a single output can be attributed to one or more inputs. The same input can be found in more than one rung of the ladder.

Next to ladder logic, function block diagrams (FBD) are the next simplest and most commonly used. This language uses blocks to describe the relationship between input and output. A function block diagram is a more intuitive depiction of the algorithms used by a PLC.

Instruction list (IL) is a low-level language that represents sub-algorithms and functions in a simple list. Variables and parameters are integrated into the list and making the transition from one function to another is made possible by jump instructions. Programming via IL is easy but the ambiguity in defining logic relationships makes troubleshooting difficult.

A sequential function chart (SFC) programming language is the middle-ground between a function block diagram and a high-level language. In an SFC program, sub-routines are contained inside function blocks and called as necessary. Sub-routines can be written in other programming languages. An SFC algorithm is a good way to simplify complex control systems, making them more manageable and easier to troubleshoot.

A Structured Text (ST) is a high-level programming language that most closely mimics modern coded programs. It uses typical programming commands like IF/THEN/ELSE statements to define the relationships between variables and to set critical parameters. It is a very versatile programming language, although it may not seem intuitive to the untrained eye.

Old PLCs were typically programmed using proprietary programming terminals. These had dedicated keys associated with the elements and functions of the built-in PLC program. Crude graphical representations of program blocks were also common, usually done in ASCII. As more sophisticated PLCs were developed, this practice started to disappear in favor of panels that can interface with a standard laptop computer.

Components of a PLC

A good way to understand how a PLC works is to look at each of its hardware components and analyze how they contribute to a PLC’s overall functions.



As with any computer, a PLC relies on a central processing unit (CPU) to process run its program, process its inputs, and determine an output. This is typically a 16 or 32-bit microprocessor with integrated circuits for data monitoring, communication, and control logic. It also continuously runs diagnostics on the PLC and its memory to check for logic errors or any signs of damage.


A PLC has both read-only memory (ROM) and random-access memory (RAM). The primary purpose of the ROM is the permanent storage of the PLC’s programming code. Data that only require temporary storage, such as those from input and output devices, are stored in the PLC’s RAM. Data from other internal devices, such as timers and counters, are also stored in RAM.

I/O Modules

A PLC may have multiple input/output (I/O) modules. These provide the ways in which the PLC can communicate to the rest of the machine. For instance, a piece of industrial equipment may have resistance, temperature, or proximity sensors that correspond to distinct I/O modules on a PLC. The CPU of the PLC continuously scans for input data from these sensors and runs them through the programming code to determine the logical output. The command data is then set to the output modules, which could involve the closing of a valve or stoppage of a motor.

One of the biggest advantages of a PLC is that its capabilities can be easily expanded by the addition of more I/O modules. If a process needs data from a new sensor or motor that needs to be added to an existing automated process, a new I/O module can be installed without having to modify the existing modules.

Communication Modules

In some cases, a PLC may need to communicate with external devices to transmit or receive data. These can include the PLCs of other equipment or a simple computer terminal readout for data monitoring and collection. This is the role of the communication module which converts data into the appropriate format and transmits them to the desired address. The selection of ports and communication protocols is essential in ensuring that a communication module can serve its purpose.

HMI (Human-Machine Interface)

The HMI of a PLC allows for real-time user interaction. For older models, this can be a simple text display with a keypad for user input. Nowadays, just about every new PLC will have a full-color touchscreen panel.

An HMI does not provide access to the PLC’s programming code but instead represents the program in a more abstract manner. At the minimum, it should display input and output parameters such as temperature, pressure, mass flow, or current load. These interactive displays are usually mounted directly on the enclosure of the PLC or somewhere nearby.

Power supply

power supply

The PLC’s power supply provides power both to its CPU and the various I/O modules. The power is bussed along the whole backplane so that modules can be added or removed with little difficulty. In most cases, the power supply of a PLC converts AC signals into DC.


The backplane of a PLC is the carrier or rack in which its CPU, memory, and I/O modules are stored. On top of acting as containment for all of its components, the backplane also provides a convenient interface for the connection of I/O modules to external devices. Internally, the backplane is intuitively designed so that the electrical components of the PLC maintain an electrical connection.

The use of a backplane gives PLCs their uniquely compact and modular design. It also helps make them robust enough to withstand the extreme temperatures, pressures, and vibrations often encountered in industrial facilities.

Advantages and disadvantages of PLCs

With so many industries adopting the use of PLCs to automate their processes, it’s clear that it’s an overall beneficial technology. There are still a few compromises that any facility must accept, however, for the sake of convenience.


Easy to expand

The very essence of a PLC is the fact that it allows for convenient expansion via additional I/O modules. Through the use of programming languages that have discrete function blocks and convenient slots of I/O modules, manufacturing facilities can easily add more sensors, motors, and actuators to any system with an existing PLC. By mixing and matching I/O modules, process designers are given more versatility to customize and enhance industrial processes to exactly what they require.

Smaller footprint

PLCs are a highly effective way to reduce the footprint of industrial equipment. By consolidating several I/O modules in a single interface, a facility does not need as much space for multiple controllers. This also simplifies wiring requirements and makes maintenance and troubleshooting easier.

Remote control capability

The use of HMIs along with PLCs provides better supervisory control. Even if the stock HMI of a PLC has to be located proximal to the equipment, transmitting any of its data to a remote monitoring facility is also possible. This provides incredible value for large manufacturing facilities, as they allow for the creation of a control room, or a single room where multiple equipment and controllers can be accessed.

Easier to deploy

The simplicity of PLCs also means that they are far easier to install and deploy than simpler logic systems. A faster project implementation period means that a facility can get up and running quicker, and thus start generating profits sooner.


Proprietary technology

As PLCs have become more sophisticated, they have evolved to counter many of its old disadvantages. This includes the use of open-loop architecture and more circuit flexibility. However, one drawback remains – the use of proprietary technology.

When acquiring a piece of equipment with a built-in PLC, an operator almost always becomes limited in their expansion options. Since PLC technology is proprietary, they will have to get additional I/O modules from the same brand or manufacturer. In some ways, installing a PLC system means that operators become a “captive market” to the brand.

Final thoughts

Nowadays, you would be hard-pressed to find a large-scale manufacturing facility that doesn’t have dozens of PLC systems installed. PLC systems have changed the way that industrial processes are done, allowing for the smooth operations of large equipment with minimal operator intervention. Not only does this mean that a single operator can run several processes at a time, but it also provides better assurance that process and operation parameters will always be followed.

There is a bit of a drawback presented by the proprietary nature of PLC technology. However, most people would agree that the benefits of PLCs far outweigh any limitations.