Programmable Logic Controllers: A Concise Exploration
Programmable Logic Controllers: A Concise Exploration
Programmable Logic Controllers: A Concise Exploration
Controllers
A Concise Exploration
I. Industrial Automation
• Common knowledge: computers are used
in factories...
• Robotic arm, CNC, injection molding
I. Industrial Automation
• Donut machine, Ice cream sandwich
machines
I. Industrial Automation
• Not common knowledge: today this is
usually accomplished with Programmable
Logic Controllers (PLCs)
Handicraft (forever)
Water-powered silk mill (1721)
Spinning Jenny (1764)
Steam power (1780s)
Gas lighting (1810s)
Etc…
II. History
• Obvious next step: Electricity
[Always_On = 1]
[Switch_Con = Switch]
IV. Ladder Logic
• C = A or B
IV. Ladder Logic
• C = not A
• X = (A or B) and (C or D),
Y = ~A and [B or (C and D)]
IV. Ladder Logic
• So this…
IV. Ladder Logic
• …becomes this:
V. PLC
• The first PLC was invented by Dick Morely in
1978.
• Morely designed a computer with three
components: a processor, memory, and a logic
solver.
• “[The logic solver] allowed us to get the speed
we needed in this application-specific computer
to solve the perceptually simple problem of
several cabinets full of relay wiring.” -Morely
V. PLC
• The first PLC (the 084) was extremely durable
and reliable...
• “We used to test the programmable controllers
with a Tesla coil that struck a quarter inch to half-
inch arch anywhere on the system, and the
programmable controller still had to continue to
run.” –Morely
• In ladder logic:
V. PLC
• Not very interesting… how about a “stay-
on” variation? (When the switch is
released, the light stays on)
• PLC benefit: The state of an “output” in one
rung may be used as a “contact” in another.
• In fact, there are “internal utility relays” –
virtual outputs that act as intermediate
steps toward real outputs.
V. PLC
• Counter:
VI. Washing Machine
• Washing machine example, using
sequencer.
5. “Agitate” and drain - spin
0. Fill with hot water -pump,
motor, agitate motor, drain
• Steps: hot water valve
valve
1. “Agitate” – spin motor,
6. Fill with cold water -pump
agitate motor
2. “Agitate” and drain – spin
7. Spin and drain –spin motor,
motor, agitate motor, drain
drain valve
valve
3. Fill with hot water -pump,
8. Stop
hot water valve
4. “Agitate” - spin motor,
agitate motor
VI. Washing Machine
• Reorganize into the “outputs”: edit the I/O
Table
Output Active in steps…
Pump 0, 3, and 6
Hot water valve 0 and 3
Spin Motor 1, 2, 4, 5, and 7
Agitate Motor 1, 2, 4, and 5
Drain valve 2, 5, and 7
http://en.wikipedia.org/wiki/Programmable_logic_controller
http://www.plcs.net/contents.shtml
http://www.plcdev.com/plc_timeline
http://www.barn.org/FILES/historyofplc.html
http://www.jach.hawaii.edu/ets/mech/JCMT/carousel/car_eng.html - Old relay logic
http://www.rootcompromise.org/gallery/v/blackhat/bh-windows-2004/bh_windows_2004_014.jpg.html - Donut machine
http://www.fiona.co.jp/BOOK_JUV_PAGE/homerprice.htm - Homer Price
http://www.youtube.com/watch?v=gKzJqXSPuRE - Krispie Kreme
http://www.youtube.com/watch?v=-kiSQx0imxs – Ice Cream Sandwiches
http://www.youtube.com/watch?v=0PUFwwSDAWg – DVD Boxes
http://www.youtube.com/watch?v=ibc69W_N2h0 – Plasma Cutting
http://www.youtube.com/watch?v=y2mzjExWXzo – Injection Molding
http://rds.yahoo.com/_ylt=A9gnMiYBqv1FGjkBFlGjzbkF;_ylu=X3oDMTBsdmIydTZhBHNlYwNwcm9mBHZ0aWQDSTAwMV83MA--/SIG=12imesfu9/EXP=1174338
433/**http%3A//www.plastic-gear-manufacturer.com/injection-molding.htm -- Injection Molding
http://rds.yahoo.com/_ylt=A9gnMiIVqv1Fs60AJw.jzbkF;_ylu=X3oDMTBsdmIydTZhBHNlYwNwcm9mBHZ0aWQDSTAwMV83MA--/SIG=12pk1f58s/EXP=1174338
453/**http%3A//www.offshoresolutions.com/products/plastic/injectionMolded.htm -- Injection Molding
http://home.howstuffworks.com/washer.htm
http://en.wikipedia.org/wiki/Industrial_revolution
http://en.wikipedia.org/wiki/Niagara_falls#Historical_background
http://en.wikipedia.org/wiki/VHDL