You are on page 1of 112

ME6405

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Section Objectives:
Before the invention of the Programmable Logic Controller
(PLC), most industrial control was done using relay control
panels.
Switches and relays can be arranged in circuits to make
logical decisions. Output from these circuits can be used to
drive loads such as motors, heaters, or electromagnetic
coils. A relay control panel is comprised of a single to
thousands of these circuits.
In this Section, relay control panels will be presented.
GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Relay Control Panel Components : Switch


2
1

2
1

Off: contacts 1 and 2 connected

On: contacts 1 and 3 connected

Pins 1 and 2 are normally closed since they are connected when the
switch is off. T Pins 1 and 2 are not connected when the switch is on.
Pins 1 and 3 are normally open since they are not connected when the
switch is off. Pins 1 and 3 are connected when the switch is on.

(Note: Although this is a toggle switch, this switch can symbolize any type
of input source such as push button switches, sensors, power supplies,
etc. in this lecture.)
GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Relay Control Panel Components : Coil

Coil off

Coil on

(Note: Although this is really an electromagnetic coil, this can symbolize


any load such as a pump, dc motor, heating element, light, etc. for this
lecture.)

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Relay Control Panel Components : Relay


1

Off: Coil off, contacts


1 and 2 connected

ON: Coil on, contacts


1 and 3 connected

A relay is a combination of coil and switch.


With coil off, the switch goes to its normal position off.
With coil on, the switch is pulled by electromagnetic force to its on
position.

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Relay Logic : NOT


Using one switch, a logical NOT operation can
be constructed. An example is given below:
NOT Switch 1 = Coil

V+

Switch 1

Coil
2

1
3

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Relay Logic : NOT (Continued)


NOT Switch 1 off = Coil on
V+

Switch 1

Coil
2

1
3

NOT Switch 1 on = Coil off


V+

Switch 1

Coil
2

1
3

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Relay Logic : AND


Using two switches, a logical AND operation can
be constructed. An example is given below:
Switch 1 AND Switch 2 = Coil

V+

Switch 1

Switch 2

Coil

2
2

1
1
3

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Relay Logic : AND (continued)


Switch 1 off AND Switch 2 off = Coil off
V+

Switch 1

Switch 2

Coil

2
2

1
1
3

Switch 1 on AND Switch 2 off = Coil off


V+

Switch 1

Switch 2

Coil

2
2

1
1
3

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Relay Logic : AND (continued)


Switch 1 off AND Switch 2 on = Coil off
V+

Switch 1

Switch 2

Coil

2
2

1
1
3

Switch 1 on AND Switch 2 on = Coil on


V+

Switch 1

Switch 2

Coil

2
2

1
1
3

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Relay Logic : OR
Using two switches, a logical OR operation can
be constructed. An example is given below:
Switch 1 OR Switch 2 = Coil
V+

Switch 1
2

Coil

1
3

Switch 2
2
1
3

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Relay Logic : OR
Switch 1 off OR Switch 2 off = Coil off
V+

Switch 1
2

Coil

1
3

Switch 2
2
1
3

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Relay Logic : OR
Switch 1 on OR Switch 2 off = Coil on
V+

Switch 1
2

Coil

1
3

Switch 2
2
1
3

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Relay Logic : OR
Switch 1 off OR Switch 2 on = Coil on
V+

Switch 1
2

Coil

1
3

Switch 2
2
1
3

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Relay Logic : OR
Switch 1 on OR Switch 2 on = Coil on
V+

Switch 1
2

Coil

1
3

Switch 2
2
1
3

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Relay Logic : XOR


Using two switches and four relays, a logical XOR operation can be
constructed. An example is given below:
Switch 1 XOR Switch 2 = Coil
V+

Switch 1
2

V+

V+

Coil
3
2

Switch 2
1

2
1
3
3

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Relay Logic : XOR (continued)


Switch 1 off XOR Switch 2 off = Coil off

V+

Switch 1
2

V+

V+

Coil
3
2

Switch 2
1

2
1
3
3

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Relay Logic : XOR (continued)


Switch 1 on XOR Switch 2 off = Coil on

V+

Switch 1
2

V+

V+

Coil
3
2

Switch 2
1

2
1
3
3

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Relay Logic : XOR (continued)


Switch 1 off XOR Switch 2 on = Coil on

V+

Switch 1
2

V+

V+

Coil
3
2

Switch 2
1

1
3
3

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Relay Logic : XOR (continued)


Switch 1 on XOR Switch 2 on = Coil off

V+

Switch 1
2

V+

V+

Coil
3
2

Switch 2
1

1
3
3

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Problems with relay control panels:


Mechanical Relays and switches failed regularly (coil failure, contact
wear and contamination, etc.)
Difficult to diagnose problems and replace relays and switches
Difficult to change hardwired logic (example: changing an OR circuit
to XOR)
Consumed a lot of power

To address these problems, Richard E. Morley of Bedford


