What is a PLC and What is it Used For?

Everything you need to know about PLCs including what a PLC is, what a PLC is used for, and how a PLC is programmed.

A PLC, or Programmable Logic Controller, is a specialized industrial computer that is used to control automated processes and equipment.

Since controls engineers, PLC programmers, and maintenance technician spend so much time working with PLCs, its important that anyone who wants to work in these fields knows;

  • What a PLC is,
  • What components make up a PLC,
  • How to program a PLC, and
  • What PLCs are used for

These are the exact topics that we will cover in this post. Let’s dive in.

What is a PLC?

PLC is a common acronym for a Programmable Logic Controller. These devices are specialized computers that are designed specifically for industrial automation to control automated processes and equipment. Essentially, a PLC is the brain of an automation system.

In almost all applications, a PLC collects information about the condition of a process from input devices like sensors and pushbuttons, executes logic based on changes in the state of these input devices, and finally, actuates output devices like motors and lights based on the rules defined in its program.

A PLC is preferred to a traditional computer for several reasons.

First, PLCs can easily monitor and control field devices. It is very easy to connect a sensor, like a photoelectric cell, or an actuator, like a signal light, to a PLC. It is much harder to integrate these devices with a standard computer.

Second, PLCs are much more durable and rugged than traditional computers. A PLC is a solid-state device that is designed for harsh environments. Since it is a solid-state device, there are no moving parts in a PLC to wear out. Once installed, PLCs can easily run without stopping for ten, fifteen, or even twenty years. We have all experienced our machines freezing often enough to know that you can’t get this type of performance out of a traditional computer.

Finally, PLCs are easy to program. We’ll talk about programming languages for PLCs later on in this course but I will say that it is much easier for someone without a software engineering qualification to write a PLC program than it is to write an application that runs on a windows machine. PLCs are becoming more sophisticated, but it is still much easier to program a PLC than a traditional computer.

What’s the Difference Between a PLC, a PAC, Processor, and a Controller?

If you have talked to anyone about industrial automation, you may have heard many different terms for the device that controls the automation process.

The most common terms are;

  • PLC, which stands for Programmable Logic Controller,
  • PAC, which stands for Programmable Automation Controller,
  • Controller,
  • Processor, and
  • CPU

These terms are used interchangeably and they all refer to the same thing — the industrial computer that controls a process. So regardless of whether someone is talking about a PLC, PAC, controller, processor, or CPU, they are always referring to the device that controls the automation process.

What Components Make Up a PLC?

Now that we understand what a PLC is, let’s look at some of the components that make up a PLC. Regardless of the type of PLC, all PLCs are made up of the same essential components that allow them to work.


PLC Processor

All PLCs have a processor. This is the device that is responsible for executing the project that has been downloaded to the PLC. Just like the PLC is the brain of an automation system, the processor is the brain of the PLC.

As well as having the CPU that actually executes the project, the processor contains some non-volatile memory that stores the project and a programming interface that lets a user connect to the processor and download a project.

Inputs and Outputs

PLC Input and Output Modules

A PLC reads information about the process it controls through input devices like pushbuttons and sensors. These input devices are connected to an input module on the PLC. The input module takes electrical signals from the input devices and converts them to digital signals that the processor understands.

The PLC influences the process by controlling actuators like motors, lights, and horns. These actuators are connected to an output module which has the opposite function as an input module — the output module converts digital signals sent from the processor to electrical signals that drive the actuators.

Communication Module

PLC Communication Modules

For a PLC to be integrated into a system, it needs to communicate on an industrial network.

A communication module enables communications between the PLC and other devices via an industrial network like Profinet or Ethernet/IP. In many cases, the communication module on the PLC would be an RJ45 jack or a similar port that allows the PLC to communicate on an Ethernet-based industrial network.

Power Supply

PLC Power Supply

Finally, all of the elements that make up the PLC need power. Typically, a PLC and many control devices run on 24V DC power while the power supply to the system is between 120 and 400 V AC.

To convert the incoming power to an appropriate level for powering the PLC, a power supply is used.

Embedded and Modular Components

Depending on the PLC system, these components can be an integrated part of the PLC or can be modular components.

In larger PLC systems, each component has its own housing. Different components can be combined to create a PLC system that meets the requirements of a specific application. When modular components are used, a special housing called a chassis is used to connect all of the components together.

