Nothing Special   »   [go: up one dir, main page]

Programmable Controllers

Download as pdf or txt
Download as pdf or txt
You are on page 1of 35

10

Programmable Controllers
10.1 INTRODUCTION
A Programmable Controller (PC) is a device which performs discrete or continuous logic in
process plant or factory environment. It was developed originally to replace the relays andthus
early devices were capable of only sequential ON/OFF control. These were called
Programmable Logic Controller (PLC) aname which is still popular.
Programmable Controller (PC) or Programmable Logic Controller (PLC) was first
developed for General Motors Corporation in 1968 to eliminate costly scrapping of assembly-
line relays during model changeovers. By 1971, programmable controllers were being used in
applications outside automotive industry.
Early programmable controllers were conceived asjust replacement for the relays. As they
were capable of ON/OFF control only, their application was limited to machine and processes
that required interlocking and sequencing application, such as transfer line and grinding and
boring machines. Major benefits provided by these early machines were: (a) their role as
diagnostic indicators to aid trouble shooting; (b) saving of installation space; (c) easily
installable and reusable if projects were scrapped.
PLC's offered the following advantages in comparison to electromechanical relays.
Economy
Small physical size
Suitable modular design
High reliability
Ease of programming
Rugged construction
Ability to communicate with computer
Innovations of microprocessor technology in early 1970' s helped in adding greater
flexibility and intelligence to the programmable controllers. Capabilities such as intelligent
416
P rogrammable Controllers 417
operator interface, arithmetic data manipulations and computer communications added new
dimensions to programmable controller applications. Late 1970' s saw addition of greater
flexibility to programmable controller through hardware and software enhancements. Hardware
enhancements included larger memory capacity, larger number of inputs/outputs handling,
analog input/output and high speed data communication between programmable controllers.
Through early 1980's and till today, there has been continuous upgradation of programmable
controller technology. This technological upgradation reflects remarkable achievements in
applications of microprocessor technology. Some of the major improvements are faster scan
time, intelligent I/O (e.g., high speed counting and positioning), supervisory control capability,
system documentation, local communication network, functional block instruction, ASCII
message handling, providing production report and diagnosing its own failures and those of the
machine or process.
10.2 PRINCIPLESOF OPERATION
The National Electrical Manufacturers Association (NEMA), USA, defines programmable
controller as adigital electronic apparatus with aprogrammable memory for storing instructions
to implement specific functions, such as logic, sequencing, timing, counting and arithmetic, to
control machines and processes.
We shall now describe the basic building blocks of programmable controllers. We shall
deal with the subject in the manner it developed so that we may understand the significance of
building blocks of system.
Ladder diagrams are specialised schematics commonly used to document industrial control
logic systems. They are called ladder diagrams because they resemble a ladder, with two
vertical rails (supply power) and as many "rungs" (horizontal lines) as there are control circuits
to represent. If we wanted to draw asimple ladder diagram showing alamp that is controlled by
ahand switch, it would look like this:
u ~
~; _~Ch ~o : J
-,
T'
The L] and L2 designations refer to the two poles of aVAC supply, unless otherwise noted.
L] is the "hot" conductor, and ~ is the grounded ("neutral") conductor.
In the early days logic control functions, i.e. timing, sequencing and control functions were
provided through hardwired logic. Later programmable controllers have replaced these
functions using relay logic based on three logic functions AND, OR and NOT. The combination
of these functions determined whether adevice must be switched on or off. The programmable
controllers of early days used ladder diagram (also known as contact symbology) to programme
these functions. A rung is the relay logic or contact symbology required to control an output.
Figure 10.1 shows a typical ladder diagram rung in which X l> X
2
, X 3 and X
4
are input devices
with normally open contacts and Y\ is output device like control relay, pilot light, and so on.
418 Computer-Based Industrial Control
The ladder rung means that in order to switch on Y\> either X l and X 2 or X 3 and X 4 must be
switched on.
Figure 10.1 A ladder rung.
Following are common input and output devices used in a ladde rung.
Input devices Output devices
Push button Control relay
Selector switch Solenoid valve
Proximity switch Pilot light
Limit switch Horn
Timer contacts Timer
Symbols used in ladder diagram rung have specific functions. By and large they donot
represent the input-output device specification but do convey the specific switching function.
Examples of ladder diagram symbols are.
-11- Normally opened contact
-1/1- Normally closed contact
-()- Output
-(1)-Not output
The input may bearelay or switch contact. The normal position may beopen or close. Inthe
normally opened contacts the current flow will be affected when external command (manual
push button, or electric relay) closes the contact. Similarly in normally closed contacts, the
current flow will cease only when external command is given. The output may be one of the
output devices mentioned above. In normal output devices, the current flows when all the input
contacts are closed. Other types of output devices are known as "Not Output" devices. In these
devices, the current flow is normally there but when all the input contacts are made, the current
flow ceases:
In general, a ladder rung consists of a set of input conditions represented by contact
instructions and an output instruction at the end of rung represented by the coil symbol. The
coils and contacts are basic symbols of ladder diagram instruction set. All outputs are
represented by coil symbol. Thus, instruction "Energize Coil" means ''Turn on the Output".
While programming the ladder diagram, each contact and coil is referenced with an address
number which identifies the port, variable or unit. This address number references the memory
address of variable, data table or port.
P rogrammable Controllers 419
We shall now construct some ladder diagrams based on the operators of AND, OR and
NOT.
10.2.1 AND Operation (Series Circuit)
X, X2 X3 Y,
~I 1'---1 I-I f---< >----1
Y, =X, .AND. X
2
.AND. X3
All the input contacts and output device are connected in series and when all the input
contacts are true, output device is actuated. In the above example, X l, X
2
, X 3 may be limit
switches with normally open contact. But these may also be control relays with normally open
or normally closed contacts.
X, x2 c, Y,
1---1 I-I If---If---< >----1
Y, =x, .AND. x
2
.AND. C,
x, x2 C, Y,
f-------.,I 11----11-1/ f---< >----1
Y, =x, .AND. x
2
.AND. (NOT. C,)
10.2.2 OR Operation (parallel Circuit)
The input contacts are connected in parallel to each other and in series to output device. In order
to activate output, one of the contacts may close, so that the circuit is completed. Examples of
parallel circuits are
e
r~Y''I
f-------II ~ I
Y, =x, .OR. X
2
i-----I~trY I
Y, =x, .OR. c,
--lftrY 'i
Y, =x, .OR. (NOT. C,)
...
420 Computer-Based Industrial Control
10.2.3 AND-OR Operations (Series-Parallel Circuits)
Some of the input contacts may be in series and others may be in parallel to each other.
x, X3
! w
l
Cl
---l!
Y
l
=(X l .OR. Cl) .AND. X3
x, X2
>---l! w !
c,
I---! /
Y
l
=(X l .OR. (NOT. Cl) .AND. X2
Y
l
=(X l .OR. X
2
) .AND. (C
l
.OR. (NOT. C2)) .AND. X3
The output device may be acontrol relay which may be an input for other operations. Such
output devices are known as internal outputs.
C
3
=(X l .OR. X
2
) .AND. ((NOT. Cl) .OR. C2) .AND. X3
The control relay C
3
may occur in another ladder diagram rung as input contact. This is
very useful concept to provide interfacing of operations. In the above example, either X l or X 2
P rogrammable Controllers [ 4! IJ
and C2or not C, and X 3 are to close in order to activate C
3
Now, C
3
may appear in another rung
as,
Y2 =(Xs .OR. Xs) . AND. C
3
Thus until C3 is activated Y2 cannot be activated. In other words until the operations of
previous rung explained are completed, this rung cannot proceed.
It is common to use boolean operators like ., +and - in place of AND, OR and NOT, the
last two equations will now take the following form:
C3 = (X l +X2) . ((-C
l
) +(C
2
)) . X 3
Y2 = (X s +X
6
) C
3
We shall now take some examples. In the examples, we will call relay as control relay or
CR. In the ladder diagram shown below, when the coil of CRl (symbolised with the pair of
parentheses on the first rung) is energised, the contact on the second rung opens, thus
deenergising the lamp. From switch A to the coil of CRl, the logic function is non-inverted. The
normally closed contact actuated by the relay coil CRl provides a logical inverter function to
drive the lamp in a direction opposite that of the switch's actuation status.
L1 L2
t:~:r--- -2 -~
A ------{)o--- CR1
Applying this inversion strategy to one of our inverted-input functions created earlier, such
as the OR-to-NAND, we can invert the output with arelay to create the following non-inverted
function:
L1
L2
CR1
L-__ ~/.~ -=2 ~
A 1 CR1
: ~~~: ~~r -----------------------~(
[ " i22 Computer-Based Industrial Control
From the switches to the coil of CRI, the logical function is that of a NAND gate. CRI's
normally-closed contact provides one final inversion to turn the NAND function into an AND
function.
Permissive Circuit Design
A practical application of switch and relay logic is in control systems where several process
conditions have to be met before apiece of equipment is allowed to start, e.g., burner control for
large combustion furnaces. In order for the burners in a large furnace to be started safely, the
control system requests "permission" from several process switches, including high and 'low
fuel pressure, air fan flow check, exhaust stack damper position, access door position, etc. Each
process condition is called apermissive, and each permissive switch contact is wired in series,
so that if anyone of them detects an unsafe condition, the circuit will be opened. The high fuel
pressure contact is normally closed. It will open if the fuel pressure gets too high, i.e., in unsafe
condition.
L1 L2
Low fuel High fuel Minimum Damper
CR1
pressure pressure airflow open

6
't- --.:
CR1
Green
CR2 Red
/
phase
ThisI
Green light = Conditions met: safe to start
Red light = Conditions not met: unsafe to start
If all permissive conditions are met, CRI will energise and the green lamp will be lit. The
starting of burner control will be manual in this case. In real life, a control relay or fuel valve
solenoid would be placed in the rung of the circuit to beenergised. It will be activated when all
thepermissive contracts were "good", that is, all closed. If anyone of the permissive conditions
arenot met, the series string of switch contacts will bebroken, CR2will de-energise, and thered
lamp will light up.
Interlock Circuit Design
Another practical application of relay logic is in control systems where it is required that two
incompatible events should not occur at the same time, e.g., in reversible motor control, where
two motor contactors are wired to switch polarity (or phase sequence) to an electric motor, the
forward and reverse contactors should not be energised simultaneously.
When contactor MI is energised, the 3 phases (A, B, and C) are connected directly to
terminals I, 2and 3 of the motor, respectively. However, when contactor M2 is energised,
TI
"heate
the co:
contac
TI
If som
fact th
them;
T (
contac
accom
A
3-phase
AC
power
I
I
B
I
I
C
I
I
Y
I
I
I
I
,
M1
P rogrammable Controllers ~
M1 =Forward
M2=Reverse
I
M2
phases A and B are reversed, with A going to motor terminal 2and B going to motor terminal 1.
This reversal of phase wires results in the motor spinning in the opposite direction.
L1
F 0 7 " ' M' 3 oj
~R-el-~----------2----~~1
L2
The normally-closed "OL" contact, which is the thermal overload contact activated by the
"heater" elements, is wired in series with each phase of the AC motor. If the heaters get too hot,
the contact will change from its normal (closed) state to the open state, which will prevent either
contactor from energising.
This control system will work fine, so long as no one pushes both buttons at the same time.
If someone were to do that, phases A and B would be short-circuited together by virtue of the
fact that contactor M1 sends phases A and B straight to the motor and contactor M2 reverses
them; phase A would be shorted to phase B and vice versa.
To prevent this from happening, the circuit must be so designed that the energisation of one
contactor prevents the energisation of the other. This is called interlocking, and it is
accomplished through the use of auxiliary contacts on each contactor, as shown below.
L1 L2
Forward
M' 3 oj
.i,
4
M2

: : '
tr
Reverse
.i.
5 2

I'
424 Computer-Based Industrial Control
When Ml is energised, the normally closed auxiliary contact on the second rung will be
open, thus preventing M2 from being energised, even if the "reverse" pushbutton is actuated.
Likewise, Ml's energisation is prevented when M2 is energised. Note as well how additional
wire numbers (4 and 5) are added to reflect the wiring changes.
10.3 ARCHITECTURE OF PROGRAMMABLE CONTROLLERS
The programmable controllers are basically computer-based and therefore, their architecture is
very similar to computer architecture. The memory contains operating system stored in fixed
memory like ROM, rather than disk in case of computers. The application programs are stored
in Read-Write portion of memory.
All programmable controllers contain a Central Processing Unit (CPU), Memory, Power
Supply, Input/Output (I/O) modules and programming device. Figure 10.2 shows architecture
of programmable controllers.
Memory
Input Output
Relay coil
CP U
Relay coil
limit sw itch solenoid valve
lamp, motor
P rogramming
device
Figure 10.2 Architecture of programmable controllers.
The CPU, upon receiving instructions from the memory together with feedback on the
status of the input-output devices, generates commands to the outputs. These commands control
the output elements on a machine or process. Devices such as relay coils, solenoid valves,
indicator lamps and motor starters are typical loads to be controlled.
The machine or process input elements transmit status signals to the input modules which,
in turn, generate logic signals for use by the CPU. In this way, the CPU monitors elements such
as push buttons, selector switches and relay controls on a machine or process.
P rogrammable Controllers 425
1
s
d
d
The intelligence of programmable controller is derived from microprocessors which have
tremendous computing and control capability. They perform all mathematical operations, data
handling and diagnostic routines that were not possible with relays or their predecessor, the
hardwired processor.
The power of programmable controller depends upon the type of microprocessor used.
Small size programmable controllers use 8-bit microprocessor. Higher end controllers use
bit-slice microprocessor to achieve faster instruction execution.
The operating system is the main work horse of system. It is necessary to distinguish
between the instructions used by operating system to command the microprocessor and the
instructions used by the programmable controller to handle the specific control problem. The
operating system performs the following tasks:
Execution of application program
Memory management
Communication between programmable controller and other units
I/O interface handling
Diagnostics
Resource sharing
During program execution the processor reads all the inputs, takes these values and
according to control application program, energizes or de-energizes the outputs, thus solving
the ladder network. Once all the logic has been solved, the processor will update all the outputs.
The process of reading the inputs, executing the control application program, and updating the
output is known as SCAN. During a scan, processor also performs housekeeping tasks.
There are four basic steps (Fig.10.3) in the operation of all PLCs; Input Scan, Program
Scan, Output Scan, and Housekeeping. These steps continually take place in a repeating loop.
Output
scan
,
Input
scan
F igure 1 0 .3 P rogrammable controller scan.
he
01 1 .
!S,
2.
;h,
3.
ch
Input Scan. This detects the state of all input devices that are connected to the PLC.
Program Scan. This executes the user created program logic.
Output Scan. This energises or de-energises all output devices that are connected to
thePLC.
4. Housekeeping. This step includes communications with programming terminals,
internal diagnostics, etc.
426 Computer-Based Industrial Control
10.3.1 Diagnostics
Son;
groups(
pair wir
typical I
possible
couldbe
One of the processor tasks during the housekeeping operation is to check the soundness of the
system. To achieve this, the processor performs error checks and sends status information to
indicators that are generally located on the front of the CPU. Typical diagnostic informations
include CPU running OK, battery OK and power supply OK. The CPU also has "watch-dog"
timer output. The processor sends a pulse at the end of each scan indicating a correct system
operation, If there is a malfunction, the timer would time-out and fault output would be
activated.
10.3.3
10.3.2 Input/Output System
There I
program
usemici
program
The input/output (I/O) system provides physical connection between the external devices (field
equipment) and the CPU. Through various interface circuits, the controller can sense and
measure physical parameters of a machine or process, such as proximity, position, motion,
level, temperature, pressure, current and voltage. We have already discussed the sensors for
various parameters in Chapter 2. Based on status sensed or physically measured values, the
CPU issues commands that control various devices such as valves, motors, pumps and alarms.
The details about valves and actuators have been described in Chapter 4.
Earlier versions of programmable controllers had interface circuits that could translate
voltage level signals from limit switches (or push buttons etc.) in the field to the logic voltage
signals required by the electronics in the CPU. Similarly, output circuits translated the logic
voltage signal to levels appropriate to drive solenoid valves, motor starters, lamp, etc. These
types of inputs and outputs are called discrete I/O. Modem programmable controllers possess a
complete range and variety of discrete and data I/O (which includes analog I/O, register I/O and
digital pulse tacho inputs).
Typical AC/DC input, AC/DC output and contact output circuits are shown in
Fig. 10.4 (a-c)
(ij
c
Noise and Threshold Ol
Bridge .c;;
debounce level
: ; rectifier
a. filter detection
E
(a)
::J
a..
U
E
Logic Sw itch
e
u,
(b)
F rom CP U Logic
::J
a..
Logic o
e
Line
F ilter
Load
Figul
The
progran
(c)
Figure 10.4 (a) AC/DC inputs circuit, (b) AC/DC output circuit,and (c) Contact output circuit.
e
o
e
P rogrammable Controllers 427
Some of the programmable controllers offer remote I/O capability. This helps in locating
groups of I/O away from CPU. Connection between CPU and remote I/O group is via twisted-
pair wires, or a single coaxial cable or fibre-optic data link. Figure 10.5 (a) and (b) shows
typical remote I/O configurations. Both star as well as Daisy chain type interconnection are
possible. Distance of remote I/O varies from one manufacturer to another but typical distance
could be in the range of 2 to 4 Ian.
"
10.3.3 Programming Devices
There are different types of programming devices available. Most commonly used
programming devices are CRT and LEDILCD types. CRT type or large LCD type programmers
use microprocessor and are generally intelligent and can also function independent (off line) of
programmable controller and can be used to create, edit and monitor programs.
CP U
--------
Serial
interface
module
Remote I/O Remote 1/0 Remote 1/0
--------- --------- ---------
Serial Serial Serial
interface r--- interface r--- interface
module module module
(a)
CP U
--------
Serial
interface
module
I
I I
Remote 1/0 Remote 1/0 Remote 1/0 Remote 1/0
-------- -------- -------- --------
Serial Serial Serial Serial
interface
-
interface
f-
interface
-
interface
r-
module module module module
(b)
Figure 10.5 (a) Remote I/O daisy chain configuration, and (b) Remote I/O star configuration.
Their diagnostic capabilities are extensive, including full screen presentation of the
program, with real time display of the status of each contact and output.
428 Computer-Based Industrial Control
Many of the programmable controllers allow asingle programming device or programming
panel to be connected to group of programmable controllers in local area network fashion. This
permits parameter or program changes from one centralised programming device.
10.4 PROGRAMMING THE PROGRAMMABLE CONTROLLERS
10.4.1 Programming Languages
The basic ingredients of languages for programmable controller are same as any other computer
assembly language. The basic groups of operations in any assembly language are:
Data transfer
Data manipulation
Arithmetic and logic
Flow control
Special functions
The computer engineers know that these operations are common in any computer-based
systems and only their representations differ. Not to say that there are always special
requirements of the systems and environment. These are covered under special functions. In
case of programmable controllers, following types of programming languages are prevalent:
Lower level
- Ladder diagrams
- Boolean mnemonics
Higher level
- Functional blocks
- English statements
We have already discussed in brief about basics of ladder diagrams. The Boolean
mnemonics are similar to assembly language of any computer/microprocessor where operation
mnemonics are used to describe the various operations to be performed. The Boolean
mnemonics replaces the ladder diagram symbols in one-to-one fashion. Thefunctional block is
basically a block-oriented language and has one function block for each operation. Such
function blocks are easy to understand, as the data transfer from one block to another can be
seen pictorially. The English statements are like higher level language of computer with
English-like sentences. Those who are aware of BASIC, FORTRAN, PUl, ALGOL, C, etc.
may well visualise thecharacteristics of English-like languages. These characteristics are easy
to understand and program, but the programs written in such languages are slower than those
written in boolean mnemonics or ladder diagrams. We shall now deal with these languages with
respect to various groups of operations mentioned above.
10.4.2 Ladder Diagram Instructions
Special functions
The special functions in ladder diagrams will relate to relay logic operations, timer and counter
operations.
P rogrammable Controllers 429
(i) Relay logic operations: Some of the features of relay logic operations were discussed
while explaining the concept of ladder diagrams.
Let us now consider all the relay ladder diagram instructions commonly available-
-11- - Normally open contact
-1/1- - Normally closed contact
-()- - Energize coil (Turn on output)
-( / )- - De-energize coil (Turn off output)
-( L )- - Latch coil (output is turned on and remains on even if logic continuity is
not there due to change in input conditions. The output can be turned off only by
unlatch coil instruction).
-( U)- - Unlatch coil
-I i 1 --OFF-ON transitional contact provides a one shot pulse whose width is
same as single scan time, when trigger makes aOFF to ON transition. The trigger may
come from external source or may be on internal output.
-I J , 1 --ON-OFF transitional contact provides a one shot pulse of one scan time
width, when trigger makes aON to OFF transition. The trigger may come fromexternal
source or may be an internal output.
(ii) Timer and counter operation: Basically, the operation of both timer and counter is
same as timer operates like counter. Both timer and counter maintain two values in their internal
registers, viz. preset value and the count value.
The preset value (PR) is decided by the programmer and stored during execution of ladder
rung. The count value refers to the present count of the signal. This signal may refer to any
event, which may occur randomly. This count indicates as to how many times the event has
occurred after initialisation. When the count becomes equal to preset value then output is
generated (energize/de-energize the coil) in the ladder rung. This is basic counter operation.
When signal occurs at fixed frequency, i.e., after every fixed interval of time, the counter
performs as timer. Now 10 pulses, i.e. 10 counts will mean an elapsed time of 5seconds, if
signal is occurring after a regular interval of 0.5 seconds. When the count becomes equal to
preset value (i.e. elapsed time = preset time value), output is generated in the ladder diagram
rung. Thus for timer, operation, the time base (i.e. regular fixed interval of signal) must also be
defined. Following are the main ladder diagram instructions:
-(TON)-Time Delay Energize (ON)
PR =
TB =
This instruction is used to perform delay function for any event when logic continuity is
present.
Total delay = (Preset) PR x TB (Time Base)
If logic continuity is lost in between the counting, the count value is reset to zero. When preset
value equals the count value, output coil is energized (turned on).
-(TOF)- Time Delay De-energize (OFF)
PR=
TB =
~30 Computer-Based Industrial Control
The instruction is used to perform delay function for any event when logic continuity is
absent.
Total delay = PR (Preset) x TB (Time Base).
If logic continuity is gained in between the counting, the count value is reset to zero. When
preset value equals count value the output coil is de-energized (turned off).
-(RTO)-Retentive Timer Output
PR=
TB =
St

C(
conten
true.

When it is required that the timer should not loose the count value when power fails or
when logic continuity is changed, then RTO instruction is used. The operation is same as TON
instruction. When logic continuity is changed or power fails, then count value is retained and in
theevent of re-establishing of lost logic continuity or power the counting begins again. The only
way to reset the count value is by executing Retentive Timer Reset (RTR) instruction.
-(RTR)-Retentive Timer Reset
If logic continuity exists, then count is reset to zero in retentive timer.
-(CTV)-Up Counter
PR=
COI
or conn
is true.

Cor
or conn
operatio
Each time the programmed event occurs, the count increments by one. When preset equals
the count, the output is energized. The count can be reset by counter reset instruction.
-(CTD)-Down Counter
PR=
Arithn
The aritl
inthisg
two men
Each time the programmed event occurs, the count is decremented by one. When preset
equals count the output is energized. The count can be reset by counter reset instruction.
-(CTR)-Counter Reset
When logic continuity is established, the addressed counter is reset.

Data transfer and data manipulation operations


This group of operations involve reading and writing of data from/to memory or register and
comparing two data items to 'equal to', 'less than' or 'greater than' conditions. The memory
locations are specified by the addresses. Following are the main ladder diagram instructions:
ADDR
-IGETI- Get word
Get the data stored in the memory at specified address 'ADDR' and store it in the internal
register for immediate use of other operations.
ADDR
-IPUTI- Put word
i:
v
Flow cc
This grou
conditions
-(ZCL)-
Thefi
performtt
(Skip and
andSKR(
P rogrammable Controllers 431
I is
Store the data of internal register in the memory at location specified by address 'ADDR'.
ADDR
-ICMP = 1-Compare equal
Compare the content of memory location specified by ADDR with internal register or
contents of two internal registers for equal to condition. The contact is closed if the operation is
true.
hen
; or
ADDR
-ICMP < 1-Compare less than
Compare the content of memory location specified by ADDR with internal register content
or contents of two internal registers for 'less than' condition. The contact is closed if operation
is true.
ON
din
mly
ADDR
-ICMP > 1-Compare greater than
Compare the content of memory location specified by ADDR with internal register content
or contents of two internal registers for 'greater than' condition. The contact is closed if
operation is true.
uals
Arithmetic operations
reset
The arithmetic operations like addition, subtraction, multiplication and division are performed
in this group. The operands may be two memory location contents with result stored in one or
two memory locations (or registers). Following are the main ladder diagram instructions:
-( +)-Addition performs the addition of two operand values specified. The result
may be in one of the operand locations or may be specified separately.
-( -)- Subtract performs the subtraction of two operand values specified. The result
may be in one of the operand locations or may be specified separately.
-(x)-(x)- Multiplication performs the multiplication of two operand values
specified. The result is normally held in two operand registers.
-( +)-( +)-Division performs the division of two operand values specified. The result
is normally held in two operand registers. The first result register holds the integer
value, while the second holds the decimal fraction.
. and
mory
ms:
Flow control operations
ernal
This group of instructions alters the sequential execution of program based on the outcome of
conditions specified. The main types of operation under this group are-(MCR)-, -(SKD)-,
-(ZCL)- and -(SKR)-, -(LBL)-, -(lMP)-, -(J SB)- and -(RET)-
The first four instructions namely -(MCR)-, -(SKD)-, -(ZCL)- and -(SKR)-
perform the same operation with little variation. The MCR (Master Control Relay) and SKD
(Skip and De-energize) instructions are exactly same whereas ZCL (Zone Control Last) state
and SKR (Skip and Retain) instructions are exactly same.
432j Computer-Based Industrial Control
The operation performed by these instructions is shown by the following If Then Else
statement block
If (COND) = TRUE
Then
Begin
End
Else
Begin
End
If the specified conditions are true, then a block of instructions specified between the two
boundaries of 'Begin' and 'End' are executed. If the specified conditions are not true, then
execution of program jumps to first instruction outside the boundary of block.
The MCR, ZCL, SKD and SKR perform the begin operation to define the beginning of
instruction block while, respective END MCR, END ZCL, END SKD and END SKR
instructions signify the end of instruction block.
Following are the difference between these instructions.
1. When specified condition is False then all the non-latched outputs are de-energized in
case of MCR and SKD.
2. When specified condition is False then all the output within the block will be held in
their last state, in case of ZCL and SKR.
LD
-ILBLj- Label
It is used to associate an identification number to aparticular ladder rung. It has no role in
execution or program logic otherwise. The label is used in jump and jump to subroutine
instructions.
Oper
Figure
a sole
positir
suppl
LD
-(J MP)- J ump
The program execution jumps to the rung with label LD. The conditions may bespecified in
the rung before J MP to make it conditional jump instruction.
LD
-(J SB)- J ump to Subroutine
The program execution jumps to the ladder rung specified by the LD. However before
executing thejump, the address of next ladder rung (Return address) is stored in internal register
for the purpose of return at the end of subroutine.
-(RET)- Return from Subroutine
When encountered, the program execution. returns to the main program from where the
subroutine jump was taken. The return address of ladder rung is retrieved back from internal
register and program execution jumps to return address. The subroutine operation is explained
in Fig. 10.6.
II
;e
P rogrammable Controllers : mJ
x y
~ 'I 50 0
I~ -------{(J SB
I
I

I
I
I

I
I
I
I
I
I
I
~----~---------L--'-------------------~RET
CD If X and Y close. The address of next rung is stored and program jumps to
rung w ith label as 50 0 .
When RET is encountered then return address is retrieved and program
execution returns.
o
'0
f
n
n
50 0
LBLH~
I
I
I
I
----. . . ,
I
I
I
I
I
I
I
cp
I
I
I
t
I
I
____ .J
Operation of pneumatic cylinder using ladder diagram
Figure 10.7 shows abasic circuit for the controlled operation of adouble-acting cylinder using
a solenoid operating 4/2 electropneumatic valve, a control relay and a switch. The normal
position is shown in Fig. 10.7. Port PI is connected to the exhaust, P
2
is connected to the air
supply, the rod is inside the cylinder, and the valve is not actuated.
SW CR
S~~ ~-4~~ __L-~L-~ __ ~r -~
e
in
Figure 10.6 Subroutine branch and return sequence.
Figure 10.7 Controlled operation of double-acting cylinder.
L When switch SW is closed, the relay is energised.
SW CR
r-----/ /--------i( >---1
II. This results in the normally open contact of the relay eRO being closed, the solenoid
being powered and the valve being actuated.
434 Computer-Based Industrial Control
r
The
ill. The valve movement will take some time, during which no operation must be
performed. Thus, time delay must be incorporated. During this time, the solenoid will
move the valve, and thus PI will be connected to the air supply and P
2
will get
connected to the exhaust. This will result in the movement of the rod outside the
pneumatic cylinder. When the time is elapsed, the forward stroke is completed and the
rod is fully outside. Coil CL is in the energised state and the normally open contact
CRO is closed.
IV. Now at any time, the operator may opt for reverse stroke by opening the switch SW.
This will result in the control relay being de-energised. The relay contact CRO wiil
open consequently.
SW
LV)_~
CR
This will result in air supply to move the solenoid being cut, and so it will retract with the
force of the spring. The valve will move to connect PI to the exhaust and P
2
to the air supply,
and the reverse stroke of the cylinder will take place.
The ladder diagram for the operation of the double-acting cylinder through the 4/2
pneumatic valve is shown in Fig. 10.8.
SW
1
I
CRO
P R =
TB=
CRO TON
I
( )
SW
1
CR
r ---------------~( ~. --~
CL
r-------------l(
10.4
SOL
Thest
contn
V a r i O i
comp
have
vis-a-
Boole
CR
CRO SOL
Figure 10.8 Ladder diagram for operation of double-acting cylinder.
m must be
olenoidwill
P2 will get
outsidethe
etedandthe
pencontact
sitch SW.
t eRO will
actwiththe
airsupply,
ghthe 4/2
P rogrammable Controllers ~
Program execution sequence
The execution sequence of the program instructions is shown below.
1. They are executed in the sequence from block 1to the final block, which contains the
ENDE instruction (or IRET in an interrupt program).
2. They are executed in the sequence from rung 1to the final rung in ablock (or theEND
instruction).
3. They are executed according to the following rules in anyone rung:
(a) When there is no vertical connection, they are executed from left to right.
1 2 3 4
~ ~ ~ t-I --~( t-1
(b) When there is an OR connection, the OR logic portion is executed first.
(c) When there is abranch, they are executed in order from the upper line to the lower
line.
~H~I 4( >--i
I ~I f- ---i
6
( H
(d) A combination of (b) and (c) above.
10.4.3 Boolean Mnemonics
These are assembly level languages specially designed to express the logic of programmable
controllers. There is nearly one to one correspondence between Boolean mnemonics and
various ladder diagram symbols. Those, who are familiar with the assembly language of any
computer will recognize the mnemonics and their meaning as different assembly languages
have similar operations. Let us now illustrate the similarity between ladder diagram operations
vis-a-vis Boolean mnemonics. Following are the ladder diagram instructions and corresponding
Boolean mnemonic.
436 Computer-Based Industrial Control
Mnemonic Function Ladder equivalent
LD Load
-H-
AD And
-1H~
OR Or
l j p -
OUT Energize coil
-{)--
OUT NOT De-energizecoil
-{/)--
TIM Timer -{Ton)--
ADD Addition -{+)--
MUL Multiplication -{x)--
SUB Subtraction -{-)--
DIV Division -{+)--
CMP Compare -{Cmp)--
J MP Branch -{J mp)--
While some of the mnemonics are fromassembly language of processors, others particularly
special functions can be programmed using macros.
The Fig. 10.9 shows a relay ladder diagram and corresponding Boolean program.
Rung1
LDA
IA ADB
STOD
Rung2
: :
LDC
OR F
STOE
Rung3
/::
LDG
ADH
OR L
STOK
Rung4
1 M LDM LDW
ADN ADX
STOX, ORX
2
IK
LDK
STOX
2
ADL
LDV
IT ORX,
ADZ
ADT
ORX2
ADP
ADV
I
W
STOS
ORS
LDT
STOS
IV
ADU
STOX
2
___ ill_
B
_
R
_
u
-=: n
g
'-1 D--.<
Rung2
-=--_ _ 1_ :4
93
Rung4
l/trX: f ~/
, P S
~_I L
-'-Itr V
X
2
___ I X
r----I Z
SI. No.
1
2
3
4
5
The InstructionSet
Description Mnemonics SI. No. Description Mnemonics
Load LD 6 Or Complement OR
LoadComplement LD 7 No.Operation NOP
And AD 8 Store STO
And Complement AD 9 StoreComplement STO
Or OR 10 J ump J P
Figure 10.9 Boolean mnemonics and ladder equivalents.
E
K (
P rogrammableControllers 437
Different programmable controllers use different Boolean language, even though the
functions may be similar. Figure 10.10 shows another Boolean language mnemonics.
10.4.4 Functional Blocks
For process engineers, functional blocks are perhaps easiest to program for the blocks do not
require any prior knowledge of computer or relay ladder diagrams. The programmable
controller provides functional blocks in the same way as ready-made bricks or blocks for house
building are provided. It is therefore a language which makes programming easy, because it is
based on logical structure and contains only functions which are used exclusively in process
control.
SI. No. Mnemonic Function
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
1 3.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
RDNO
RDNC
ANDC
ORC
AND
OR
CAND
COR
OUT
OUTS
OUTR
STMR
SCMR
CACC
ANDMR
ORMR
CANDMR
CORMR
STRTC
RCTC
RSTC
ANDTC
ORTC
CANTC
CORTC
END
Reads and stores status of input (NO contact)
Reads and stores status of input (NC contact)
Logical AND of inputs at all successive addresses .... ---
Logical OR of inputs at all successive addresses
Logical AND
Logical OR
Logical AND w ith complement of input status
Logical OR w ith complement of input status
Send result of operation to output device
Energize output device
De-energize output device
Store result in flag
Recall result from flag
Complement
Logical AND w ith flag
Logical OR w ith flag
Logical AND w ith complement of flag
Logical OR w ith complement of flag
Start timer/counter
Recall timer/counter
Reset counter
Logical AND w ith time/counter
Logical OR w ith time/counter
Logical AND w ith complement of timer/counter
Logical OR w ith complement of timer/counter
End of program
Figure 1 0 .1 0 Typical Boolean language for programmable controller.
(438 Computer-Based Industrial Control
The common functional blocks include simple arithmetic and logic functions, viz., timer/
counters, comparators, shift registers, sequencers, PID block, regulators, fault signalling and so
on. These functional blocks can be displayed on the computer screen using special function
keyboard. These are represented as simple graphic symbols. The user has to enter the parameter
and signal names and link the elements by means of cursor on the display. This is done in a
language which makes it an extremely simple process. Following is brief description of
functional blocks.
Data transfer operation
tra
Following are the basic operations performed in this group.
1. To move data from one location/register to another location/register. The operation is
performed when control is energized and when operation is completed, output signal is
energized.
MOVE
Reg X
or
Loc X
Control to
Output
RegY
or
LocY
M(
re~
op
re~
)
2. To move block of data from one group of memory locations/registers to other group of
memory locations/registers.
Control
MOVBLK
Reg X
or
Loc X
to
RegY
or
LocY
Length
Output
3. Block transfer from/to Input/Output module. The input module may be ADC, BCD
input, whereas output module may be stepper motor, DAC, display etc. A block of data
stored in memory is transferred to module in case the module is output. The reverse
operation takes place in case of input module.
Control--~ - Output
Data Loc X
Block length
Module
Address
par
r/
o
n
is
is
,f
e
P rogrammable Controllers ~9l
4. ASCII transfer performs ASCII character transmission from programmable controller
to peripheral devices.
Reg X
or
LocX
Length
I/O Address
Control
Output
Error
The error signal is energized when transmission cannot take place due to faulty mode or
transmission fault.
Arithmetic and logic operation
Most arithmetic operations use three registers/memory locations to operate. Two locations/
registers are used to specify two operands and third register/location is used to store result. The
operands can also be specified as immediate value, in which case, the first two locations/
registers will not be required.
(i) Addition
Value/Reg XlLoc X
Value/Reg Y /Loc Y
Control-----!
Result
Reg ZlLocZ
L
(ii) Subtraction
I
Value/Reg XlLoc X
Value/Reg Y /Loc Y
Control-----!
Result
Reg ZlLocZ
L
(iii) Multiplication
I
Value/Reg XlLoc X
Value/Reg Y /Loc Y
Control-j
Result
Reg ZlLoc Z
Reg Z+1 /Loc Z+1
L--.-Output
(overflow )
Output 1
Z=positive
Output 2
Z=O
I------. Output 3
Z=negative
L--.-Output
(overflow )
Some programmable controllers provide the facility of rounding off in which case 'Scale'
parameter is also defined.
[ 4! O Computer-Based Industrial Control
(iv) Division
Control
Reg XlLoc X
Reg Y/Loc
Output
Result quotient
Output
Reg ZlLoc Z
Result remainder
Reg Z+1/Loc Z+1
Output
(Successful Division)
1
(over flow )
2
(Remainder P resent)
3
(v) Logic matrix: The logic matrix is used to perform, AND,OR, EX -OR,
NOT,NAND,NOR. functions on multiple group of operands.
As an example, one wants to AND memory locations m to m +n with memory locations k
to k +n and store the result in I to I +n. This operation is depicted in Fig. 10.11.
Memory location
mc=J ;------" l
Memory location
I
s
s
1+n
k+nL-__-I L-----~
Memory location
Figure 10.11 Logic matrix operation.
The generalised logic function symbol is given by
Control--..!
Reg XlLoc X
Reg Y/Loc Y
Output 1
Result
Reg ZlLoc Z
Length
Output 2
Output 3
Output 1is energized when logic operation starts;
Output 2 is energized when there is error; and
Output 3 is energized when operation is completed.
EX-OR,
ocationsk
P rogrammable Controllers "1
(vi) Comparators: This functional block is used to compare two values stored in
registers or memory.
Reg XlLoc X
Output 1
X>Y
Control--.,.,j
Reg Y/Loc Y
Output 2
x=Y
Output 3
X<Y
(vii) shift: The operation of shift instruction is shown in Fig. 10.12.
------IlL r r J [_
Shift in bit Shift Right Shift out bit
------Ill ??fL_
Shift out bit Shift Left
Figure 10.12 Shift operation.
Shift in bit
The register holds the operand on which shift operations are to be performed. The two bits
'shift in' and 'shift out' have to be defined by the user. These bits can be used to check the
status of particular bit of register. The number of shifts in right or left directions also needs to be
specified by user. The symbol for shift is presented as
Control Register X
'"
Bit in
Shift Right -Output
Bit out
Shift Left
No. of bits
Output is energized when the operation is completed.
(viii) Rotate: Rotate operation is same as shift operation (Fig. 10.12). The difference is that
while bits shifted out are lost in shift, they are restored as LSB (Rotate Left) or MSB
(Rotate Right) in case of rotate operations. The symbol for rotate is,
Control--~
Register X
Rotate Right --~
No. of bits
f---Output
Rotate Left --~
442 Computer-Based Industrial Control
(ix) Timer/Counter: The timer and counter functional blocks are same as their hardware II
oconnections. Timer requires following information to function
Time base, i.e. frequency of time pulses
Preset value, i.e. time value till which timer should function
Current value, i.e. current value of accumulated time in timer
Following are the signals in timer/counter block:
Control-acts as chip select
Enable-When activated, acts as run command. The timer runs till it is enabled.
Output 1- (Time = Preset) i.e. Time up signal
Output 2-(Time *' Preset) i.e. Time not up signal
The functional block is shown below.
c
tJ
P
k
Time Base
Control--.,
RegisterX
(P resent)
Output 1
RegY
(Currenttime) Output 2 Enable--~
The counters are similar to timer in operation. They do not require time base as they count
events. Thus they have two input signals for up and down counting. A preset value is stored and
accumulated count is maintained as shown in the following figure.
Output 1
(Count =P reset) UpCount--~
RegisterX
(P resent)
Output 2
(Count" # P reset)
Dow n Count--~
RegY
(Count)
Reset--~
The count resets to zero when Reset is energized.
(x) Sequencer: Sequencer block basically outputs contents of a sequence table in
incremental manner in response to acontrol pulse. It is very useful in sequential control
where sequence for any operation is pre-defined.
Reset pointer SequenceWidth
P ointer Reg
Output
il
tl
Control--~ Reg XlLoc X
Sequence Length
1ll'e II
ount
land
in
trol
P rogrammable Controllers ~
The pointer register contains the pointer to the table. Sequence length refers to thetotal no.
of steps in table and sequence width means the no. of bits in each step. On each OFF-ON
transition of control signal, the pointer register increments and content of table addressed by
pointer register are placed at output.
(xi) PID control: The PID function block performs Proportional, Integral and Derivative
Control. Following are the basic parameters needed to implement PID algorithm:
Proportional gain
Integral gain
Derivative gain
Set-point
In addition to these, current value of 'input variable' as well as control variable must also be
know (Fig. 10.13).
Control Input
Set-point Error
P ID
signal variable
controller
P rocess
Figure 10.13 P ID (F eedback) control loop.
Thus functional block will look like.
Input Module
Address
Output Module
Address
1---.Output 1
1---.Output 2
Control-
P . Gain
I. Gain
D. Gain
1---.Output 3
Set-point Register
The input and output variables are specified through address of the module from where
input is sensed and where the output signal terminates. The output signals may get energized in
the following pattern:
Output 1is energized when PID operation is on
Output 2 is energized when low level alarm is on
Output 3 is energized when high level alarm is on.
444 Computer-Based Industrial Control
10.4.5 English Like Statement
Those who are aware of higber level computer languages (BASIC, FORTRAN, PASCAL, C)
will find programming in functional blocks, relay ladder diagram or Boolean mnemonics, very
cumbersome and time consuming. As an example-
The functional block for subtraction can be simply represented in FORTRAN as:
If (X - y) 30, 40, 50
The program jumps to statement No. 30 (when X < y), 40 (when X = Y)or 50 (when X > Y)
depending on values of X and Y. It is possible to address input and output modules using higher
level languages. Thus any kind of function can beeasily provided in higher level languages. As
an example, the relay ladder diagram of Fig. 10.9 can be represented in BASIC (Fig. 10.14).
=
A .AND. (.NOT. B)
C .OR. F
(G .AND. H) .OR. (NOT .L)
[M .AND. (NOT. N)] .OR. (K .AND. L)
(T .AND. U) .OR. (W .AND. X) .OR. (Y .AND. Z)
[X l .AND. T .AND. (NOT P )] .OR. (X 2 .AND. V)
1 0
20
30
40
50
60
=
=
=
Figure 10.14 Basic program for ladder diagram of F ig. 1 0 .7 .
A number of higher level English-like languages are available on the pattern of BASIC (e.g.
SYBIL), or other English-like languages.
10.5 SOFTWARE
The controller software in general follows the structure shown in Fig. 10.15.
-----------------------~
I
I
I
I
tMc: di: ;i~~;j.--+_' ----1P rogramming
terminal
I
Data base :
I
I
I
~----------------- I
1
u
al
pc
pr
fu
ha
p n
InpuV
Output
COI
dia
CO!
call
tog
Figure 10.15 Structure of controller softw are.
CAL,C)
.ics, very
: n X > Y)
ig higher
ages, As
10.14).
SIC (e.g.
P rogrammable Controllers
10.5.1 System Program
The complete system software in the controller is stored in an EPROM. It consists mainly of the
following parts:
1. Operator dialogue for application configuration and commissioning and service
functions
2. Software module library
3. Real-time executive which supervises the execution of the application program and
performs tests on the system hardware.
10.5.2 Application Program
Controllers normally include EEPROM for storage of the application program, defined by the
user. The use of the EEPROM (Electrically Erasable Programmable Read Only Memory) means
that the application program is protected even with power supply failure.
The different versions of the controller being manufactured currently contain EEPROM of
capacities which permits the use of various application programs of different sizes.
The Read Write Memory is used for the execution of the application program. The capacity
of the memory is related to that of the EEPROM.
10.5.3 Communication Program
Programmable controllers can work under the command from the host computer. A number of
Programmable Controllers can be connected in multi-drop fashion to acomputer. A special part
of the system software handles the communication interface of the host computer. Several
controllers can be connected to the same communication link (multi-drop). Data can thus be
read from and written to the individual controller.
10.6 CONFIGURATION
User can easily configure the programmable controller for performing the tasks required by the
application. The configuration is based on a range of basic functions which are programmed
permanently as well-defined programmable controller-modules. The functions performed by the
programmable controller-modules can be of different types: (a) logical operations, (b) memory
functions, (c) selectors, (d) counters, (e) arithmetical operations, (f) regulators, (g) input/output
handling etc. The adaptive regulators in the controllers are also accessible in the form of
programmable controller-modules.
The configuration of the system consists of linking together of suitable programmable
controller-modules to obtain a required function. This is performed by means of a simple
dialogue procedure using a programming terminal connected to the system.
The programmable controller-modules are interconnected in a structured manner to form a
complete control system. The programmable controller-program is divided into functional units,
called blocks, each of these contains a number of programmable controller-modules linked
together. The blocks can, in turn, be linked together in acorresponding manner.
446 Computer-Based Industrial Control
Following are the configuration steps to be followed:
(i) Define the function structure: Programmable controller modules are selected fromthe
module library and are linked together.
(ii) Setting of parameters: Modules and signals are numbered. For some modules
parameter values are chosen (max, min, channel number etc.). The result is acomplete
function diagram.
(iii) Input: The configuration is done via terminal in a dialogue with the controller.
Necessary data is available in the function diagram.
The programmable controller-block is executed as aunit, i.e., all programmable controller-
modules included are run through once. One of the following types of condition is applied to
execution of the block:
the block is executed at regular intervals of time;
the block is executed with aperiod defined by apulse train connected to the equipment;
the block is executed in accordance with a condition written into the programmable
controller-program.
The programmable controller-program (application program) which is the result of the
configuration dialogue is stored in an EEPROM and parameters which define the functions of
the programmable controller-modules and which are specified at the time of configurations are
stored in addition to the configuration structure.
The programmable controller-program defined originally can be amended by means of
simple commands from the programming terminal. Modules or blocks can be added or deleted
and parameters can be changed.
A printer can be connected to the controller for hard copy listing of the programmable
controller-program.
10.7 APPLICATIONS
Programmable controllers are used in many industries for one or more of the following
functional areas:
1. Sequence control, timing, counting, data calculation.
2. Quick change of machine or process logic, to manufacture different items using the
same machine or process equipment.
3. Auto-compilation of production/consumption/downtime/maintenance data.
4. Batch or continuous process control.
5. Open loop or feedback control, process data acquisition and display.
6. Precise motion/position control.
7. Reference generation, drive system computation, control and coordination.
8. Adaptability of control system to computers, colour/monochrome VDUs, data logging
printers.
9. Hierarchical control and data acquisition system.
of
eted
able
ing
the
ging
P rogrammable Controllers 447j
Following is a typical list (not exhaustive) of applications of programmable controller:
Tyre manufacture
Progrmmable controllers are ideal for controlling sequencing of events. For example in the tyre
manufacturing process-the events like serving plies in the right order, rotary movement of
drums, multiplanary movement of the spindles, and so onfinally transform the raw material into
the product (tyre).
Tyre curing press
Programmable controllers provide correct sequencing of the curing cycle, time measurement
and control in each cycle. They monitor parameters such as temperature, pressure during a
curing cycle and annunciate faults to the operator. Programmable controllers can also generate
report for each shift with details about good cures, press downtime, etc.
Programmable controllers can also be used for controlling the processes like mixing of the
raw rubber with carbon black, oil and other chemical additives, in rubber mixers.
Plastic injection moulding
Variables such as temperature and pressure can be controlled by the programmable controller,
thus optimising the injection moulding process. Programmable controllers also control the
velocity levels of injection to maintain consistent filling, thus reducing surface defects and
shortening cycle time.
Programmable controllers are widely used for controlling the processing of synthetic
rubber, manufacturing of traveller cases, plastic toys and so on.
Chemical batching
The batching ratios of various ingredients used in aprocess can be controlled by programmable
controllers. The controllers also determine the rate of discharge of each ingredient.
Predetermined batch recipes stored in the programmable controllers can be easily selected by
the operator depending upon the production schedule.
Ammonia and ethylene processing
Programmable controllers control and monitor compressors which are used in the
manufacturing process of ammonia, ethylene and other chemicals. Qualitative parameters like,
temperature, power consumption, vibration, pressure, suction flow, etc are measured by the
programmable controller.
In several other applications such as emergency/safety shutdown system, Automatic Wall
Test (AWT), Pump-on control, water treatment, crude separation, Lease Automatic Custody
Transfer Systems (LACTS), oil field control systems etc, programmable controllers are widely
used.
448 Computer-Based Industrial Control
Pulp batch blending
A major application area for programmable controllers is sequence control and quantity
measurement of ingredients and storage of recipes for the blending process. The programmable
controller also allows the operator to change the composition of the ingredients, if required. It
also provides hard copy print-outs of batch/shift production, raw material and energy
consumption.
Paper mill digester
Programmable controllers provide control of pulp digesters for the process of making pulp from
wood chips. They calculate and control the amount of chips, based on density and the digester
volume; determine, the quantity of cooking liquors and add the required amounts in sequence.
Programmable controllers also control temperature till cooking is completed .
Gypsum board plant
.~
Programmable controllers are used for controlling the three main sections of a gypsum board
plant-furnace section where the programmable controller precisely controls the furnace
temperature for preparation of wet board, 'wet and transfer' section control for partial drying of
the board and cutting to preset length, and finally the 'take off' section where the board is dried
completely in a hot air furnace controlled by the programmable controller.
Besides, programmable controllers are also used for controlling wood yards, paper mill
production, energy management, boiler, soot blowers and production of various kinds of
laminates.
Material handling, weighing and conveying
Programmable controllers can be used to advantage in weighing predetermined quantities of
raw materials, carrying it over agroup of conveyors at apredetermined flow rate, and taken to
the production centre. In addition, programmable controllers monitor conveyors for faults and
annunciate alarms.
Stacker-reclaimer
Programmable controllers control movements of the booms for stacking and reclaiming
operation in desired patterns. A single programmable controller can be used to control agroup
of stacker-reclaimers for co-ordinated movements.
Storage and retrieval
In warehouses, programmable controllers control movements of cranes, for easy storage and
retrieval.. Inventory control figures are also generated and provided on request.
ntity
table
xl. It
ergy
from
;ester
ence.
)oard
mace
ngof
dried
. mill
ds of
iesof
cen to
ts and
iming
group
~eand
P rogrammable Controllers " 9
Plating line
Programmable controllers control movements of the hoist (which can traverse right, left, upand
down) through various plating solutions based on a set pattern. The programmable controller
keeps track of the location of the hoist at any point of time in the line.
Steel plants extensively use programmable controllers in coal yards, sinter yards, blast
furnace charging. Programmable controllers are also used for storage, retrieval and packing of
urea in fertilizer plants, coal/ash handling in power plants.
Manufacturing machines/production machines
Programmable controllers perform sequencing and inte~king of high speed production
machines. They also generate data regarding the productio~ rate of controlled machines,
downtime etc. Programmable controllers with remote IIOs can be used for monitoring and
controlling production machines at various locations in a large works complex.
'Cut to length' line
This advanced position control capability makes programmable controllers ideal in precision
'cut to length' lines. In addition, the programmable controller also performs sequencing and
interlocking functions.
Tool changing
Programmable controllers can be used for tool changing in large production machines like
machining centres. The programmable controller keeps track of as to when the tool is to be
changed (based on tine type of machining to be done).
Programmable controllers are also used for machine fault monitoring and diagnostics,
transfer lines, robot controls, Flexible Manufacturing Systems (FMS), special purpose
machines, etc.
10.8 CONCLUSIONS
The applications of today's controller have gone far beyond simple control functions of its
predecessors. Technology has not only made the controllers more capable, but also more
affordable. Programmable controllers have become intelligent decision-making machines with a
wide scope of applications that range from variable control functions, data acquisition, to report
generation and supervisory control.
SUGGESTED READING
Babb, M., Allen-Bradley introduces a new line of PLCs, Contr. Engg., 35, No. 10, pp. 57-59,
1988.
450 Computer-Based Industrial Control
Babb, M., PLC manufacturers get ready to take on the world, Contr. Engg., 36, No.2, pp. 61-65,
1989.
Baron, G.R., Application of programmable controllers in process interlocks and shutdowns, ISA
Joint Spring Symp., Houston, Texas, 1983.
Brickley, G.J ., New development in programmable controllers and peripherals, Cont. Engg., 34,
No.1, pp. 76-79, 1987,
--, G.J ., Variety of languages offered in PLCs, Contr. Engg., 35, No.1, pp. 44-46, 1988.
Flynn, W.R., Fifth annual programmable controller update, Contr. Engg., 35, No.1, pp. 51-55,
1988.
Griffiths, C., Programmable controllers push in process control, C&I, No.1, pp. 35-36, 1987.
J ohnson, D., Programmable controllers for Factory Automation, Marcel Dekker, New York,
1987.
Quatse, T.J ., Programmable controllers of the future, Contr. Engg., 33, No, 1, pp. 59-62, 1986.
Tinharn, B., The changing face of programmable controllers, C&I, No.1, pp. 29-32, 1987.
11.]
Simu
decac
espec
plant
of me
systei
~
aeron
objeci
(e.g. (
simul:
andla
its att
analog
Tl
~
numer
descrij
Dueto
mather
progra
system
design:
could I
compin

You might also like