Associates invented the first PLC as a consulting project for
General Electric in 1968. Bedford Associates is currently named
Modicon and is a supplier of PLCs.

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Section Objectives:
Basic PLC Components needed to replace relay control
panels will be presented. These include:
Isolated Power Supply

Digital Input and Output pins ( DI/0)

Micro-controller

Memory

(Note: Advanced features such as Timers, Interrupts, Counters, etc.


will not be discussed in this lecture)
For this lecture, Siemens A&D S7
314C-2 PtP PLC installed in the
Mechatronics Laboratory will be used
as an example.
Siemens 314C-2 PtP

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Basic PLC: Isolated Power Supply


Every PLC has an external or internal Isolated Power Supply.
Isolated Power Supplies can have more than one isolated
output.
One isolated output is reserved for the PLC micro-controller. The
rest is reserved for other components such as DI/O.
Normally Power supplies are high voltage. Typically 24 Volts for
industrial PLCs.
The S7 314C-2 PtP PLC uses the
Siemens A&D PS307 5A power
supply. The PS307 5A can source 5
amps of current at 24 volts. The PS307
5A has 3 isolated outputs.
Siemens PS307 5A

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Basic PLC: Micro-controller


Every PLC at least one micro-controller

The S7 314C-2 PtP PLC uses a custom micro-controller.


Designed by Siemens A&D and manufactured by Infineon
Technologies AD.
Part Number:
Infineon
Siemens A&D
IBC 16
SXA1020A-E
S7 Controller
Specifications not given in documentation

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Basic PLC: Digital Inputs and Outputs (DI/Os)


DI/Os are electrically isolated from the micro-controller
The number of DI/Os can be increased by adding additional DI/O
modules.
Example:
The S7 314C-2 PtP PLC has 16 digital
outputs and 24 digital inputs. Can be
expanded up to 1024 DI/Os by adding
additional DI/O modules.

SM232 DI/O module

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Basic PLC: Memory


Memory on a PLC is separated into 3 main areas:
LOAD Memory

Can be RAM (dynamic) or EEPROM (retentive)

Used to store user programs

For S7 314C-2 PtP PLC : LOAD Memory located on memory card

WORK Memory

Memory is RAM

When PLC starts, Program is copied from LOAD memory to


WORK memory. The program is then executed from Work
memory.

For S7 314C-2 PtP PLC: 48K bytes of WORK memory

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Basic PLC: Memory ( Continued)


SYSTEM Memory

Memory is RAM

Is used by micro-controller to implement counters, timers, interrupt


stacks, etc..

Contains a bit for each D I/0

Contains Marker Memory. Marker memory is a free area of RAM


that can be used by the programmer. (In S7 314C-2 PtP, 258
bytes are available as Marker Memory)

Contains Process Input and Output Images. Periodically the PLC


will store the states of the inputs to the Process Input Image and
Process Output Image to the output. (In S7 314C-2 PtP, this is
limited to the first 128 bytes of input information and 128 bytes of
output information.)

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Section Objectives:
Initially PLCs were used to directly replace relay control
panels. To directly replace relay control panels based on
mechanical relays with PLCs based on a micro-controller
presented challenges. These challenges and solutions will
be discussed.

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Transition:A Simplified Programmers Model


In the simplified programmers model of relay logic, all inputs I1, I2, .., Im go
into each relay logic section. Each relay logic section then produces an
output Q.

I1,I2, ,Im

Relay Logic Section 1

Q1

I1,I2, ,Im

Relay Logic Section 2

Q2

.
.
.
I1,I2, ,Im

Relay Logic Section n

Qn

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Transition: Relay control panel execution of Model


A relay control panel will execute all relay logic sections in parallel since
each switch is capable of powering many coils at a time. If any input
changes at time t0 then all the relay logic sections will update the outputs
at time t1.
I1,I2, ,Im changes at t0

Relay Logic Section 1

Q1 changes at t1

I1,I2, ,Im changes at t0

Relay Logic Section 2

Q2 changes at t1

.
.
.
I1,I2, ,Im changes at t0

Relay Logic Section n

Qn changes at t1

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Transition: PLC execution of Model


A PLC will execute all relay logic sections in series since a microcontroller can execute only one instruction at a time. If any input changes
at time t0 then relay logic section 1 will update Q1 at t1, relay logic section
2 will update Q2 at t2, . , and relay logic section n will update Qn at tn.
I1,I2, ,Im changes at t0

Relay Logic Section 1

Q1 changes at t1

I1,I2, ,Im changes at t0

Relay Logic Section 2

Q2 changes at t2

.
.
.
I1,I2, ,Im changes at t0

Relay Logic Section n

Qn changes at tn

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Transition: Differences in Relay Control Panel vs.


PLC execution of Model
Difference 1:
Relay Control Panel The maximum time any change in input is reflected in any output is t1.
PLC The maximum time any change in input is reflected in any output is t1+t2++tN.

