Escolar Documentos
Profissional Documentos
Cultura Documentos
B. E. (ELECTRONICS)
PROGRAMMABLE
LOGIC
CONTROLLER
Prepared by:
Guided by:
B V M ENGINEERING COLLEGE
SARDAR PATEL UNIVERSITY
VALLABH VIDYANAGAR – 388120
CERTIFICATE
Date:
We are grateful to Mr. V.D. PATEL for his valuable suggestions and
guidance throughout the making of our project. We also thank the staff
members Mr. V. K. THAKAR and Mr. N. M. PATEL for their constant
support to us throughout our work.
Lastly a mention must be made of all the people who have helped us
directly or indirectly during the preparation of our project including the
peons.
Chapter 1
INTRODUCTION
5. Eliminate hardware items like Timers, counters and Auxiliary relays. The
presence for timers and counters has easy accessibility.
6. PLC can control a variety of devices and eliminates the need for
customized controls.
7. Easy diagnostic facilities are provided as a part of the system. Diagnosis
of the external systems also becomes very simple. Thus easy
service/maintenance.
9. It has total protections against obsolescence and has wide scope for
upgradation.
Chapter 2
PLC ARCHITECTURE
A PLC is basically a black box with a number of inputs from, and a number of
outputs to, the outside world. It can make decisions, store data, do timing cycles, do
simple arithmetic, convert codes, and so on. The basic difference between this black
box and a hardware logic system using IC chips or a relay controlled system, is that
specific coded messages are stored in areas called program memory, which are
PROM or ROM and RAM chips. It is, however, much easier to change a program
when a different process is required than to rewire the control system. For example,
it may take electricians a couple of weeks to require a pipe mill, whereas a
programmer will spend only a fraction of this time to reprogram a PLC since no wires
will have to be changed. In addition, various recipes can be stored in memory and
accessed when required, making the program extremely flexible.
The system operates through interaction with the processor and program memory.
When the power to the system is turned on, the processor reads the first instruction
stored in memory and acts on this instruction. When completed, it goes back to the
memory for the next instruction, and so on until task is complete. This operation is
called the fetch-execute cycle. The processor communicates with the outside world
via input and output modules.
1. Input/output Section
The I/O section contains input modules and output modules. Functionally, the input
modules are equivalent to the signal converters (i.e. Analog to Digital or high power to
low power). All modern PLC input modules use optical devices to accomplish
electrically isolated coupling between the input circuit and the processor electronics.
Each input device is wired to a particular input terminal on the I/O section. Thus if the
switch is closed, 5v dc appears on input terminal, converts this dc voltage to a digital 1
and sends it to the processor via programmable peripheral interface (PPI). Conversely, if
the switch is open, no dc voltage appears on input terminal. Input section will respond to
this condition by sending a digital 0 to the processor. The other input terminals behave
identically.
The Processor
The processor of a PLC holds and executes the user program. In order to carry out
this job, the processor must store the most up-to-date input and output conditions.
The input conditions are stored in the input image table, which is a portion of the
processor’s memory. That is, every single input module in the I/O section has assigned
to it a particular location within the input image table. That particular location is
dedicated solely to the task of keeping track of the latest condition of its input terminal.
As mentioned in earlier section, if the input terminal has 5v dc power fed to it by its input
device, the location within the input image table contains a binary 1(HI); if the input
terminal has no 5v dc power fed to it, the location contains a binary 0(LO).
The processor needs to know the latest input conditions because the user program
instructions are contingent upon those conditions. In other words, an individual
instruction may have one outcome if a particular input is HI and a different outcome if
that input is LO.
The output conditions are stored in the output image table, which is another portion of
the processor’s memory. The output image table bears the same relation to the output
interface of the I/O section that while terminals are analog inputs. You can directly
connect any analog input to the processor via these terminals. Analog signal from these
terminals is first converted to digital value via programmable peripheral interface (PPI).
The I/O section’s output modules are functionally the same as the output amplifiers.
They receive a low power digital signal from the processor and convert it into a high
power signal capable of driving an industrial load. A modern PLC output module is
optically isolated, and uses a triac, power transistor or relay as the series connected load
controlling device. Terminal 1 to 8 are these type of O/P terminals whereas terminal D/A
is Analog output terminal from processor. Each output device is wired to a particular
output terminal on the I/O interface. Thus, for example, if output module 1 receives a
digital 1 by applying 5v dc to output terminal 1, thereby illuminating LED is
extinguished.
Besides 5v dc (TTL devices), I/O module are also for interfacing to other industrial
levels, including 12v dc.
The input image table bears to the input modules. That is, every single output module
has assigned to it a particular memory location is dedicated solely to the task of keeping
track of the latest condition of its output module.
Of course, the output situation differs from the input situation with regard to the direction
of information flow is from the output image table to the output modules, while in the
input situation the information flow is from the input modules to the input image table.
The locations within the input and output image tables are identified by addresses, which
refers to unique address of each terminal.
The subsection of the processor that actually performs the program execution will
be called the central processing unit (CPU) with reference to input and output image table
CPU executes the user program and continuously updates the output image table.
The output image table has a dual nature; its first function is to receive immediate
information from the CPU and pass if on to the output modules of the I/O section; but
secondly, it also must be capable of passing output information “backward” to the CPU,
when the user program instruction that the CPU is working on calls for an item of output
information. The input image table does not have its dual nature. Its single mission is to
acquire information from the input modules and pass that information “forward” to the
CPU when the instruction that the CPU is working on calls for an item of input
information.
A particular portion of the processor’s memory is used for storing the user program
instructions. We will use the name user program memory to refer to this processor
subsection.
Before a PLC can begin controlling an industrial system, a human user must enter the
coded instructions that make up the user program. This procedure called programming
the PLC.
As the user enters instructions, they are automatically stored at sequential locations
within the user program memory. This sequential placement of program instructions is
self-regulated by the PLC, with no discretion needed by the human user.
The total number of instructions in the user program can range from a half dozen or
so, for controlling a simple machine, to several thousand, for controlling a complex
machine or process.
After the programming procedure is complete, the human user manually switches the
PLC out to PROGRAM mode into RUN mode, which causes the CPU to start executing
the program from beginning to end repeatedly.
As long as the PLC is left in the RUN mode, the processor executes the user program
over and over again. Figure depicts the entire repetitive series of events. Beginning at
the top of the circle representing the scan cycle, the first operation is the input scan.
During the input scan, the current status of every input module is stored in the input
image table, bringing it up to date.
Following the input scan, the processor enters its user program execution. Sometimes
called “program scan”. The program executes with reference to input and output image
tables and updates output image table.
Throughout the user program execution, the processor continuously keeps its output
image table up to date, as stated earlier. However, the output modules themselves are not
kept continuously up to date. Instead, the entire output image table is transferred to the
output module during the output scan following the program execution.
The function of the operating system is to present the user with the equivalent of an
extended machine or virtual machine that is easier to program than the underlying
hardware.
Due to this operating system, PLC is very easy to program. It can be programmed
using electrical schemes with familiar relay symbols so that a plant electrician can easily
access the PLC. Even though he does not know the assembly language or even if he may
not have any familiarity with computers and electronics, he will be able to program the
PLC.
The function of PLC Operating system is:
5. As per the status of output image table controls the output devices.
6. To provide user-friendly functions.
This O.S. makes supervision over entire system, so O.S. programs are said to
running in supervisory mode.
When the user completely enters his program in user memory, he transfers control
from PROGRAM mode to RUN mode. In RUN mode the control of the whole system is
transferred to operating system. Now operating system takes care of the whole system
such that the whole system becomes automatic and appears as magic to users.
Chapter 3
SYSTEM OVERVIEW:
This low cost PLC system was designed to satisfy hunger of Automation of
Indian Industry and also helps beginners as well as development engineers to get into
Automation field.
The CPU uses the 89c51 microcontroller, which operates at 11.0592Mhz. It has
8k RAM, which can be used as data memory, 8k RAM that can be used as program
memory as well as data memory, 8k EEPROM that can be used as program memory.
This part of system is on separate board connected to processor via cable. It allows
the processor to communicate with the outside world. It is also called Data Acquisition
System (DAS).
This part of system provides 4 digital inputs consisting of 2 dc and 2 ac, 4 digital
outputs consisting of 2 dc and 2 ac each. It also provides 8 analog inputs with following
ranges:
4. 0v to 5v (five channel).
(3) Timer/Counter:
The system has 2 timers or 2 counters or 1 timer and 1 counter. The timer provides
maximum of 255sec delay and the counter provides maximum of 255 counts.
(4) Serial Communication:
The system uses RS-232 serial data standard. Chip ICL232 is used as communication
interface between RS-232 standard and TTL logic.
This system uses personal computer (PC) as programming device. The user can write
program in user friendly language. The programming devices (PC) converts this user
friendly language program into machine understandable language and transmit it to the
PLC board via serial communication.
This system provides +12v and -12v with maximum 2amps and +5v with maximum
of 1amps.
Chapter 4
HARDWARE CONFIGURATION
1. Microcontroller:
Here we are using 89c51 microcontroller, which has one full duplex serial data
receiver/transmitter, which is used for serial communication having interface with
ICL232 chip.
It has also two 16 bits timer/counter namely T0 and T1 which are used for timer and
counter applications. Timer T1 is used to set baud rate for serial communication in
program mode.
2. Memory:
b. 8k of RAM which is used as data memory. The CPU can read data from and
write data into this memory. This memory has address from 0000h to 1fffh.
Here two 8255 are used as PPI. One is used to control the ADC and DAC, while
other is used for Input/output interface. The addresses for the 8255 used to control ADC
and DAC are:
Port A: 6000h
Port B: 6001h
Port C: 6002h
The addresses for the 8255 used for Input/output interfaces are:
Port A: 8000h
Port B: 8001h
Port C: 8002h
Here ADC0809 is used as an 8 bit ADC. 8255 whose addresses are 6xxxh is used to
give control signals to this ADC. The port pins of 8255 are connected with the control
pins of ADC as shown below:
Note: Here PB4 is connected to OE pin of ADC through NOT Gate. So we have to give
negative pulse by pin PB4 to pin OE to give Output Enable.
This ADC is used to convert the real world analog data into digital form.
5. Digital to Analog Converter (DAC):
Here the only control signal is “Start of Conversion”, which is connected with PC0 of
8255 having address 6xxxh. For converting the digital data to analog form first make
PC0 low and then put digital data on port0 of 89c51. Now make PC0 high.
This particular part of the system is idle in our application, but it is kept for future
expansion.
6. Serial Communication:
Switches:
b. Reset Switch.
Indicators:
b. Reset LED(red)
DC Input:
1. 0v to 5v – LOW
3. Optocoupler Isolation.
AC Input:
1. 0v to 10v-LOW
2. 20v to 25v-HIGH
4. Optocoupler Isolation.
9. Digital Outputs:
DC outputs:
1. 0v t0 3v-0v
2. 3.5v to 5v-24v
4. Optocoupler Isolation.
AC outputs:
3. Optocoupler Isolation.
ADDRESSES
AC Output:
Output Address
DC Output:
Output Address
AC Input:
Input Address
In 1(Normally Open) 04
In 2(Normally Open) 05
In 1(Normally Close) 24
In 2(Normally Close) 25
DC Input:
Input Address
In 1(Normally Open) 06
In 2(Normally Open) 07
In 1(Normally Close) 26
In 2(Normally close) 27
Analog Input:
Input Address
In 1(Normally Open) 08
In 2(Normally Open) 09
In 3(Normally Open) 0a
In 4(Normally Open) 0b
In 5(Normally Open) 0c
In 6(Normally Open) 0d
In 7(Normally Open) 0e
In 8(Normally Open) 0f
In 1(Normally Close) 28
In 2(Normally Close) 29
In 3(Normally Close) 2a
In 4(Normally Close) 2b
In 5(Normally Close) 2c
In 6(Normally Close) 2d
In 7(Normally Close) 2e
In 8(Normally Close) 2f
Counter/Timer:
Counter/Timer Address
Counter 0/Timer 0 00
(Normally OFF)
Counter 1/Timer 1 01
(Normally OFF)
Counter 0/Timer 0 02
(Normally ON)
Counter 1/Timer 1 03
(Normally ON)
Note: The timer and counter has same address because at a time we can use only one of
them i.e. either counter 0 with address 00 or timer o with address 00. Here normally OFF
means when timer/counter is running this remains low and when count of timer/counter
reaches it becomes high. Reverse is the case for normally ON.
Chapter 6
SOFTWARE DESCRIPTION
This chapter explains how to program the PLC. It describes how to write a
program, how the program is structured and representation of the programming language.
Writing a Program:
A control program specifies a series of operations that tell the programmable controller
how it has to control a system. For example, a control program might be the series of
operations that tell the PLC how to use open loop control or close loop control for a
specific system. We must write the program in a specific programming language and
according to some specific rules so that the programmable controller can understand it.
Method of Representation:
STL represents the program as a sequence of operation mnemonics. A statement has the
following format:
A I 04
3. Ladder Diagram(LAD):
4. Graph 5:
I Inputs
U Outputs
T Timer
C Counter
A AND Operation
O OR Operation
= Equals
E End of Program
STATEMENT LIST (STL) PROGRAMMING LANGUAGE:
AND
OR
TIMER
COUNTER
AND Operation:
The AND operation scans to see if various conditions are satisfied simultaneously.
Circuit Diagram
I 05
U 01
A I 04
A I 05
I 04 I 05 U 01 = U 01
OR Operation:
The OR operation scans to see if one of two conditions has been satisfied.
Circuit Diagram:
U 01
Representation in STL:
O I 04
O I 05
= U 01
I 04
U 01
I 05
Representation in STL:
O I 04
O I 05
A
O I 06
O I 07
= U 01
Output U 01 is “1” when at-least one AND condition has been satisfied. Output U 01 is
“0” when neither of the two AND conditions has been satisfied.
Representation in STL:
A I 04
A I 05
O
A I 06
A I 07
= U 01
I 04
I 05
I 04 I 06
U 01
I 05 I 07
I 07
U 01 I 06
Timer Operation:
Representation in STL:
A I 04
A I 05
= T 00 10
O I 05
O T 00
= U 01
If both inputs I 04 and I 05 are “1” then only timer T 00 is activated. The count
10 after T 00 in third instruction specifies that the timer should continue till 10 seconds.
O T 00 specifies that the output U 01 is “1” only if I 05 is “1” or the count of timer has
reached 0. If we specify T 02 which is normally ON then the output U 01 is “1” if I 05 is
“1” or during timer is running.
This is for timer 0 if we use timer 1 then T 01 will remain “0” during the timer
run and normally ON T 03 will remain “1” during timer run.
Counter Operation:
Representation in STL:
A I 04
A I 05
= C 00 10
O I 06
O C 00
= U 01
If both the inputs I 04 and I 05 are “1” then only counter 0 is activated. 10 in
third instruction represent the count of the counter. The output U 01 becomes “1” if input
I 06 is “1” or count of the counter becomes 0.
Same applies for counter in normally ON and normally OFF mode as in case of
timer.
Chapter 7
A I 04 right;
Ai 04 wrong;
AI 04 wrong;
A I 04 wrong;
A I04 wrong;
AI 04 wrong;
AI04 wrong;
Clear out all the previously written instruction from the file before writing instruction for
another application.
= T 00 0a right;
= T 00 0A wrong;
= T 00 ff right;
= T 00 255 wrong;
Chapter 8
Switch on the PLC and confirm whether the power indicator LED ON or
not. If it is ON, switch the PLC in PROGRAM mode. Confirm that the RED
LED indicating the PROGRAM mode is ON. Now PLC is ready for receiving
the control program written on PC.
Execute the program named “PLC” on PC in TC directory (i.e. TURBO
C).
Switch the PLC in RUN mode by changing the switch on RUN mode and
then press RESET switch. Confirm the GREEN LED indicating the RUN
mode is ON.
If one of the four FAULT LEDs is ON then check the reason and again
load whole of the program and repeat the above mentioned procedure.
TROUBLESHOOTING
If “POWER ON” LED (red) is OFF after switch ON the power, check the
FUSE. If blown then replace it.
If FAULT LED (red) is ON then “A” or “O” operand might have been
missing in start of instruction.
i.e. A I 04
I 04
Chapter 9
SOFTWARE ANALYSIS
As soon as we put the PLC in RUN mod, it reads the status of all the I/P. It stores
the status in bit addressable memory location as ‘1’ or ‘0’ depends upon the status. Now
it runs the program and performs operation on the status bit directed as user program. It
stores the result in another bit addressable memory location which are corresponds to the
O/P. After this it updates all the O/P.
♦ Two memory slots of 8k each are not in present use. One of these slots
can be used for RAM and another one can be used for EEPROM. Using these
slots we can get more 8k of DATA memory using RAM and more 8k of
PROGRAM memory using EEPROM.
♦ We can also design stepper motor controller, which can be interfaced with
PLC.
♦ Using chip 8279 we can provide keyboard and display facility on PLC
board.
Chapter 10
APPLICATIONS OF PLC
In the present industrial world, a flexible system that can be controlled by user at
site is preferred. Systems, whose logic can be modified but still, used without disturbing
its connection to external world, is achieved by PLC. Utilizing the industrial sensors
such as limit switches, ON-OFF switches, timer contact, counter contact etc., PLC
controls the total system. The drive to the solenoid valves, motors, indicators,
enunciators, etc are controlled by the PLCs.
The above said controlling elements (normally called as inputs of PLCs) and
controlled elements (called as outputs of PLCs) exist abundantly in any industry. These
inputs, outputs, timers, counters, auxiliary contacts are integral parts of all industries. As
such, it is difficult to define where a PLC cannot be used.
Proper application of a PLC begins with conversion of information into convenient
parameters to save money, time and effort and hence easy operation in plants and
laboratories.
1. The batch processes in chemical, cement, food and paper industries which
are sequential in nature, requiring time of event based decisions is
controlled by PLCs.
2. In large process plants PLCs are being increasingly used for automatic
start up and shut down of critical equipment. A PLC ensures that
equipment cannot be started unless all the permissive conditions for safe
start have seen established. It also monitors the conditions necessary for
safe running of the equipment and trips the equipment whenever any
abnormality in the system is detected.
FUTURE OF PLCs
The PLC offers a compromise between advance control techniques and present day
technology. It is extremely difficult to forecast the rate and form of progress of PLCs,
but there is strong evidence that development is both rapid and cumulative. Though a
PLC is not designed to replace a computer, it is useful and cost effective for medium
sized control systems. With the capability of functioning as local controllers in
distributed control systems. PLCs will retain their application in large process plants.
In India every process industry is replacing relay control systems by PLCs and will go
for PFCs in near future. In the near future every flats and offices may possess PFCs to
control room temperature, as elevator controller, maintain water tank levels, as small
telephone exchange etc.
BIBLIOGRAPHY
Valve A Agitator
Float switch 1
Valve B
Float switch 2
Problem:
NO NC
Stop Switch I 04 I 24
Start Switch I 05 I 25
Float Switch 1 I 06 I 26
Float Switch 2 I 07 I 27
Valve A U 00 U 20
Valve B U 01 U 21
Agitator Motor U 02 U 22
Control Relay U 03 U 23
The ladder diagram of this system is given below.
I 04 I 05
O 03
O 03
I 06 O 03 I 07 O 00
O 00 EN
T 00
30
I 06 O 03 O 01 sec
DN
DN I 06
O 02
I 07 DN
O 01
O 01
Program in STL language:
A I 04
A
O I 05
O U 03
= U 03
A I 26
A U 03
A
O I 27
O U 00
= U 00
A I 06
A U 03
A U 21
= T 00 1f
A T 02
A I 06
= U 02
A I 07
A
O T 00
O U 01
= U 01
E
In first rung the stop switch is connected in series with start switch to
activate the control relay. The stop switch is normally close type where as start switch is
normally open type. So when the start switch is pressed control relay is activated. The
start switch is push to on type so normally on contact of control relay is used to latch.
In second rung the NC contact of float switch 1 and NO contact of control relay is
in series with valve A. When start switch is pressed and the liquid level is below float
switch 1 the valve A is opened and it is closed when level touches the float switch 1.The
NC contact of float switch 2 is latched by the NO contact of valve A so valve A does not
opened as soon as the level falls below the float switch 1 level and remain close till the
tank is fully emptied.
In third rung the normally open contact of float switch 1is connected in series
with timer so when liquid level reaches to float switch 1, the timer is started.
In fourth rung the NC contact of timer DN bit is connected in series with NO
contact of float switch 1 to Agitator motor. When liquid level is at float switch 1and the
timer is running the motor is turned on.
In fifth rung The NO contact of float switch 2 is connected in series with NO DN
bit of timer. So when the liquid level is above the float switch 2 and timer turned off the
valve B is opened.
INDEX
1. Introduction 4
1.1 Role of Electronics in Automation.
1.2 Definition of PLC.
1.3 Benefits of Programmable Controllers.
2. PLC Architecture 7
1.1 The Parts of Programmable Controllers.
3. System Overview. 12
4. Hardware Configuration 14
5. Addresses 19
6. Software Description. 22
6.1 Writing a Program.
6.2 Method of Representation.
6.3 Operand Areas
6.4 Statement List(STL) Programming
Language.
BIBLIOGRAPHY 38