In smaller PLC systems, these components are integrated into one housing. That means that the PLC is one piece of hardware that includes a processor, I/O, communications module, and power supply.

Controller Example with Embedded Components

Compact PLC

Above, you can see an example of a very small PLC made by Rockwell Automation. This is an example of a PLC which has embedded components.

The input module is located at the top of the housing and the output module is located at the bottom.

The processor and communication module, in the form of an Ethernet port, are located in the main section of the body at the left of the housing.

Small PLCs like this are designed to control small, standalone machines or very simple processes.

Controller Example with Modular Components

Modular PLC

PLCs that control large automation systems like full factories or production lines are typically modular. In a modular system, every component is a separate physical device.

Each component is connected to the PLC by plugging it into a chassis or backplane that creates an electrical connection between the module and the PLC.

The picture above shows a ControlLogix PLC which is a modular PLC system. In the picture, you see a power supply that supplies power to all the modules as well as the actual PLC (controller), communications module, and input and output modules.

The advantage of modular PLCs is that the PLC can be customized to meet an application’s requirements exactly.

Why Are There so Many Different Controllers?

At this stage, you may be asking yourself why there are so many different controllers — why does Rockwell Automation make a Micro series of controllers and a ControlLogix series of controllers?

First I want to point out that Rockwell Automation doesn’t only make these two series of PLCs. They also have a series of PLCs called CompactLogix, which is a mid-range PLC that fits in between the Micro and the ControlLogix series.

Then within each family of PLC, there are several different types of PLCs available. So when you want to order a ControlLogix PLC, you have to choose what type of ControlLogix PLC you would like.

And Rockwell Automation is not the only manufacturer that makes such a wide variety of PLCs. Siemens, another popular manufacturer of PLCs and automation technology, also have three series of PLCs called LOGO! PLCs, S7–1200 PLCs, and S7–1500 PLCs. Within these families, there are also many types of PLC to choose from.

Manufacturers make so many different types of PLC because there are so many different automated processes to control and all of these different processes require different performance levels. For example, you need much less processing power and I/O points to control a single conveyor than you do to control a fully automated warehouse.

Equally, you need a faster processor to manage a motion control application and you need redundant components to monitor a safety system.

By making so many different types of PLCs with different performance levels and features, manufacturers enable you, the end user, to choose the right hardware for your application. It can be confusing to find the right PLC for a job in the beginning but manufacturers also provide powerful selection tools to help you make the right choice for every application.

What Type of Processes Does a PLC Control?

In the previous section, I hinted that PLCs can be used to control many different types of automated processes. The four most important automation control disciplines are discrete control, process control, motion control, and safety.

In the past, controllers were specialized and could only perform on type of control. Automation systems were made up of PLCs, process controllers, motion controllers, and safety controllers.

As technology improved, PLCs became capable of multi-discipline control. This means that one modern PLC may be capable of performing discrete, process, motion, and safety control.

This has huge benefits for end users of automation products because they no longer need to buy multiple controllers and they only have to train their engineers on one control platform to develop solutions for all of their applications.

The topics of safety and motion control are advanced topics and won’t be discussed in this post (but keep your eyes out for a future one!). On the other hand, knowing the difference between discrete and process control is important and is relevant to your day-to-day work as a PLC programmer or controls engineer.

Discrete Control

RNA Automation

In discrete control, actuators like motors and valves are turned on and off to create individual widgets. Discrete industries include assembly where products are assembled, packaging where products are packaged, and logistics where packaged products are transported.

An easy way to determine if you are talking about a discrete process is to check if you can count the end product. For example, if you can say “we have manufactured 500 cars” then you are talking about discrete control in a discrete industry.

Process Control

FlySquare Solution

With process control, setpoints are adjusted to keep a process stable. The actual state of a process is fed into a control algorithm that adjusts the setpoints to keep the process stable.

For example, in a brewery, you may need to control the temperature of a liquid in a tank. In this application, the PLC would adjust the setpoint of a heater and monitor the temperature until the liquid was at the right temperature. Once the liquid was at the right temperature, the control algorithm would continue to adjust the setpoint of the heater to keep the temperature stable.

An easy way to determine if you are talking about process control is to check if you measure the end product. For example, if you can say “we produced 10,000 liters of beer” then you are talking about process control in a process industry.

Why is There a Distinction?