Difference 2:
Relay Control Panel Since this is made from analogue components. It is possible to replace
a logic section without stopping execution of other logic sections if wired correctly.
PLC This is made with a digital micro-controller. The micro-controller must be halted to
replace a logic section. All other logic sections will stop operation.

Difference 3:
Relay Control Panel Since parallel execution of logic sections, all outputs are a function of
one set of inputs.
PLC Since serial execution of logic sections, all outputs may not be a function of one set of
inputs. (example: input I2 may change as the micro-controller is processing Logic section

George
W.Woodruff
Woodruff
School
of
Mechanical
Engineering,Georgia
GeorgiaTech
Tech
Q2 are based
onof
different
inputs)
2. Therefore
QW.
George
School
Mechanical
Engineering,
1 and

ME6405

Transition: PLC Operation


To minimize the effects of differences between the Relay Control Panel and PLC
execution of the programming model, the PLC operates in the following manner:

Steps:

PLC Restarts (Warm Restart)

Reads Inputs and updates Process Input


Image

Executes User Program Once

Writes Process Output Image to Outputs

Take care of system processes ( such as


communications with other PLCs, updating
user program, etc..)

Loop Back to step 2

Warm Restart

Update Process Image Input

Update Process Image Output

PLC System Processes

scan cycle

User Program

Steps 2 through 5 is called a scan cycle. (Note:


some people may refer to a PLC as a
Programmable Loop Controller because of
GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
Mechanical
Engineering,
GeorgiaTech
Tech
the scan Engineering,
cycle
loop.) Georgia
George

ME6405

Transition: PLC Operation


To Minimize Difference 1:
Time to complete a scan cycle can be set by user. If PLC violates the scan cycle, an interrupt
routine can be run or the PLC will halt execution. (For S7 314C-2 PtP, maximum scan
cycle allowed is 6 sec)

To Minimize Difference 2:
If a part of the user program is replaced, the new part is written first to LOAD memory. During
step 5, PLC System Processes, the new part is copied into WORK memory from LOAD
Memory. During the next scan cycle, the new part of the user program will be executed.

To Minimize Difference 3:
If the programmer uses the inputs stored in the Process Input Image, the user program will
have access to the same inputs per scan cycle. Also if the programmer, writes outputs to
the Process Output Image, all the outputs will be updated simultaneously during step 4,
Update Process Output Image.

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Section Objectives:
The biggest transition from relay control panels to PLCs
was the transition from the hard wired relay logic to logic
defined by user program. In order to allow established relay
logic users to program the PLC, a visual programming
language that looks like a relay control panel was created.
This visual programming language is called Ladder Logic.
In this section, basic Ladder Logic will be presented.

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Ladder Logic: System Memory Addressing


To address a bit of memory

___ ___ . ___

Memory Area
Notation

Byte Address

Bit Number

To address a byte, word, or double word

___ ___ ___

Memory Area
Notation

Size of Addressed
Memory Notation

Byte Address

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Ladder Logic: System Memory Addressing (continued)


Memory Area Notations:
Notation

Memory Area
I

Process Input Image

Process Output Image

Marker Memory

PI

Peripheral Input ( Actual Input Pins)

PQ

Peripheral Output ( Actual Output Pins)

Timer Storage Area

Counter Storage Area

Local Memory of current Data Block

DB

Data Block Memory

(Note: Advanced features such as Timers, Counters, Data


George
W.will
Woodruff
SchoolofofMechanical
Mechanical
Engineering,Georgia
GeorgiaTech
Tech
Blocks
not beSchool
discussed
in this lecture)
George
W.
Woodruff
Engineering,

ME6405

Ladder Logic: System Memory Addressing (continued)


Size of Addressed Memory Notations:
Notation

Size of Addressed Memory


B

Byte (8 bits)

Word (16 bits)

Double Word (32 bits)

Byte Address:
Each Memory Area is addressed in one byte increments
starting at byte 0.

Bit Number:
MSBit is 7 and LSBit is 0
GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Ladder Logic: System Memory Addressing (continued)


Examples:
Marker Area
Byte 0

M1.3
(Note: only bit 3 of
Marker Area byte 1)

MB0

Byte 1
Byte 2

MW1

Byte 3
Byte 4

MD3

Byte 5
Byte 6

MD4

Byte 7

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Ladder Logic: System Memory Addressing (continued)


Examples:
Peripheral Input
Area
Byte 0

PI2.5
(Note: only bit 5 of
Peripherial Input Area byte 2)

Byte 1

PIB1

Byte 2
Byte 3
Byte 4
Byte 5

PID4
Byte 6
Byte 7

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Ladder Logic : The Ladder


A ladder logic program has a ladder look to it. The sides of the ladder
are the power rail on the left and ground rail on the right. The rungs of the
ladder consists of Virtual Relay Components. (Note: Rungs are called
Networks in Step 7)

Virtual Relay Components


