Académique Documents
Professionnel Documents
Culture Documents
Automation Industrielle
Industrielle Automation
courtesy ABB
2.1.1 Market
2.1 Instrumentation
2.1.1
Market
2.1.2
Binary instruments
2.1.3
Analog Instruments
2.1.4
Actors
2.1.5
Transducers
2.1.6
Instrumentation diagrams
2.1.7
Protection classes
2.2 Control
2.3 Programmable Logic Controllers
Industrial Automation
2/52
2.1 Instrumentation
Emerson (Fisher-Rosemount): 27 %
Invensys: 4-5%
ABB: 4-5%
Honeywell: 3-4%
one dominant player a lot of small players
Industrial Automation
3/52
2.1 Instrumentation
Concepts
instruments = sensors (capteurs, Messgeber) and actors (actionneurs, Stellglieder)
binary (on/off) and analog (continuous) instruments are distinguished.
industrial conditions:
temperature range
Industrial Automation
4/52
2.1 Instrumentation
Industrial Automation
5/52
2.1 Instrumentation
+dust-insensitive, - magnetic
Industrial Automation
6/52
2.1 Instrumentation
Industrial Automation
7/52
2.1 Instrumentation
Industrial Automation
8/52
2.1 Instrumentation
Industrial Automation
9/52
2.1 Instrumentation
potentiometer
capacitive
balanced transformer (LVDT)
(linear or sin/cos encoder)
strain gauges
piezo-electric
Industrial Automation
10/52
2.1 Instrumentation
When the moving armature is centered between the two series-opposed secondaries, equal magnetic
flux couples into both secondaries; the voltage induced in one half of the secondary winding is 180
degrees out-of-phase with the voltage induced in the other half of the secondary winding.
When the armature is moved out of that position, a voltage proportional to the displacement appears
source: www.sensorland.com
Industrial Automation
11/52
2.1 Instrumentation
C=
A
d
movable
capacitance is evaluated
modifying the frequency of
an oscillator
a
fixed
Industrial Automation
12/52
2.1 Instrumentation
R=r
=r
A
l"
R1
l2
l2
R3
measure
Uo
R2
compensation
Industrial Automation
R4
temperature compensation
by dummy gauges
frequently used in buildings, bridges,
dams for detecting movements.
13/52
2.1 Instrumentation
Piezo-electrical effect
Piezoelectric materials (crystals) change form when an electrical field is applied to them.
Conversely, piezoelectric materials produce an electrical field when deformed.
Industrial Automation
14/52
source: Kistler
2.1 Instrumentation
Force measurement
Industrial Automation
15/52
2.1 Instrumentation
Optical encoders operate by means of a grating that moves between a light source and a
detector. The detector registers when light passes through the transparent areas of the grating.
For increased resolution, the light source is collimated and a mask is placed between the grating
and the detector. The grating and the mask produce a shuttering effect, so that only when their
transparent sections are in alignment is light allowed to pass to the detector.
An incremental encoder generates a pulse for a given increment of shaft rotation (rotary encoder),
or a pulse for a given linear distance travelled (linear encoder). Total distance travelled or shaft
angular rotation is determined by counting the encoder output pulses.
An absolute encoder has a number of output channels, such that every shaft position may be
described by its own unique code. The higher the resolution the more output channels are
required.
courtesy Parker Motion & Control
Industrial Automation
16/52
2.1 Instrumentation
10 11 12 13 14 15
10 11 12 13 14 15
LSB
MSB
LSB
courtesy Parker
Motion & Control
MSB
17/52
2.1 Instrumentation
N
S
Ui ~ dw / dt,
f~w
transducer
analog: 4..20 mA
digital: 010110110
a simple tachometer is a rotating permanent magnet that induces a voltage into a stator winding.
this voltage is converted into an analog voltage or current, which can later be converted to a digital value,
alternatively, the frequency can be measured to yield directly a digital value
Industrial Automation
18/52
2.1 Instrumentation
Extension Assemblies
Thermowell
www.omega.com
Industrial Automation
19/52
2.1 Instrumentation
Temperature measurement
Thermistance (RTD - resistance temperature detector):
metal whose resistance depends on temperature:
+ cheap, robust, high temperature range ( -180C ..600C),
- require current source, needs linearisation.
Thermistor (NTC - negative temperature coefficient):
semiconductor whose resistance depends on temperature:
+ very cheap, sensible,
- low temperature, imprecise, requires current source, strongly non-linear
Thermo-element (Thermoelement, thermocouple):
pair of dissimilar metals that generate a voltage proportional to the
temperature difference between warm and cold junction (Seebeck effect)
+ high precision, high temperature, punctual measurement
- low voltage, requires cold junction compensation, high amplification, linearization
Spectrometer:
measures infrared radiation by photo-sensitive semiconductors
+ highest temperature, measures surfaces, no contact
- highest price
Bimetal (Bimetall, bilame):
mechanical (yes/no) temperature indicator using the difference in the dilatation
coefficients of two metals, very cheap, widely used (toasters...)
Industrial Automation
20/52
2.1 Instrumentation
q1
two dissimilar
electrical
conductors
Fe-Const
also: Pt/Rh - Pt
q4
extension
wire
Fe
q2
Cu
q3
4..20 mA
U (q2-q1)
Constantan
Cu
reference temperature
(cold junction)
measured temperature
(hot junction)
4..20 mA
i = constant
2,3- or 4-wire connection
21/52
2.1 Instrumentation
special requirements: intrinsic safety = explosive environment, sea floor = high pressure
Industrial Automation
22/52
2.1 Instrumentation
Level measurement
pulsed laser
load cell
pulsed microwave
nuclear
ultrasonic (40-60 kHz)
low power ultrasonic
F = mg
detector
row
23/52
2.1 Instrumentation
membrane
fluid of
viscosity r
p2
p1
v
occultation
(Blende)
p2 - p1 =
1
2
r v2
(Bernoulli effect)
the flow velocity is proportional to the square root of the pressure difference
Industrial Automation
24/52
2.1 Instrumentation
Flow measurement
Other means:
Magnetic-dynamic
Coriolis
Ultra-sound
Industrial Automation
25/52
2.1 Instrumentation
Industrial Automation
26/52
2.1 Instrumentation
2.1.4 Actors
2.1 Instrumentation
2.1.1
Market
2.1.2
Binary instruments
2.1.3
Analog Instruments
2.1.4
Actors
2.1.5
Transducers
2.1.6
Instrumentation diagrams
2.1.7
Protection classes
2.2 Control
2.3 Programmable Logic Controllers
Industrial Automation
27/52
2.1 Instrumentation
Actors (Actuators)
Stellantriebe, Servomoteurs
About 10% of the field elements are actors (that influence the process).
Actors can be binary (on/off) or analog (e.g. variable speed drive)
The most common are:
- electric contactors (relays)
- heating elements
- pneumatic and hydraulic movers (valve, pump)
- electric motors (rotating and linear)
Solenoids,
DC motor
Asynchronous Motors (Induction)
Synchronous motors
Step motors, reluctance motors
Actors are controlled by the same electrical signal levels as sensors use
(4..20mA, 0..10V, 0..24V, etc.) but at higher power levels (e.g. to directly move a
contactor (disjoncteur).
Industrial Automation
28/52
2.1 Instrumentation
29/52
2.1 Instrumentation
Linear Motors
Industrial Automation
30/52
2.1 Instrumentation
fluidic switches
switchboard ("Ventilinsel")
Industrial Automation
31/52
source: www.bachofen.ch
2.1 Instrumentation
2.1.5 Transducers
2.1 Instrumentation
2.1.1
Market
2.1.2
Binary instruments
2.1.3
Analog Instruments
2.1.4
Actors
2.1.5
Transducers
2.1.6
Instrumentation diagrams
2.1.7
Protection classes
2.2 Control
2.3 Programmable Logic Controllers
Industrial Automation
32/52
2.1 Instrumentation
Transducer
A transducer converts the information supplied by a sensor (piezo, resistance,)
into a standardized signal which can be processed digitally.
Some transducers have directly a digital (field bus) output and are integrated
in the sensor.
Other are located at distances of several meters from the sensor.
Industrial Automation
33/52
2.1 Instrumentation
Field house
Transducer
Current
Transformer
Protection
0..1A rms
S R = Load
Control Room
4..20 mA
Emergency panel
PLC
Industrial Automation
34/52
2.1 Instrumentation
Transducer
instrument
1
instrument
2
instrument
3
voltage
source
10..24V
R2
R1
R3
measurand
i = f(v)
0, 4..20 mA
The transducer acts as a current source which delivers a current between 4 and 20 mA,
proportional to the measurand (Messgrsse, valeur mesure).
Information is conveyed by a current, the voltage drop along the cable induces no error.
0 mA signals an error (wire disconnection)
The number of loads connected in series is limited by the operating voltage (10..24 V).
e.g. if (R1 + R2+ R3) = 1.5 kW, i = 24 / 1.5 = 16 mA, which is < 20 mA: NOT o.k.)
Simple devices are powered directly by the residual current (4mA) allowing to transmit
signal and power through a single pair of wires.
Industrial Automation
35/52
2.1 Instrumentation
Industrial Automation
36/52
2.1 Instrumentation
Industrial Automation
37/52
2.1 Instrumentation
Instrumentation Diagrams
Similarly to electrical schemas, the control industry (especially the chemical and
process industry) describes its plants and their instrumentation by a
P&ID (pronounce P.N.I.D.) (Piping and Instrumentation Diagram),
sometimes called P&WD (Piping and wiring diagrams)
The P&ID shows the flows in a plant (in the chemical or process industry) and the
corresponding sensors or actors.
At the same time, the P&ID gives a name ("tag") to each sensor and actor, along with
additional parameters.
This tag identifies a "point" not only on the screens and controllers, but also on the
objects in the field.
Industrial Automation
38/52
2.1 Instrumentation
P&ID example
Piping and Instrumentation Diagram for MTG100FC Engine Tests
TI
TA22C
TE
TE
7, Heat
exchanger
IC
IGNITC1
TI
TA22A
TI
TA22B
TI
TC1M1 - M10
TE
Ingnitor
Box C1
BS
FLAMDETC1
PI
PT22
Chimney
TI
TA21A
TI
TA21B
10 x
TE
BE
PT
TI
TA21C
TE
TE
PI
PT21
TE
TI
TA62
TE
TE
TI
TW72
PT
6, Recuperator
2, Air Heater C1
IC
VMPWMC1
Atmosphere
IC
VPPWMC1
IC
SVGAS3
FO
S
IC
SVGAS1
IC
SVGAS2
Fuel flow C1
MFM
Emission
Analysis
Fuel Supply
Fuel flow C2
Regulator Valve
I
TY
IC
VPPWMC2
TY
E
EMIO2
AIT
E
EMINOX
AIT
E
EMICO
AIT
E
EMIUHC
AIT
IC
TBVDEP
IC
TBVCOOL
AIT
MFM
E
EMICO2
FO
TE
TI
TA32C
TE
TE
PI
PT32
BS
FLAMDETC2
PT
BE
3, SOFC Outlet
PT
TI
TA12
TE
PT
PI
PT52
TE
TI
TA52
SI
SPEED
PI
LOP
ST
PT
Latchable
Check Valve
IC
V12
AC Grid
1,
C
PCS
Ingnitor
Box
TI
TA32B
PI
PT12
5,
T
IC
IGNITC2
TI
TA32A
IC
V52
TI
TC2M1 - M10
10 x
TE
TI
TA51A
PI
PT51
PT
TI
TA51C
TI
TA51B
TE
TE
TE
PI
PT02
PT
TI
TA02
TE
Modulatable
Load
0, Air Inlet
3, SOFC Inlet
4, Combustor C2
Industrial Automation
39/52
2.1 Instrumentation
P&ID
The P&ID mixes pneumatic / hydraulic elements, electrical elements
and instruments on the same diagram
It uses a set of symbols defined in the ISA S5.1 standard.
Examples of pneumatic / hydraulic symbols:
pipe
350 kW
heater
valve
one-way valve (diode)
vessel / reactor
heat exchanger
pump, also
Industrial Automation
40/52
2.1 Instrumentation
Instrumentation identification
The first letter defines the measured or initiating variables such as Analysis (A), Flow (F),
Temperature (T), etc. with succeeding letters defining readout, passive, or output functions such
as Indicator (I), Record (R), Transmit (T), and so forth
FIC
V1528
tag name of the
corresponding
variable
mover
(here: solenoid)
S
function
(here: valve)
Industrial Automation
41/52
2.1 Instrumentation
Field mounted
Auxiliary location
accessible to
operator
Discrete
instruments
Shared
display,
shared control
Computer
function
Programmable
logic control
1. Symbol size may vary according to the user's needs and the type of document.
2. Abbreviations of the user's choice may be used when necessary to specify location.
3. Inaccessible (behind the panel) devices may be depicted using the same symbol but with a dashed horizontal
bar.
Source: Control Engineering with data from ISA S5.1 standard
Industrial Automation
42/52
2.1 Instrumentation
Example of P&ID
The output of FIC 101 is an electrical signal to TY 101
located in an inaccessible or behind-the-panel-board location.
TIC 101s output is connected
via an internal software or
data link (line with bubbles) to
the setpoint (SP) of FIC 101
to form a cascade control
strategy
43/52
2.1 Instrumentation
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
Analysis
Burner, combustion
User's choice
User's choice
Voltage
Flow rate
User's choice
Hand
Current (electrical)
Power
Time, time schedule
Level
User's choice
User's choice
User's choice
Pressure, vacuum
Quantity
Radiation
Speed, frequency
Temperature
Multivariable
Vibration, mechanical analysis
Weight, force
Unclassified
Event, state, or presence
Position, dimension
Industrial Automation
Modifier
Differential
Ration (fraction)
Scan
Time rate of change
Momentary
Integrate, totalizer
Safety
X axis
Y axis
Z axis
44/52
2.1 Instrumentation
Industrial Automation
45/52
2.1 Instrumentation
Industrial Automation
46/52
2.1 Instrumentation
Industrial Automation
47/52
2.1 Instrumentation
Explosion protection
Instruments that operate in explosive environments
(e.g. petrochemical, pharmaceutical, coal mines,...) are subject to particular restrictions.
e.g.
They may not contain anything that can produce sparks or high heat,
such as electrolytic capacitors or batteries without current limitation.
Their design or programming may not be altered after their acceptance.
Their price is higher than that of standard devices because they have to undergo
strict testing (Typentest, type test) by a qualified authority (TV in Germany)
Such devices are called Eex - or "intrinsic safety devices" (Eigensichere Gerte, "Ex-Schutz",
protection anti-dflagrante, "Ex" ) and are identified by the following logo:
Industrial Automation
48/52
2.1 Instrumentation
49/52
2.1 Instrumentation
Industrial Automation
50/52
2.1 Instrumentation
Assessment
Industrial Automation
51/52
2.1 Instrumentation
Industrial Automation
52/52
2.1 Instrumentation
Industrial Automation
Automation Industrielle
Industrielle Automation
set point
controller
+
-
plant
controlled
variables
measurement
2.2
2005 March, HK
binary
output
sequencer
clock
display
on/off
controller
plant
plant state
error
(deviation)
display
measurement
control variable
(analog)
plant
output
plant
state
measurement
%
process value
(valeur mesure,
Istwert)
Industrial Automation
2/40
temperature
3
2
140
120
180
200
220
+
-
closed loop:
temperature closely controlled,
requires measurement of the output
variable (temperature)
higher
/lower
temperature sensor
Industrial Automation
3/40
2.2 Control
2.1 Instrumentation
2.2 Control
2.2.1 Plant modeling
2.2.2 Two-point (On/Off) controller
2.2.3 PID controller
2.2.4 Nested Controllers
2.3 Programmable Logic Controllers
Industrial Automation
4/40
Controllers
This is an intuitive introduction to automatic control.
The approach shown here is only valid with benign plants (most are).
For a theoretical development, the courses of Prof. Longchamp and Prof. Bonvin
are recommended.
The two most popular controllers in industry are presented:
- the two-point controller
-the PID controller
Industrial Automation
5/40
Industrial Automation
6/40
y
F(p)
7/40
ambient-water isolation R1
ambient
temperature
qa
Electrical equivalent
R1
C
heater-water
isolation
Heat
resistance R2
water
Uq
R2
C
Ua
x~ q
ua ~ qa
Ua
(ambient temperature)
solicited
temperature q2
controller
energy Uq
heating
1
1
+ )
dx
R R2
1
1
Uq +
Ua
= -x 1
+
dt
C
R1C
R2C
(
dx
= - x 1 + 1 Ux
R2C R2C
dt
dx
= - Dx + E
dt
dx
= - Ax + Bu + C
dt
Industrial Automation
cooling
8/40
power amplifier
Leistungsverstrker
amplificateur de puissance
set-point (solicited)
Sollwert
valeur de consigne
(u)
controller
regulator
Regler
rgulateur
(e)
Kp
Stellgre
valeur de commande
Abweichung
erreur
process value
plant
Strecke
processus
(x)
command
error
(y)
(m)
Strgrsse
perturbation
measurement
Messglied
mesure
Istwert
valeur mesure
the regulator (controller) can be implemented by mechanical elements, electrical elements,
computers,...
Industrial Automation
9/40
in the sensor
or in the actuator
(analog PIDs)
10/40
actors
Electricity Generator
DP
Active power
frequency (Pf)
controller
Df
DQ
Reactive power
voltage (QV)
controller
DV
Steam
Controllable
excitation
source
Main
steam
valve
Valve
control
mechanism
Turbine
Generator
Voltage
sensors
Frequency sensor
Mechanical
Mechanicalpower
power
Industrial Automation
3-phase
3-phaseElectrical
ElectricalPower
Power DP + j DQ
11/40
Industrial Automation
12/40
energy
set-point
room
heater
measured value
temperature
off on
thermometer
13/40
min period
hysteresis
temperature
1.00
0.80
0.60
0.40
0.20
97
89
81
73
65
57
49
41
33
25
17
0.00
time
If the process is not slow enough, hysteresis or switching period limit are included
to limit switching frequency and avoid wearing off the contactor.
(thermal processes are normally so inertial that no hysteresis is needed)
Industrial Automation
14/40
value
0.80
Solicited
Upper
0.60
Lower
0.40
Output
0.20
0.00
0.00
1.00
2.00
3.00
4.00
5.00
6.00
7.00
8.00
9.00
time (s)
Industrial Automation
15/40
Industrial Automation
16/40
*Tin = Sn
tain, Zinn,
stannum
Zk, Zink, zinc
ruins of a tin* mine in Cornwall (England), with the machine house for pumping,
where the first steam engines were installed (1790)
Industrial Automation
17/40
used for:
pump water
winches
ore crashing
18/40
Industrial Automation
19/40
Flywheel governor
a = f(w2)
w
valve
steam pipe
cylinder
ancestor of automatic control...
Industrial Automation
20/40
y + y ' T1 + y"TT2 = m
differential equation
plant
y
1
=
m 1 + sT1 + s 2TT2
Temporal response
This transfer function is typical of a plant with slow response, but without deadtime
In the examples:
T1 = 1 s
TT2 = 0.25 s2
step response
1.4
delay
time constant
1.2
1
0.8
0.6
gain
0.4
0.2
0
time
10
d ~ 0.2, T= 1.5s
Industrial Automation
21/40
m = command
variable
regulator
u0 = set-point
e = error
controlled
variable
Kp
x0
plant
measurement
y0 = process value
the error is amplified to yield the command variable
m = Kp e = Kp (u0 -y0)
Industrial Automation
22/40
m(t), y0(t)
command
set-point
1.5
large error
1
x large
0.5
x small
0
0
-0.5
10
Numerical:
Kp = 5.0
23/40
proportional factor
controlled
variable
P-regulator
u0 = set-point
e = error
Kp
plant
m = command
variable
command
measurement
y0 = process value
value
1.5
u0 (Solicited)
1
0.5
u1 (load change)
0
0
10
-0.5
Not only a set-point change, but a load change causes the error to increase (or decrease).
A load change (disturbance u1) is equivalent to a set-point change
Industrial Automation
24/40
u0(t), y0(t)
2
1.8
1.6
1.4
1.2
1
0.8
0.6
0.4
0.2
0
-0.2 0
10
time [s]
increasing the proportional factor reduces the error, but the system tends to oscillate
Industrial Automation
25/40
symbol
y = x (t )dt
t0
1
s
older symbol
dt
input
inflow [m3/s]
y = level [m]
output
t2
level (t) =
(inflow(t)) dt
t1
PI (Proportional-Integral) Controller
integral time
constant
dt
PI
controller gain
1
Ti
error
set-point u0
1
s
command
variable
Kp
plant
measurement
process value y0
The integral factor Ki produces a non-zero control variable even when the error is zero.
t
1
m = K p (e(t ) + e(t )dt )
Ti t 0
Industrial Automation
27/40
value
Kp = 2, Ti = 1s
2.2
2
1.8
1.6
1.4
1.2
1
0.8
0.6
0.4
0.2
0
-0.2
Solicited
Output
Command
Integrator
10
time
The integral factor reduced the asymptotical error to zero, but slows down the response
Industrial Automation
28/40
integrator
PID
proportional factor
1
Ti
error
1
s
Kp
set-point
process value
command
variable
plant
Td
derivative
factor
measurement
The proportional factor Kp generates an output proportional to the error, it requires a nonzero error to produce the command variable.
Increasing the amplification Kp decreases the error, but may lead to instability
The integral factor Ki produces a non-zero control variable even when the error is zero,
but makes response slower.
The derivative factor Kd speeds up response by reacting to an error step with a control
variable change proportional to the step (real differentiators include filtering).
Industrial Automation
29/40
y=
dx
dt
input
x
output
1
Td
Nf
1
s
30/40
time domain
Laplace domain
de(t )
1
T
dt
i
t0
1
Td s
F ( p) = K p 1 +
+
sTi
Nf
(1 +
s)
Td
Industrial Automation
31/40
integral time
proportional factor
1
Ti
set-point u0
X2
U1
1
s
error
X0
Nf
K
1
Td
derivative time
1
s
X3
CL
dx1
1
(x2 + D f + K (u0 - x0 ) - T1 x1 - x0 + u1 )
=
dt TT2
dx2 K
= (u 0 - y 0 )
dt T
i
dx0
= x1
dt
Industrial Automation
(hidden)
1
(1 + sT1 + s 2TT2 )
process value y0
X1
D f = Nf - x3 + K (u0 - x0 )
Td
dx3
= Nf x3 + K (u0 - y0 )
dt
T
d
32/40
filtered derivative
differential factor
increases responsiveness
0
0
Solicited
Industrial Automation
5
P
6
PI
33/40
8
PID
10
U1
Rise time
Overshoot
Settling time
Steady-State Error
Kp
Decrease
Increase
Small Change
Decrease
Ki
Decrease
Increase
Increase
Eliminate
Kd
Decrease
Small Change
increasing
delay
time constant
1.2
1
1.2 T
0.8
0.6
Kp =
gain K
0.4
Kd
Ti = 2.0 d
Td = 0.5 d
(Nf = 10)
0.2
0
0
10
d ~ 0.2, T= 1.5s
Industrial Automation
34/40
Industrial Automation
35/40
Position
PID
Speed
sol
cmd
is
PID
Torque
sol
cmd
is
PID
sol
cmd
is
torque regulation
(protection)
encoder
tacho
M
amplifier
Current
Velocity
Position
Nesting regulators allow to maintain the output variable at a determined value
while not exceeding the current or speed limitations
Industrial Automation
36/40
position control
speed control
torque control
Industrial Automation
37/40
Assessment
How does a two-point regulator works ?
How is the a wear-out of the contacts prevented ?
How does a PID regulator works ?
What is the influence of the different parameters of a PID ?
Is a PID controller required for a position control system (motor moves a vehicle)
Explain the relation between nesting control loops and their real-time response
Industrial Automation
38/40
To probe further
"Computer Systems for Automation and Control", Gustaf Olsson, Gianguido Piani,
Lund Institute of Technology
Modern Control Systems, R. Dorf, Addison Wesley
Courses of Prof. Roland Longchamp and Dominique Bonvin
Industrial Automation
39/40
Industrial Automation
40/40
Industrial Automation
Automation Industrielle
Industrielle Automation
K_TIT
POST_START_TIMER_MOD
N_GT
TIT_RATE_LIM_UP
TIT_REF_MAX_START
TIT_ERROR
lim
TIT_REF_TAB
100
0
FAULT_STATE[tit1_oor]
MAX_INT
I P
PID
D
WFD_TIT
TD_TIT
TIT_RATE_LIM_DN
OR
FAULT_STATE[tit2_oor]
17.3
TIT
2.3
Industrial Automation
2/100
Formerly:
Today:
Function:
Distinguish
Instrumentation
flow meter, temperature, position,. but also actors (pump, )
Control
programmable logic controllers with digital peripherals & field bus
Visualization
HMI in PLCs (when it exists) is limited to control of operator displays
Industrial Automation
3/100
PLC: functions
Measure
Command
Regulation
Protection
Event Logging
Communication
Human interface
Industrial Automation
4/100
PLC: Characteristics
large number of peripherals: 20..100 I/O per CPU, high density of wiring, easy assembly.
binary and analog Input/Output with standard levels
located near the plant (field level), require robust construction, protection against dirt,
water and mechanical threats, electro-magnetic noise, vibration, extreme temperature
range (-30C..85C)
programming: either very primitive with hand-help terminals on the target machine
itself, or with a lap-top able to down-load programs.
network connection is becoming common, allowing programming on workstations.
field bus connection for remote I/Os
primitive Man-Machine interface, either through LCD-display or connection of a laptop
over serial lines (RS232).
economical - 1000.- .. 15'000.- for a full crate.
the value is in the application software (licenses 20'000 ..50'000)
Industrial Automation
5/100
Enterprise Network
Engineer
station
Operator
station
Supervisor
Station
gateway
direct I/O
COM 2
I/O
CPU
COM1
I/O
I/O
Control Station
with Field Bus
PLC
gateway
Field Stations
COM
I/O
COM
CPU
Field Bus
I/O
COM
I/O
COM
CPU
I/O
I/O
I/O
I/O
CPU
Field Bus
COM
directly connected
I/O
I/O
I/O
PLC
COM 2
CPU
COM1
I/O
I/O
I/O
I/O
I/O
COM1
large
PLCs
CPU
Control Bus
(e.g. Ethernet)
FB
gateway
small PLC
Field Devices
Industrial Automation
6/100
PLC: manufacturers
Switzerland
SAIA, Weidmller
Europe:
Siemens (60% market share) [Simatic],
ABB (includes Hartmann&Braun, Elsag-Bailey, SattControl,) [IndustrialIT],
Groupe Schneider [Tlmcanique],
WAGO,
Phoenix Contact ...
World Market:
GE-Fanuc,
Honeywell,
Invensys (Foxboro)
Rockwell, (Allen-Bradley,)
Emerson (Fisher Control, Rosemount, Westinghouse)
Hitachi, Toshiba, Fujitsu, Yokogawa
7/100
Industrial Automation
8/100
Kinds of PLC
(1)
Compact
Monolithic construction
Monoprocessor
Fieldbus connection
Fixed casing
Fixed number of I/O (most of them binary)
No process computer capabilities (no MMC)
Typical product: Mitsubishi MELSEC F, ABB AC31, SIMATIC S7
(2)
Modular PLC
Modular construction (backplane)
One- or multiprocessor system
Fieldbus and LAN connection
3U or 6U rack, sometimes DIN-rail
Large variety of input/output boards
Connection to serial bus
Small MMC function possible
Typical products: SIMATIC S5-115, Hitachi H-Serie, ABB AC110
(3)
Soft-PLC
Windows NT or CE-based automation products
Direct use of CPU or co-processors
Industrial Automation
9/100
Modular PLC
tailored to the needs of an application
development
environment
RS232
LAN
backplane
parallel bus
courtesy ABB
fieldbus
Power Supply
primitive or no HMI
cost effective if the rack can be filled
CPU CPU
Analog I/O
Binary I/O
fieldbus
Industrial Automation
10/100
courtesy ABB
courtesy Backmann
Industrial Automation
11/100
data bus
12/100
Compact or modular ?
field bus
extension
compact PLC
(fixed number of I/Os)
modular PLC (variable number of I/Os
# I/O modules
Industrial Automation
13/100
Industry- PC
courtesy INOVA
courtesy MPI
Wintel architecture
(but also: Motorola, PowerPC),
MMI offered (LCD..)
Limited modularity through mezzanine boards
(PC104, PC-Cards, IndustryPack)
Backplane-mounted versions with PCI or Compact-PCI
Industrial Automation
14/100
23
2
4
3
3
12
2
PC as engineering workstation
PC as human interface (Visual Basic, Intellution, Wonderware)
PC as real-time processor (Soft-PLC)
PC assisted by a Co-Processor (ISA- or PC104 board)
PC as field bus gateway to a distributed I/O system
I/O modules
Industrial Automation
15/100
Compact PLC
courtesy ABB
courtesy ABB
courtesy ABB
16/100
Thermocouple
inputs
binary I/Os,
CAN field bus
RS232 to HMI
courtesy Turbec
cost: 1000.-
Industrial Automation
17/100
Protection devices
substation
measurement
transformers
communication to operator
Ir
Is
It
Ur
Us
UT
Human interface
for status
and
settings
Programming
interface
trip relay
Protection devices are highly specialized PLCs that measure the current and voltages in an electrical
substation, along with other status (position of the switch) to detect situations that could endanger the
equipment (over-current, short circuit, overheat) and triggers the circuit breaker (trip) to protect the
substation.
In addition, it records disturbances and sends the reports to the substations SCADA.
Sampling: 4.8 kHz, reaction time: < 5 ms.
costs: 5000
Industrial Automation
18/100
Market share
% installed PLCs
Micro: 15 to 128 I/O points
32%
29%
20%
7%
PC-based
6%
Software PLC
4%
Embedded control
2%
Industrial Automation
19/100
Siemens
Hitachi
Number of Points
Memory
1024
10 KB
640
16 KB
Programming Language
Ladder logic
Instructions
Logic symbols
Hand-terminal
Ladder Logic
Instructions
Logic symbols
Basic
Hand-terminal
Programming Tools
Download
Graphic on PC
no
Graphic on PC
yes
2678 cm2
1000 cm2
Label surface
per line/point
5.3 mm2
7 characters
6 mm2
6 characters
Network
10 Mbit/s
19.2 kbit/s
Mounting
DIN rail
cabinet
Industrial Automation
20/100
Industrial Automation
21/100
y(i)
time
time
analog
variable
(e.g. 4..20mA)
filtering
&
scaling
sampling
analogdigital
converter
processing
binary
variable
filtering
011011001111
sampling
(e.g. 0..24V)
0001111
counter
digitalanalog
converter
amplifier
analog
variable
e.g. -10V..10V
transistor
or
relay
binary
variable
non-volatile
memory
time
Industrial Automation
22/100
CPU
Real-Time
Clock
ROM
flash
EPROM
serial port
controller
Ethernet
ethernet
controller
extension
bus
parallel bus
fieldbus
controller
buffers
analogdigital
converters
digitalanalog
converters
Digital Output
Digital
Input
signal
conditioning
power
amplifiers
relays
signal
conditioning
external
I/Os
field bus
Industrial Automation
23/100
Industrial Automation
24/100
discrete control
Industrial Automation
analog regulation
25/100
PLC evolution
Binary World
relay controls,
Relay control
pneumatic sequencer
Analog World
Pneumatic and electromechanical
controllers
I1
A
B
C
P1
P2
combinatorial
Regulation, controllers
sequential
discrete processes
continuous processes
26/100
(1+Tp)
F(p) =
(1+T1p + T2 p2)
time
the principal task of the control system for a continuous plant is its regulation.
Industrial Automation
27/100
init
Examples: Elevators,
traffic signaling,
warehouses, etc.
c+d
3
4
e
c + d
1
7
Discrete plants are described e.g. by finite state machines or Petri nets.
the main task of a control system with discrete plants is its sequential control.
Industrial Automation
28/100
"combinatorial"1)
e.g. ladder logic, CMOS logic
A
Out = A B
A
NOT C
ladder
logic
B
Out = (A + B) C
I1
analog
building
blocs
P1
P2
Industrial Automation
29/100
Industrial Automation
30/100
"Real-Time" languages
Extend procedural languages to
express time
ladder logic
Real-Time Java
instruction lists
Forth
GRAFCET
SDL
etc
etc...
Industrial Automation
Type 3 report
recommendation
IEC 61131-3
name change
70
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
Industrial Automation
32/100
CALC1
DI
CALC
>=1
START STEP
PUMP
IN1 OUT
DO
T1
MAN_ON
STEP A
IN2
ACT
T2
STEP B
ACTION D1
D1_READY
ACTION D2
D2_READY
ACTION D3
D3_READY
ACTION D4
D4_READY
T3
CALC1
AUTO
http://www.isagraf.com
PUMP
OUT
IN2
MAN_ON
Industrial Automation
textual languages
33/100
Industrial Automation
34/100
Industrial Automation
35/100
Industrial Automation
36/100
&
Example 2:
external outputs
external inputs
Trigger
&
Running
Spin
Reset
37/100
Function block
Example
set point
PID
measurement
motor
"continuously"
executing block,
independent,
no side effects
(set point)
Example
Industrial Automation
(set point)
38/100
Industrial Automation
39/100
x
z
Industrial Automation
40/100
1) Functions
- are part of the base library.
- have no memory.
Example are: adder, multiplier, selector,....
2) Elementary Function Blocks (EFB)
- are part of the base library
- have an individual memory ("static" data).
- may access global variables (side-effects!)
Examples: counter, filter, integrator,.....
3) Programs (Compound blocks)
- user-defined or application-specific blocks
- may have a memory
- may be configurable (control flow not visible in the FBD
Examples: PID controller, Overcurrent protection, Motor sequence
(a library of compound blocks may be found in IEC 61804-1)
Industrial Automation
41/100
Industrial Automation
42/100
and
OR
or
XOR
exclusive-or
SR
S1
R Q0
flip-flop
R_TRIG
S1 Q0
positive
edge
analog elements
GT
TON
IN Q
PT ET
CTU
CU
RESET Q
ET
PV
SEL
GT greater than
LT less than
LE less equal
timer on
delay
up counter
(CTD counter down)
selector
ADD
adder
SUB
subtractor
MUL
multiplier
DIV
divider
INT
PV
Init
integrator
Industrial Automation
43/100
5s
12s
75%
0%
-25%
Industrial Automation
44/100
Industrial Automation
45/100
46/100
MoveAbsolute
AXIS_REF
BOOL
REAL
REAL
REAL
REAL
REAL
MC_Direction
Axis
Execute
Position
Velocity
Acceleration
Deceleration
Jerk
Direction
Axis
Done
CommandAborted
Error
ErrorID
AXIS_REF
BOOL
BOOL
BOOL
WORD
Industrial Automation
47/100
y
T
Truth Table:
S
x2
Mathematical Formula:
Textual Description:
x1
x1
x2
previous state
dx
Kpx + Kd
+ Ki xdt
dt
0
Calculates the root mean square of the input with a filtering constant
Equal
Industrial Automation
48/100
Industrial Automation
49/100
=
Compound block
=
Industrial Automation
50/100
M1
Y1
Segment B
X2
Y2
M1
X3
Industrial Automation
M2
51/100
Industrial Automation
52/100
F1
B
C
X02
function
input1
input2
output
F2
F4
F3
Machine Code:
X01
53/100
F1
A
B
X01
F2
X01
X
F3
B
C
X02
F4
X
X02
Y
2.3 Programmable Logic Controllers
write
outputs
X
execute
individual period
O
time
Industrial Automation
54/100
Parallel execution
Function blocks are particularly well suited for true multiprocessing (parallel
processors).
The performance limit is given by the needed exchange of signals by means of a
shared memories.
Semaphores are not used since they could block an execution and make the concerned
processes non-deterministic.
processor
1
processor
2
processor
3
input/
output
shared
memory
shared
memory
shared
memory
shared
memory
Industrial Automation
55/100
Program configuration
The programmer divides the program into tasks (sometimes called pages or segments),
which may be executed each with a different period.
The programmer assigns each task (each page) an execution period.
Since the execution time of each block in a task is fixed, the execution time is fixed.
Event-driven operations are encapsulated into blocks, e.g. for transmitting messages.
If the execution time of these tasks cannot be bound, they are executed in background.
The periodic execution always has the highest priority.
Industrial Automation
56/100
resource
task
program
FB
task
task
program
program
FB
FB
FB
represented variables
access paths
communication function
legend:
or
FB
Industrial Automation
57/100
Industrial Automation
58/100
IN_1
OUT_1
The I/O blocks are configured to be attached to the corresponding I/O groups.
Industrial Automation
59/100
predefined addresses
Industrial Automation
60/100
Industrial Automation
61/100
Structured Text
(Strukturierte Textsprache, langage littral structur)
Industrial Automation
62/100
Data Types
Since Function Blocks are typed, the types of connection, input and output must match.
Elementary Types are defined either in Structured Text or in the FB configuration.
analog types:
binary types:
BOOL
BYTE
WORD
DWORD
1
8
16
32
REAL
LREAL
(Real32)
(Real64)
Industrial Automation
63/100
Keyword
BOOL
SINT
INT
DINT
LINT
USINT
UINT
UDINT
ULINT
REAL
LREAL
TIME
DATE
TIME_OF_DAY or TOD
DATE_AND_TIME or DT
STRING
BYTE
WORD
DWORD
LWORD
Industrial Automation
Data Type
Boolean
Short integer
Integer
Double integer
Long integer
Unsigned short integer
Unsigned integer
Unsigned double integer
Unsigned long integer
Real numbers
Long reals
Duration
Date (only)
Time of day (only)
Date and time of day
Character string
Bit string of length 8
Bit string of length 16
Bit string of length 32
Bit string of length 64
variable length double-byte string
64/100
Bits
1
8
16
32
64
8
16
32
64
32
64
depends
depends
depends
depends
8
16
32
64
TYPE
ANALOG_CHANNEL_CONFIGURATION
STRUCT
RANGE: ANALOG_SIGNAL_RANGE;
MIN_SCALE : ANALOG_DATA ;
MAX_SCALE : ANALOG_DATA ;
END_STRUCT;
ANALOG_16_INPUT_CONFIGURATION :
STRUCT
SIGNAL_TYPE : ANALOG_SIGNAL_TYPE;
FILTER_CHARACTERISTIC : SINT (0.99)
CHANNEL: ARRAY [1..16] OF ANALOG_CHANNEL_CONFIGURATION;
END_STRUCT ;
END_TYPE
Industrial Automation
65/100
Industrial Automation
66/100
START STEP
T1
STEP A
STEP B
ACTION D1
D1_READY
ACTION D2
D2_READY
T2
Industrial Automation
67/100
SFC: Elements
S0
event condition
("1" = always true)
"1"
transitions
Sa
Ea
states
Sb
Eb
token
Sc
68/100
State which come into existence with a token are called initial states.
All initial states receive exactly one token, the other states receive none.
Industrial Automation
69/100
"1"
token switch : the token crosses the first active
Sa
Eb
Sc
Sb
Ec
Sd
Ed
Se
Ee
Sf
Sg
Industrial Automation
70/100
P1 State1_P1: do at enter
State1
State1_N: do while
P0 State1_P0: do at leaving
Industrial Automation
71/100
intentional displacement to
avoid optical preference of a
path.
Priority:
Industrial Automation
72/100
SFC: Exercise
Variables:
Input: In0, In1, In2, In3;
Output:
Trap = {0: closed; 1: open}
Speed = {+20: +1 m/s; +1: +5 cm/s}
Register = {0: closed; 1: open}
negative values: opposite direction
In0
In1
In2
In3
Generates 1 as long as the tag of the vehicle (1cm) is over the sensor.
initially: let vehicle until it touches I0 at reduced speed and open the trap for 5s (empty the vehicle).
Speed = 5 cm/s between I0 and I1 or between I2 and I3, speed = 1 m/s between I1 and I2.
1 - Let the vehicle move from I0 to I3
2 - Stop the vehicle when it reaches I3.
3 - Open the tank during 5s.
4- Go back to I0
5 - Open the trap and wait 5s.
repeat above steps indefinitely
Industrial Automation
73/100
::=
OR:
transition
OR:
S-element
OR:
::=
state S-sequence
OR:
parallel paths
OR:
loop
74/100
SFC: Structuring
Every flow chart without a token generator may be redrawn as a
structured flow chart (by possibly duplicating program parts)
structured
Not structured
A
a
b
d
B'
A'
Industrial Automation
75/100
Solution:
assistance through the flow chart editor.
76/100
Function Blocks:
Industrial Automation
77/100
procedure
xy(...);
begin
...
end xy;
extern (ST)
function blocks
flow chart
Industrial Automation
78/100
Function Block
a
"1"
S
R
c
NOT
b
d
Industrial Automation
79/100
Flow Chart
Function Blocks
init
"1"
=
S
&
b
C
&
b
S
C
R
&
c
Industrial Automation
80/100
Industrial Automation
81/100
Industrial Automation
82/100
origin:
electrical
circuit
make contact
(contact travail)
01
02
relay coil
(bobine)
03
50
break contact
(contact repos)
02
01
corresponding
ladder diagram
50
03
50
05
44
Industrial Automation
83/100
rung
make contact
break contact
relay coil
Industrial Automation
84/100
01
"CMOS" equivalent
01
02
50
02
50
01
40
02
01
02
40
Industrial Automation
85/100
textual expression
50
12
50
10
11
Industrial Automation
86/100
00
01
FUN 02
200
literal expression:
!00 & 01 FUN 02 = 200
Industrial Automation
87/100
Industrial Automation
88/100
Industrial Automation
89/100
Industrial Automation
90/100
Instructions Lists is the most efficient way to write code, but only for specialists.
Otherwise, IL should not be used, because this language:
provides no code structuring
has weak semantics
is machine dependent
Industrial Automation
91/100
Industrial Automation
92/100
Industrial Automation
93/100
symbols
laptop
code
variable
monitoring
and
forcing
for debugging
firmware
download
network
PLC
Industrial Automation
94/100
Program maintenance
The source of the PLC program is generally on the laptop of the technician.
This copy is frequently modified, it is difficult to track the original in a process database,
especially if several persons work on the same machine.
Therefore, it would be convenient to be able to reconstruct the source programs
out of the PLC's memory (called back-tracking, Rckdokumentation, reconstitution).
This supposes that the instruction lists in the PLC can be mapped directly to graphic
representations -> set of rules how to display the information.
Names of variables, blocks and comments must be kept in clear text, otherwise the code,
although correct, would not be readable.
For cost reasons, this is seldom implemented.
Industrial Automation
95/100
Industrial Automation
96/100
functions
standard (2.5.1.5)
derived
function blocks
standard (2.5.2.3)
derived
productions
(1)
(2)
(3)
declaration (2.3.3)
derived
data
types
declaration (2.5.1.3)
il, st, ld, fbd
others
derived
functions
declaration (2.5.2.2)
il, st, ld, fbd
sfc elements (2.6)
others
derived
function
blocks
declaration (2.5.3)
il, st, ld, fbd
sfc elements (2.6)
programs
(2.5.3)
resources
(2.7.1)
Industrial Automation
derived elements
declaration (2.7.1)
global variables (2.7.1)
access paths (2.7.1)
(4)
program
(5)
configuration
tasks (2.7.2)
97/100
Assessment
Which are programming languages defined in IEC 61131 and for what are they used ?
In a function block language, which are the two elements of programming ?
How is a PLC program executed and why is it that way ?
Draw a ladder diagram and the corresponding function chart.
Draw a sequential chart implementing a 2-bit counter
Program a saw tooth waveform generator with function blocks
How are inputs and outputs to the process treated in a function chart language ?
Program a sequencer for a simple chewing-gum coin machine
Program a ramp generator for a ventilator speed control (soft start and stop in 5s)
Industrial Automation
98/100
Industrial Automation
99/100