What
Is A Programmable Logic Controller (PLC)?
What Is A PLC?
A PROGRAMMABLE LOGIC CONTROLLER (PLC) is
an industrial computer control system that continuously monitors
the state of input devices and makes decisions based upon
a custom program to control the state of output devices.
Almost any production line, machine function, or process
can be greatly enhanced using this type of control system.
However, the biggest benefit in using a PLC is the ability
to change and replicate the operation or process while collecting
and communicating vital information.
Another advantage of a PLC system is that it is modular.
That is, you can mix and match the types of Input and Output
devices to best suit your application.
History of PLCs
The first Programmable Logic Controllers were designed and
developed by Modicon as a relay re-placer for GM and Landis.
- These controllers eliminated the need for rewiring and
adding additional hardware for each new configuration of
logic.
- The new system drastically increased the functionality
of the controls while reducing the cabinet space that housed
the logic.
- The first PLC, model 084, was invented by Dick Morley
in 1969
- The first commercial successful PLC, the 184, was introduced
in 1973 and was designed by Michael Greenberg.
What Is Inside A PLC?

The Central Processing Unit, the CPU, contains an internal
program that tells the PLC how to perform the following functions:
- Execute the Control Instructions contained in the User's
Programs. This program is stored in "nonvolatile"
memory, meaning that the program will not be lost if power
is removed
- Communicate with other devices, which can include I/O
Devices, Programming Devices, Networks, and even other PLCs.
- Perform Housekeeping activities such as Communications,
Internal Diagnostics, etc.
How Does A PLC Operate?
There are four basic steps in the operation of all PLCs;
Input Scan, Program Scan, Output Scan, and Housekeeping. These
steps continually take place in a repeating loop.
Four
Steps In The PLC Operations
| 1.) Input Scan |
- Detects the state of all input devices that
are connected to the PLC
|
| 2.) Program Scan |
- Executes the user created program logic
|
| 3.) Output Scan |
- Energizes or de-energize all output devices
that are connected to the PLC.
|
| 4.) Housekeeping |
- This step includes communications with programming
terminals,
internal diagnostics, etc...
|
|
| These
steps are continually
processed in a loop. |
|
What Programming Language Is Used To Program A PLC?
While Ladder Logic is the most commonly used PLC programming
language, it is not the only one. The following table lists
of some of languages that are used to program a PLC.
Ladder Diagram (LD) Traditional ladder logic is graphical
programming language. Initially programmed with simple
contacts that simulated the opening and closing of relays,
Ladder Logic programming has been expanded to include
such functions as counters, timers, shift registers,
and math operations.
|
Function Block Diagram (FBD) - A graphical language
for depicting signal and data flows through re-usable
function blocks. FBD is very useful for expressing the
interconnection of control system algorithms and logic.
|
Structured Text (ST) – A high level text language
that encourages structured programming. It has a language
structure (syntax) that strongly resembles PASCAL and
supports a wide range of standard functions and operators.
For example;
If Speed1 > 100.0 then
Flow_Rate: = 50.0 + Offset_A1;
Else Flow_Rate: = 100.0;
Steam: = ON
End_If; |
|
Instruction List (IL): A low level “assembler
like” language that is based on similar instructions
list languages found in a wide range of today’s
PLCs.
| LD
MPC
LD
ST
RESET:
ST |
|
R1
RESET
PRESS_1
MAX_PRESS
LD 0
A_X43 |
|
Sequential Function Chart (SFC) A method of programming
complex control systems at a more highly structured
level. A SFC program is an overview of the control system,
in which the basic building blocks are entire program
files. Each program file is created using one of the
other types of programming languages. The SFC approach
coordinates large, complicated programming tasks into
smaller, more manageable tasks.

|
What Are Input/Output Devices?
continued
»
|