Ground Rail

Power Rail

Virtual Relay Components

Virtual Relay Components

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Ladder Logic : Virtual Relays


Any Marker or Function Block memory bit can be one or more virtual relays.
If memory bit is 0, the coils of virtual relays associated with the bit are off. If
memory bit is 1, the coils of virtual relays associated with the bit are on.
Any D I/O memory bit ( Peripheral or Process Image) is a virtual relay for a
digital input or output pin of the PLC.
Virtual Relay Components:
Mechanical Relay
1

Normally Open Switch ( equivalent to pins 1


and 3 of Mechanical Relay. If this switch is
closed for a virtual digital output relay, the
digital output pin is high. If this switch is open
for a virtual digital output relay, the digital
output pin is low )

Normally Closed Switch ( equivalent to pins 1


and 2 of Mechanical Relay)
GeorgeW.
W.Woodruff
WoodruffSchool
School
Mechanical
Engineering,
GeorgiaTech
Tech
Coil
( equivalent
to coil of Mechanical
Relay.
George
ofofMechanical
Engineering,
Georgia
Not available for virtual digital input relays)

ME6405

Ladder Logic: Rules for converting Relay Logic


to Ladder Logic
Each external switch must be connected to an input pin of a
PLC.
Each external coil or load must be connected to an output pin of
a PLC.
The relay logic must be recreated using virtual input and output
relays associated with the input and output pins.
Only possible paths from power to ground though virtual relays
need to be recreated in Ladder Logic.

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Ladder Logic : NOT


NOT Switch 1 = Coil
From Relay Logic:
V+

Switch 1

Coil
2

1
3

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Ladder Logic : NOT (continued)


Relay Logic rewired to include Virtual Input and Output Relays:
Inside PLC
V+

Switch 1

V+

V+
Coil

(Note: Wired to PLC


Input Pin Associated
with Virtual Input
Relay I0.0)

Virtual Input
Relay at I0.0

Virtual Output
Relay at Q0.0

(Note: Wired to PLC


Output Pin Associated
with Virtual Output
Relay Q0.0)

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Ladder Logic : NOT (continued)


Ladder Logic Equivalent:
Switch 1 is wired to PLC input pin associated with Virtual Input Relay
I0.0
Coil is wired to PLC output pin associated with Virtual Output Relay
Q0.0

I0.0

Q0.0

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Ladder Logic : AND


Switch 1 AND Switch 2 = Coil
From Relay Logic:
V+

Switch 1

Switch 2

Coil

2
2

1
1
3

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Ladder Logic : AND (continued)


Relay Logic rewired to include Virtual Input and Output Relays:
V+

Switch 1

V+

2
1

Inside PLC

1
3

(Note: Wired to PLC


Input Pin Associated
with Virtual Input
Relay I0.0)

V+

V+
Coil

Virtual Input
Relay at I0.0

Switch 2

3
2

(Note: Wired to PLC


Input Pin Associated
with Virtual Input
Relay I0.1) George

Virtual Input

Virtual Output
Relay at Q0.0

(Note: Wired to PLC


Output Pin Associated
with Virtual Output
Relay Q0.0)

W.Woodruff
Woodruff
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George W.
Relay
at I0.1School

ME6405

Ladder Logic : AND (continued)


Ladder Logic Equivalent:
Switch 1 is wired to PLC input pin associated with Virtual Input Relay
I0.0
Switch 2 is wired to PLC input pin associated with Virtual Input Relay
I0.1
Coil is wired to PLC output pin associated with Virtual Output Relay
Q0.0
I0.0

I0.1

Q0.0

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Ladder Logic : OR
Switch 1 OR Switch 2 = Coil
From Relay Logic:
V+

Switch 1
2

Coil

1
3

Switch 2
2
1
3

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Ladder Logic : OR (continued)


Relay Logic rewired to include Virtual Input and Output Relays:
V+

Switch 1

V+

2
1

Inside PLC

1
3

(Note: Wired to PLC


Input Pin Associated
with Virtual Input
Relay I0.0)

V+

V+
Coil

Virtual Input
Relay at I0.0

Switch 2

V+
2

(Note: Wired to PLC


Input Pin Associated
with Virtual Input
Relay I0.1) George

Virtual Input

Virtual Output
Relay at Q0.0

(Note: Wired to PLC


Output Pin Associated
with Virtual Output
Relay Q0.0)

W.Woodruff
Woodruff
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George W.
Relay
at I0.1School

ME6405

Ladder Logic : OR (continued)


Ladder Logic Equivalent:
Switch 1 is wired to PLC input pin associated with Virtual Input Relay
I0.0
Switch 2 is wired to PLC input pin associated with Virtual Input Relay
I0.1
Coil is wired to PLC output pin associated with Virtual Output Relay
Q0.0
I0.0

Q0.0

I0.1

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Ladder Logic : XOR


Switch 1 OR Switch 2 = Coil
From Relay Logic:

