What is a PLC?
PLC stands for “Programmable Logic Controller”. A PLC is a computer specially designed to operate reliably under harsh industrial environments – such as extreme temperatures, wet, dry, and/or dusty conditions. PLCs are used to automate industrial processes such as a manufacturing plant’s assembly line, an ore processing plant, or a wastewater treatment plant.
PLCs share many features of the personal computer you have at home. They both have a power supply, a CPU (Central Processing Unit), inputs and outputs (I/O), memory, and operating software (although it’s a different operating software).
The biggest differences are that a PLC can perform discrete and continuous functions that a PC cannot do, and a PLC is much better suited to rough industrial environments. A PLC can be thought of as a ‘ruggedized’ digital computer that manages the electromechanical processes of an industrial environment.
PLCs play a crucial role in the field of automation, using forming part of a larger SCADA system. A PLC can be programmed according to the operational requirement of the process. In the manufacturing industry, there will be a need for reprogramming due to the change in the nature of production. To overcome this difficulty, PLC-based control systems were introduced. We’ll first discuss PLC basics before looking at various applications of PLCs.
PLCs were invented by Dick Morley in 1964. Since then PLC has revolutionized the industrial and manufacturing sectors. There is a wide range of PLC functions like timing, counting, calculating, comparing, and processing various analog signals.
The main advantage of PLC over a “hard-wired” control system is that you can go back and change a PLC after you’ve programmed it, at little cost (just the cost of the programmer’s time). In a hard-wired control system, you’re essentially having to rip out wires and start from scratch (which is more expensive and takes longer). Let’s look at an example to better understand this advantage.
Imagine you have a light connected to a switch. In general, the light operates under two conditions – ON and OFF. Now you are given a task that when you turn ON the switch, the light should glow only after 30 seconds. With this hard-wired setup – we’re stuck. The only way to achieve this is to completely rewire our circuit to add a timing relay. That’s a lot of hassle for a minor change.
This is where a programmable logic controller comes into the picture, which doesn’t require any additional wiring and hardware to make sure of a change. Rather it requires a simple change in code, programming the PLC to only turn on the light 30 seconds after the switch is turned ON. So, by using a PLC, it is easy to incorporate multiple inputs and outputs.
This is just a simple example – a PLC has the ability to control much larger and more complex processes. A PLC can be customized depending on the application and needs of the user.
How Does a PLC work?
The working of a programmable logic controller can be easily understood as a cyclic scanning method known as the scan cycle.
A PLC Scan Process includes the following steps
- The operating system starts cycling and monitoring of time.
- The CPU starts reading the data from the input module and checks the status of all the inputs.
- The CPU starts executing the user or application program written in relay-ladder logic or any other PLC-programming language.
- Next, the CPU performs all the internal diagnosis and communication tasks.
- According to the program results, it writes the data into the output module so that all outputs are updated.
- This process continues as long as the PLC is in run mode.
Physical Structure of PLC
The structure of a PLC is almost similar to a computer’s architecture.
Programmable Logic Controllers continuously monitors the input values from various input sensing devices (e.g. accelerometer, weight scale, hardwired signals, etc.) and produces corresponding output depending on the nature of production and industry. A typical block diagram of PLC consists of five parts namely:
- Rack or chassis
- Power Supply Module
- Central Processing Unit (CPU)
- Input & Output Module
- Communication Interface Module
Rack or Chassis
In all PLC systems, the PLC rack or chassis forms the most important module and acts as a backbone to the system. PLCs are available in different shapes and sizes. When more complex control systems are involved, it requires larger PLC racks.
Small-sized PLC is equipped with a fixed I/O pin configuration. So, they have gone for modular type rack PLC, which accepts different types of I/O modules with sliding and fit in concept. All I/O modules will be residing inside this rack/chassis.
Power Supply Module
This module is used to provide the required power to the whole PLC system. It converts the available AC power to DC power which is required by the CPU and I/O module. PLC generally works on a 24V DC supply. Few PLC uses an isolated power supply.
CPU Module and Memory
CPU module has a central processor, ROM & RAM memory. ROM memory includes an operating system, drivers, and application programs. RAM memory is used to store programs and data. CPU is the brain of PLC with an octal or hexagonal microprocessor.
Being a microprocessor-based CPU, it replaces timers, relays, and counters. Two types of processors as a single bit or word processor can be incorporated with a PLC. One bit processor is used to perform logic functions. Whereas word processors are used for processing text, numerical data, controlling, and recording data.
CPU reads the input data from sensors, processes it, and finally sends the command to controlling devices. DC power source, as mentioned in the previous discussion is required voltage signals. CPU also contains other electrical parts to connect cables used by other units.
Input and Output Module
Have you ever thought about how to sense physical parameters like temperature, pressure, flow, etc? using PLC? Of course, PLC has an exclusive module for interfacing inputs and output, which is called an input & output module.
Input devices can be either start and stop pushbuttons, switches, etc and output devices can be an electric heater, valves, relays, etc. I/O module helps to interface input and output devices with a microprocessor. The input module of PLC is explained in the below figure.
The input module of PLC does four main functions.
- Input module interface receives the signal from process devices at 220 V AC
- Converts the input signal to 5 V DC that can be used by PLC
- Isolator block is used to isolate/prevent PLC from undergoing fluctuation
- After which the signal is sent to the output end i.e the PLC
There are two main sections in the input module namely the power section and the logical section. Both sections are electrically isolated from each other. Initially push button is closed. So, 220 V AC supply is given to the bridge circuit through the resistors R1 and R2.
The bridge rectifier is used to convert the AC signal into DC and Zener diode is used to provide low voltage supply to LED. When the light from LED falls on the phototransistor, it works in the conduction region. Finally, a 5V DC supply is given to the processor.
The output module of PLC works similarly to the input module but in the reverse process. It interfaces the output load and processor. So here the first section would be logic session and the power section comes next. The working of the output module is shown in the below figure
So, here when the program logic high signal is generated from the processor, LED will turn ON and allow the light to fall on a phototransistor. When the transistor goes to the conduction region, it generates a pulse to the gate of the Triac. The isolator block is used to isolate the logic section and control section.
Communication Interface Module
To transfer information between CPU and communication networks, intelligent I/O modules are used. These communication modules help to connect with other PLCs and computers which are placed at a remote location.
Types of PLCs
The two main types of PLC are fixed / compact PLC and modular PLC.
Within a single case, there would be many modules. It has a fixed number of I/O modules and external I/O cards. So, it does not have the capability to expand the modules. Every input and output would be decided by the manufacturer.
This type of PLC permits multiple expansion through “modules”, hence referred to as Modular PLC. I/O components can be increased. It is easier to use because each component is independent of each other.
PLC are divided into three types based on output namely Relay output, Transistor output, and Triac Output PLC. The relay output type is best suited for both AC and DC output devices. Transistor output type PLC uses switching operations and used inside microprocessors.
According to the physical size, a PLC is divided into Mini, Micro, and Nano PLC.
Some of the manufacturers of PLCs include:
PLCs have a variety of applications and uses, including:
- Process Automation Plants (e.g. mining, oil &gas)
- Glass Industry
- Paper Industry
- Cement Manufacturing
- In boilers – Thermal Power Plants
When using a PLC, it’s important to design and implement concepts depending on your particular use case. To do this we first need to know more about the specifics of PLC programming.
A PLC program consists of a set of instructions either in textual or graphical form, which represents the logic that governs the process the PLC is controlling. There are two main classifications of PLC programming languages, which are further divided into many sub-classified types.
- Textual Language
- Instruction list
- Structured text
- Graphical Form
- Ladder Diagrams (LD) (i.e. Ladder Logic)
- Function Block Diagram (FBD)
- Sequential Function Chart (SFC)
Although all of these PLC programming languages can be used to program a PLC, graphical languages (like ladder logic) are typically preferred to textual languages (like structured text programming).
Ladder logic is the simplest form of PLC programming. It is also known as “relay logic”. The relay contacts used in relay controlled systems are represented using ladder logic.
The below figure shows a simple example of a ladder diagram.
In the above-mentioned example, two pushbuttons are used to control the same lamp load. When any one of the switches is closed, the lamp will glow. The two horizontal lines are called rungs and two vertical lines are called rails. Every rung forms the electrical connectivity between Positive rail (P) and Negative rail (N). This allows the current to flow between input and output devices.
Functional Block Diagrams
Functional Block Diagram (FBD) is a simple and graphical method to program multiple functions in PLC. PLCOpen has described using FBD in the standard IEC 61131-3. A function block is a program instruction unit that, when executed, yields one or more output values.
It is represented by a block as shown below. It is represented as a rectangular block with inputs entering on left and output lines leaving at the right. It gives a relation between the state of input and output
The advantage of using FBD is that any number of inputs and outputs can be used on the functional block. When using multiple input and output, you can connect the output of one function block to the input of another. Whereby building a Function Block Diagram.
The figure below shows various function blocks used in FBD programming.
The figure below shows a ladder diagram and its function block equivalent in Siemens notation.
Structured Text Programming
Structured text is a textual programming language that utilizes statements to determine what to execute. It follows more conventional programming protocols but it is not case sensitive. A series of statements (logic) is constituted of expressing assignments and relationships using several operators. The structures text operators are listed below in the image.
PLC Programming Examples
A signal lamp is required to be switched on if a pump is running and the pressure is satisfactory, or if the lamp test switch is closed. In this application, if there should be an output from the lamp inputs from both pump and pressure sensors are required. Hence, AND logic gates are used.
OR logic is used for the test input condition, it is required to give an output of lamp on regardless of whether there is a signal from the AND system. By using END or RET instruction in the ladder diagram, we can tell PLC has reached the end of the program. The function block diagram and the ladder diagram are shown below in the figure.
As another example, consider a valve that is to be operated to lift a load when a pump is running and either the lift switch is operated or a switch operated indicating that the load has not already been lifted and is at the bottom of its lift channel.
OR logic is used for two switches and an AND logic is used with two switches and the pump. Valve will be operated only if the pump is ON and two switches are operated.
Consider a drinks machine that allows the selection of tea or coffee, milk or no milk, sugar or no sugar, and will supply the required hot drink on the insertion of a coin. From the below-shown figure, it is seen that either tea or coffee is selected using the first OR logic gate.
The first AND gate give an output when either Tea or coffee is selected and a coin is inserted into the machine. The output from this AND gate is given to the second AND gate. The second AND gate operate only when hot water combines with tea. Milk and sugar are optional additions that can occur after a coin has been inserted.
History of PLCs
Many early PLCs were not capable of graphical representation of the logic, and so it was instead represented as a series of logical expressions in a Boolean format (akin to Boolean algebra).
As programming terminals evolved, it became more common for ladder logic to be used, because it was a familiar format used for electro-mechanical control panels. More modern formats, such as state logic and Function Block diagrams exist, but they are still not as popular as ladder logic.
A possible reason for this is that programmers prefer the more visual appeal of ladder logic over structured text programming.
Until approximately the mid-1990s, PLCs were programmed using proprietary programming panels or special-purpose programming terminals, which often had dedicated function keys representing the various logical elements of PLC programs.
Some proprietary programming terminals displayed the elements of PLC programs as graphic symbols, but plain ASCII code representations of contacts, coils, and wires were common.