Historically, automation manufacturers focused on either discrete or process control.

For this reason, discrete and process industries had completely different suppliers for automation products. These vendors developed different system architectures and technologies for their industries.

Today, automation manufacturers develop PLCs that are “multi-discipline”, which means that they can be used for process, discrete, safety, and motion control.

Even though PLCs are multi-discipline, many engineers are not. It is common for engineers to specialize in one or two disciplines and for companies to hire engineers because of their specialty in a discipline.

An interesting point to note is that many process industries, like breweries, also have discrete control applications. For example, if you brew beer, you are controlling a process application but when you bottle that beer and pack those bottles, you are controlling a discrete application. These companies, which have a mix of process and discrete control, benefit the most from multi-disciplinary controllers and engineers.

Programming a PLC

So far, we have talked about what a PLC is, what elements make up a PLC, and the types of processes that a PLC can control. Now that we understand the hardware, let’s talk about PLC software.

A PLC does not know how to control a process. It is the responsibility of the controls engineer to program a PLC and tell it exactly how to control a process. The controls engineer defines what inputs to monitor, how to react to a change in inputs, and what outputs to actuate to control the process.

Let’s look at a simple process to learn the basics of PLC programming.

A Simple Process

Let’s imagine that we have a simple conveyor that transports pallets from one side of a warehouse to another.

The conveyor runs when an operator presses the Start button.

The conveyor stops running when an operator presses the Stop button or a pallet is detected at the end of the conveyor by a sensor.

Near the pushbuttons for the conveyor, there are two indicator lights. A green indicator light shows when the conveyor is running and a red indicator light shows when a conveyor is stopped.

How would we write a PLC program to control this process based on these requirements?

Ladder Diagram

In general, the PLC program to control a process is written in a proprietary development environment created by the PLC manufacturer.

In this development environment, you can specify the inputs to monitor, the outputs to control, and the logic to execute.

As a controls engineer, you will write your logic in a high-level programming language. When you download the program to the PLC, your logic is compiled into efficient, binary machine code that the PLC can understand and execute.

One of the most common programming languages for PLCs is Ladder Diagram, a high-level, visual programming language that resembles electrical schematics. In the picture below, you can see what the logic for controlling the conveyor process would look like.

Can you understand the logic in this program?

I won’t go into detail about how this logic works since this is an introduction to PLCs and not a programming course. If you are interested in learning how to write logic like this for PLCs, check out my course PLC Programming with Studio 5000 Logix Designer, where I explain step-by-step in an easy to understand way how to write logic like this in Studio 5000 Logix Designer.

Other Programming Languages

Ladder Diagram is one of the most popular PLC programming languages, but it is not the only one available to write PLC programs with. Other popular PLC programming languages include Function Block Diagram, another high-level, visual language that is popular in the process industry, and Structured Text, a text-based programming language that is useful for doing mathematical operations.

Here is how the same conveyor control logic looks in the Function Block Diagram programming language.

And here is the same conveyor control logic in written in Structured Text.

Note that the names of these languages may vary depending on what PLC platform you are working on and who manufactured it, but the languages are all recognizable regardless of the manufacturer.

Most PLCs support multiple programming languages and allow you to write different parts of the program in different languages. This means that you can mix and match programming languages to make your programming as easy as possible for the task at hand. For example, it is common to see high-level logic written in Ladder Diagram and heavy computation written in Structured Text, all within one project.

Wrap Up

In this post, we learned about PLCs. Specifically, we learned what a PLC is, what components make up a PLC, and how the format of these components changes depending on whether we are talking about large or small PLCs.

After learning about PLCs, we learned about the automation disciplines that PLCs are involved with and the different types of processes that a PLC can control.

Finally, we saw a preview of some of the programming languages that can be used to create PLC programs.

By now, you should have a good high-level overview of PLCs and what they can do. From here, you can start learning how to program PLCs by following one of my courses such as PLC Programming with Studio 5000 Logix Designer 1, where you can learn how to write your first Ladder Diagram routine in Studio 5000 Logix Designer.

Learn How to Program Logix 5000 PLCs

Learn how to write and test your first PLC program using Studio 5000 Logix Designer for $25.

Learn More

PLC Bootcamp

Learn how to write, test, and simulate your first PLC program for free.

Enroll for Free

Sign up to my mailing list to get notified about new content and courses

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.

Related Courses

All Courses