V+

Switch 1
2

V+

V+

Coil
3
2

Switch 2
1

2
1
3
3

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Ladder Logic : XOR (continued)


Relay Logic rewired to include Virtual Input and Output Relays:
Inside PLC
V+

Virtual Input
Relay at I0.0

Switch 1
2
1

Virtual Input
Relay at I0.0

V+

V+

(Note: Wired to PLC


Input Pin Associated
with Virtual Input
Relay I0.0)

V+

Virtual Output
Relay at Q0.0
2

V+

Coil

Switch 2
2
1

(Note: Wired to PLC


Input Pin Associated
with Virtual Input
Relay I0.1)

(Note: Wired to
PLC Output Pin
Associated with
Virtual Output
Relay PQ0.0)

Input Engineering, Georgia Tech


Virtual InputSchool of Virtual
GeorgeW.
W.Woodruff
Woodruff
Mechanical
George
School
of
Mechanical
Relay at I0.1 Engineering, Georgia Tech
Relay at I0.1

ME6405

Ladder Logic : OR (continued)


Ladder Logic Equivalent:
Switch 1 is wired to PLC input pin associated with Virtual Input Relay
I0.0
Switch 2 is wired to PLC input pin associated with Virtual Input Relay
I0.1
Coil is wired to PLC output pin associated with Virtual Output Relay
Q0.0
I0.0

I0.1

I0.0

I0.1

Q0.0

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Section Objectives:
A micro-controller can be used for more than relay logic
with virtual relays. Ladder logic has components that take
advantage of the micro-controller. These components can
be categorized as follows: bit logic,comparator, converter,
counter, data base calls, jumps, integer functions, floating
point functions, move, program control, shift/rotate, status
bits, timers, and word logic.
It is impossible to cover all of the components in one
lecture. This lecture will first explain formatting of
constants. Then, only a few categories and examples of
components will be shown.
GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Constants

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Constants

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Constants

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Constants

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Bit Logic
Available Bit logic components:
Normally Closed Switch

Positive Edge Detection

Normally Open Switch

Negative Edge Detection

Output Coil

Address Positive Edge Detection

Midline Output

Address Negative Edge Detection

Set Coil

Set-Reset Flip Flop

Reset Coil

Reset-Set Flip Flop

Invert Power Flow

Immediate Read

Save RLO into BR Memory

Immediate Write

Bit Exclusive OR
GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Bit Logic example: Set Coil and Reset Coil

Description:
Set Coil is executed only if power flows to the coil. When executed, the specified
<address> of the element is set to "1". It will remain set even if power is removed
from the coil.

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Bit Logic example: Set Coil and Reset Coil

Description:
Reset Coil is executed only if power flows to the coil. When executed, the
specified <address> of the element is reset to "0". No power flow to the coil has
no effect and the state of the element's specified address remains unchanged.
(Note: can be used to reset timers and counters)
GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Bit Logic example: Set Coil and Reset Coil


Example:
Switch 1 connected to Input 0.0
Switch 2 connected to Input 0.1
Coil connected to Output 0.0
If Switch 1 turns on then turn on Coil and keep it on even if Switch 1 is
released. If Switch 2 turns on then turn off the Coil.
I0.0

Q0.0
S

I0.1

Q0.0
R

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Comparator
Available Comparator components (Note: Integer is Word, Double Integer is
Double Word)
Integer: Equal to

Double Integer: Greater than or Equal to

Integer: Greater than

Double Integer: Less than or Equal to

Integer: Less than

Real: Equal to

Integer: Greater than or Equal to

Real: Greater than

Integer: Less than or Equal to

Real: Less than

Double Integer: Equal to

Real: Greater than or Equal to

Double Integer: Greater than

Real: Less than or Equal to

Double Integer: Less than

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Comparator example: Integer Compares

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Comparator example: Integer Compares


Example:
Coil connected to Output 0.0
If MW0 and MW2 are equal then turn on coil.
Q0.0

MW0

CMP
== I
IN1

MW2

IN2

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Jumps
Available Jump components (Note: called Logic control in Step 7 Help)
Label
Unconditional Jump
Conditional Jump
Not conditional Jump

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Jump example: Conditional Jump

Description Conditional Jump:


The micro-controller will goto the specified Label if power flows into the JUMP.
(Note: a label can be assigned to any Network)

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Jump example: Label and conditional Jump


Example:
Switch 1 connected to Input 0.0
If Switch 1 turns on then jump to label END
I0.0

END
JMP
Components

Components
END
Q0.0
I0.1
GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Integer Math
Available Integer Math components:
(Note: Integer is Word, Double Integer is Double Word)

Integer: Add

Double Integer: Subtract

Integer: Subtract

Double Integer: Multiply

Integer: Multiply

Double Integer: Divide

Integer: Divide

Double Integer: Modulus

Double Integer: Add

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Math example: Integer Add

Description:
IN1 and IN2 are added and the result is stored in OUT when power is
applied to EN . Power flows out of EN0 when power is applied to EN unless
GeorgeW.
W.Woodruff
WoodruffSchool
School of Mechanical Engineering, Georgia Tech
George
the addition
results
in overflow. of Mechanical Engineering, Georgia Tech

ME6405

Math example: Integer Add


Example:
Add 5 and integer stored at MW0. Store the result in MW2.

ADD_I
EN
5

IN1

MW0

IN2

EN0

OUT

MW2

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Move
Available Move components:
Move

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Move example:

Description:
IN is moved to Out and power flows out of EN0 when power is applied to
EN.
GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Move example:
Example:
Move 5 to MW2.

MOVE

EN

EN0

IN1

OUT

MW2

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Timer
Available Timer components:
Pulse S5 Timer

Pulse Timer Coil

Extended Pulse S5 Timer

Extended Pusle Timer Coil

On-Delay S5 Timer

On-Delay Timer Coil

Retentive On-Delay S5 Timer

Retentive On-Delay Timer Coil

Off-Delay S5 Timer

Off-Delay Timer Coil

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Timer example: Extended Pulse S5 Timer

Description:
A power transition from OFF to ON on S will restart the timer. Power flows
from Q while timer is running. The timer will run for a preset time TV.
(Note: 256
timers
allowed
inSchool
S7 314C-PtP
PLC)Engineering, Georgia Tech
George
W.
Woodruff
of
Mechanical
George W. Woodruff School of Mechanical Engineering, Georgia Tech

ME6405

Timer example:
Example:
Switch 1 connected to Input 0.0
Coil is connected to Output 0.0
Turn on coil for 10 seconds if Switch 1 is turned on.

T0
I0.0

Q0.0

S_EXt
S5T#10s

TV

BI

BCD

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Word Logic
Available Word Logic components:

AND Word

AND Double Word

OR Word

OR Double Word

XOR Word

XOR Double Word

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Word Logic example: AND Word

Description:
IN1 AND IN2 is stored in OUT when power is applied to EN . Power flows
out of EN0 when power is applied to EN unless the addition results in
overflow.
GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Word Logic example: Integer Add


Example:
AND MW0 and MW2. Store the result in MW4.

WAND W
EN
MW0

IN1

MW2

IN2

EN0

OUT

MW4

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Section Objectives:
In this section two example ladder logic programs will be
given.

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Example 1 :
Switch 1 connected to Input 0.0
Coil connected to Output 0.0
If Switch 1 is on then turn on and off a coil at 2 second intervals
(Note: 2 second interval means a period of 4 seconds and 50% Duty
cycle).

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Example 1 (Continued)
Time: Scan cycle right before t = 0s
User Action : None

T0
I0.0

M0.0

S_EXt
S5T#2s

Q0.0

S
Q
TV
BI
R BCD

T1
I0.0

Q0.0

S_EXt
S5T#2s

M0.0

S
Q
TV
BI
R BCD

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Example 1 : Continued
Time:Scan cycle at t = 0
User Action: User turns Switch 1 on

T0
I0.0

M0.0

S_EXt
S5T#2s

S
Q
TV
BI
R BCD

Q0.0

(Note:
Time left: 2 s)

T1
I0.0

Q0.0

S_EXt
S5T#2s

M0.0

S
Q
TV
BI
R BCD

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Example 1 : Continued
Time: Scan cycle right before t = 2s
User Action: None

T0
I0.0

M0.0

S_EXt
S5T#2s

S
Q
TV
BI
R BCD

Q0.0

(Note:
Time left: ~0)

T1
I0.0

Q0.0

S_EXt
S5T#2s

M0.0

S
Q
TV
BI
R BCD

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Example 1 : Continued
Time: Scan cycle at t = 2 s
User Action: None

(Note: There is an inconsistency in this


picture. The power is still flowing though the
normally closed contact for M0.0 on the first
rung even though the coil on the second rung
for M0.0 is on. This is due to the serial nature
of the PLC micro-controller. Since the first
rung is evaluated first, the coil was still off
when the micro-controller evaluated the
normally closed contact for M0.0)
T0

I0.0

M0.0

S_EXt
S5T#2s

S
Q
TV
BI
R BCD

Q0.0
(Note:
Time left 0 s)

T1
I0.0

Q0.0

S_EXt
S5T#2s

S
Q
TV
BI
R BCD

M0.0

(Note:
Time left: 2 s)

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

(Note: Inconsistency from the previous slide


resolved)

Example 1 : Continued
Time: Scan cycle right after t = 2 s
User Action: None

T0
I0.0

M0.0

S_EXt
S5T#2s

Q0.0

S
Q
TV
BI
R BCD

T1
I0.0

Q0.0

S_EXt
S5T#2s

S
Q
TV
BI
R BCD

M0.0
(Note:
Time left: 2 s 1
scan cycle time)

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Example 1 : Continued
Time: Scan cycle right before t = 4 s
User Action: None

T0
I0.0

M0.0

S_EXt
S5T#2s

Q0.0

S
Q
TV
BI
R BCD

T1
I0.0

Q0.0

S_EXt
S5T#2s

S
Q
TV
BI
R BCD

M0.0
(Note:
Time left: ~0 s)

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Example 1 : Continued
Time: Scan cycle at t = 4 s
User Action: None

T0
I0.0

M0.0

S_EXt
S5T#2s

Q0.0

S
Q
TV
BI
R BCD

T1
I0.0

Q0.0

S_EXt
S5T#2s

S
Q
TV
BI
R BCD

M0.0
(Note:
Time left: 0 s)

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Example 1 : Continued
Time: Scan cycle right after t = 4 s
User Action: None

I0.0

M0.0

(Note: A once scan cycle error has been


introduced in the timing. The reason is that
the coil of M0.0 on the second rung was
turned off during the scan cycle at t = 4s. The
normally closed switch of M0.0 is not
evaluated again until the scan cycle after the
scan cycle at t = 4 s. Therefore, Timer T0
starts one scan cycle after t = 4. This error will
propagate and similar errors will accumulate. )
T0
Q0.0
S_EXt

S5T#2s

S
Q
TV
BI
R BCD

(Note:
Time left: 2 s)

T1
I0.0

Q0.0

S_EXt
S5T#2s

M0.0

S
Q
TV
BI
R BCD

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Example 1 : Continued
Time: Some time later
User Action: User turns Switch 1 off

T0
I0.0

M0.0

S_EXt
S5T#2s

Q0.0

S
Q
TV
BI
R BCD

T1
I0.0

Q0.0

S_EXt
S5T#2s

M0.0

S
Q
TV
BI
R BCD

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Example 1 :
Comments:
As this example illustrates, consistent timing is difficult to achieve with a
PLC due to the scan cycle. This is the reason why PLCs are not used to
control systems with very fast time constants such as CNC machines,
chemical mixers, etc.

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Example 2 :
Switch 1 connected to Input 0.0
A Hall effect switch is connected to Input 0.1
(Note: a Hall effect switch will turn on when a magnetic object comes
in close proximity)
The motor for a conveyer belt is connected to Output 0.0
(Note: As previously mentioned, a coil can be any load such as a
motor during these lectures.)
If Switch 1 is turned on, the conveyer belt will transport 1000 magnetic
SHAFTS to Georgia Tech Students. Switch 1 must be turned off then on to
send another 1000 magnetic SHAFTS. The hall affect switch is positioned
right under the conveyer belt and can be used to count the SHAFTS as
they pass by.

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

Example 2 (Continued)
Time: Scan cycle right before t = 0s
Actions : no part near hall effect switch
I0.0

M0.0

Move

Q0.0

EN
0

Q0.0
S

EN0

IN1 OUT

MW1

M0.0
S

I0.0

M0.0
R

Q0.0

CMP
== I

I0.1

M0.1

1001

IN1

MW1

IN2

EN
1

I0.1

M0.1

ADD_I

MW1

EN0

IN1
IN2 OUT

MW1

M0.1

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George
R

(Note: There is an inconsistency. Power is still


flowing though normally closed contact for
M0.0 even though the coil M0.0 is on. Since
the components on a rung is evaluated from
left to right, coil for M0.0 when micro-controller
evaluated the normally closed contact for M0.0
was still off. Same for PQ0.0)

ME6405

Example 2 (Continued)
Time: Scan cycle at t = 0s
Actions : Switch 1 is turned on,
no SHAFT near hall effect switch
I0.0

M0.0

Move

Q0.0

EN
0

Q0.0
S

EN0

IN1 OUT

MW1

M0.0
S

I0.0

M0.0
R

Q0.0

CMP
== I

I0.1

M0.1

1001

IN1

MW1

IN2

EN
1

I0.1

M0.1

ADD_I

MW1

EN0

IN1
IN2 OUT

MW1

M0.1

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George
R

(Note: Inconsistency from previous slide


resolved. The conveyer is still moving because
of the Set coil.)

ME6405

Example 2 (Continued)
Time: Scan cycle right after t = 0s
Actions : no SHAFT near hall effect switch
I0.0

M0.0

Move

Q0.0

EN
0

Q0.0
S

EN0

IN1 OUT

MW1

M0.0
S

I0.0

M0.0
R

Q0.0

CMP
== I

I0.1

M0.1

1001

IN1

MW1

IN2

EN
1

I0.1

M0.1

ADD_I

MW1

EN0

IN1
IN2 OUT

MW1

M0.1

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George
R

(Note: Similar Inconsistency between normally


closed switch of M0.1 and coil of M0.1 as seen
with normally closed switch of M0.0 and coil of
M0.0)

ME6405

Example 2 (Continued)

Time: t = t1
Actions : SHAFT approaches hall effect switch, 1 is added to MW1
I0.0

M0.0

Move

Q0.0

EN
0

Q0.0
S

EN0

IN1 OUT

MW1

M0.0
S

I0.0

M0.0
R

Q0.0

CMP
== I

I0.1

M0.1

1001

IN1

MW1

IN2

EN
1

I0.1

M0.1

ADD_I

MW1

EN0

IN1
IN2 OUT

MW1

M0.1

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George
R

(Note: Inconsistency from previous slide


resolved.)

ME6405

Example 2 (Continued)
Time: t = t1 + 1 scan cycle
Actions : SHAFT passes over hall effect switch
I0.0

M0.0

Move

Q0.0

EN
0

Q0.0
S

EN0

IN1 OUT

MW1

M0.0
S

I0.0

M0.0
R

Q0.0

CMP
== I

I0.1

M0.1

1001

IN1

MW1

IN2

EN
1

I0.1

M0.1

ADD_I

MW1

EN0

IN1
IN2 OUT

MW1

M0.1

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George
R

(Note: Inconsistency between the set and


reset of M0.1. That is because coil is still set
when the third rung is evaluated.)

ME6405

Example 2 (Continued)
Time: t = t1 + 2 scan cycle
Actions : no SHAFT near hall effect switch
I0.0

M0.0

Move

Q0.0

EN
0

Q0.0
S

EN0

IN1 OUT

MW1

M0.0
S

I0.0

M0.0
R

Q0.0

CMP
== I

I0.1

M0.1

1001

IN1

MW1

IN2

EN
1

I0.1

M0.1

ADD_I

MW1

EN0

IN1
IN2 OUT

MW1

M0.1

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George
R

(Note: Inconsistency between the set and


reset of M0.1 resolved.)

ME6405

Example 2 (Continued)
Time: t = t1 + 3 scan cycle
Actions : no SHAFT near hall effect switch
I0.0

M0.0

Move

Q0.0

EN
0

Q0.0
S

EN0

IN1 OUT

MW1

M0.0
S

I0.0

M0.0
R

Q0.0

CMP
== I

I0.1

M0.1

1001

IN1

MW1

IN2

EN
1

I0.1

M0.1

ADD_I

MW1

EN0

IN1
IN2 OUT

MW1

M0.1

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George
R

ME6405

Example 2 (Continued)
Time: t = t2
Actions : the 1001th SHAFT approaches hall effect switch (so 1000 have been delivered)
I0.0

M0.0

Move

Q0.0

EN
0

Q0.0
S

EN0

IN1 OUT

MW1

M0.0
S

I0.0

M0.0
R

Q0.0

CMP
== I

I0.1

M0.1

1001

IN1

MW1

IN2

EN
1

I0.1

M0.1

ADD_I

MW1

EN0

IN1
IN2 OUT

MW1

M0.1

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George
R

(Note: Inconsistency between the set and


reset of PQ0.0. That is because coil is still
set when the first rung is evaluated.)

ME6405

Example 2 (Continued)

Time: t = t2+ 1 scan cycle


Actions : the conveyer is stopped with 1001th SHAFT over the Hall effect switch
I0.0

M0.0

Move

Q0.0

EN
0

Q0.0
S

EN0

IN1 OUT

MW1

M0.0
S

I0.0

M0.0
R

Q0.0

CMP
== I

I0.1

M0.1

1001

IN1

MW1

IN2

EN
1

I0.1

M0.1

ADD_I

MW1

EN0

IN1
IN2 OUT

MW1

M0.1

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George
R

(Note: Inconsistency from previous slide


resolved.)

ME6405

Example 2 (Continued)
Time: t = t2+ 1 scan cycle
Actions : the conveyer is stopped. Switch 1 must be turned off and on to deliver 1000 more
I0.0

M0.0

Move

Q0.0

EN
0

Q0.0
S

EN0

IN1 OUT

MW1

M0.0
S

I0.0

M0.0
R

Q0.0

CMP
== I

I0.1

M0.1

1001

IN1

MW1

IN2

EN
1

I0.1

M0.1

ADD_I

MW1

EN0

IN1
IN2 OUT

MW1

M0.1

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George
R

ME6405

Example 2 :
Comments:
This and the previous example illustrates that the serial nature of the PLC
micro-controller can still affect program execution.
Also, this program can be simplified using an positive edge detection coil.
This was not done because the positive edge detection coil was not an
example in Section 5.

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

ME6405

So far we have looked at topics applicable to all PLCs. Further Study Should focus
on:
Topics applicable to some but not all PLCs:
Interrupts

A/D

Counters

Function Blocks

Communication Protocol:
Profibus
How to use communications to communicate with other PLCs,
smart actuators and sensors, etc

GeorgeW.
W.Woodruff
WoodruffSchool
SchoolofofMechanical
MechanicalEngineering,
Engineering,Georgia
GeorgiaTech
Tech
George

You might also like