clux.x-pec.comclux.x-pec.com/files/fronter/ene103... · ece4510: feedback control systems. 1–1...
TRANSCRIPT
ECE4510: Feedback Control Systems. 1–1
FEEDBACK CONTROL
• Control is a very common concept.
e.g., Human-machine interaction: Driving a car.
➤ MANUAL CONTROL.
e.g., Independent machine: Room temperature control. Furnace in
winter, air conditioner in summer. Both controlled (turned “on”/“off”)
by thermostat.
➤ AUTOMATIC CONTROL.
DEFINITION: Control is the process of causing a system variable to
conform to some desired value, called a reference value. (e.g.,variable=temperature)
DEFINITION: Feedback is the process of measuring the controlled
variable (e.g., temperature) and using that information to influence the
value of the controlled variable.
• Some applications:
– Airplane autopilots that can land a plane in fog.
– Space telescopes with pointing accuracy of 10−6 degrees.
– Disk-drive read heads with < 1 micron accuracy.
– Robots for various applications.
– . . . (see next page for a synopsis).
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FEEDBACK CONTROL 1–2
Typical Feedback Applications
Categories Specific Applications
Ecological Wildlife management and control; control of plant chemical
wastes via monitoring lakes and rivers; air pollution abatement;
water control and distribution; flood control via dams and re-
sevoirs; forest growth management.
Medical Medical instrumentation for monitoring and control; artificial limbs
(prosthesis).
Home
appliances
Home heating, refrigeration, and airconditioning via thermostatic
control; electronic sensing and control in clothes dryers; humidity
controllers; temperature control of ovens.
Power/energy Power system control and planning; feedback instrumentation in
oil recovery; optimal control of windmill blade and solar panel sur-
faces; optimal power distribution via power factor control.
Transportation Control of roadway vehicle traffic flows using sensors; automatic
speed control devices on automobiles; propulsion control in rail
transit systems; building elevators and escalators.
Manufacturing Sensor-equipped robots for cutting, drilling die casting, forging,
welding, packaging, and assembling; chemical process control;
tension control windup processes in textile mills; conveyor speed
control with optical pyrometer sensing in hot steel rolling mills.
Aerospace and
military
Missile guidance and control; automatic piloting; spacecraft con-
trol; tracking systems; nuclear submarine navigation and control;
fire-control systems (artillery).
(reproduced from: J.R. Rowland, “Linear Control Systems: Modeling, Analysis, and Design,” John Wiley & Sons, (New York: 1986), p. 6.)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FEEDBACK CONTROL 1–3
• Rube Goldberg showed that a knowledge of feedback control was
even useful to budding cartoonists!
Rube Goldberg walks in his sleep, strolls through a cactus field in his bare feet, and screams out an idea for self-operatingnapkin: As you raise spoon of soup (A) to your mouth it pulls string (B), thereby jerking ladle (C) which throws cracker (D) pastparrot (E). Parrot jumps after cracker and perch (F) tilts, upsetting seeds (G) into pail (H). Extra weight in pail pulls cord (I),which opens and lights automatic cigar lighter (J), setting off sky-rocket (K) which causes sickle (L) to cut string (M) and allowpendulum with attached napkin to swing back and forth thereby wiping off your chin. After the meal, substitute a harmonica forthe napkin and you’ll be able to entertain the guests with a little music.
Simple Feedback System Example
DesiredTemp.
RoomTemp.
Heat Loss (Qout)
QinHouseFurnaceGas
ValveThermo-
stat
“Block Diagram” of furnace-controlled room temperature controller.
Identifies major components and omits details. Shows information/
energy flow.
• Central component = PROCESS or “PLANT”, one of whose variables
we want to control. e.g., Plant = ; Variable = .
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FEEDBACK CONTROL 1–4
• DISTURBANCE = some system input out of our direct control.
e.g., Disturbance = .
• ACTUATOR = device that influences controlled variable.
e.g., Actuator = .
• REFERENCE SENSOR measures desired system output.
• OUTPUT SENSOR measures actual system output.
• * COMPENSATOR/ CONTROLLER = device that computes the
“control effort” to apply the the actuator, based on sensor readings.
e.g., combines the last three functions.
A More Abstract Block Diagram:
Ref.Value Output
Disturbance
PlantReferenceSensor
OutputSensor
Compen-sator Actuator
error
“Negative Feedback”
An Even More Abstract Block Diagram:
Ref.Value Output
Disturbance
PlantCompen-sator
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FEEDBACK CONTROL 1–5
The Control Problem:
• ‘Reject’ disturbance.
• Acceptable steady state errors.
• Acceptable transient response.
• Minimize sensitivity to parameter changes in the plant.
Solution Reached By:
1. Choosing output sensors.
2. Choosing actuators.
*3. Developing plant, actuator, sensor equations (models).
*4. Designing compensator based on the models and design criteria.
*5. Evaluating design analytically, with simulation and prototype.
*6. Iteration!!
A First Analysis: Auto Cruise Control
• Want to control speed of automobile.
1. Output sensor = speedometer.
2. Actuator = throttle and engine.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FEEDBACK CONTROL 1–6
• Block diagram:
DesiredSpeed
ActualSpeed
Road Grade
Plant
Auto Body
OutputSensor
Speedometer
Sensor Noise
Compen-sator Actuator
Engine
Throttle
ControlVariable
MeasuredSpeed
3. Model of system:
1. Operate system ≈ 55 MPH. Assume linear response near 55 MPH.
2. Measure: 1% change in throttle ➠ 10 MPH change in speed.
3. Measure: 1% change in grade ➠ 5 MPH change in speed.
4. Measure: Speedometer accurate to a fraction of 1 MPH, so is
assumed exact.
5. Functional block diagram:
Compen-sator
r (t) y(t)
w(t)
u(t)10
0.5
r (t)—reference speed, MPH.
u(t)—throttle posn., %.
y(t)—actual speed, MPH.
w(t)—road grade, %.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FEEDBACK CONTROL 1–7
4. Design compensator/controller
– First attempt = “open loop” controller.
Compensator
1/10r (t) yol(t)
w(t)
u(t)10
0.5
yol(t) = 10(u(t)− 0.5w(t))
= 10
(r (t)
10− 0.5w(t)
)= r (t)− 5w(t).
5. Evaluate design.
– r (t) = 55, w(t) = 0% ➠ yol(t) = 55. No Error. . . Good.
– r (t) = 55, w(t) = 1% ➠ yol(t) = 50. 10% Error. . . Not Good.
– r (t) = 55, w(t) = 2% ➠ yol(t) = 45. 20% Error. . . Not Good.
– Suppose you load the trunk with all your ECE4510 notes and the
car becomes more sluggish.
e.g., the gain “10” becomes “9”
– r (t) = 55, w(t) = 0% ➠ yol(t) = 49.5. 10% Error. . . Not Good.
– r (t) = 55, w(t) = 1% ➠ yol(t) = . . .6. Iterate design. Go to step #4.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FEEDBACK CONTROL 1–8
4. Second attempt = Feedback controller
Compensator︷ ︸︸ ︷100r (t) ycl(t)
w(t)
u(t)10
0.5
– Multiply your output error by 100; FEEDBACK GAIN = 100
ycl(t) = 10u(t)− 5w(t)
u(t) = 100(r (t)− ycl(t))
so, ycl(t) = 1000r (t)− 1000ycl(t)− 5w(t)
1001ycl(t) = 1000r (t)− 5w(t)
ycl(t) = 0.999r (t)− 0.005w(t)
5. Evaluate design.
– r (t) = 55, w(t) = 0% ➠ ycl(t) = 54.945
– r (t) = 55, w(t) = 1% ➠ ycl(t) = 54.94
– r (t) = 55, w(t) = 2% ➠ ycl(t) = 54.935
– r (t) = 55, w(t) = 10%➠ ycl(t) = 54.895 . . . 0.2% Error!
➤ Feedback system rejects disturbances.
➤ Feedback system has steady state error.
– r (t) = 55, w(t) = 0%, plant=“9”, not “10” ➠ ycl(t) = 54.939
➤ Feedback system less sensitive to system parameter
values.
NOTE! High feedback gain = good performance here. Not alwaystrue! e.g., Public address amplifier.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FEEDBACK CONTROL 1–9
4. Third attempt. Try to get rid of steady state error.
Compensator
α
β
r (t) ycl(t)
w(t)
u(t)10
0.5
ycl(t) = 10[α (r (t)− βycl(t))
]− 5w(t)
= 10αr (t)− 10αβycl(t)− 5w(t)
ycl(t) = 10αr (t)− 5w(t)
1+ 10αβ
=(
10α
1+ 10αβ
)︸ ︷︷ ︸set to 1:β=1− 1
10α
r (t)−(
5
1+ 10αβ
)w(t)
= r (t)− 5
10αw(t).
• Best results yet! (Try for yourself with α = 100.)
A Brief History of Control
• 2nd century B.C.: Fluid level/Flow
rate control. Still used to flush toilets!
Supply
Float
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FEEDBACK CONTROL 1–10
• 1624: Drebbel’s incubator
➠ Control temperature
using mechanical
feedback.
WaterEggs
Riser
Float
Metal plate
GassesFlue
Mercury
AlcoholFire
Damper
• 1787: Thomas Mead’s fly-ball governor.
• 1788: James Watt’s fly-ball governor.
Butterfly
To engineinlet
Pivot
valve
Ball
Rotation
Sleeve
Pulley from engine
Steam
➤ Both control a rotating shaft.
• 1840: Airy’s telescope controller. “and the machine (if I may so
express myself) became perfectly wild.”
➤ Discovery of instability in a feedback control system.
➤ Analysis of system with differential equations.
➤ Beginnings of feedback control theory.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FEEDBACK CONTROL 1–11
• 1868: Maxwell found stability criteria for second and third order
(simple) systems.
• 1877: Routh found stability criteria for more complex (general) linear
systems.
• 1893: Lyapunov: stability of nonlinear systems.
• 1932: Nyquist’s graphical stability criteria
• (1945: Bode’s simpler graphical method)
• 1936: PID Control.
• 1948: Evan’s root locus.
• 1960’s: State variable (“modern”) control design.
• 1980’s: “Post Modern” H∞ Robust control. Adaptive control...?
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FEEDBACK CONTROL 1–12
1624
1728
1868
1877
1890
1932
1910
1927
1938
1942
1947
1948
1950
1956
1957
1960
1969
Chronological Historyof Feedback ControlDrebble, Incubator
Watt, Flyball governor
Maxwell, Flyball stability analysis
Routh, Stability
Liapunov, Nonlinear stability
Sperry, Gyroscope and autopilot
Black, Feedback electronic amplifier: Bush, Differential analyzer
Nyquist, Nyquist stability criterion
Bode, Frequency response methods
Wiener, Optimal filter design: Ziegler-Nichols PID tuning
Hurewicz, Sampled data systems; Nichols, Nichols chart
Evans, Root locus
Kochenberger, Nonlinear analysis
Pontryagin, Maximum principle
Bellman, Dynamic programming
Draper, Inertial navigation; Kalman, Optimal estimation
Hoff, Microprocessor(reproduced from: G.F. Franklin, J.D. Powell, A. Emami-Naeini, “Feedback Control of Dynamic Systems,” 3rd edition,Addison Wesley, (Reading, Mass: 1994), flyleaf.)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510: Feedback Control Systems. 2–1
SYSTEM MODELING IN THE TIME DOMAIN
• Model = Set of equations used to represent a physical system,
relating output to input.
• Required to:
1. Understand system behavior (analysis).
2. Design a controller (synthesis).
• Developing the model ≈ 80%–90% of the effort in designing a
controller. Methods:
1. Analytic system modeling—we focus on these methods.
2. Empirical system identification. (In practice, there is always an
empirical component to system modeling).
• No model is exact! Inaccuracies due to:
1. Unknown parameter values.
2. Unmodeled dynamics (to make simpler model).
LTI Systems
• This course teaches methods to control linear time invariant (LTI)
systems.
• None exist! But, many are “close enough.”
• In the following, suppose a system maps x(t) 7→ y(t) asy(t) = T[x(t)].
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, SYSTEM MODELING IN THE TIME DOMAIN 2–2
LINEAR: A system is linear iffT [ax1(t)+ bx2(t)] = aT [x1(t)] + bT[x2(t)].
a.k.a. “superposition.”
TIME INVARIANT: A system is time invariant iffy(t − t0) = T[x(t − t0)] ∀ t0.
(Translation: “If we input a specific signal x(t) and record the output
y(t), then input a shifted version of the signal x(t), the output will be a
shifted version of y(t), with the same shift.)
KEY POINT: If a system is LTI, then it has an “impulse response.” This
entirely characterizes the system’s dynamics. The Laplace transform
of the impulse response is the “transfer function.” Working with the
transfer function eliminates the need to mess around with trying to
solve complicated differential equations.
A Simple Model
• Consider a resistor:i (t)
v(t)R
• Ohm’s Law (model) says: v(t) = i (t) · R.
• Is the resistor LTI?
• Is the model of the resistor LTI?
EXAMPLE : Consider a 1 Ohm, 2 Watt resistor.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, SYSTEM MODELING IN THE TIME DOMAIN 2–3
• Apply 1 Volt;
1 Amp of current is predicted to flow.
Power dissipated = V2/R= 1 Watt.
• Now apply 10 Volts.
10 Amps of current is predicted to flow.
Power dissipated = V2/R= 100Watts!
➤ Model will no longer be accurate.
➤ True behavior depends on input signal level—nonlinear.
➤ Model is accurate in certain range of input-signal values.
Dynamics of Mechanical Systems I (translational)
• Newton’s Law:∑
F = ma. Vector sum of forces = mass of object
times inertial acceleration.
• “Free-body diagrams” are a tool to apply this law.
EXAMPLE : Cruise control model.
• Write the equations of motion for the speed and forward motion of a
car assuming that the engine imparts a forward force of u(t).
1. Assume rotational inertia of wheels is negligible.
2. Assume that friction is proportional to car’s speed (viscous friction).
∑F = ma
u(t)− b.x(t) = m
..x(t)
or,..x(t)+ b
m
.x(t) = u(t)
m
b.x(t) u(t)
x(t)
m
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, SYSTEM MODELING IN THE TIME DOMAIN 2–4
If the variable of interest is speed (v(t) = .x(t)), not position,
.v(t)+ b
mv(t) = u(t)
m• Notice that the differential equation has “output variables” on the left
of “=”, and “input variables” on the right.
IMPORTANT POINT: All of our models of dynamical systems will be
differential equations involving the input (e.g., u(t)) and its derivatives
and the output (e.g., y(t)) and its derivatives. No other signals
(intermediate variables) are allowed in our solutions.
EXAMPLE : Car suspension.
Each wheel in a car suspension system has a tire, shock absorber
and spring. Write the one-dimensional (vertical) equations of
motion for the car body and wheel.
“Quarter-car model”
Road Surface
Inertial Reference
kw
bks
m1
m2
x(t)
y(t)
r (t)
Free-body diagram:ks(y(t)− x(t)) b(
.y(t)− .
x(t))
kw(x(t)− r (t)) ks(y(t)− x(t)) b(.y(t)− .
x(t))
m1 m2x(t) y(t)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, SYSTEM MODELING IN THE TIME DOMAIN 2–5
The force from the spring is proportional to its stretch. The force from the
shock absorber is proportional to the rate-of-change of its stretch.∑F = ma
b( .
y(t)− .x(t)
)+ ks (y(t)− x(t))− kw (x(t)− r (t)) = m1
..x(t)
−ks (y(t)− x(t))− b( .
y(t)− .x(t)
)= m2
..y(t)
Re-arrange:..x(t)+ b
m1(
.x(t)− .
y(t))+ ks
m1(x(t)− y(t))+ kw
m1x(t) = kw
m1r (t)
..y(t)+ b
m2(
.y(t)− .
x(t))+ ks
m2(y(t)− x(t)) = 0
Important components for mechanical-translational systems:
x1(t)
x1(t)
x2(t)
x2(t)
f (t) = k(x1(t)− x2(t))
f (t) = b(.x1(t)− .
x2(t))
k
b
m1. Mass
2. Spring
3. Damper
Dynamics of Mechanical Systems II (rotational)
• Newton’s Law is modified to be:∑
M = Jα (or I α)
Vector sum of moments = moment of inertia times angular
acceleration. (“moment”=“torque”).
EXAMPLE : Satellite control.
Satellites require attitude control so that sensors, antennas, etc., are
properly pointed. Let’s consider one axis of rotation.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, SYSTEM MODELING IN THE TIME DOMAIN 2–6
θ(t)
d
Gas jetFc(t)
moment = Fc(t) · d, so,
Fc(t)d = J..θ(t)
..θ(t) = Fc(t)d
JNote: Output of system θ(t) integrates
torques twice—“double-integrator plant.”EXAMPLE : Torsional pendulum.
A torsional pendulum is used, for example, in clocks enclosed in glass
domes. A similar device is the read-write head on a hard-disk drive.
k
bJ
τ, θ
k: “Springiness” of suspension wire.
b: Viscous friction.
∑M = J
..θ(t)
J..θ(t) = τ(t)− b
.θ(t)− kθ(t)
..θ(t)+ b
J
.θ(t)+ k
Jθ(t) = τ(t)
J
Important components for mechanical rotational systems:
θ1(t)
θ1(t)
θ2(t)
θ2(t)τ (t) = k(θ1(t)− θ2(t))
τ (t) = b(.θ1(t)−
.θ2(t))
k
b
J1. Inertia
2. Spring
3. Damper
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, SYSTEM MODELING IN THE TIME DOMAIN 2–7
EXAMPLE : NONLINEAR Rotational Pendulum.
l
θ(t), τ (t)
mg
Moment of intertia: J = ml2.∑M = J
..θ(t)
J..θ(t) = τ(t)−mglsin(θ(t))
..θ(t)+ g
lsin(θ(t))︸ ︷︷ ︸Nonlinear!
= τ(t)ml2
If motion is “small,” sin(θ(t)) ≈ θ(t)...θ(t)+ g
lθ(t) = τ(t)
ml2Linear.
This is a preview of linearization.
Summary of Developing Models for Rigid Bodies:1. Assign variables such as x(t) and θ(t) that are both necessary and
sufficient to describe and arbitrary position of the object.
2. Draw a free-body diagram of each component, and indicate all forcesacting on each body and the accelerations of the center of mass withrespect to an inertial reference.
3. Apply Newton’s laws:∑
F = ma,∑
M = Jα.
4. Combine the equations to eliminate internal forces.
5. The final form must be in terms of ONLY the input to the system andits derivatives, and the output of the system and its derivatives.
Dynamics of Electrical Circuits
• Kirchhoff’s Law’s:
– Current Law (KCL): The algebraic sum of currents entering a node
equals the algebraic sum of currents leaving the node.
– Voltage Law (KVL): The algebraic sum of all voltages taken around
a closed path in a circuit is zero.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, SYSTEM MODELING IN THE TIME DOMAIN 2–8
• “Node analysis” is a tool to apply these laws. (i.e., select one node as
reference (e.g., ground) and assume all other voltages are unknown.
Write equations for the unknowns using KCL. KVL must be used for
voltage sources.)
EXAMPLE : Bridged-Tee circuit.
R1 R2
C1
C2
vi (t)
➀ ➁ ➂
➃
• Select reference = ➃.
– KVL at ➀: v➀(t) = vi (t).
– KCL at ➁:v➀(t)− v➁(t)
R1− v➁(t)− v➂(t)
R2−C1
.v➁(t) = 0.
– KCL at ➂:v➁(t)− v➂(t)
R2+ C2(
.v➀(t)− .
v➂(t)) = 0.
v➁(t)− v➂(t)+ R2C2(.v➀(t)− .
v➂(t)) = 0
v➂(t)+ R2C2(.v➂(t)− .
v➀(t)) = v➁(t)
v➀(t)−[v➂(t)+ R2C2(
.v➂(t)− .
v➀(t))]
R1−[
v➂(t)+ R2C2(.v➂(t)− .
v➀(t))]− v➂(t)
R2−
C1[ .v➂(t)+ R2C2(
..v➂(t)− ..
v➀(t))] = 0
R2(v➀(t)−
[v➂(t)+ R2C2(
.v➂(t)− .
v➀(t))])−
R1([v➂(t)+ R2C2(
.v➂(t)− .
v➀(t))]− v➂(t)
)−Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, SYSTEM MODELING IN THE TIME DOMAIN 2–9
R1R2C1[ .v➂(t)+ R2C2(
..v➂(t)− ..
v➀(t))] = 0.(
R1R22C1C2
) ..v➂(t)+
(R2
2C2+ R1R2C2+ R1R2C1) .v➂(t)+ (R2) v➂(t)
= (R1R22C1C2)
..v➀(t)+ (R2
2C2+ R1R2C2).v➀(t)+ (R2)v➀(t)
Important components for electrical systems:
1. Resistor
2. Capacitor
3. Inductor
4. Voltage source
5. Current source
6. OperationalAmplifier
v(t)
v(t)
v(t)
v(t)
i (t)
i (t)
i (t)
i (t)
vs
i s
vd(t)i−(t)
i+(t) vo(t)
v(t) = Ri(t)
i (t) = Cd v(t)
dt
v(t) = Ld i(t)
dt
v(t) = vs
i (t) = i s
vd(t) = 0
i−(t) = i+(t) = 0
vo(t) = Ao(v+(t)− v−(t))as Ao→∞
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, SYSTEM MODELING IN THE TIME DOMAIN 2–10
EXAMPLE : Op-amp circuit.
R1
R2 C
vi (t) vo(t)
i (t) = vi (t)
R1
vo(t) = −R2i (t)− vc(t).
dvo(t)
dt= −R2
di(t)
dt− dvc(t)
dt
= −R2
R1
dvi (t)
dt− i (t)
C
= −R2
R1
dvi (t)
dt− 1
R1Cvi (t)
R1C.vo(t) = −R2C
.vi (t)− vi (t)
(as C→∞, we get an inverting amplifier.)
Dynamics of Electro-Mechanical Systems
• These are systems that convert energy from electrical to mechanical,
or vice versa.
EXAMPLE : DC Generator.
• Assume generator is driven at constant speed.
• Generator has field windings (input), and rotor/armature windings
(output).Rf Ra Lai f (t) i a(t)
ef (t) L f eg(t) Zlea(t)
︸ ︷︷ ︸Fieldcircuit
︸ ︷︷ ︸Rotorcircuit
︸ ︷︷ ︸Loadcircuit
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, SYSTEM MODELING IN THE TIME DOMAIN 2–11
• ef (t) = Rf i f (t)+ L fdi f (t)
dtef (t) is input, i f (t) is output.
• eg(t) = Kφdθ(t)
dtK depends on generator structure.
= Kgi f (t). dθ(t)/dt = angular velocity = cst.
φ = flux, proportional to i f (t).
• eg(t) = Raia(t)+ Ladia(t)
dt+ ea(t). eg(t) is input, i a(t) is output.
• ea(t) = Zl ia(t). i a(t) is input, ea(t) is output.
ef (t) ea(t)i f (t) eg(t) i a(t)Field
circuitKg
Rotorcircuit Zl
This is a preview of a “block diagram” used to simplify our understanding
of the system dynamics.
EXAMPLE : DC Motor (servo-motor).
• Directly generates rotational motion.
• Indirectly generates translational motion.
ea(t) eb(t)
i a(t) Ra La b
Jθ(t), τ (t)
︸ ︷︷ ︸Armature
︸ ︷︷ ︸Load
• Mechanical resistance of load is translated into an electrical
“resistance” called the “back e.m.f.”
• eb(t) = Kedθ(t)
dtKe = Kφ, as with generator.
• ea(t) = Raia(t)+ Ladia(t)
dt+ eb(t)
• τ(t) = Kτ i a(t) Kτ = K1φ
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, SYSTEM MODELING IN THE TIME DOMAIN 2–12
• Combining these equations of motion, recall Newton:∑M = Jα
J..θ(t) = τ(t)− b
.θ(t)
= Kτ i a(t)− b.θ(t)
• Assume (FOR NOW ONLY) electrical response is faster than
mechanical. La ≈ 0.
J..θ(t) = Kτ
(ea(t)− eb(t)
Ra
)− b
.θ(t)
J..θ(t)+
(b+ KτKe
Ra
)︸ ︷︷ ︸
back emf indistinguishable from friction!
.θ(t) = Kτ
Raea(t)
Dynamics of Heat Flow/ Dynamics of Fluid Flow
• These two subjects will not be covered here. Refer to texts on
thermodynamics or fluid-dynamics.
Transformers and Gears
• Ideally, both of these devices simply scale their input value.
Transformer :N1
N2= e1
e2= i2
i1
Gears :r1
r2= θ2
θ1= τ1
τ2
r1 r2
System Identification (SYS ID)
• When we generate models of system dynamics, we are performing
“system identifications.”
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, SYSTEM MODELING IN THE TIME DOMAIN 2–13
• When we use known properties from physics and knowledge of the
system’s structure (as we have done here) we are performing “white
box system ID.”
• If the system is very complex, or if the physics are not well
understood, we need to use input/output data to generate a system
model: “black-box system ID.”
• A topic for the whole course!
Linearization
• We will study how to control linear systems.
• Linear systems are rare.
• We can “linearize” a non-linear system—the controller designed for
linearized model will work on the true nonlinear system (but not as
well as a controller designed directly for the non-linear system.)
KEY POINT: We can convert any differential equation into a first-order
vector differential equation:.Ex = f (Ex,u) ; Ex = vector, u = input.
Iff the system is linear, this will be of the form:.Ex = AEx + Bu; Aand B are constant matrices.
EXAMPLE : Torsional pendulum (pg. 2–2–6)..θ(t)+ b
J
.θ(t)+ k
Jθ(t) = τ(t)
J
let
[x1(t)
x2(t)
]=[θ(t).θ(t)
]
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, SYSTEM MODELING IN THE TIME DOMAIN 2–14
.x2(t)+ b
Jx2(t)+ k
Jx1(t) = τ(t)
J[ .x1(t).x2(t)
]=[
0 1
−k/J −b/J
]︸ ︷︷ ︸
A
[x1(t)
x2(t)
]+[
0
1/J
]︸ ︷︷ ︸
B
τ(t).
So, our model of the torsional pendulum is linear.
EXAMPLE : Rotational pendulum (pg. 2–2–7)..θ(t)+ g
lsin(θ(t)) = τ(t)
ml2
let
[x1(t)
x2(t)
]=[θ(t).θ(t)
][ .
x1(t).x2(t)
]= x2(t)
−g
lsin(x1(t))
+
0
1
ml2
τ(t).
Not linear because we cannot make a constant A matrix.
Small Signal Linearization
• Uses a Taylor-series expansion of the differential equation around
some operating condition. (Equilibrium value where.x0 = 0= f (x0,u0)).
let x = x0+ δx x0 = operating state
u = u0+ δu u0 = nominal control value..x = f (x,u).
• Taylor-series expansion:.x = .
x0+ δ .x ≈ f (x0,u0)+ Aδx + Bδu plus higher-order terms
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, SYSTEM MODELING IN THE TIME DOMAIN 2–15
• Subtract out equillibrium (nominal) solution;
δ.x = Aδx + Bδu,
which is linear. This is exactly how we linearized the rotational
pendulum before, with τ0 = 0; θ0 = 0.
sin(θ) = θ − θ3
3!+ θ
5
5!− · · ·
≈ θ.Feedback Linearization (computed torque)
• For rotational pendulum, ml2..θ(t)+mglsin(θ(t)) = τ(t).
– COMPUTE: τ(t) = mglsin(θ(t))+ u(t).
– THEN: ml2..θ(t) = u(t), no matter how large θ(t) becomes!
– Sometimes used in robotics and airplane flight control, but very
computationally intensive.
Analogous Systems
• The linearized differential equations of many very different physical
systems appear identical.
• One would suppose they behave in similar ways (dynamic response)
and can be controlled with similar controllers.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, SYSTEM MODELING IN THE TIME DOMAIN 2–16
Mechanical Translational m..x(t)+ b
.x(t)+ kx(t) = u(t)
Mechanical Rotational J..θ(t)+ b
.θ(t)+ kθ(t) = τ(t)
Satellite J..θ(t) = f (t) · d
DC Motor (for La = 0) J..θ(t)+
(b+ kτke
Ra
).θ(t) = kτ
Raea(t)
Generator (LaL f )..ea(t)+ (L f (Ra + Rl )+ LaRf )
.ea(t)+
Rf (Ra + Rl ) = (kgRl )ef (t)
• These are all of the forma2
..x(t)+ a1
.x(t)+ a0x(t) = b2
..u(t)+ b1
.u(t)+ b0u(t)
which is called a second-order form.
• Therefore, we have seen very specific examples of a very general
class of system. If we learn how to control the general class, we can
apply this knowledge to specific systems.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510: Feedback Control Systems. 3–1
DYNAMIC RESPONSE
• We can now model dynamic systems with differential equations.
• What do these equations mean?
• How does this system respond to certain inputs?
• If we add dynamics (a controller) how will the system respond?
• How SHOULD the system respond? (specifications)
∗ ∗ ∗ KEY, ESSENTIAL, VITAL, TOOL: Laplace Transform ∗ ∗ ∗
Some Important Input Signals
• Several signals recur throughout this course.
• The unit step function:
1(t) ={
1, t ≥ 0;0, otherwise.
t
1(t)
• The unit ramp function:
r (t) ={
t, t ≥ 0;0, otherwise.
t
r (t)
• The unit parabola function:
p(t) =
t2
2, t ≥ 0;
0, otherwise.t
p(t)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–2
• The cosine/sine functions:
t
cos(t)
t
sin(t)
• The impulse function, δ(t):
– Very strange “generalized” function, only defined under an integral.δ(t) = 0, t 6= 0 zero duration∫ ∞
−∞δ(t) dt = 1. unit area.
Symbolt
δ(t)
– Sifting property ∫ ∞−∞
x(τ )δ(t − τ) dτ = x(t).
Response of Linear Time Invariant System
• Let y(t) be the output of an LTI system with input x(t).
y(t) = T [x(t)]
= T [∫ ∞−∞
x(τ )δ(t − τ) dτ ] (sifting)
=∫ ∞−∞
x(τ )T[δ(t − τ)] dτ. (linear)
Let h(t, τ ) = T [δ(t − τ)]Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–3
=∫ ∞−∞
x(τ )h(t, τ ) dτ
If the system is time invariant, h(t, τ ) = h(t − τ)=∫ ∞−∞
x(τ )h(t − τ) dτ (time invariant)
4= x(t) ∗ h(t).
• The output of an LTI system is equal to the convolution of its “impulse
response” with the input.
• This makes life EASY (TRUST me!)
EXAMPLE : Finding an impulse response:
• Consider a first-order system,.y(t)+ ky(t) = u(t).
• Let y(0−) = 0, u(t) = δ(t).• For positive time we have
.y(t)+ ky(t) = 0. Recall from your
differential-equation math course: y(t) = Aest, solve for A, s..y(t) = Asest
Asest+ k Aest = 0s+ k = 0
s= −k.
• We have solved for s—now solve for A.∫ 0+
0−
.y(t) dt︸ ︷︷ ︸
y(t)|0+0−
+ k∫ 0+
0−y(t) dt︸ ︷︷ ︸0
=∫ 0+
0−δ(t) dt︸ ︷︷ ︸1
y(0+)− y(0−) = 1
Ae−k0+ − 0= 1A = 1.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–4
• Response to impulse: h(t) = e−kt, t > 0.
• h(t) = e−kt1(t).
• Response of this system to general input:
y(t) =∫ ∞−∞
h(τ )u(t − τ) dτ
=∫ ∞−∞
e−kτ1(τ )u(t − τ) dτ
=∫ ∞
0e−kτu(t − τ) dτ.
Transfer Function
• Response to impulse = “impulse response” h(t).
• Response to general input = messy convolution: h(t) ∗ u(t).
Response to Sinusoid? Cosinusoid?
Acos(ωt) = A
2
(ejωt + e− jωt
)Break it Down: Response to Exponential?
• Let u(t) = est, where s is complex.
y(t) =∫ ∞−∞
h(τ )u(t − τ) dτ
=∫ ∞−∞
h(τ )es(t−τ) dτ
=∫ ∞−∞
h(τ )este−sτ dτ
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–5
= est∫ ∞−∞
h(τ )e−sτ dτ︸ ︷︷ ︸Transfer function, H(s)
= estH(s).
• An input of the form est decouples the convolution into two
independent parts: a part depending on est and a part depending on
h(t). [Complex exponentials are eigenfunctions of all LTI systems.]
EXAMPLE :.y(t)+ ky(t) = u(t) = est:
but , y(t) = H(s)est,.y(t) = s H(s)est,
s H(s)est+ k H(s)est = est
H(s) = 1
s+ k(I never integrated!)
y(t) = est
s+ k.
Response to Cosinusoid (revisited)
Let s= jω u(t)=ejωt y(t)=H( jω)ejωt
s=− jω u(t)=e− jωt y(t)=H(− jω)e− jωt
u(t)=Acos(ωt) y(t)=A
2
[H( jω)ejωt + H(− jω)e− jωt
]Now, H( jω)
4= Mejφ
H(− jω) = Me− jφ (can be shown for h(t) real)
y(t) = AM
2
[ej (ωt+φ) + e− j (ωt+φ)]
= AM cos(ωt + φ).• The response of an LTI system to a sinusoid is a sinusoid! (of the
same frequency).
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–6
EXAMPLE : Frequency response of our first order system:
H(s) = 1
s+ k
H( jω) = 1
jω + k
M = |H( jω)| = 1√ω2+ k2
φ = 6 H( jω) = − tan−1(ω
k
)y(t) = A√
ω2+ k2cos
(ωt − tan−1
(ωk
)).
• Can we use these results to simplify convolution and get an easier
way to understand dynamic response?
The Laplace L− Transform
• We have seen that if a system has an impulse response h(t), we can
compute a transfer function H(s),
H(s) =∫ ∞−∞
h(t)e−st dt.
• Since we deal with causal systems (possibly with an impulse at
t = 0), we can integrate from 0− instead of negative infinity.
H(s) =∫ ∞
0−h(t)e−st dt.
• This is called the one-sided (uni-lateral) Laplace transform of h(t).
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–7
Laplace Transforms of Common Signals
Name Time function, f (t) Laplace tx., F(s)
Unit impulse δ(t) 1
Unit step 1(t)1
s
Unit ramp t · 1(t) 1
s2
nth order ramp tn · 1(t) n!
sn+1
Sine sin(bt)1(t)b
s2+ b2
Cosine cos(bt)1(t)s
s2+ b2
Damped sine e−at sin(bt)1(t)b
(s+ a)2+ b2
Damped cosine e−at cos(bt)1(t)s+ a
(s+ a)2+ b2
Diverging sine t sin(bt)1(t)2bs
(s2+ b2)2
Diverging cosine t cos(bt)1(t)s2− b2
(s2+ b2)2
Properties of the Laplace Transform
• Superposition: L {a f1(t)+ bf2(t)} = aF1(s)+ bF2(s).
• Time delay: L { f (t − τ)} = e−sτF(s).
• Time Scaling: L { f (at)} = 1
|a|F(s
a
).
(useful if original equations are expressed poorly in time scale. e.g.,measuring disk-drive seek speed in hours).
• Differentiation:
L
{ .f (t)
}= sF(s)− f (0−)
L
{ ..f (t)
}= s2F(s)− s f(0−)− .
f (0−)
L{
f (m)(t)} = smF(s)− sm−1 f (0−)− . . .− f (m−1)(0−).
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–8
• Integration: L{∫ t
0−f (τ ) dτ
}= 1
sF(s).
• Convolution: Recall that y(t) = h(t) ∗ u(t)
Y(s) = L {y(t)} = L {h(t) ∗ u(t)}= L
{∫ t
τ=0−h(τ )u(t − τ) dτ
}
=∫ ∞
t=0−
∫ t
τ=0−h(τ )u(t − τ) dτ e−st dt
=∫ ∞τ=0−
∫ ∞t=τ−
h(τ )u(t − τ) e−st dt dτ.
t
τ
τ = t
Region ofintegration
• Multiply by e−sτesτ
Y(s) =∫ ∞τ=0−
h(τ )e−sτ∫ ∞
t=τ−u(t − τ)e−s(t−τ) dt dτ.
Let t ′ = t − τ :
Y(s) =∫ ∞τ=0−
h(τ )e−sτ dτ∫ ∞
t ′=0−u(t ′)e−st′ dt′
Y(s) = H(s)U (s).
• The Laplace transform “unwraps” convolution for general input
signals. Makes system easy to analyze.
The Inverse Laplace Transform
• The inverse Laplace Transform converts F(s)→ f (t).
• Once we get an intuitive feel for F(s), we won’t need to do this often.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–9
• The main tool for ILT is partial-fraction-expansion.
Assume : F(s) = b0sm+ b1sm−1+ · · · + bm
sn + aasn−1+ · · · + an
= k
∏mi=1(s− zi )∏ni=1(s− pi )
➠ (zeros)(poles)
= c1
s− p1+ c2
s− p2+ · · · + cn
s− pnif {pi }distinct.
so, (s− p1)F(s) = c1+ c2(s− p1)
s− p2+ · · · + cn(s− p1)
s− pn
let s= p1 : c1 = (s− p1)F(s)|s=p1
ci = (s− pi )F(s)|s=pi
f (t) =n∑
i=1
ci epi t1(t) since L
[ekt1(t)
] = 1
s− k.
EXAMPLE : F(s) = 5
s2+ 3s+ 2= 5
(s+ 1)(s+ 2).
c1 = (s+ 1)F(s)∣∣∣s=−1= 5
s+ 2
∣∣∣s=−1= 5
c2 = (s+ 2)F(s)∣∣∣s=−2= 5
s+ 1
∣∣∣s=−2= −5
f (t) = (5e−t − 5e−2t)1(t).
• If F(s) has repeated roots, we must modify the procedure. e.g.,repeated three times:
F(s) = k
(s− p1)3(s− p2) · · ·= c1,1
s− p1+ c1,2
(s− p1)2+ c1,3
(s− p1)3+ c2
s− p2+ · · ·
c1,3 = (s− p1)3F(s)
∣∣s=p1
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–10
c1,2 =[
d
ds
((s− p1)
3F(s))∣∣∣∣
s=p1
c1,1 = 1
2
[d2
ds2
((s− p1)
3F(s))∣∣∣∣
s=p1
cx,k−i = 1
i !
[di
dsi
((s− pi )
kF(s))∣∣∣∣
s=pi
.
EXAMPLE : Find ILT ofs+ 3
(s+ 1)(s+ 2)2.
• ans: f (t) = (2e−t − 2e−2t − te−2t︸︷︷︸from repeated root.
)1(t).
• TEDIOUS.
• Use Matlab. e.g., F(s) = 5
s2+ 3s+ 2.
Example 1. Example 2.
>> Fnum = [0 0 5]; >> Fnum = [0 0 1 3];
>> Fden = [1 3 2]; >> Fden = conv([1 1],conv([1 2],[1 2]));
[r,p,k] = residue(Fnum,Fden); [r,p,k] = residue(Fnum,Fden);
r = -5 r = -2
5 -1
p = -2 2
-1 p = -2
k = [] -2
-1
k = []
• When you use “residue” and get repeated roots, BE SURE to type
“help residue” to correctly interpret the result.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–11
Using the Laplace Transform to Solve Problems
• We can use the Laplace transform to solve both homogeneous and
forced differential equations.
EXAMPLE :..y(t)+ y(t) = 0, y(0−) = α, .
y(0−) = β.s2Y(s)− αs− β + Y(s) = 0
Y(s)(s2+ 1) = αs+ βY(s) = αs+ β
s2+ 1
= αs
s2+ 1+ β
s2+ 1.
From tables, y(t) = [α cos(t)+ β sin(t)]1(t).
• If initial conditions are zero, things are very simple.
EXAMPLE :..y(t)+5
.y(t)+4y(t) = u(t), y(0−) = 0,
.y(0−) = 0, u(t) = 2e−2t1(t).
s2Y(s)+ 5sY(s)+ 4Y(s) = 2
s+ 2
Y(s) = 2
(s+ 2)(s+ 1)(s+ 4)
= −1
s+ 2+ 2/3
s+ 1+ 1/3
s+ 4.
From tables, y(t) =[−e−2t + 2
3e−t + 1
3e−4t
]1(t).
Time Response vs. Pole Locations: 1st-Order Pole(s) (stable)
• Pole = root of denominator of H(s) = b(s)/a(s).
• Poles qualitatively determine the behavior of the system.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–12
• Zeros quantify this relationship.
EXAMPLE : H(s) = 1
s+ σ ➠ h(t) = e−σ t1(t).
• If σ > 0, pole is at s< 0, STABLE i.e., impulse response decays, and
any bounded input produces bounded output.
• If σ < 0, pole is at s> 0, UNSTABLE.
• σ is “time constant” factor: τ = 1/σ .
0 1 2 3 4 50
0.2
0.4
0.6
0.8
1impulse([0 1],[1 1]);
Time (sec × τ )t = τ
←− 1
e
e−σ t
h(t)
0 1 2 3 4 50
0.2
0.4
0.6
0.8
1step([0 1],[1 1]);
Time (sec × τ )t = τ
y(t)×
KK (1− e−t/τ )
System response. K = dc gain
Response to initial condition−→ 0.
Time Response vs. Pole Locations: 2nd-Order Poles (stable)
H(s) = b0
s2+ a1s+ a2= Kω2
n
s2+ 2ζωns+ ω2n
(standard form).
ζ = damping ratio.
ωn = natural frequency or undamped frequency.
h(t) = ωn√1− ζ 2
e−σ t (sin(ωdt))1(t),
where, σ = ζωn,
ωd = ωn
√1− ζ 2 = damped frequency.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–13
θ = sin−1(ζ )
=(s)
<(s)ωd
σ
ωn
ζ = 0.707
=(s)
<(s)
45◦
ζ = 0.5
=(s)
<(s)
30◦
ζ = 0.3
=(s)
<(s)
17.5◦
0 5 10 15 20 25 30−1
−0.5
0
0.5
1
e−σ t
−e−σ t
Time (sec)
h(t)
Impulse Response
Envelope of sinusoid decays as e−σ t
0 2 4 6 8 10 12−1
−0.5
0
0.5
1ζ = 0
0.2
0.4
0.6
0.8ζ = 1
ωnt
y(t)
Impulse Responses of 2nd-Order Systems
0 2 4 6 8 10 120
0.5
1
1.5
2ζ = 0
0.2
0.4
0.6
0.8
1.0
ωnt
y(t)
Step Responses of 2nd-Order Systems
• Low damping, ζ ≈ 0, oscillatory; High damping, ζ ≈ 1, no oscillations.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–14
=(s)
<(s)
Impulse responses vs. pole locations
=(s)
<(s)
Step responses vs. pole locations
• 0< ζ < 1 underdamped.
• ζ = 1 critically damped, ζ > 1 overdamped.
Time Domain Specifications
• We have seen impulse and step responses for first- and second-order
systems.
• Our control problem may be to specify exactly what the response
SHOULD be.
• Usually expressed in terms of the step response.
0.1
0.91
ttr
Mptp
ts
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–15
• tr = Rise time = time to reach vicinity of new set point.
• ts = Settling time = time for transients to decay (to 5%, 2%, 1%).
• Mp = Percent overshoot.
• tp = Time to peak.
Rise Time
• All step responses rise in roughly the same amount of time (see
pg. 3–3–13.) Take ζ = 0.5 to be average.
➠ time from 0.1 to 0.9 is approx ωntr = 1.8:
tr ≈ 1.8
ωn.
• We could make this more accurate, but note:
– Only valid for 2nd-order systems with no zeros.
– Use this as approximate design “rule of thumb” and iterate design
until spec. is met.
Peak Time and Overshoot
• Step response can be found from ILT of H(s)/s.
y(t) = 1− e−σ t
(cos(ωdt)+ σ
ωdsin(ωdt)
),
ωd = ωn
√1− ζ 2, σ = ζωn.
• Peak occurs when.y(t) = 0
.y(t) = σe−σ t
(cos(ωdt)+ σ
ωdsin(ωdt)
)− e−σ t (−ωd sin(ωdt)+ σ cos(ωdt))
= e−σ t
(σ 2
ωdsin(ωdt)+ ωd sin(ωdt)
)= 0.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–16
• So,ωdtp = π,
tp = π
ωd= π
ωn
√1− ζ 2
.
• Mp = e−ζπ/√
1−ζ 2 × 100.
• (common values: Mp = 16% for
ζ = 0.5; Mp = 5% for ζ = 0.7). 0 0.2 0.4 0.6 0.8 1.00
10
20
30
40
50
60
70
80
90
100
ζ
Mp,%
Settling Time
• Determined mostly by decaying exponential
e−ωnζ ts = ε . . . ε = 0.01, 0.02, or 0.05
EXAMPLE :
ε = 0.01
e−ωnζ ts = 0.01ωnζ ts = 4.6
ts = 4.6
ζωn= 4.6
σ
ε ts0.01 ts = 4.6/σ
0.02 ts = 3.9/σ
0.05 ts = 3.0/σ
Design Synthesis
• Specifications on tr , ts, Mp determine pole locations.
• ωn ≥ 1.8/tr .
• ζ ≥ fn(Mp). (read off of ζ versus Mp graph on page 3–3–16)
• σ ≥ 4.6/ts. (for example—settling to 1%)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–17
=(s)
<(s)ωn
=(s)
<(s)sin−1 ζ
=(s)
<(s)
σ
=(s)
<(s)
EXAMPLE : Converting specs. to s-plane
• Specs: tr ≤ 0.6, Mp ≤ 10%, ts ≤ 3 sec. at 1%
• ωn ≥ 1.8/tr = 3.0 rad/sec.
• From graph of Mp versus ζ, ζ ≥ 0.6.
• σ ≥ 4.6/3= 1.5 sec.
−5 −4 −3 −2 −1 0 1−3
−2
−1
0
1
2
3
<(s)
=(s)
EXAMPLE : Designing motor compensator
• Suppose a servo-motor system for a pen-plotter has transfer function0.5Ka
s2+ 2s+ 0.5Ka= ω2
n
s2+ 2ζωns+ ω2n
.
• Only one adjustable parameter Ka, so can choose only one spec: tr ,
ts or Mp ➠ Allow NO overshoot.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–18
• Mp = 0, ζ = 1.
• From transfer fn: 2= 2ζωn ➠ ωn = 1.
• ω2n = 12 = 0.5Ka, Ka = 2.0
• Note: ts = 4.6 seconds. We will need a better controller than this for a
pen plotter!
Time Response vs. Pole Locations: Higher Order Systems
• We have looked at first-order and second-order systems without
zeros, and with unity gain.
Non-unity gain
• If we multiply by K , the dc gain is K . tr , ts, Mp, tp are not affected.
Add a zero to a second-order system
H1(s) =2
(s+ 1)(s+ 2)H2(s) =
2(s+ 1.1)
1.1(s+ 1)(s+ 2)
=2
s+ 1− 2
s+ 2=
2
1.1
(0.1
s+ 1+ 0.9
s+ 2
)=
0.18
s+ 1+ 1.64
s+ 2
• Same dc gain (at s= 0).
• Coefficient of (s+ 1) pole GREATLY reduced.
• General conclusion: a zero “near” a pole tends to cancel the effect of
that pole.
• How about transient response?
H(s) = (s/αζωn)+ 1
(s/ωn)2+ 2ζs/ωn + 1.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–19
– Zero at s= −ασ.– Poles at <(s) = −σ.
• Large α, zero far from poles ➠ no effect.
• α ≈ 1, large effect.
• Notice that the overshoot goes up as α→ 0.
0 2 4 6 8 100
0.5
1
1.5
2
α = 124100
ωnt
Ste
pR
espo
nse
2nd-order system with zero
0 2 4 6 8 100
0.5
1
1.5
2
ζ = 0.3
0.5
0.7
α
Mp
Overshoot versus normalized zero loc.
• A little more analysis; set ωn = 1
H(s) = s/αζ + 1
s2+ 2ζs+ 1
= 1
s2+ 2ζs+ 1+ 1
αζ
s
s2+ 2ζs+ 1
= Ho(s)+ Hd(s).
• Ho(s) is the original response, without the zero.
• Hd(s) is the added term due to the zero. Notice that
Hd(s) = 1
αζs Ho(s).
The time response is a scaled version of the DERIVATIVE of the time
response of Ho(s).
• If any of the zeros in RHP, system is NONMINIMUM PHASE.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–20
0 2 4 6 8 10−0.5
0
0.5
1
1.5
2
H (s)
Ho(s)
Hd(s)
Time (sec)
y(t)
2nd-order min-phase step resp.
0 2 4 6 8 10−1.5
−1
−0.5
0
0.5
1
1.5
Ho(s)
H (s)
Hd(s)
Time (sec)
y(t)
2nd-order nonmin-phase step resp.
Add a pole to a second order system
H(s) = 1
(s/αζωn + 1)[(s/ωn)2+ 2ζs/ωn + 1].
• Original poles at <(s) = −σ = −ζωn.
• New pole at s= −αζωn.
• Major effect is an increase in rise time.
0 1 2 3 4 5 6 7 80
0.2
0.4
0.6
0.8
1
1.2
1.4
α = 125100
ωnt
Ste
pR
espo
nse
2nd-order system with pole
0 2 4 6 8 101
2
3
4
5
6
7
8
9
ζ = 1.00.70.5
α
ωnt r
Norm. rise time vs. norm. pole loc.
Summary of Higher-Order Approximations
• Extra zero in LHP will increase overshoot if the zero is within a factor
of ≈ 4 from the real part of complex poles.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–21
• Extra zero in RHP depresses overshoot, and may cause step
response to start in wrong direction. DELAY .
• Extra pole in LHP increases rise-time if extra pole is within a factor of
≈ 4 from the real part of complex poles.
UnstableregionDominantInsignificant
=(s)
<(s)
• MATLAB ‘step’ and ‘impulse’ commands can plot higher order system
responses.
• Since a model is an approximation of a true system, it may be all right
to reduce the order of the system to a first or second order system. If
higher order poles and zeros are a factor of 5 or 10 time farther from
the imaginary axis.
– Analysis and design much easier.
– Numerical accuracy of simulations better for low-order models.
– 1st- and 2nd-order models provide us with great intuition into how
the system works.
– May be just as accurate as high-order model, since high-order
model itself may be inaccurate.
Changing Dynamic Response
• Topic of the rest of the course.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–22
• Important tools: block diagram manipulation and Mason’s rule.
Block Diagram Manipulation
• We have already seen block diagrams (see pg. 1–1–3).
• Shows information/energy flow in a system.
• When used with Laplace transforms, can simplify complex system
dynamics.
• Four BASIC configurations:
H (s) Y(s)U(s) Y(s) = H (s)U(s)
H1(s) H2(s) Y(s)U(s) Y(s) = [H1(s)H2(s)] U(s)
H1(s)
H2(s)
Y(s)U(s) Y(s) = [H1(s)+ H2(s)] U(s)
H1(s)
H2(s)
Y(s)R(s)U1(s)
Y2(s) U2(s)
U1(s) = R(s)− Y2(s)
Y2(s) = H2(s)H1(s)U1(s)
so, U1(s) = R(s)− H2(s)H1(s)U1(s)
= R(s)
1+ H2(s)H1(s)
Y(s) = H1(s)U1(s)
= H1(s)
1+ H2(s)H1(s)R(s)
• Alternate representation
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–23
H (s)
H1(s)
H1(s)
H1(s) H2(s)
H2(s)
−H2(s)
Y(s)
Y(s)
Y(s)
Y(s)
U(s)
U(s)
U(s)
R(s)
EXAMPLE : Recall dc generator dynamics from page 2–2–10Rf Ra Lai f (t) i a(t)
ef (t) L f eg(t) Zlea(t)
︸ ︷︷ ︸Fieldcircuit
︸ ︷︷ ︸Rotorcircuit
︸ ︷︷ ︸Loadcircuit
ef (t) ea(t)i f (t) eg(t) i a(t)Field
circuitKg
Rotorcircuit Zl
• Compute the transfer functions of the four blocks.
ef = Rf i f + L fd
dti f
E f (s) = Rf I f (s)+ L f s I f (s)
I f (s)
E f (s)= 1
Rf + L f s.
eg(t) = Kgi f (t)
Eg(s) = KgI f (s)
Eg(s)
I f (s)= Kg.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–24
ea(t) = i a(t)Zl
Ea(s) = Zl Ia(s)
Ea(s)
Ia(s)= Zl .
eg(t) = Raia(t)+ Lad
dtia(t)+ ea(t)
Eg(s) = RaIa(s)+ Las Ia(s)+ Ea(s)
= (Ra + Las+ Zl) Ia(s)
Ia(s)
Eg(s)= 1
Las+ Ra + Zl.
• Put everything together.Ea(s)
E f (s)= Ea(s)
Ia(s)
Ia(s)
Eg(s)
Eg(s)
I f (s)
I f (s)
E f (s)
= KgZl(L f s+ Rf
)(Las+ Ra + Zl)
.
Block Diagram Algebra
⇐⇒
⇐⇒
⇐⇒
H (s)
H (s)
H (s)H (s)
H (s)
1
H (s)
H1(s)H1(s) H2(s)
H2(s)
1
H2(s)Y(s)Y(s)
Y(s)Y(s)
Y1(s)Y1(s)
Y2(s)Y2(s)
U(s)U(s)
U1(s)U1(s)
U2(s)U2(s)
R(s)R(s)
“Unity Feedback”
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–25
EXAMPLE : Simplify:
H1(s) H2(s)
H3(s)
H4(s)
H5(s)
H6(s)
Y(s)R(s)
H1(s)
1− H1(s)H3(s)H2(s)
H4(s)
H5(s)
H6(s)
Y(s)R(s)
H1(s)
1− H1(s)H3(s)H2(s)
H4(s)
H5(s)
H6(s)
H2(s)
Y(s)R(s)
︸ ︷︷ ︸(H1(s)H2(s)
1−H1(s)H3(s)
)(
1+H1(s)H2(s)H4(s)1−H1(s)H3(s)
)︸ ︷︷ ︸
H5(s)+H6(s)H2(s)
H1(s)H2(s)H5(s)+ H1(s)H6(s)
1− H1(s)H3(s)+ H1(s)H2(s)H4(s)R(s) Y(s)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–26
Mason’s Rule
• If you don’t care to simplify a block diagram using block diagram
manipulation, you can use Mason’s Rule.
• “Node” = Common input to several blocks, or output of summing
junction.H1(s)
H2(s)
Y(s)U(s)
• “Path” = Sequence of connected blocks, from one variable to another,
in the direction of signal flow, without including any variable more than
once.
• “Forward Path” = Path from input to output.
• “Loop” = Path from node back to itself.
• “Path Gain” = Product of all transfer functions in a path.
• “Loop Gain” = Product of all transfer functions in a loop.
• “Nontouching” = Two loops are nontouching if they have no nodes in
common.
G1 G2 G3 G4 G5
G6
➀
➁ ➂
➃
➄ ➅
−H1 −H2
YR
• 2 Loops: ➁➂➁, ➃➄➃ Nontouching.
• 2 Forward paths: ➀➁➂➃➄➅ Touches both loops.
➀➃➄➅ Does not touch first loop, but touches second loop.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–27
• Mason’s Rule
T = 1
1
p∑k=1
Mk1k = 1
1
(M111+ M212+ · · · + Mp1p
)1 = 1− (sum of ALL (touching or not) individual loop gains)
+(sum of the products of loop gains of all possible
combinations of nontouching loops taken two at a time)
−(sum of the products of loop gains of all possible
combinations of nontouching loops taken three at a time)+ · · ·Mk = Path gain of kth forward path
1k = Value of 1 for that part of the flow graph not touching the kth
forward path.
• Key to using rule = organization!
• Above example:
– Find the loop- and the forward path-gains.
– Loops:
∗ L1 : ➁➂➁; Gain=−H1G2.
∗ L2 : ➃➄➃; Gain=−H2G4.
– Forward Paths:
∗ M1 : ➀➁➂➃➄➅; Gain=G1G2G3G4G5
∗ M2 : ➀➃➄➅; Gain=G6G4G5.
• 1 = 1− (L1+ L2)+ L1L2 = 1+ H1G2+ H2G4+ H1H2G2G4.
• 1k is easiest determined by redrawing flowgraph without path k.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, DYNAMIC RESPONSE 3–28
G1 G2 G3
G6
−H1
−H1
−H2
−H2
Path 1 removed. No loops.11 = 1− 0
Path 2 removed. One loop withgain −G2H1. 12 = 1− (−G2H1)
T = M111+ M212
1= G1G2G3G4G5+ G6G4G5(1+ H1G2)
1+ H1G2+ H2G4+ H1H2G2G4.
• Mason’s rule may be shorter that block-diagram manipulation.
• Use the method with which you are most comfortable.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510: Feedback Control Systems. 4–1
BASIC PROPERTIES OF FEEDBACK
• Two basic types of control systems:
OPEN LOOP:
Ctrlrr (t) y(t)
Disturbance
Plant
CLOSED LOOP :
Ctrlrr (t) y(t)
Disturbance
Plant
Sensor
• We will compare these systems in a number of ways: disturbance
rejection, sensitivity, dynamic tracking, steady state error and stability.
DC Motor Speed Control
• Recall equations of motion for a dc motor (pg. 2–2–11) but add load
torque.
ea(t) eb(t)
i a(t) Ra La b
Jθ(t), τ (t)
︸ ︷︷ ︸Armature
︸ ︷︷ ︸Load
τl , load
• Assume that we are trying to control motor speed:
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, BASIC PROPERTIES OF FEEDBACK 4–2
J..θ + b
.θ
ke.θ + La
diadt+ Raia
==
kτ i a + τl
ea
let output y = .
θ,
disturbance w4= τl .
J.y+ by
key+ Ladiadt+ Raia
==
kτ i a + wea
s JY(s)+ bY(s) = kτ Ia(s)+W(s)
keY(s)+ sLaIa(s)+ RaIa(s) = Ea(s)
(J Lass+ bLas+ J Ras+ bRa + kτke)Y(s) = kτEa(s)+ (Ra + Las)W(s)
• This can be re-written as (magic happens)(τ1s+ 1)(τ2s+ 1)Y(s) = AEa(s)+ BW(s)
τ1 ≈ RaJ/(kτke) = mechanical time constant
τ2 ≈ La/Ra = electrical time constant
A = kτ/(bRa + kτke)
B = Ra/(bRa + kτke)
• So,
Y(s) = A
(τ1s+ 1)(τ2s+ 1)Ea(s)+ B
(τ1s+ 1)(τ2s+ 1)W(s).
• If ea(t) = ea · 1(t) (constant) and w(t) = w · 1(t) (constant), What is
steady state output?
– Recall Laplace-transform final value theorem:
If a signal has a constant final value, it may be found asyss= lim
s→0sY(s).
– So,
Ea(s) = ea
s, W(s) = w
s, yss= Aea + Bw.
• This is the response of the open-loop system (without a controller).
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, BASIC PROPERTIES OF FEEDBACK 4–3
Ctrlrr (t) y(t)
Dist. w(t)
A
(τ1s+ 1)(τ2s+ 1)
B
A
ea(t)
Motor
• Let’s make a simple controller for the open-loop system.ea(t) = Kolr (t), (gain of Kol)
• Choose Kol so that there is no steady-state error when w = 0.yss = AKolrss+ Bwss
⇒ Kol = 1/A.
• Is closed-loop any better?
Ctrlrr (t) y(t)
Dist. w(t)
A
(τ1s+ 1)(τ2s+ 1)
B
A
ea(t)
Tachometer
1
• Let’s make a similar controller for the closed-loop system (with the
possibility of a different value of K .)ea(t) = Kcl(r (t)− y(t))
• The transfer function for the closed-loop system is:
Y(s) = AKcl
(τ1s+ 1)(τ2s+ 1)(R(s)− Y(s))+ B
(τ1s+ 1)(τ2s+ 1)W(s)
= AKcl
(τ1s+ 1)(τ2s+ 1)+ AKclR(s)+ B
(τ1s+ 1)(τ2s+ 1)+ AKclW(s)
yss= AKcl
1+ AKclrss, assuming w = 0.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, BASIC PROPERTIES OF FEEDBACK 4–4
• If AKcl � 1, yss≈ rss.
• Open-loop with load:yss= AKolrss+ Bwss= rss+ Bwss
δy = Bwss.
• Closed-loop with load:
yss= AKcl
1+ AKclrss+ B
1+ AKclwss
δy ≈ B
1+ AKclwss.
which is much better than open-loop since AKcl � 1.
ADVANTAGE OF FEEDBACK : Better disturbance rejection (by factor of
1+ AKcl).
Sensitivity
• The steady-state gain of the open-loop system is: 1.0
• How does this change if the motor constant A changes?A→ A+ δA
Gol + δGol = Kol(A+ δA)
= 1
A(A+ δA)
= 1+ δA
A︸︷︷︸gain error
.
• In relative terms:δGol
Gol= δA
A= 1.0︸︷︷︸sensitivity
δA
A.
• Therefore, a 10% change in A ➠ 10% change in gain. Sensitivity=1.0.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, BASIC PROPERTIES OF FEEDBACK 4–5
• Steady-state gain of closed-loop system is:AKcl
1+ AKcl.
Gcl + δGcl = (A+ δA)Kcl
1+ (A+ δA)Kcl.
• From calculus (law of total differential)
δGcl = dGcl
d AδA
orδGcl
Gcl=
(A
Gcl
dGcl
d A
)︸ ︷︷ ︸
sensitivity SGclA
δA
A
SGclA =
A
AKcl/(1+ AKcl)
(1+ AKcl)Kcl − Kcl(AKcl)
(1+ AKcl)2
= 1
1+ AKcl.
ADVANTAGE OF FEEDBACK : Lower sensitivity to modeling error (by a
factor of 1+ AKcl)
Dynamic Tracking
• Steady-state response of closed-loop better than open-loop: Better
disturbance rejection, better (lower) sensitivity.
• What about transient response?
• Open-loop system: Poles at roots of (τ1s+ 1)(τ2s+ 1)➠ s= −1/τ1, s= −1/τ2.
• Closed-loop system: Poles at roots of (τ1s+ 1)(τ2s+ 1)+ AKcl.
➠ s= −(τ1+ τ2)±√(τ1+ τ2)2− 4τ1τ2(1+ AKcl)
2τ1τ2.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, BASIC PROPERTIES OF FEEDBACK 4–6
• FEEDBACK MOVES POLES
– System may have faster/slower response
– System may be more/less damped
– System may become unstable!!!
– Often a high gain Kcl results in instability. We need design tools to
help us design the dynamic response of the closed-loop system.
– For this dc motor example, we can get step responses of the
following form:
0 2 4 6 8 100
0.5
1
1.5
High Kcl
Low Kcl
Time (sec)
y(t)
PID Control
• General control setup:
D(s)R(s) Y(s)
Disturbance
G(s)
• Need to design controller D(s).
• One option is PID (Proportional Integral Derivative) control design.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, BASIC PROPERTIES OF FEEDBACK 4–7
• Extremely popular. 90+% of all controllers are PID.
– Doesn’t mean that they are great, just popular.
• We just saw proportional control where u(t) = Ke(t), or D(s) = K .
• Proportional control allows non-zero steady state error.
– Increases speed of response.
– Larger transient overshoot.
• Integral control eliminates steady state error. D(s) = KI
s.
– Dynamic response gets worse.
• Derivative control damps dynamic response. D(s) = KDs.
Proportional Control
• u(t) = K (r (t)− y(t)) = Ke(t) . . . D(s) = K .
• May have steady state error, may not be able to completely reject a
constant disturbance.
EXAMPLE: Determine behavior of closed loop poles for the dc motor.
Y(s)
R(s)= AK
(τ1s+ 1)(τ2s+ 1)+ AK.
• Poles are roots of (τ1s+ 1)(τ2s+ 1)+ AK.
• Without feedback, K → 0.s1 = −1/τ1, s2 = −1/τ2.
• With feedback,
s1, s2 = −(τ1+ τ2)±√(τ1+ τ2)2− 4τ1τ2(1+ AK)
2τ1τ2.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, BASIC PROPERTIES OF FEEDBACK 4–8
K = 0K = 0
− 1
τ1− 1
τ2
K = (τ1− τ2)2
4τ1τ2A
−τ1+ τ2
2τ1τ2
<(s)
=(s)
• (We will see many root-locus plots in this course!)
• After a certain gain K = (τ1− τ2)2
4τ1τ2A, the poles go straight up and down.
Settling time remains the same, rise time decreases, damping
decreases (more overshoot.)
• For larger systems increasing K leads to instability.
• How do we improve accuracy, but keep stability?
Integral and Proportional Integral Control
• Pure integral control: u(t) = K
TI
∫ t
0e(τ ) dτ, D(s) = K
TI s.
• TI = “Integral time” = time for output = K with input = 1.
• Integral feedback can give nonzero control even if e= 0 because of
“memory.” No steady state error, and constant disturbances can be
canceled (completely).
EXAMPLE: Substitute: u(t) = K
TI
∫ t
0(r (τ )− y(τ )) dτ into dc-motor
equations.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, BASIC PROPERTIES OF FEEDBACK 4–9
τ1τ2..y(t)+ (τ1+ τ2)
.y(t)+ y(t) = A
[K
TI
∫ t
0(r (τ )− y(τ )) dτ
]+ Bw(t).
• Differentiate,
τ1τ2...y(t)+ (τ1+ τ2)
..y(t)+ .
y(t) = AK
TI(r (t)− y(t))+ B
.w(t)
τ1τ2...y(t)+ (τ1+ τ2)
..y(t)+ .
y(t)+ AK
TIy(t) = AK
TIr (t)+ B
.w(t).
• If r (t) = cst, w(t) = cst,.w(t) = 0,
AK
TIyss= AK
TIrss ➠ no error.
• Steady-state improves
• Dynamic response degrades.
– Very oscillatory.
– Possibly unstable.
• Can be improved by adding propor-
tional term to integral term.
K = 0K = 0
− 1
τ1− 1
τ2
<(s)
=(s)
u(t) = Ke(t)+∫ t
0
K
TIe(τ ) dτ, D(s) = K
(1+ 1
TI s
).
• Poles are at
τ1τ2s3+ (τ1+ τ2)s
2+ (1+ AK)s+ AK
TI= 0.
Two degrees of freedom.
Derivative and Proportional Derivative Control
• u(t) = K TD.e(t), D(s) = K TDs.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, BASIC PROPERTIES OF FEEDBACK 4–10
• TD = “Derivative time”.
• PURE DERIVATIVE CONTROL IMPRACTICAL SINCE DERIVATIVEMAGNIFIES SENSOR NOISE!
• Practical version = “Lead control,” which we will study later.
• Stabilizes system.
• Does nothing to reduce constant error! If.e(t) = 0, then u(t) = 0.
• Motor Control: Poles at roots of τ1τ2s2+ (τ1+ τ2+ AK TD)s+ 1= 0.
– TD enters ζ term, can make damping better.
• PD = Proportional plus derivative control
D(s) = K (1+ TDs)
• Root locus for dc motor, PD control.
− 1
τ1− 1
τ2− 1
TD
<(s)
=(s)
Proportional Integral Derivative Control
• D(s) = K
(1+ 1
TI s+ TDs
).
• Need ways to design parameters K , TI , TD.
• In general (i.e., not always),K , TI ↑ ⇐⇒ error ↓, stability ↓
TD ↑ ⇐⇒ stability ↑
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, BASIC PROPERTIES OF FEEDBACK 4–11
• For speed control problem,
u(t) = K
[(r (t)− y(t))+ 1
TI
∫ t
0(r (τ )− y(τ )) dτ + TD(
.r (t)− .
y(t))
].
(math happens). Solve for poles
τ1τ2TI s3+ TI ((τ1+ τ2)+ AK TD)s
2+ TI (1+ AK)s+ AK = 0
s3+[τ1+ τ2+ AK TD
τ1τ2
]s2+
[1+ AK
τ1τ2
]s+ AK
τ1τ2TI= 0.
• Three coefficients, three parameters. We can put poles anywhere!
Complete control of dynamics in this case.
• Entire transfer functions are:Y(s)
W(s)= TI Bs
TI τ1τ2s3+ TI (τ1+ τ2)s2+ TI (1+ AK)s+ AK.
Y(s)
R(s)= AK(TI s+ 1)
TI τ1τ2s3+ TI (τ1+ τ2)s2+ TI (1+ AK)s+ AK.
• We can plot responses in MATLAB:
num = [TI*B 0];
den = [TI*TAU1*TAU2 TI*(TAU1+TAU2) TI*(1+A*K) A*K];
step(num, den)
0 0.01 0.02 0.03 0.04 0.050
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
Time (sec)
y(t)
(rad
/sec
) PPI
PID
Step Reference Response
0 0.01 0.02 0.03 0.04 0.050
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
Time (sec)
y(t)
(rad
/sec
) P
PIPID
Step Disturbance Response
Ziegler - Nichols Tuning of PID Controllers
• “Rules of Thumb” for selecting K , TI , TD.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, BASIC PROPERTIES OF FEEDBACK 4–12
• Not optimal in any sense—just provide good performance.
METHOD I: If system has step response like this,
Slope, A/τA
τd τ
Y(s)
U (s)= Ae−τds
τs+ 1,
(first-order system plus delay)
• We can easily identify A, τd, τ from this step response.
• Don’t need complex model!
• Tuning criteria: Ripple in impulse response decays to 25% of its value
in one period of ripple
Period1
0.25
RESULTING TUNING RULES :P PI PID
K = τ
Aτd
K = 0.9τ
Aτd
TI = τd
0.3
K = 1.2τ
Aτd
TI = 2τd
TD = 0.5τd
METHOD II: Configure system as
Kur (t) y(t)Plant
• Turn up gain Ku until system produces oscillations (on stability
boundary) Ku = “ultimate gain.”
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, BASIC PROPERTIES OF FEEDBACK 4–13
Period, Pu1 RESULTING TUNING RULES :
P PI PID
K = 0.5Ku
K = 0.45Ku
TI = 1
1.2Pu
K = 0.6Ku
TI = 0.5Pu
TD = Pu
8
Practical Problem: Integrator Overload
• Integrator in PI or PID control can cause problems.
• For example, suppose there is saturation in the actuator.
– Error will not decrease.
– Integrator will integrate a constant error and its value will “blow up.”
• Solution = “integrator anti-windup.” Turn off integration when actuator
saturates.
K
Ka
K
TI s
e(t) u(t) umin
umax
• Doing this is NECESSARY in any practical implementation.
• Omission leads to bad response, instability.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, BASIC PROPERTIES OF FEEDBACK 4–14
0 2 4 6 8 100
0.2
0.4
0.6
0.8
1
1.2
1.4
1.6
Time (sec)
Step Response
With antiwindup
Without antiwindup
y(t)
0 2 4 6 8 10−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1
Time (sec)
Control Effort
With antiwindup
Without antiwindup
u(t)
Steady-State Error
• System error is any difference between r (t) and y(t).
• Two sources:
1. Imprecise tracking of r (t).
2. Disturbance affecting the system output.
Steady-State Error (w.r.t. Reference Input)
• We have already seen examples of CL systems that have some
tracking error (proportional ctrl) or not (integral ctrl) to a step input.
We will formalize this concept here.
• Start with very general control structure:
T(s)r (t) y(t)
• The closed-loop transfer function for the whole system,
T(s) = Y(s)
R(s).
• The error isE(s) = R(s)− Y(s)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, BASIC PROPERTIES OF FEEDBACK 4–15
= R(s)− T(s)R(s)
= [1− T(s)] R(s).
• Assume conditions of final value theorem are satisfied (i.e., T(s) is
stable)ess= lim
t→∞ e(t) = lims→0
s[1− T(s)] R(s).
• We use test inputs of the type: r (t) = tk
k!1(t); R(s) = 1
sk+1.
t
1(t)
t
t · 1(t)
t
t2
2· 1(t)
• As k increases, tracking is progressively harder.
ess= lims→0
1− T(s)
sk=
0, type > K ;constant, type = K ;∞, type < K .
• If system type = 0, constant steady-state error for step input, infinite
s.s. error for ramp or parabolic input.
• If system type = 1, no steady-state error for step input, constant s.s.
error for ramp input, infinite s.s. error for parabolic input.
• If system type = 2, no steady-state error for step or ramp inputs,
constant s.s. error for parabolic inputs.
• And so forth, for higher-order system types.
• Ramp responses of different system types:
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, BASIC PROPERTIES OF FEEDBACK 4–16
t
tType 0 System
t
tType 1 System
t
tType 2 System
• DANGER: Higher order sounds better but they are harder to stabilize
and design. Transient response may be poor.
UNITY FEEDBACK: SPECIAL CASE
• NOTE: The following method is a special case of the above general
method. Be careful to use the apropriate method for the problem at
hand!
• Unity-feedback is when the control system looks like:
Gol(s)r (t) y(t)
• There are some important simplifications:
T(s) = Gol(s)
1+ Gol(s)
1− T(s) =[
1+ Gol(s)
1+ Gol(s)
]− Gol(s)
1+ Gol(s)
= 1
1+ Gol(s).
So,
E(s) = 1
1+ Gol(s)R(s).
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, BASIC PROPERTIES OF FEEDBACK 4–17
• For the test inputs R(s) = 1
sk+1
ess= lims→0
sE(s)
= lims→0
1
[1+ Gol(s)]sk
• For type 0,
ess= lims→0
1
1+ Gol(s)= 1
1+ K p, K p = lim
s→0Gol(s).
• For type 1,
ess= lims→0
1
1+ Gol(s)
1
s= lim
s→0
1
sGol(s)= 1
Kv
, Kv = lims→0
sGol(s).
• For type 2,
ess= lims→0
1
1+ Gol(s)
1
s2= lim
s→0
1
s2Gol(s)= 1
Ka, Ka = lim
s→0s2Gol(s).
These formulas only meaningful for unity-feedback!
K p = lims→0
Gol(s). “position error constant”
Kv = lims→0
sGol(s). “velocity error constant”
Ka = lims→0
s2Gol(s). “acceleration error constant”
Steady-state tracking errors ess for unity-feedback case ONLY.
Sys. Type Step Input Ramp Input Parabola Input
Type 01
1+ K p∞ ∞
Type 1 01
Kv
∞Type 2 0 0
1
Ka
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, BASIC PROPERTIES OF FEEDBACK 4–18
EXAMPLES:
(1) Consider Gol(s) = s+ 1
(s+ 2)(s+ 3); System type?
Gol(0) = 1
2 · 3 =1
6.
Therefore, type= 0, ess to unit step= 1
1+ 1/6= 6
7.
(2) Consider Gol(s) = (s+ 1)(s+ 10)(s− 5)
(s2+ 3s)(s4+ s2+ 1); System type?
Gol(0) = 1 · 10 · (−5)
0 · 1 = ∞ ➠Type > 0.
sGol(s) = (s+ 1)(s+ 10)(s− 5)
(s+ 3)(s4+ s2+ 1)
sGol(s)|s=0 = 1 · 10 · (−5)
3 · 1 = −50
3.
Therefore, type= 1, ess to unit ramp= −3
50.
(3) Consider Gol(s) = s2+ 2s+ 1
s4+ 3s3+ 2s2; System type?.
Gol(0) = 1
0= ∞ ➠Type > 0
sGol(s) = s2+ 2s+ 1
s3+ 3s2+ 2s
sGol(s)|s=0 = 1
0= ∞ ➠Type > 1
s2Gol(s) = s2+ 2s+ 1
s2+ 3s+ 2
s2Gol(s)∣∣s=0 =
1
2➠Type = 2.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, BASIC PROPERTIES OF FEEDBACK 4–19
Therefore, type= 2, ess to unit parabola= 2.
KEY POINT: Open-loop G(s) = Gol(s) tells us about closed-loop s.s.response.
EXAMPLE: DC-motor example with Proportional control.
Ctrlrr (t) y(t)A
(τ1s+ 1)(τ2s+ 1)
• Controller: D(s) = K .
D(s)G(s) = K A
(τ1s+ 1)(τ2s+ 1), lim
s→0D(s)G(s) = K A.
So system is type 0, with s.s. error to step input of1
1+ K A. (This
agrees with prior results.)
EXAMPLE : DC-motor example with PI control
• Controller: D(s) = K
[1+ 1
TI s
].
D(s)G(s) = K A+ K ATI s
(τ1s+ 1)(τ2s+ 1).
lims→0
D(s)G(s) = ∞
lims→0
s D(s)G(s) = K A
TI.
System is type 1, with s.s. error to ramp input ofTI
K A.
EXAMPLE : DC-motor with another integrator
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, BASIC PROPERTIES OF FEEDBACK 4–20
• Controller: D(s) = K
[1+ 1
TI s+ 1
TI s2
].
D(s)G(s) = K A+ K ATI s+ K A
TI s2
(τ1s+ 1)(τ2s+ 1)
lims→0
s2D(s)G(s) = K A
TI.
System is type 2, with s.s. error to parabolic input ofTI
K A.
Steady State Error (w.r.t. Disturbance)
• Recall, system error is any difference between r (t) and y(t).
• One source of system error is disturbance.
• Can find system type with respect to disturbance.Y(s)
W(s)= Tw(s)
such thatY(s) = T(s)R(s)+ Tw(s)W(s).
• We do not wish the output to have ANY disturbance term in it, so the
output error due to the disturbance is equal to the output due to the
disturbance.
ess= yss= lims→0
sTw(s)W(s).
• Type 0 system (w.r.t. disturbance) has constant lims→0
Tw(s).
• Type 1 system (w.r.t. disturbance) has constant lims→0
Tw(s)
s.
• Type 2 system (w.r.t. disturbance) has constant lims→0
Tw(s)
s2.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510: Feedback Control Systems. 5–1
STABILITY ANALYSIS
• Many classifications of stability in system analysis.
• For LTI systems, all are basically the same ➠ “BIBO.”
Stable Neutral Unstable
• If input is bounded: |u(t)| < K1, then output is also bounded
|y(t)| < K2.
• In the time domain,
y(t) =∫ ∞−∞
h(τ )u(t − τ) dτ
|y(t)| =∣∣∣∣∫ ∞−∞
h(τ )u(t − τ) dτ
∣∣∣∣Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STABILITY ANALYSIS 5–2
≤∫ ∞−∞|h(τ )| |u(t − τ)| dτ
≤ K1
∫ ∞−∞|h(τ )| dτ.
• So if a system is BIBO stable,∫ ∞−∞|h(τ )| dτ < ∞.
y(t)u(t) C Stable? Note: (h(t) = 1(t)).
• In the Laplace domain,
H(s) = Y(s)
R(s)= K
∏m1 (s− zi )∏n
1(s− pi )m ≤ n.
(assume poles unique)
h(t) =n∑
i=1
ki epi t
∫ ∞−∞|h(τ )| dτ <∞ iff <(pi ) < 0∀ i .
(If poles are not distinct, h(t) will have termsk
(m− 1)!tm−1epi t
for an mth order root.∫ ∞−∞|h(τ )| dτ <∞ iff <(pi ) < 0;
Same condition.)
• Laplace-domain condition for stability: All poles in the transfer
function must be in the open left hand plane. (i.e., none on jω axis.)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STABILITY ANALYSIS 5–3
EXAMPLE : T(s) = 2
s2+ 3s+ 2. Is T(s) stable?
T(s) = 2
(s+ 1)(s+ 2),
• Roots at s= −1, s= −2. Stable!
EXAMPLE : T(s) = 10s+ 24
s3+ 2s2− 11s− 12. Is T(s) stable?
T(s) = 10(s+ 2.4)
(s+ 1)(s− 3)(s+ 4),
• Roots at s= −1, s= +3, s= −4. Unstable!
EXAMPLE : T(s) = s
s2+ 1. Is T(s) stable?
T(s) = s
(s− j )(s+ j ),
• Roots at s= ± j . MARGINALLY stable.
• Use input = sin(t).
Y(s) = s
s2+ 1
1
s2+ 1= s
(s2+ 1)2
y(t) = t sin(t) . . . unbounded.
• MARGINALLY stable = unstable (bounded impulse response, but
unbounded output for some inputs.)
Routh Hurwitz Stability Criterion
• Factoring high-degree polynomials to find roots is tedious and
numerically not well conditioned.
• Want other stability tests, and also MARGINS of stability.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STABILITY ANALYSIS 5–4
(1) Routh test
(2) Root locus
(3) Nyquist test
(4) Bode stability margins
Can you tell this is
an important topic?
• In 1868, Maxwell found conditions on the coefficients of a transfer
function polynomial of 2nd and 3rd order to guarantee stability.
• It became the subject of the 1877 Adams Prize to determine
conditions for stability for higher-order polynomials.
• Routh won this prize, and the method is still useful.
“Case 0”
• Consider the denominator a(s).
2nd order:
a(s) = s2+ a1s+ a0 = (s− p1)(s− p2) = s2− (p1+ p2)s+ p1p2.
3rd order:a(s) = s3+ a2s
2+ a1s+ a0
= (s− p1)(s− p2)(s− p3)
= [s2− (p1+ p2)s+ p1p2] [
s− p3]
= s3− (p1+ p2+ p3)s2+ (p1p2+ p1p3+ p2p3)s− p1p2p3.
TREND: Stability ➠ none of the coefficients ai can be ≤ 0.
Does this trend continue?
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STABILITY ANALYSIS 5–5
an−1 = (−1)× sum of all roots.
an−2 = sum of products of roots taken two at a time.
an−3 = (−1)× sum of products of roots taken three at a time....
a0 = (−1)n× product of all roots.
• Conclusions:
1. If any coefficient ai = 0, not all roots in LHP.
2. If any coefficient ai < 0, at least one root in RHP.
TEST: If any coefficient ai ≤ 0, system is unstable.
EXAMPLE : a(s) = s2+ 0s+ 1.
• From conclusion (1), not all roots in LHP.
• Roots at s= ± j .
• “Marginally” stable.
EXAMPLE : a(s) = s3+ 2s2− 11s− 12.
• From conclusion (2), at least one root is in RHP.
• Roots at s= −1, s= −4, s= +3.
• Unstable.
EXAMPLE : a(s) = s3+ s2+ 2s+ 8.
• We don’t know yet if this system is stable or not.
• Roots at s= −2, s= 1
2± j√
15
2. Unstable, but how do we find out
without factoring?
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STABILITY ANALYSIS 5–6
“Case 1”
• Once we have determined that ai ≥ 0∀ i , we need to run the Routh
test.
• Very mechanical, not intuitive. Proof difficult.
• a(s) = sn + an−1sn−1+ · · · + a1s+ a0.
• Form “Routh Array”.
sn an an−2 an−4 · · ·sn−1 an−1 an−3 an−5 · · ·sn−2 b1 b2 · · ·sn−3 c1 c2 · · ·...
s1 j1s0 k1
b1 = −1
an−1
∣∣∣∣∣ an an−2
an−1 an−3
∣∣∣∣∣b2 = −1
an−1
∣∣∣∣∣ an an−4
an−1 an−5
∣∣∣∣∣ · · ·
c1 = −1
b1
∣∣∣∣∣ an−1 an−3
b1 b2
∣∣∣∣∣c2 = −1
b1
∣∣∣∣∣ an−1 an−5
b1 b3
∣∣∣∣∣ · · ·
TEST: Number of unstable roots = number of sign changes in left column.
EXAMPLE : a(s) = s3+ s2+ 2s+ 8.
s3 1 2
s2 1 8
s1 −6
s0 8
b1 = −1
1
∣∣∣∣∣ 1 2
1 8
∣∣∣∣∣ = −(8− 2) = −6
c1 = −1
−6
∣∣∣∣∣ 1 8
−6 0
∣∣∣∣∣ = 1
6(0+ 68) = 8
• Two sign changes (1→−6, −6→ 8) Two roots in RHP.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STABILITY ANALYSIS 5–7
EXAMPLE : a(s) = s2+ a1s+ a0.
s2 1 a0
s1 a1
s0 a0
b1 = −1
a1
∣∣∣∣∣ 1 a0
a1 0
∣∣∣∣∣ = −1
a1(0− a0a1) = a0
• Stable iff a1 > 0, a0 > 0.
EXAMPLE : a(s) = s3+ a2s2+ a1s+ a0.
s3 1 a1
s2 a2 a0
s1 a1− a0
a2
s0 a0
b1 = −1
a2
∣∣∣∣∣ 1 a1
a2 a0
∣∣∣∣∣ = −1
a2(a0− a1a2)
= a1− a0
a2
c1 = −1
b1
∣∣∣∣∣ a2 a0
b1 0
∣∣∣∣∣ = −1
b1(−a0b1) = a0.
• Stable iff a2 > 0, a0 > 0, a1 >a0
a2.
“Case 2”
• Sometimes find an element in first column = 0 ➠0
0(!)
• Replace with ±ε as ε → 0.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STABILITY ANALYSIS 5–8
EXAMPLE : a(s) = s5+ 2s4+ 2s3+ 4s2+ 11s+ 10.
s5 1 2 11
s4 2 4 10
s3 0 6
new s3 ε 6
s2 −12
ε10
s1 6
s0 10
If ε > 0, two sign changes.
If ε < 0, two sign changes.
➠ Two poles in RHP.
b1 = −1
2
∣∣∣∣∣ 1 2
2 4
∣∣∣∣∣ = −1
2(4− 4) = 0
b2 = −1
2
∣∣∣∣∣ 1 11
2 10
∣∣∣∣∣ = −1
2(10− 22) = 6
c1 = −1
ε
∣∣∣∣∣ 2 4
ε 6
∣∣∣∣∣ = −1
ε(12− 4ε) ≈ −12
ε
c2 = −1
ε
∣∣∣∣∣ 2 10
ε 0
∣∣∣∣∣ = −1
ε(0− 10ε) = 10
d1 = ε
12
∣∣∣∣∣∣ε 6−12
ε10
∣∣∣∣∣∣ =ε
12(10ε + 72
ε) ≈ 6
e1 = −1
6
∣∣∣∣∣∣−12
ε10
6 0
∣∣∣∣∣∣ =−1
6(0− 60) = 10
“Case 3”
• Sometimes an entire row in Routh array = 0.
• This means that polynomial factors such that one factor has
conjugate-MIRROR-roots.=(s)
<(s)
=(s)
<(s)
=(s)
<(s)
• In any case, system is unstable. But how many RHP roots?
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STABILITY ANALYSIS 5–9
• Complete Routh array by making polynomial a1(s) from last non-zero
row in array. Poly has even orders of s only!!
• a1(s) is a factor of a(s). It is missing some orders of s, so IS NOT
STABLE (by “case 0”.)
• We want to see if it has roots in the RHP or only on the jω-axis.
• Replace zero row withda1(s)
dsand continue.
EXAMPLE : a(s) = s4+ s3+ 3s2+ 2s+ 2.
s4 1 3 2
s3 1 2 0
s2 1 2
s1 0
new s1 2
s0 2
No sign changes in Routh
array. So, no RHP roots.
Roots of a1(s) at s= ± j√
2.
Marginally stable.
b1 = −1
1
∣∣∣∣∣ 1 3
1 2
∣∣∣∣∣ = 1
b2 = −1
1
∣∣∣∣∣ 1 2
1 0
∣∣∣∣∣ = 2
c1 = −1
1
∣∣∣∣∣ 1 2
1 2
∣∣∣∣∣ = 0a1(s) = s2+ 2
da1(s)
ds= 2s
d1 = −1
2
∣∣∣∣∣ 1 2
2 0
∣∣∣∣∣ = 2
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STABILITY ANALYSIS 5–10
EXAMPLE : a(s) = s4+ 4 (Hard).
s4 1 0 4
s3 0 0
new s3 4 0
s2 0 4
new s2 ε 4
s1 −16
εs0 4
Two sign changes. Therefore
2 RHP poles. Other two
poles are mirrors in LHP.
a1(s) = s4+ 4; da1(s)
ds= 4s3.
b1 = −1
4
∣∣∣∣∣ 1 0
4 0
∣∣∣∣∣ = 0
b2 = −1
4
∣∣∣∣∣ 1 4
4 0
∣∣∣∣∣ = 4
c1 = −1
ε
∣∣∣∣∣ 4 0
ε 4
∣∣∣∣∣ = −16
ε
d1 = ε
16
∣∣∣∣∣∣ε 4−16
ε0
∣∣∣∣∣∣ = 4
Design Tool
• Consider the system:
r (t) y(t)Ks+ 1
s(s− 1)(s+ 6)
T(s) = Y(s)
R(s)= K s+1
s(s−1)(s+6)
1+ K s+1s(s−1)(s+6)
= K (s+ 1)
s(s− 1)(s+ 6)+ K (s+ 1)
a(s) = s(s− 1)(s+ 6)+ K (s+ 1)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STABILITY ANALYSIS 5–11
= s3+ 5s2+ (K − 6)s+ K .
s3 1 K − 6
s2 5 K
s1 4K − 30
5s0 K
For stability of the
closed-loop system, K > 0,
and K > 30/4.
b1 = −1
5
∣∣∣∣∣ 1 K − 6
5 K
∣∣∣∣∣ = −1
5(K − 5(K − 6))
= (4K − 30)/5.
c1 = −1
b1
∣∣∣∣∣ 5 K
b1 0
∣∣∣∣∣ = −1
b1(−b1K ) = K
• Step response for different values of K .
0 2 4 6 8 10 12−0.5
0
0.5
1
1.5
2
2.5
K =7.5
K =13K =25
Am
plitu
de
Time (sec.)EXAMPLE :
r (t) y(t)K
[1+ 1
TI s
]1
(s+ 1)(s+ 2)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STABILITY ANALYSIS 5–12
T(s) = Y(s)
R(s)=
K TI s+Ks(s+1)(s+2)
1+ K TI s+Ks(s+1)(s+2)
= K TI s+ K
s(s+ 1)(s+ 2)+ K TI s+ K.
• a(s) = s3+ 3s2+ (2+ K TI )s+ K .
s3 1 2+ K TI
s2 3 K
s1 6+ 3K TI − K
3s0 K
b1 = −1
3
∣∣∣∣∣ 1 2+ K TI
3 K
∣∣∣∣∣ = −1
3(K − 3(2+ K TI ))
c1 = −1
b1
∣∣∣∣∣ 3 K
b1 0
∣∣∣∣∣ = −1
b1(−b1K ) = K
• For stability of the closed-loop system, 0< K <6
1− 3TIfor TI <
1
3or
K > 0 for TI >1
3.
0 2 4 6 8 10 12
0
0.2
0.4
0.6
0.8
1
1.2
K = 3, TI = 0.5
K = 1, TI = 0.25
K = 1, TI = ∞Am
plitu
de
Time (sec.)
Lecture notes prepared by Dr. Gregory L. Plett
Root Locus: Construction and Design
Plant
+_R s( ) K Gp s( ) Y s( )
K is a positive parameterthat can be changed
Y s( )R s( )
K Gp. s( )
1 K Gp. s( )
} Closed Loop Transfer Function
General Form for theTransfer FunctionGp s( )
sm am 1 sm 1. ...... a0
sn bn 1 sn 1. ....... b0
N s( )D s( )
}
N s( ) and D s( ) are polynomials where m n
Y s( )R s( )
KN s( )D s( ).
1 KN s( )D s( ).
K N s( ).D s( ) K N s( ).
The closed loop poles are the roots of the characteristic equation
∆ s( ) D s( ) K N s( ). 0
The location of the roots of ∆ s( ) in the s-plane change as K is varied from 0 to ∞A "Locus" of these roots plotted in the s-plane as a function of K is called the Root Locus
Different ways to write the same thing
∆ s( ) 1 KN s( )D s( ). D s( ) K N s( ). 0
Gives the roots of the closed loop system
Root Locus Rules
1. Starting points (K = 0)
2. Termination points
3. Number of distinct root loci
4. Symmetry of root loci
5. Asymptote intersection
6. Root Locus locations on the real axis
7. Rool locus asymptotes
The root loci start at the open-loop poles.
The root loci terminate at the open-loop zeros. The open loop zeros include those at infinity.
There will be as many root loci as the largest number of finite open loop poles or zeros. For the majority of systems, the number of finite open-loop poles will be greater than the number of finite open-loop zeros.
The root loci are symmetrical with respect to the real axis.
The asymptotes intersect the real axis at a point given by
The root loci may be found on portions of the real axis to the left of an odd number of open-loop poles and zeros.
The root loci are asymptotic to straight lines, for large values of s, with angles given by
mnzerosloopopenpolesloopopen
i −−−−
= ∑ ∑ σcentroid
formula {
zeros loop open finite of no. poles loop open finite of no.
1,...,1,0
)21(
==
−−=−
+=
mn
mnkmnk πθ
Let RD (relative degree) = n - m
Asymptote Chart in the s plane
XX X X120 90 72
RD 1 RD 2 RD 3 RD 4 RD 5
The centroids are marked x in the asymptote charts above
Example Plant
+_R s( ) K Gp s( ) Y s( )
Gp s( )1
s s 2( ). s 4( ). Open loop poles are at s 0 2, 4,}
Y s( )R s( )
K1
s s 2( ). s 4( )..
1 K1
s s 2( ). s 4( )..
Closed Loop Transfer Function}
Root Locus Form for the Denominator∆ s( ) 1 K
1s s 2( ). s 4( ).
. }Step 1. Pole Zero Plot Step 2. Real Axis
XXX XXX
jω jω
- 4 - 2 σ - 4 - 2 σ
Step 3. Centroid / Asymptotes
XXX
jωcentroid
centroid0 2 4 0
32
- 4 - 2 σRD 3
-6 -5 -4 -3 -2 -1 0 1 2-6
-4
-2
0
2
4
6
Real Axis
Imag
Axi
s
Step 4. Draw the Root Locus
a. Locus must be symmetric about real axisb. Open loop zeros at infinity = 3c. Locus starts at open loop poles and goes to the open loop zeros
Note: Locus is symmetric about the real axis because complex poles always come in conjugate pairs
Example Plant
+_R s( ) K Gp s( ) Y s( )
2−=sOpen loop zeroGp s( )s 2
s 1( ) s 3 3j( ). s 3 3j( ). 33 js ±−=}Open loop poles
Closed LoopTransfer Function }Y s( )
R s( )
Ks 2
s 1( ) s 3 3j( ). s 3 3j( )..
1 Ks 2
s 1( ) s 3 3j( ). s 3 3j( )..
Root Locus Form for the Denominator∆ s( ) 1 K
s 2s 1( ) s 3 3j( ). s 3 3j( ).
. }
Step 1. Pole Zero Plot Step 2. Real Axis
X
X
X
o X
X
X
o
jω jω
| |- 3 - 2 - 1 σ - 3 - 2 - 1 σ
centroid
X
X
X
o
Step 3. Centroid / Asymptotes jω
Centroid = 3 3 1 2( )
252 - 3 - 2 - 1 σ
RD 2
-4 -3 -2 -1 0 1 2-10
-8
-6
-4
-2
0
2
4
6
8
10
Real Axis
Imag
Axi
s
Step 4. Draw the Root Locus
a. Locus must be symmetric about real axisb. Open loop zeros at infinity = 2c. Locus starts at open loop poles and goes to the open loop zeros
Example
+_R s( ) K Gp s( ) Y s( )
Gp s( )1
s 1( ) s 3( ). Open loop poles s 1 3,}
Closed Loop Transfer FunctionY s( )R s( )
K1
s 1( ) s 3( )..
1 K1
s 1( ) s 3( )..
}
∆ s( ) 1 K1
s 1( ) s 3( ).. Root Locus Form
for the Denominator}
Step 1. Pole Zero Plot Step 2. Real Axis
XX XX
jω jω
-3 -1 σ -3 -1 σcentroid
Step 3. Centroid / Asymptotes
XX
jω
Centroid = 3 1
22
-4 -3 -2 -1 0 1 2-2.5
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
2.5
Real Axis
Imag
Axi
s
-3 -1 σRD 2
Step 4. Draw the Root Locus
a. Locus must be symmetric about real axisb. Open loop zeros at infinity = 2c. Locus starts at open loop poles and goes to the open loop zeros
Example - Continued
Open Loop System R s( ) Y s( )Gp s( )
Gp s( )1
s 1( ) s 3( ).
Time (sec.)
Am
plitu
de
S tep Response
0 1 2 3 4 5 60
0.05
0.1
0.15
0.2
0.25
0.3
Let R(s) = Unit step
Y s( )
13s
12
s 1
16
s 3
Closed Loop System+
_
Y s( )R s( ) K Gp s( )
Let R(s) = unit step
Time (sec.)
Am
plitu
de
Step Response
0 2 4 6 8 100
0.2
0.4
0.6
0.8
1
1.2
K 30K 10
as K changes it isclear that the transientresponse can be "shaped"
K 4 }K 1
Note: Higher values of K speed up the closed-loop response when compared to the open-loop response
Example
+_R s( ) K Gp s( ) Y s( )
Gp s( )1
s s 3( ). s 3 j 7.4.( ). s 3 j 7.4.( ).Closed-LoopTransfer Function}
Y s( )R s( )
K1
s s 3( ). s 3 j 7.4.( ). s 3 j 7.4.( )..
1 K1
s s 3( ). s 3 j 7.4.( ). s 3 j 7.4.( )..
∆ s( ) 1 K1
s s 3( ). s 3 j 7.4.( ). s 3 j 7.4.( ).. Root Locus Form
for the Denominator}Step 1. Pole Zero Plot Step 2. Real Axis
X
X
X
X
X
X
X
X
jω jω
σ -3 σ-3
centroid Step 3. Centroid Asymptotes
X
X
X
X
jωCentroid = 3 3 3 0
494
2.25
-3 σRD 4
Step 4. Draw the Root Locus
a. Locus must be symmetric about real axisb. Open loop zeros at infinity = 4c. Locus starts at open loop poles and goes to the open loop zeros
-4 -3 -2 -1 0 1 2-8
-6
-4
-2
0
2
4
6
8
Real Axis
Imag
Axi
s
Magnitude and Angle Conditions
+_
Y s( )R s( ) K Gp s( )Y s( )
R s( )
K Gp. s( )
1 K Gp. s( )
Poles are determined by
∆ s( ) 1 K Gp. s( ) } characteristic equation
s clp∆ s( ) = 0 } clp denotes closed-loop pole
Magnitude Condition
s clp s clp
Expression forfinding clps∆ s( ) 1 K Gp
. s( ) = 0 => K Gp. s( ) = -1 }
s clpTake the magnitude ofboth sidesK Gp
. s( ) = 1 }(Note K is a real number)
s clpK Gp s( ). = 1 } Magnitude Condition
Angle Condition
s clp
Expression for finding clpsK Gp. s( ) = -1 }
s clp
Take the angle of both sidesAngle K Gp. s( ) = Angle 1( ) }
Use -180 degrees as opposedto 180 degrees by convention(only here)
s clpAngle Gp s( ) = -180 }
(Note K is a real number)
s clpAngle Gp s( ) = -180 } Angle Condition
Example Find the value of K which places a closed loop pole at -5
+_
Y s( )R s( ) K Gp s( )
Gp s( )s 2
s 1( ) s 4( ).
Find the transfer function
closed loop TFY s( )R s( )
Ks 2
s 1( ) s 4( )..
1 Ks 2
s 1( ) s 4( )..
}
-6 -5 -4 -3 -2 -1 0 1 2-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
Real Axis
Imag
Axi
s
Draw the Root Locus}
Note that -5 lies on the root locus
Magnitude Condition
s 5 s 5K Gp s( ). = K
s 2s 1( ) s 4( ).
. = 1
= K3
4( ) 1( ).. 1 => K
43
Angle Condition
s 5s 5Angle Gp s( ) = Angle s 2( ) Angle s 4( ) Angle s 1( ) = - 180
Angle Conditionis satisfied= Angle 3( ) Angle 1( )( ) Angle 4( ) 180 180 180( ) 180 }
ECE4510: Feedback Control Systems. 6–1
ROOT-LOCUS ANALYSIS
• Recall step response: we have seen that pole locations in the system
transfer function determine performance characteristics; such as rise
time, overshoot, settling time.
• We have also seen that feedback can change pole locations in the
system transfer function and therefore performance is changed.
• Suppose that we have one variable parameter in our control system.
Then, we make a parametric plot of pole locations as that parameter
changes. The poles are the roots of the denominator of the transfer
function (a.k.a. the “characteristic equation.”) This plot is a plot of the
locus of the roots or the “ROOT LOCUS PLOT” (First suggested by
Evans.)
VERY IMPORTANT NOTE: Root locus is a parametric plot (vs. K ) of the
roots of an equation
1+ Kb(s)
a(s)= 0.
• A common control configuration is
r (t) y(t)K G(s)
– Unity feedback, proportional gain.
– We will generalize control configuration later.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–2
– Closed-loop transfer function
T(s) = K G(s)
1+ K G(s).
– Poles = roots of 1+ K G(s) = 0.
• Assume plant transfer function G(s) is rational polynomial:
G(s) = b(s)
a(s), such that
b(s) = (s− z1)(s− z2) · · · (s− zm) (b(s) is monic.)
a(s) = (s− p1)(s− p2) · · · (s− pn) n ≥ m (a(s) is monic.)
[a(s) may be assumed monic without loss of generality. If b(s) is not
monic, then its gain is just absorbed as part of K in 1+ K G(s) = 0]
• zi are zeros of G(s), the OPEN-LOOP transfer function.
• pi are poles of G(s), the OPEN-LOOP transfer function.
• CLOSED-LOOP poles are roots of equation1+ K G(s) = 0
a(s)+ Kb(s) = 0,
which clearly move as a function of K .
• Zeros are unaffected by feedback.
EXAMPLE : G(s) = 1
s(s+ 2). Find the root locus.
• a(s) = s(s+ 2); b(s) = 1.
• Locus of roots: (aside, stable for all K > 0 .)s(s+ 2)+ K = 0
s2+ 2s+ K = 0.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–3
• For this simple system we can easily find the roots.
s1,2 = −2±√4− 4K
2
= −1±√1− K .
• Roots are real and negative for 0< K < 1.
• Roots are complex conjugates for K > 1.
s1, K = 0
s2, K = 0K = 1
=(s)
<(s)
• Suppose we want damping ratio=0.707. We can recall that
s2+ 2ζωns+ ω2n = 0
ms2+ 2s+ K = 0
K = 2
or we can locate the point on the root locus where
|<{poles}| = |={poles}|.| − 1| = |√1− K |
2= K .
(or, K = 0, not an appropriate solution).
How to Plot a Root Locus
• A value s= s1 is on the (180◦) root locus iff 1+ K G(s1) = 0 for some
real value of K , 0≤ K ≤ ∞.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–4
• [A value of s= s1 is on the (0◦) complementary root locus iff
1+ K G(s1) = 0 for some REAL value of K , −∞ < K < 0.]
• So, K = −1
G(s)• Note, G(s) is complex, so this is really two equations!
|K | =∣∣∣∣ 1
G(s)
∣∣∣∣ (6.1)
6 G(s) = 6(−1
K
). (6.2)
• Since K is real and positive, 6 K = 0.
Therefore, 6 G(s) = 180◦ ± l360◦, l = 0,1,2, . . .
• So once we know a point on the root locus, we can use the
magnitude equation 6.1 to find the gain K that produced it.
• We will use the angle equation 6.2 to plot the locus. i.e., the locus of
the roots = all points on s-plane where 6 G(s) = 180◦ ± l360◦.
NOTES:
1. We will derive techniques so that we don’t need to test every point on
the s-plane!
2. The angle criteria explains why the root locus is sometimes called the
180◦ root locus.
3. Similarly, the complementary root locus is also called the 0◦ root
locus.
KEY TOOL : For any point on the s-plane
6 G(s) =∑
6 (due to zeros)−∑
6 (due to poles).
EXAMPLE : G(s) = (s− z1)
(s− p1)(s− p2).
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–5
θp1θp2θz1
Test points1
=(s)
<(s) 6 G(s1) = θz1 − θp1 − θp2.
Locus on the Real Axis
• Consider a test point s1 on the real axis.
• If the point is right of all poles and zeros of G(s), then 6 G(s) = 0. NOTON THE LOCUS.
z1 p1
Test points1
p2
p2
=(s)
<(s)6 G(s) = 6 z1− 6 p1− 6 p2− 6 p2
= 0− 0− 6 p2− 6 p2
= 0.
OBSERVATION: If the test point is on the real axis, complex-conjugate
roots have equal and oposite angles which cancel and may be
ignored.
• If the test point is to the left of ONE pole or zero, the angle will be
−180◦ or +180◦ (= −180◦) so that point is on the locus.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–6
• If the test point s1 is to the left of
– 1 pole and 1 zero: 6 G(s1) = 180◦ − (−180◦) = 360◦ = 0◦.
– 2 poles: 6 G(s1) = −180◦ − 180◦ = −360◦ = 0◦.
– 2 zeros: 6 G(s1) = 180◦ + 180◦ = 360◦ = 0◦.
➠ NOT ON THE LOCUS.
GENERAL RULE #1All points on the real axis to the left of an odd number of poles and zerosare part of the root locus.
EXAMPLE: G(s) = 1
s(s+ 4+ 4 j )(s+ 4− 4 j ).
=(s)
<(s)
EXAMPLE : G(s) = s+ 8
s+ 1.
=(s)
<(s)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–7
Locus Not on the Real Axis
OBSERVATION: Because we assume that system models are
rational-polynomial with real coefficients, all poles must be either real
or complex conjugate pairs. Therefore, THE ROOT LOCUS ISSYMMETRICAL WITH RESPECT TO THE REAL AXIS.
• What happens at K = 0,∞?
1+ K G(s) = 1+ K(s− z1)(s− z2) · · · (s− zm)
(s− p1)(s− p2) · · · (s− pn)= 0
(s− p1)(s− p2) · · · (s− pn)+ K (s− z1)(s− z2) · · · (s− zm) = 0.
• At K = 0 the closed loop poles equal the open-loop poles.
• As K approaches∞(s− p1)(s− p2) · · · (s− pn)
K+ (s− z1)(s− z2) · · · (s− zm) = 0;
the n poles approach the zeros of the open-loop transfer function,
INCLUDING THE n−m ZEROS AT C∞.
• Plug s= ∞ into G(s) and notice that it equals zero if m< n.
• The idea of∞ in the complex plane is a number with infinite
magnitude and some angle.
• To find where the n−m remaining poles go as K →∞, consider that
the m finite zeros have canceled m of the poles. Looking back at the
remaining n−m poles (standing at C∞), we have approximately
1+ K1
(s− α)n−m,
or n−m poles clustered/centered at α.
• We need to determine α, the center of the locus, and the directions
that the poles take.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–8
• Assume s1 = Rejφ is on the locus, R large and fixed, φ variable. We
use geometry to see what φ must be for s1 to be on the locus.
• Since all of the open-loop poles are at approximately the same place
α, the angle of 1+ K G(s1) is 180◦ if the n−m angles from α to s1 sum
to 180.(n−m)φl = 180◦ + l360◦, l = 0,1, . . . ,n−m− 1
or
φl = 180◦ + 360◦(l − 1)
n−m, l = 1,2, . . . ,n−m.
• So, if
n−m= 1;φ = +180◦.
There is one pole going to C∞
along the negative real axis.
n−m= 2;φ = ±90◦.
There are two poles going to
C∞ vertically.
n−m= 3;φ = ±60◦, 180◦.
One goes left and the other two
go at plus and minus 60◦.(etc)
• To find the center, α, reconsider our approximationb(s)
a(s)≈ 1
(s− α)n−m
as |s| → ∞.
– Divide (by long division)b(s)
a(s)and
1
(s− α)n−mand match the top
two coefficients of s, the dominant ones.
– An easier way...
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–9
– Note that roots of denominator of G(s) satisfy:
sn + a1sn−1+ a2s
n−2+ · · · + an = (s− p1)(s− p2) · · · (s− pn)
➠ a1 = −∑
pi .
– Note that the roots of the denominator of T(s) are
sn + a1sn−1+ a2s
n−2+ · · · + an + K (sm+ b1sm−1+ · · · + bm) = 0.
If n−m> 1 then the (n− 1)st coefficient of the closed loop system
is such that a1 = −∑
ri where ri are the closed-loop poles.
– We know that m poles go to the zeros of G(s), and assume the
other n−m are clustered at1
(s− α)n−m. Therefore, the asymptotic
sum of roots is −(n−m)α −∑
zi .
– Putting this all together,∑ri = (n−m)α +
∑zi =
∑pi
or
α =∑
pi −∑ zi
(n−m).
GENERAL RULE #2• All poles go from their open-loop locations at K = 0 to:
– The zeros of G(s), or
– To C∞.
• Those going to C∞ go along asymptotes
φl = 180◦ + 360◦(l − 1)
n−m
centered at
α =∑
pi −∑ zi
n−m.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–10
EXAMPLES :
➀ ➁
➂ ➃
➄
Additional Techniques
• The two general rules given, plus some experience are enough to
sketch root loci. Some additional rules help when there is ambiguity.
(As in examples ➁, ➄)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–11
Departure Angles, Arrival Angles
• We know asymptotically where poles go, but need to know how they
start, and how they end up there.
• Importance: One of the following systems is stable for all K > 0, the
other is not. Which one?
=(s)
<(s)
=(s)
<(s)
• We will soon be able to answer this. Consider an example:
EXAMPLE: G(s) = 1
s(s+ 4+ 4 j )(s+ 4− 4 j ).
φ1
φ2
p1
p1
p2
=(s)
<(s)
• Take a test point s0 very close to p1. Compute 6 G(s0).
• If on locus−90◦ − φ1− 135◦ = 180◦ + 360◦l l = 0,1, . . .
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–12
whereφ1 = Angle from p1 to s0 ≈ 90◦.φ1 = Angle from p1 to s0.
φ2 = Angle from p2 to s0 ≈ 135◦.➠φ1 = −45◦.
• Can now draw “departure of poles” on locus.
• Single-pole departure rule:
φdep =∑
6 (zeros)−∑
6 (remaining poles)− 180◦ ± 360◦l .
• Multiple-pole departure rule: (multiplicity q ≥ 1)
qφdep =∑
6 (zeros)−∑
6 (remaining poles)− 180◦ ± 360◦l .
• Multiple-pole arrival rule: (multiplicity q ≥ 1)
qψarr =∑
6 (poles)−∑
6 (remaining zeros)+ 180◦ ± 360◦l .
• Note: The idea of adding 360◦l is to add enough angle to get the
result within ±180◦. Also, if there is multiplicity, then l counts off the
different angles.
Imaginary Axis Crossings
• Routh stability test can be run to find value for K = K ′ that causes
marginal stability.
• Substitute K ′ and find roots of a(s)+ K ′b(s) = 0.
• Alternatively, substitute K ′, let s= jω0, solve for
a( jω0)+ K ′b( jω0) = 0. (Real and Imaginary parts)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–13
Points with Multiple Roots
• Sometimes, branches of the locus intersect. (see ➁, ➄ on pg.
6–6–10).
• Computing points of intersection can clarify ambiguous loci.
• Consider two poles approaching each other on the real axis:
=(s)
<(s)
• As two poles approach each other gain is increasing.
• When they meet, they break away from the real axis and so K
increases only for complex parts of the plane.
• Therefore gain K along a branch of the locus is maximum at
breakaway point.
• Gain K is minimum along a branch of the locus for arrival points.
• Both are “saddle points” in the s-plane.
• So,d K
ds= 0,
where 1+ K G(s) = 0
K = −1
G(s)
or,d
ds
( −1
G(s)
)s=s0
= 0 ➠ multiple root at s0.
[must verify that s0 is on the root locus. May be an extraneous result.]
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–14
• Some similar loci for which finding saddle points helps clarify
ambiguity ...
=(s)
<(s)
=(s)
<(s)
=(s)
<(s)
=(s)
<(s)
Finding K for a Specific Locus Point
• Recall that the root locus is defined by the equation1+ K G(s) = 0,
which can be broken up into a magnitude-equation and a
phase-equation (Eqs: 6.1 and 6.2).
|K | =∣∣∣∣ −1
G(s)
∣∣∣∣6 G(s) = 6
(−1
K
).
• The phase equation is used to plot the locus.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–15
• The magnitude equation may be used to find the value of K to get a
specific set of closed-loop poles.
• That is, K =∣∣∣∣ −1
G(s0)
∣∣∣∣ is the gain to put a pole at s0, if s0 is on the locus.
Summary: Root-Locus Drawing Rules— 180◦ Locus
• The steps in drawing a 180◦ root locus follow from the basic phase definition. This is the locus of
1+ Kb(s)
a(s)= 0, K ≥ 0
(phase of
b(s)
a(s)= −180◦
).
• They are
– STEP 1: On the s-plane, mark poles (roots of a(s)) by an × and zeros (roots of a(s)) with an ◦.There will be a branch of the locus departing from every pole and a branch arriving at every zero.
– STEP 2: Draw the locus on the real axis to the left of an odd number of real poles plus zeros.
– STEP 3: Draw the asymptotes, centered at α and leaving at angles φ, where
n−m = number of asymptotes.
n = order of a(s)
m = order of b(s)
α =∑
pi −∑ zi
n−m= −a1+ b1
n−m
φl = 180◦ + (l − 1)360◦
n−m, l = 1, 2, . . .n−m.
For n−m> 0, there will be a branch of the locus approaching each asymptote and departing toinfinity. For n−m< 0, there will be a branch of the locus arriving from infinity along eachasymptote.
– STEP 4: Compare locus departure angles from the poles and arrival angles at the zeros where
qφdep =∑
ψi −∑
φi − 180◦ ± l360◦
qψarr =∑
φi −∑
ψi + 180◦ ± l360◦,
where q is the order of the pole or zero and l takes on q integer values so that the angles arebetween ±180◦ . ψi is the angle of the line going from the i th zero to the pole or zero whoseangle of departure or arrival is being computed. Similarly, φi is the angle of the line from the i thpole.
– STEP 5: If further refinement is required at the stability boundary, assume s0 = jω0 andcompute the point(s) where the locus crosses the imaginary axis for positive K .
– STEP 6: For the case of multiple roots, two loci come together at 180◦ and break away at ±90◦.Three loci segments approach each other at angles of 120◦ and depart at angles rotated by 60◦.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–16
– STEP 7 Complete the locus, using the facts developed in the previous steps and makingreference to the illustrative loci for guidance. The loci branches start at poles and end at zeros orinfinity.
– STEP 8 Select the desired point on the locus that meets the specifications (s0), then use themagnitude condition to find that the value of K associated with that point is
K = 1
|b (s0) /a (s0)| .
EXAMPLE :
r (t) y(t)K(s+ 1)(s+ 2)
s(s+ 4)
=(s)
<(s)
EXAMPLE : This example is NOT a unity-feedback case, so we need to
be careful.
r (t) y(t)Ks+ 2
s− 10
s+ 3
s+ 1
• Recall that the root-locus rules plot the locus of roots of the equation
1+ Kb(s)
a(s)= 0.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–17
• Compute T(s) to determine the characteristic equation as a function
of K .
T(s) = K s+2s−10
1+ K (s+2)(s+3)(s+1)(s−10)
= K (s+ 2)(s+ 1)
(s+ 1)(s− 10)+ K (s+ 2)(s+ 3)
• Poles of T(s) at(s+ 1)(s− 10)+ K (s+ 2)(s+ 3) = 0
or
1+ K(s+ 2)(s+ 3)
(s+ 1)(s− 10)= 0.
=(s)
<(s)
1) “Open loop” poles and zeros:
2) Real axis
3) Asymptotes
4) Departure angles
5) Stability boundary: Note, characteristic equation= (s+ 1)(s− 10)+ K (s+ 2)(s+ 3)
= s2− 9s− 10+ Ks2+ 5Ks+ 6K
= (K + 1)s2+ (5K − 9)s+ 6K − 10
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–18
Routh Array
s2 K + 1 6K − 10 K > −1
s1 5K − 9 K >9
5= 1.8 ← stability criterion
s0 6K − 10 K >10
6= 1.66
When K = 9/5, the s1 row of the Routh array is zero—top row
becomes a factor of the characteristic equation. Imag.-axis crossings
where (9
5+ 1
)s2+
(6
9
5− 10
)= 0
14s2+ 4= 0 . . . s= ± j
√2
7.
=(s)
<(s)
6) Breakaway points
K (s) = −(s+ 1)(s− 10)
(s+ 2)(s+ 3)
= −(s2− 9s− 10)
s2+ 5s+ 6d
dsK (s) = −(s+ 1)(s− 10)(2s+ 5)− (−2s+ 9)(s+ 2)(s+ 3)
(den)2= 0
= (−2s3+ 18s2+ 20s− 5s2+ 45s+ 50)−(−2s3− 10s2− 12s+ 9s2+ 45s+ 54) = 0
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–19
= (−2+ 2)s3+ (18− 5+ 10− 9)s2+(20+ 45+ 12− 45)s+ (50− 54) = 0
= 14s2+ 32s− 4= 0
s= −32±√322− 4(14)(−4)
28= −32±√1248
28roots at {0.118, −2.40}. Now we can complete the locus:
=(s)
<(s)
EXAMPLE :
r (t) y(t)K1
s+ as+ 1
s2
• Two design parameters: K , pole location −a.
G(s) = s+ 1
s2(s+ a).
• Test a = 2, a = 50, a = 9.
1) Poles and zeros of G(s).
=(s)
<(s)
2) Real axis.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–20
3) Asymptotes:n−m = 2
α =∑
pi −∑ zi
2= 0+ 0+ (−a)− (−1)
2= 1− a
2α = {−0.5, −24.5, −4}φl = 180◦ + 360◦(l − 1)
2= ±90◦.
4) Departure angles for two poles at s= 0.
2φdep=∑
6 (zeros)−∑
6 (remaining poles)− 180◦ − 360◦l
= 0− 0− 180◦ − 360◦l
φdep= −90◦ − 360◦
2l = ±90◦.
5) Will always be stable for K > 0.
6) Breakaway points:
K (s) = −s2(s+ a)
s+ 1
d
dsK (s) = −
((s+ 1)(3s2+ 2as)− s2(s+ a)(1)
(s+ 1)2
)= 0
= s(2s2+ (a+ 3)s+ 2a
) = 0
breakaway at
{0,−a+ 3±√(a+ 3)2− 4(2)(2a)
2(2)
}
sa={2,50,9} ={−1.25± j
√7/16︸ ︷︷ ︸
not on locus
, (−2.04 and − 24.46), −3}
and 0
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–21
=(s)
<(s)
a = 2 =(s)
<(s)
a = 9
=(s)
<(s)
a = 50
Matlab and Root Loci
• If G(s) = b(s)
a(s)= b0sm+ b1sm−1+ · · · + bm
a0sn + a1sn−1+ · · · + an.
b = [b0 b1 b2 . . . bm];
a = [a0 a1 a2 . . . an];
rlocus(b,a); % plots the root locus
• Also, k=rlocfind(b,a); returns the value of K for a specific point on the
root locus (graphical, with a mouse).
• Matlab is also able to draw space aliens!
z=[-5+5j -5-5j -4.8+2j -4.8-2j 0.35+0.2j 0.35-0.2j ...
2j -2j 2j -2j 0.7 0.7 1.0+1.5j 1.0-1.5j 1.0+1.5j 1.0-1.5j 2.2];
p=[-4.5+3.2j -4.5-3.2j -0.15+0.8j -0.15-0.8j 0.3j -0.3j 0.4+0.3j ...
0.4-0.3j 0.45+0.6j 0.45-0.6j 1+1.3j 1-1.3j 1+1.3j 1-1.3j 2+0.15j ...
2-0.15j 2];
num=poly(z); den=poly(p); rlocus(num,den);
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–22
−6 −5 −4 −3 −2 −1 0 1 2 3−6
−4
−2
0
2
4
6
Real Axis
Imag
Axi
s “TAKE ME TO YOURLEADER!”
Summary: Root-Locus Drawing Rules— 0◦ Locus
• We have assumed that 0≤ K <∞, and that G(s) has monic b(s) and
a(s). If K < 0 or a(s)/b(s) has a negative sign preceding it, we must
change our root-locus plotting rules.
• Recall that we plot1+ K G(s) = 0
G(s) = −1
K
6 G(s) ={
180◦, if K positive;0◦, if K negative.
• In the following summary of drawing a 0◦ root locus, the steps which
have changed are highlighted.• The steps in drawing a 0◦ root locus follow from the basic phase definition. This is the locus of
1+ Kb(s)
a(s)= 0, K ≤ 0
(phase of
b(s)
a(s)= 0◦
).
• They are
– STEP 1: On the s-plane, mark poles (roots of a(s)) by an × and zeros (roots of a(s)) with an ◦.There will be a branch of the locus departing from every pole and a branch arriving at every zero.
– STEP 2: Draw the locus on the real axis to the left of an even number of real poles plus zeros.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–23
– STEP 3: Draw the asymptotes, centered at α and leaving at angles φ, where
n−m = number of asymptotes.
n = order of a(s)
m = order of b(s)
α =∑
pi −∑ zi
n−m= −a1+ b1
n−m
➠ φl = (l − 1)360◦
n−m, l = 1, 2, . . .n−m.
For n−m> 0, there will be a branch of the locus approaching each asymptote and departing toinfinity. For n−m< 0, there will be a branch of the locus arriving from infinity along eachasymptote.
– STEP 4: Compare locus departure angles from the poles and arrival angles at the zeros where
➠ qφdep =∑
ψi −∑
φi ± l360◦
➠ qψarr =∑
φi −∑
ψi ± l360◦,
where q is the order of the pole or zero and l takes on q integer values so that the angles arebetween ±180◦ . ψi is the angle of the line going from the i th zero to the pole or zero whoseangle of departure or arrival is being computed. Similarly, φi is the angle of the line from the i thpole.
– STEP 5: If further refinement is required at the stability boundary, assume s0 = jω0 andcompute the point(s) where the locus crosses the imaginary axis for positive K .
– STEP 6: For the case of multiple roots, two loci come together at 180◦ and break away at ±90◦.Three loci segments approach each other at angles of 120◦ and depart at angles rotated by 60◦.
– STEP 7: Complete the locus, using the facts developed in the previous steps and makingreference to the illustrative loci for guidance. The loci branches start at poles and end at zeros orinfinity.
– STEP 8: Select the desired point on the locus that meets the specifications (s0), then use themagnitude condition to find that the value of K associated with that point is
K = 1
|b (s0) /a (s0)| .
Extensions to Root Locus Method—Time Delay
• A system with a time delay has the formG(s) = e−τdsG′(s)
where τd is the delay and G′(s) is the non-delayed system.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS ANALYSIS 6–24
• This is not in rational-polynomial form. We cannot use root locus
techniques directly.
METHOD 1:
• Approximate e−τds by[
b0s+ b1
a0s+ 1
], a polynomial.
• Padé approximation.
e−τds ≈ 1− (τds/2)
1+ (τds/2)First-order approximation
≈ 1− τds/2+ (τds)2/12
1+ τds/2+ (τds)2/12Second-order approximation.
≈ 1
1+ τdsVery crude.
• Extremely important for digital control!!!
METHOD 2:
• Directly plot locus using phase condition.
• i.e., 6 G(s) = (−τdω)+ 6 G′(s) if s= σ + jω.
• i.e., look for places where 6 G′(s) = 180◦ + τdω + 360◦l .
• Fix ω, search horizontally for locus.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510: Feedback Control Systems. 7–1
ROOT-LOCUS DESIGN
• We have seen how to draw a root locus for a given plant dynamics.
• We include a variable gain K—proportional control.
• What if desired pole locations are not on this locus?
• We need to modify the locus itself by adding extra
dynamics—compensator:
r (t) y(t)K G(s)D(s)
• We redraw the locus and pick K in order to put the poles where we
want them. HOW?
T(s) = K D(s)G(s)
1+ K D(s)G(s)let G′(s) = D(s)G(s)
= K G′(s)1+ K G′(s)
➠ We know how to draw this locus!
• Adding a compensator effectively adds dynamics to the plant.
• What types of (1) compensation should we use, and (2) how do we
figure out where to put the additional dynamics?
Types of Compensator Dynamics
• There are 3 classical types of controllers with some important
variations.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS DESIGN 7–2
1) Proportional FeedbackD(s) = 1. u(t) = Ke(t)
T(s) = K G(s)
1+ K G(s).
• Same as what we have already looked at. Controller only consists of
a “gain knob.” We have to take the locus “as given” since we have no
extra dynamics to modify it.
• Usually a very limited approach, but a good place to start.
2) Integral Feedback
D(s) = 1
TI su(t) = K
TI
∫ t
0e(τ ) dτ
T(s) =KTI
G(s)s
1+ KTI
G(s)s
.
• Usually used to reduce/eliminate steady-state error. i.e., if e(t)
constant, u(t) will become very large and hopefully correct the error.
• Penalty: Steady-state response improves, but often transient
response degrades.
Steady-State Response
• We apply a step (ramp, parabola) input. How well does our (closed
loop) system track this?
• Ultimately, we would like zero error. e(t) = 0. (Maybe 1%–2% in
reality)
• Recall: For a unity-feedback control system as drawn above, the
steady-state error to a unit-step input is:
ess= 1
1+ K D(0)G(0).
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS DESIGN 7–3
If we make D(s) = 1
TI s, then as s→ 0, D(s)→∞
ess→ 1
1+∞ = 0.
• So by adding the integrator into the compensator, the error has been
reduced from1
1+ K pto zero for systems that do not have any free
integrators.
EXAMPLE : G(s) = 1
(s+ a)(s+ b), a > b > 0.
• Proportional feedback, D(s) = 1, G(0) = 1
ab, ess= 1
1+ Kab
.
−a −b
=(s)
<(s)
• We can make ess small by
making K very large, but this
often leads to poorly-damped
behavior and often requires
excessively large actuators.
• Integral feedback, D(s) = 1
TI s, ess= 0.
−a −b
=(s)
<(s)
• Increasing K to increase the
speed of response pushes
the pole toward the
imaginary axis ➠ oscillatory.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS DESIGN 7–4
Proportional-Integral (PI) Control
• Now, D(s) = 1+ 1
TI s=[
s+ (1/TI )
s
]. Both a pole and a zero.
−a −b
=(s)
<(s)
• Combination of proportional
and integral (PI) solves many
of the problems with just (I)
integral.
Phase-Lag Design
• The integrator in PI control can cause some practical problems.
“Integrator windup” due to actuator saturation.
• PI control is often approximated by “lag control.”
D(s) = (s− z0)
(s− p0), |p0| < |z0|.
That is, the pole is closer to the origin than the zero.
• Because |z0| > |p0|, the phase φ added to the open-loop transfer
function is negative. . . “phase lag”
• Pole often placed very close to zero. e.g., p0 ≈ 0.01.
• Zero is placed near pole. e.g., z0 ≈ 0.1.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS DESIGN 7–5
−a −b
=(s)
<(s)
• Good steady-state error
without overflow problems.
Very similar to proportional
control.
3) Derivative Feedback
D(s) = TDs, u(t) = K TD.e(t).
• Does not do much (anything?) to help the steady-state error.
• Derivative control provides feedback that is proportional to the
rate-of-change of e(t) ➠ control response ANTICIPATES future errors.
– Very beneficial.
– Used a lot!
EXAMPLE : G(s) = 1
(s+ a)(s+ b), D(s) = TDs.
−a −b
=(s)
<(s) • No ringing. “Very” stable.
Proportional-Derivative (PD) Control
• Often, proportional control and derivative control go together.D(s) = 1+ TDs.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS DESIGN 7–6
−a −b
=(s)
<(s)• No more zero at s= 0.
Therefore better steady-state
response.
Phase-Lead Control
• Derivative magnifies sensor noise.
• Instead of D-control or PD-control use “lead control.”
D(s) = (s− z0)
(s− p0), |z0| < |p0|.
That is, the zero is closer to the origin than the pole.
• Lag control does not change locus much since p0 ≈ z0 ≈ 0.
Lag control improves steady-state error.
• Lead control DOES change locus. Pole and zero locations chosen so
that locus will pass through some desired point s= s1.
• Design may be done analytically: Let
D(s) = a1s+ a0
b1s+ 1.
• Choose a0 to get specified dc gain. (open-loop gain=K p, Kv, . . .)∣∣∣∣[
a1s+ a0
b1s+ 1
]G(s)
∣∣∣∣s=0
= dc gain.
|a0||G(0)| = dc gain.
a0 = Desired dc gain|G(0)| .
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS DESIGN 7–7
• a1 and b1 are chosen to make locus go through s= s1,[a1s1+ a0
b1s1+ 1
]G(s1) = −1
for that point to be on the root locus.
➠ Magnitude
∣∣∣∣a1s1+ a0
b1s1+ 1
∣∣∣∣ |G(s1)| = 1
➠ Phase 6[
a1s1+ a0
b1s1+ 1
]+ 6 G(s1) = 180◦.
(math happens)
a1 = sin(β)+ a0|G(s1)| sin(β − ψ)|s1||G(s1)| sin(ψ)
b1 = sin(β + ψ)+ a0|G(s1)| sin(β)
−|s1| sin(ψ)
s1 = |s1|ejβ
G(s1) = |G(s1)|ejψ.
EXAMPLE : G(s) = 1
s2. s1 = 2
√2ej 135◦ = −2+ 2 j .
The point s1 is chosen to achieve ζ = 0.707and τ = 0.5 sec.
• a0: We cannot compute a0 since1
s2
∣∣∣∣s=0
→∞. So, arbitrarily choose
a0 = 2.
• a1: Note, β = 135◦, ψ = −270◦ because
G(s1) = 1
s2
∣∣∣∣s=2√
2ej 135◦= 1
8e− j 270◦.
a1 = sin(135◦)+ 2(1/8) sin(45◦)(2√
2)(1/8) sin(−270◦)= (1/
√2)(1+ 1/4)√
2/4= 5
2.
• b1:
b1 = sin(−135◦)+ 2(1/8) sin(135◦)−(2√2) sin(−270◦)
= −(1/√
2)(1− 1/4)
−2√
2= 3
16.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS DESIGN 7–8
• So, the compensator is:
D(s) = (5/2)s+ 2
(3/16)s+ 1.
−6 −5 −4 −3 −2 −1 0 1−4
−3
−2
−1
0
1
2
3
4
Real Axis
Imag
Axi
s
Example locus passing through (-2,2)
Proportional-Integral-Derivative (PID) Control
• Most common type of control, even though often approximated by
Lead-Lag control.
• D(s) = K
[1+ 1
TI s+ TDs
].
• K = − sin(β + ψ)TI |s1||G(s1)| sin(β)[TI |s1| + 2 cos(β)]
• TD = sin(ψ)
|s1||G(s1)| sin(β)+ K
TI |s1|2, where s1 = |s1|ejβ and
G(s1) = |G(s1)|ejψ for both cases.
• TI chosen to match some design criteria. e.g., Steady-state error.
Compensator Implementation
• Analog compensators commonly use op-amp circuits.
• See the following pages. . .
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS DESIGN 7–9
<(s)
=(s)
−K
s
1
K
1
V1 V2
<(s)
=(s)
−K s
1
K
1
V1 V2
−z1 <(s)
=(s)
−K (s+ z1)
K
1
1/(K z1)
V1 V2
−p1 <(s)
=(s)
−K
s+ p1
1/K1
K
p1
V1 V2
−p1 <(s)
=(s)
−K s
s+ p1
K
1K
p1
V1 V2
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS DESIGN 7–10
<(s)
=(s)
or
−Ks+ z1
s+ p1
any p1 and z1
1/K
1
1
z1
K
p1
V1 V2
<(s)
=(s)
or
−Ks+ z1
s+ p1
K = K1
K2
any p1 and z1
K1
K2V1 V2
1
K1z1
1
K2p1
<(s)
=(s)s+ z1
s+ p1
z1 > p1
1
V1 V2
1
z1− p1
1
p1 LAG
<(s)
=(s)s+ z1
s+ p1
z1 > p1
1
V1 V2
1
p1
1
z1− p1LAG
<(s)
=(s)K
s+ z1
s+ p1
p1 > z1
K = p1
z1
1
V1 V2
p1− z1
z11
p1 LEAD
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, ROOT-LOCUS DESIGN 7–11
<(s)
=(s)K
s+ z1
s+ p1
p1 > z1
K = p1
z1
1
V1 V2
1
p1
p1− z1
p1LEAD
−z1 <(s)
=(s)K (s+ z1)
K = 1
z11
V1 V2
1
z1LEAD
Lecture notes prepared by Dr. Gregory L. Plett
Lead Compensator (Using Magnitude and Angle Condition)
+ Gc s( )1
s s 1( ). Y s( )R s( )-
33 j±−Find Gc s( ) such that the dominant closed loop poles are at
-3.5 -3 -2.5 -2 -1.5 -1 -0.5 0 0.5 1
-3
-2
-1
0
1
2
3
Real Axis
Imag
Axi
sLet Gc s( ) K
∆cl
s( ) 1 K1
s s 1( ).. Root Locus
does notgo through}
33 j±−
If Gc s( ) Ks a( )
s b( ). } Lead Compensation => b a> 0>
Real Axis
Imag
Axi
s
-a-b -c 0
-3-j3
-3+j3
∆cl
s( ) 1 Ks a( )
s b( )
1
s s 1( )...
Centroidb 0 1 a
2
RD 2 Root Locus goes
through 33 j±− {Note: a closed loop pole at "-c" has been injected
By moving "a" and "b" around we can change the centroid and hence bend the root locus to go through 33 j±−
33 j±−Note: are more dominant that "-c"
33 j±−How do we find the values for a, b and K which ensure that
are the closed-loop poles ?
Find Closed Loop Transfer Function
From the Block DiagramY s( )
R s( )
K s a( )
s s b( ). s 1( ).
1 Ks a
s b( ) s. s 1( )..
}
s 3 j3
Achieves the desired result= 0 }∆ s( ) 1 K
s a( )
s s b( ). s 1( )..
Angle Condition: Find "a" and "b"
s 3 j 3.One EquationTwo Unknowns
AngleConditionsAngle K
s a( )
s s b( ). s 1( ).. = -180 } }
s 3 j 3.One EquationTwo UnknownsAngle
s a( )
s b( )
1
s s 1( ).. = - 180 } Let a 3
s 3 j 3.s 3 j 3.= 180 Angle s
s 1( )
s 3( ).
Angle s b( )
tan 1 3
b 311.3 deg => b 18
Note : AngleA
BAngle A( ) Angle B( ) Angle AB( ) Angle A( ) Angle B( )
Angle α jβ( ) tan 1 β
α
Selection of "a"
1) "a" is not unique2) If "a" is picked too big, "b" will not exist (i.e., b may become negative)3) If "a" is picked too small, the system might not exhibit the right dominant behavior (i.e., closed loop pole at -c might dominate the behavior)
Magnitude Condition - Find "K"
s 3 j 3.= 1K
s 3
s 18( ) s( ). s 1( )..
Kj 3.
15 j 3. 3 j 3.. 2 j 3... 1
K3
15.3( ) 4.24( ). 3.65( ).. 1 K 79 approximately( )
answer Gc s( ) 79s 3
s 18. }
Lead Compensator (Using Coefficient Matching)
+ Gc s( ) Gp s( ) Y s( )R s( )-
33 j±−Find Gc s( ) so that the dominant closed loop poles are at
Select a LeadCompensatorfor the samereason as before
Gp s( )1
s s 1( ). Gc s( ) Ks a
s b. }
Y s( )
R s( )
K s a( ).
s s b( ). s 1( ).
1 Ks a( )
s b( ) s. s 1( )..
K s a( ).
s s 1( ). s b( ). K s a( ). closed loop TF}Note: There are three closed loop poles given by the characteristic equation
actual closed loopdenominator∆
cls( ) s s 1( ). s b( ). K s a( ). }
Real Axis
Imag
Axi
s
-a-b -c 0
-3-j3
-3+j3
jω
Still need to draw theroot locus to understandthe problem}
σ
actual closed loop denominator∆cl
s( ) s3 b 1( ) s2. b K( ) s. a K. }desired closed loop denominator∆
dcls( ) s c( ) s 3 j 3.( ). s 3 j 3.( ). }
∆dcl
s( ) s c( ) s2 6 s. 18.simplification }
∆dcl
s( ) s3 6 c( ) s2 18 6 c( ) s 18 c
Equate the desired denominator to the actual denominator
∆dcl
s( ) ∆cl
s( )
6 c b 13 equations, 4 unknowns (cannot solve)
18 6 c b KLet a 3 (same reason as before)}
aK 18 c
K 6 c1
0
1
0
1
1
6
1
6
K
b
c
.0
5
18}
5 c b b 6 c 18 K
b 18 c 13 K 78 } checks with previous answer
Note we have discovered the third closed loop pole in the process (i.e., s = - 13)
Interesting Side Note
Previous equation can be used to determine how big ’’a’’ can get
eliminate K and b5 c b b 6 c 18 K K18
ac. }
5 c 6 c. 1818
ac. } one equation and two unknowns
simplified expressionc18
a5 13 }
From root locus, "c" must be a positive number for the problem to make sense
so if c 0> then18
a5 0> therefore a
18
5<
Any other selection of "a" forces "b" to be negative, and hence, the compensatorwould have an unstable pole.
Find the Structure of the Time Response For the Previous Problem Quickly
R s( )1
swhere r t( ) is a step inputY s( )
R s( )
78 s 3( ).
s 13( ) s 3( ) 2 3( ) 2.
write thisimmediatelyy t( ) A B e 13 t. C e 3 t. cos 3 t( ). D e 3 t. sin 3 t( ). }
A, B,C, D can be found with the PFE tool
How can we find A ?
final value theorem
0ssY s( )lim
78 3( ).
13( ) 18( ). 1∞t
y t( )lim }
∞ty t( )lim A 1 so A 1
Closed LoopStep Response}
Example Find the range of K which ensures closed loop stability
y t( )r t( ) + P s( )-
K H s( )
H s( )s 1
s 4( ) s 2( ). P s( )s 3
s 0.1
Closed-loop Transfer FunctionY s( )
R s( )
P s( )
1 P s( ) H s( ) K. }
∆cl
s( ) 1 K P s( ). H s( ). 1 Ks 3
s 0.1. s 1
s 2( ) s 4( ).. Denominator in
Root Locus Form}Draw the Root Locus
-6 -4 -2 0 2 4-1.5
-1
-0.5
0
0.5
1
1.5
Real Axis
Imag
Axi
s
j a.
c
j a.
Use coefficient matching to find thevalue of K which places closed loop poles at aj.±
Denominator in Polynomial Form∆
cls( ) s 0.1( ) s 2( ). s 4( ). K s 3( ). s 1( ). }
∆cl
s( ) s 0.1( ) s2 6 s 8. K s2 4 s 3.
∆cl
s( ) s3 6.1 s2 8.6 s 0.8 Ks2 4 K. s. 3 K. Simplification }∆
cls( ) s3 6.1 K( ) s2 8.6 4 K.( ) s. 0.8 3 K.( )
∆cl
s( ) s3 6.1 K( ) s2 8.6 4 K.( ) s. 0.8 3 K.( ) } actual denominator
∆dcl
s( ) s c( ) s2 a2. } desired denominator (see root locus)
∆dcl
s( ) s3 cs2 a2 s a2 c } simplified
After equating the coefficients, we obtain
1) 6.1 K c3 equations
3 unknowns2) 8.6 4 K. a2 }3) 0.8 3 K. a2 c
After multiplying equation 1) by equation 2), and equating the result to equation 3), we obtain one equation for K
6.1 K( ) 8.6 4 K( ). 0.8 3 K a2 c
4 K2 8.6 24.4( ) K. 52.46 0.8 3 K
4 K2 18.8 K 51.66 0 } simplified
K 1.94( ) K 6.657( ). 0 } factored
K 1.94 or K 6.657 } roots
Since K cannot be negative K 1.94 is the answer
-6 -4 -2 0 2 4-1.5
-1
-0.5
0
0.5
1
1.5
Real Axis
Imag
Axi
s
For 0 K< 1.94< , the system is stable
Lead Compensator: Design Example
Y s( )R s( ) + Gc s( )4
s s 2( ).-
Design Gc s( ) so that the dominant closed loop poles are at s 2 j 2 3.
and s 2 j 2 3.Lead CompensatorGc s( ) K
s a
s b. }
Closed Loop Transfer Function
Y s( )
R s( )
Ks a( )
s b( ). 4
s s 2( )..
1 Ks a( )
s b( )
4
s s 2( )...
}
Imag
Axi
s
-a-b -c
32j
32j−
Real Axis
∆cl
s( ) 1 Ks a
s b. 4
s s 2( )..
Draw the Root Locus}
Method I Angle/Magnitude Condition
Angle Condition
Let a 2.9 } Do you know why ?
s 2 j 2. 3.= 180Angle
s 2.9
s b
4
s 2( ) s( )..
s 2 j 2 3. s 2 j 2 3.Angle s b( ) = 180 Angle
4 s 2.9( ).
s s 2( ).
tan 1 2 3
b 245 => b 5.46
Magnitude Condition
s 2 j2 3
= 1 => K 4.68Ks 2.9
s 5.46
4
s s 2( )...
Method II: Coefficient Matching
Closed-LoopTransfer Function
Y s( )
R s( )
Ks a( )
s b( ). 4
s s 2( ).
1 Ks a
s b. 4
s s 2( ).
4 K s a( )
s s b( ). s 2( ). Ks Ka( ) 4}
∆cl
s( ) s3 2 b( ) s2. 2 b 4 K( ) s. 4 Ka } simplified actual denominator
desired denominator (see root locus)∆
dcls( ) s 2 j 2 3. s 2 j 2 3.. s c( ). }
∆dcl
s( ) s3 4 c( ) s2 16 4 c.( ) s. 16 c. } simplified
4 c 2 b3 equations
4 unknowns2 b. 4 K. 16 4 c. }16 c. 4 K. a.
Do you know why ?Let a 2.9 }
3 equations
3 unknowns
1
4
16
1
2
0
0
4
11.6
c
b
K
.2
16
0}
Use calculator to solve (same answer as before)}c
b
K
3.4
5.4
4.68
Note: "c" is between "a" and "b"
Imag
Axi
s
-a-b -c
32j
32j−
Real Axis
ECE4510: Feedback Control Systems. 8–1
FREQUENCY-RESPONSE ANALYSIS
• Advantages and disadvantages to root-locus design approach:
ADVANTAGES :
– Good indicator of transient response.
– Explicitly shows location of closed-loop poles. ➠ Tradeoffs are
clear.
DISADVANTAGES :
– Requires transfer function of plant be known.
– Difficult to infer all performance values.
– Hard to extract steady-state response (sinusoidal inputs).
• Frequency-response methods can be used to supplement root locus:
– Can infer performance and stability from same plot.
– Can use measured data when no model is available.
– Design process is independent of system order (# poles).
– Time delays handled correctly (e−sτ ).
– Graphical techniques (analysis/synthesis) are “quite simple.”
Frequency Response
• We want to know how a linear system responds to sinusoidal input, in
steady state.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–2
• Consider systemY(s)
U (s)= G(s).
• Consider the input:u(t) = u0 sin(ωt)
U (s) = u0ω
s2+ ω2.
• With zero initial conditions,
Y(s) = G(s)u0ω
s2+ ω2.
• Do a partial-fraction expansion (assume distinct roots)
Y(s) = α1
s− a1+ α2
s− a2+ · · · + αn
s− an+ α0
s+ jω+ α∗0
s− jω
y(t) = α1ea1t + α2e
a2t + · · · + αneant︸ ︷︷ ︸If stable, these decay to zero.
+2|α0| sin(ωt + φ)
yss(t) = 2|α0| sin(ωt + φ), φ = tan−1
[=(α0)
<(α0)
]= u0Asin(ωt + φ).
• Important LTI-system fact: If the input to an LTI system is a sinusoid,
the “steady-state” output is a sinusoid of the same frequency but
different amplitude and phase.
• Amplitude gain: A; Phase shift: φ.
• “A” and “φ” may be found from α0, which is found using partial-fraction
expansion techniques.A = |G(s)|s= jω = |G( jω)|=√<(G( jω))2+ =(G( jω))2;
φ = 6 G(s)|s= jω = 6 G( jω)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–3
= tan−1
(=(G( jω))
<(G( jω))
).
FORESHADOWING: Transfer function along jω-axis tells us response to a
sinusoid...but also tells us about stability since jω-axis is stability
boundary!
Plotting a Frequency Response
• There are two common ways to plot a frequency response ➠ the
magnitude and phase for all frequencies.
EXAMPLE:
Y(s)U(s) C
R
G(s) = 1
1+ RCs
• Frequency response
G( jω) = 1
1+ jωRC(let RC= 1)
= 1
1+ jω
= 1√1+ ω2
6 − tan−1(ω).
• We will need to separate magnitude and phase information from
rational polynomials in jω.
– Magnitude = magnitude of numerator / magnitude of denominator√<(num)2+ =(num)2√<(den)2+ =(den)2.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–4
– Phase = phase of numerator − phase of denominator
tan−1
(=(num)<(num)
)− tan−1
(=(den)<(den)
).
Plot Method #1: Polar Plot in s-plane.
• Evaluate G( jω) at each frequency for 0≤ ω <∞.
• Result will be a complex number at each frequency: a+ jb or Aejφ.
• Plot each point on the complex plane at (a+ jb) or Aejφ for each
frequency-response value.
• Result = polar plot.
• We will later call this a “Nyquist plot”.
ω G( jω)
0 1.0006 0.0◦
0.5 0.8946 − 26.6◦
1.0 0.7076 − 45.0◦
1.5 0.5556 − 56.3◦
2.0 0.4476 − 63.4◦
3.0 0.3166 − 71.6◦
5.0 0.1966 − 78.7◦
10.0 0.1006 − 84.3◦
∞ 0.0006 − 90.0◦
• The polar plot is parametric in ω, so it is hard to read the
frequency-response for a specific frequency from the plot.
• We will see later that the polar plot will help us determine stability
properties of the plant and closed-loop system.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–5
Plot Method #2: Magnitude and Phase Plots
• We can replot the data by separating the plots for magnitude and
phase making two plots versus frequency.
0 1 2 3 4 5 60
0.2
0.4
0.6
0.8
1
Frequency, (rads/sec.)
|G(jω)|
0 1 2 3 4 5 6−90
−80
−70
−60
−50
−40
−30
−20
−10
0
Frequency, (rads/sec.)
6 G(jω)
• The above plots are in a natural scale, but usually a log-log plot is
made ➠ This is called a “Bode plot” or “Bode diagram.”
Bode Diagrams
• Simplest way to display the frequency response of a
rational-polynomial transfer function is to use a Bode Plot.
• Logarithmic ω versus logarithmic |G( jω)|, and logarithmic ω versus6 G( jω).
REASON:
log10
(ab
cd
)= log10 a+ log10 b− log10c− log10 d.
➤ The polynomial factors that contribute to the transfer function can
be split up and evaluated separately.
G(s) = (s+ 1)
(s/10+ 1)
G( jω) = ( jω + 1)
( jω/10+ 1)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–6
|G( jω)| = | jω + 1|| jω/10+ 1|
log10 |G( jω)| = log10
√1+ ω2− log10
√1+
( ω10
)2.
• Consider:
log10
√1+
(ω
ωn
)2
.
• For ω � ωn,
log10
√1+
(ω
ωn
)2
≈ log10(1) = 0.
• For ω � ωn,
log10
√1+
(ω
ωn
)2
≈ log10
(ω
ωn
).
KEY POINT: Two straight lines on a log-log plot; intersect at ω = ωn.
• Typically plot 20 log10 |G( jω)|; that is, in dB.
0.1ωn ωn 10ωn
Exact Approximation
20dB
• A transfer function is made up of first-order zeros and poles, complex
zeros and poles, constant gains and delays. We will see how to make
straight-line (magnitude- and phase-plot) approximations for all these,
and combine them to form the appropriate Bode diagram.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–7
Bode-Magnitude Diagrams
Bode-Magnitude: Constant Gain
• dB = 20 log10 |K |.• Not a function of frequency.
Horizontal straight line. If
|K | < 1, then negative, else
positive.
0.1 1 10
|K | > 1
|K | < 1
dB
Bode-Magnitude: Zero or Pole at Origin
• For a zero at the origin,G(s) = s
dB = 20 log10 |G( jω)|= 20 log10 | jω| dB.
0.1 1 10
20 dB
−20 dB
20 dB perdecade
• For a pole at the origin,
G(s) = 1
sdB = 20 log10 |G( jω)|= −20 log10 | jω| dB.
0.1 1 10
20 dB
−20 dB
−20 dB perdecade
• Both are straight lines, slope = ±20 dB per decade of frequency.
– Line intersects ω-axis at ω = 1.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–8
• For an nth-order pole or zero at the origin,dB = ±20 log10 |( jω)n|= ±20 log10ω
n
= ±20n log10ω.
– Still straight lines.
– Still intersect ω-axis at ω = 1.
– But, slope = ±20n dB per decade.
Bode-Magnitude: Zero or Pole on Real Axis, but not at Origin
• For a zero on the real axis, (LHP or RHP), the standard Bode form is
G(s) =(
s
ωn± 1
),
which ensures unity dc-gain.
• If you start out with something likeG(s) = (s+ ωn),
then factor as
G(s) = ωn
(s
ωn+ 1
).
Draw the gain term (ωn) separately from the zero term (s/ωn + 1).
• In general, a LHP or RHP zero has standard Bode form
G(s) =(
s
ωn± 1
)
G( jω) = ±1+ j
(ω
ωn
)
20 log10 |G( jω)| = 20 log10
√1+
(ω
ωn
)2
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–9
• For ω � ωn, 20 log10
√1+
(ω
ωn
)2
≈ 20 log10
√1= 0.
• For ω � ωn, 20 log10
√1+
(ω
ωn
)2
≈ 20 log10
(ω
ωn
).
• Two straight lines on a log scale which intersect at ω = ωn.
• For a pole on the real axis, (LHP or RHP) standard Bode form is
G(s) =(
s
ωn± 1
)−1
20 log10 |G( jω)| = −20 log10
√1+
(ω
ωn
)2
.
This is the same except for a minus sign.
0.1ωn 1ωn 10ωn
20 dB
20 dB perdecade
0.1ωn 1ωn 10ωn
−20 dB
−20 dB perdecade
Bode-Magnitude: Complex-Zero or Complex-Pole Pair
• For a complex-zero pair (LHP or RHP) standard Bode form is(s
ωn
)2
± 2ζ
(s
ωn
)+ 1,
which has unity dc-gain.
• If you start out with something like
s2± 2ζωns+ ω2n,
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–10
which we have seen before as a “standard form,” the dc-gain is ω2n.
• Convert forms by factoring out ω2n
s2± 2ζωns+ ω2n = ω2
n
[(s
ωn
)2
± 2ζ
(s
ωn
)+ 1
].
• Complex zeros do not lend themselves very well to straight-line
approximation.
• If ζ = 1, then this is(
s
ωn± 1
)2
.
• Double real zero at ωn ➠ slope of 40 dB/decade.
• For ζ 6= 1, there will be overshoot or undershoot at ω ≈ ωn.
– At ω = ωn, magnitude value = 20 log102ζ dB.
• We write complex poles (LHP or RHP) as
G(s) =[(
s
ωn
)2
± 2ζ
(s
ωn
)+ 1
]−1
.
– At ω = ωn, peak magnitude value = −20 log10 2ζ dB.
– For ω � ωn, magnitude ≈ 0 dB.
– For ω � ωn, magnitude slope = −40 dB/decade.
Bode Mag: Complex zeros
0.050.10.20.30.5
0.7ζ = 0.9
0.1ωn ωn 10ωn−20 dB
0 dB
20 dB
40 dBBode Mag: Complex poles
ζ = 0.050.10.20.30.5
0.7ζ = 0.9
0.1ωn ωn 10ωn−40 dB
−20 dB
0 dB
20 dB
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–11
Bode-Magnitude: Time Delay
• G(s) = e−sτ . . . |G( jω)| = 1.
• 20 log10 1= 0 dB.
• Does not change magnitude response.
EXAMPLE :
G(s) = 2000(s+ 0.5)
s(s+ 10)(s+ 50)=
2000·0.510·50
(s
0.5 + 1)
s(
s10+ 1
) (s
50+ 1)
G( jω) =2(
jω0.5 + 1
)jω(
jω10 + 1
) (jω50 + 1
).• Components:
– DC gain of 20 log102≈ 6 dB;
– Pole at origin;
– One real zero not at origin, and
– Two real poles not at origin.
10−2
10−1
100
101
102
103
−60
−40
−20
0
20
40
60
80
Lecture notes prepared by Dr. Gregory L. Plett
Bode Plot Construction
Typical Transfer FunctionH s( ) K
s a( ) s b( )
sn s c( ). s d( ). s e( ).. } a b, c, d, e, are
real positive numbers
Bode Form : Let s jω and normalize
Bode FormH s( ) Kabecd.
jωa
1jωb
1.
jω( )n jω
c1. jω
d1. jω
e1.
. }Magnitude Plot
1) Curve breaks { up / down } by 20 dB/dec at { a,b / c,d,e}
Angle Plot
2) Curve breaks { up / down } by 45 degrees one decade before { a,b / c,d,e } and breaks { down / up } by 45 degrees one decade after { a,b / c,d,e }
Initial Magnitude Plot
Case 1: n=0
ω 0 ω 0Calculate H jω( ) and then convert to dB i.e., 20 log H jω( )( ).
Case 2: n > 0
Calculate the ω - intercept ω interceptKabcde
1n
Calculate the initial slope 20 n. dB / dec
Final Magnitude Slope = -20 . RD dB / dec
Initial and Final Phase Plot
1) Plot a pole / zero plot for the original transfer function
2) Calculate the angle from the picture at ω 0
Illustrative Example
Angles a
s c
ω 0Initial Angle = Angle jω a( ) Angle jω c( )( ) = 0 degrees
ω ∞= 90 - 90 = 0 degrees
Final Angle = Angle jω a( ) Angle jω c( )( )
-10 -8 -6 -4 -2 0-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
Real Axis
Imag
Axi
s c aPole / Zero Plot}
Example - Bode Plot Construction
Bode FormH s( )s 1
s 10H jω( )
1
10
jω1
1.
jω10
1
}
Magnitude Plot
ω 0=
1
101) Initial Magnitude => n = 0 => H jω( )
dB ConversionInitial Magnitude = 20 log
1
10. 20 dB }
2) Plot the negative of the poles and the zeros on the jω axis
zero at -1 pole at -10
3) Use an "up" arrow to denote a slope of +20 dB/dec and a "down" arrow to denote a slope of -20 dB/dec
RD 0H jω( )
110− 110 210010
-20
-40
Decade
Initial Magnitude
Final Slope = 0 dB / dec
dB
( use semilog paper )}
ω
4) Start at the initial magnitude and use arrows to draw the asymptotic plot
110− 110 210010
-20
-40
+ 20 dB/dec
H jω( )
dB
ω
Phase Plot for H s( )s 1
s 10 Bode FormH jω( )
1
10
jω1
1.
jω10
1
}
-10 -8 -6 -4 -2 0-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
Real Axis
Imag
Axi
s
Pole / Zero Plot}10 1
1) Initial Phase
ω 0 ω 0=Angle H jω( )( ) Angle
jω1
1 Anglejω10
1
Note : = 0 - 0 = 0 } see picture
Final Angle
ω ∞ω ∞= Angle
jω1
1 Anglejω10
1Angle H jω( )( )
Note : = 90 - 90 = 0 } see picture
Frequency (rad/sec)
110 − 110 210010
45
90Decade
Initial Phase Final Phase
- 45 deg/dec 45 deg/dec
2) Plot the negative of the poles and the zeros on the jω axis
zero at -1 pole at -10
3) Use an "up" arrow to denote a slope of +45 deg/dec and a "down" arrow to denote a slope of - 45 deg/dec
Angle H jω( )( )
Frequency (rad/sec)
110− 110 210010
45
90Decade
Initial Phase Final Phase
deg
ω4) Start at the initial phase and use arrows to draw the asymptotic plot
Angle H jω( )( )
deg
ω
Use the Asymptotic Plots to draw the actual Bode Plot free hand (rough out the edges)
F re q ue nc y (ra d /s e c )
Pha
se (d
eg);
Mag
nitu
de (d
B)
B o d e D ia g ra m s
-2 0
-1 5
-1 0
-5
0
1 0-1
1 00
1 01
1 02
1 0
2 0
3 0
4 0
5 0
Example Bode Plot Construction
H s( )10 s 10( )
s s 1( ) s 100( )
Bode FormH jω( )10 10( )
100
jω10
1
jωjω1
1jω100
1
. }Magnitude Plot
1) Initial Magnitude => n = 1 => Calculate the ω intercept ωI
ωI
10 10( )
100
1
n
1 100 } n 1
Initial slope = -20.n dB / dec = -20 dB / dec } n 1
2) Plot the negative of the poles and the zeros on the jω axis
zero at -10 poles at 0 , -1 and -100
3) Use an "up" arrow to denote a slope of +20 dB/dec and a "down" arrow to denote a slope of -20 dB/dec
H jω( )
Frequency (rad/sec)
110 210010
-40
-20-20 dB/dec
-20 dB/dec
-60
0
20
Iω
dB( use semilog paper )}
4) Use the initial slope and the arrows to draw the asymptotic plot
H jω( )
110 210010
-40
-20
-20 dB/dec
-20 dB/dec
-40 dB/dec
-40 dB/dec-60
0
20
dB
ω
Phase Plot for H (s) = 10 s 10( )
s s 1( ) s 100( )
H (s) = 10 10( )
100
jω10
1
jωjω1
1jω100
1
Bode Form}
-1
-0 .8
-0 .6
-0 .4
-0 .2
0
0 .2
0 .4
0 .6
0 .8
1
R e a l A x is
Imag
Axi
s
Pole / Zero Plot100 10 1 }
1) Initial Phase
ω 0Angle H jω( )( )
ω 0= Angle
jω10
1 Angle jω( ) Anglejω1
1 Anglejω100
1
°−=°−°−°−°=
90
00900
Final Angle
ω ∞Angle H jω( )( )
ω ∞= Angle
jω10
1 Angle jω( ) Anglejω1
1 Anglejω100
1
°−=°−°−°−°=
180
90909090
2) Plot the negative of the poles and the zeros on the j ω axis
zero at -10 poles at 0 , -1 and -100
3) Use an "up" arrow to denote a slope of +45 deg/dec and a "down" arrow to denote a slope of - 45 deg/dec
Angle H jω( )( )110 210010 310
-90
-180
90
0
-270
110 −
Initial Phase Final Phase
ω
deg
Decade
4) Start at the initial phase and use arrows to draw the asymptotic plot
Angle H jω( )( )
Frequency (rad/sec)
110− 110 210010
-90
-45
-135
-180
Initial Phase
Final Phase
- 45 deg/dec
- 45 deg/dec
310
-225
ω
deg
Use the Asymptotic Plots to draw the actual Bode Plot free hand (rough out the edges)
Frequency (rad/sec)
Pha
se (d
eg);
Mag
nitu
de (d
B)
Bode Diagrams
-100
-50
0
10-2
10-1
100
101
102
103
-160
-140
-120
-100
Bode Plots for Repeated Roots
H (s) = 1
s ω n2
H (s) = 1
ω n2
1
jω
ω n1
jω
ω n1
Bode Form}Magnitude Plot
ω 0
1
ωn
21) Initial Magnitude => n = 0 => Calculate initial magnitude H jω( ) =
Initial Magnitude = 20 log1
ωn
2.
dB dB Conversion}
2) Plot the negative of the poles on the jω axis
2 poles at - ωn
3) Use an "up" arrow to deonte a slope of +20 dB/dec and a "down" arrow to denote a slope of -20 dB/dec
H jω( )
nω nω 1010/nω
-20
-40Decade
20
0
nω 100ω
dB
Phase Plot for H (s) = 1
s ωn
2
H (s) = 1
ωn
2
1
jω
ωn
1jω
ωn
1 Bode Form}
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
Real Axis
Imag
Axi
s
Pole / Zero Plot}ω
n
1) Initial Phase
ω 0 ω 0= Angle
jω
ωn
1 Anglejω
ωn
1Angle H jω( )( )
°=°−°−=
0
00
Final Angle
ω ∞ ω ∞= Angle
jω
ωn
1 Anglejω
ωn
1Angle H jω( )( )
°−=°−°−=
180
9090
2) Plot the negative of the poles and the zeros on the j ω axis
2 poles at -ωn
3) Use an "up" arrow to denote a slope of +45 deg/dec and a "down" arrow to denote a slope of - 45 deg/dec
Angle H jω( )( )
nω
-90
-180
90
0
-270
Initial PhaseFinal Phase
nω10 nω10010nω
ω
deg
4) Start at the initial phase and use arrows to draw the asymptotic plot
nω
-90
-180
90
0
-270
Initial PhaseFinal Phase
nω 10 nω 10010
nω
Use the Asymptotic Plots to draw the actual Bode Plot free hand (rough out the edges)
In the following plot ωn
1
Frequency (rad/sec)
Pha
se (d
eg);
Mag
nitu
de (d
B)
Bode Diagrams
-40
-30
-20
-10
0
10-1
100
101
-150
-100
-50
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–17
Nonminimum-Phase Systems
• A system is called a nonminimum-phase if it has pole(s) or zero(s) in
the RHP.
• Consider
G1(s) = 10s+ 1
s+ 10
}zero at − 1
pole at − 10
}minimum
phase
G2(s) = 10s− 1
s+ 10
}zero at + 1
pole at − 10
}nonminimum
phase
• The magnitude responses of these two systems are:
|G1( jω)| = 10| jω + 1|| jω + 10| = 10
√ω2+ 1√ω2+ 100
|G2( jω)| = 10| jω − 1|| jω + 10| = 10
√ω2+ 1√ω2+ 100
which are the same!
• The phase responses are very different:
10−2
10−1
100
101
102
103
0
5
10
15
20
Bode-Magnitude Plot
Frequency, (rads/sec.)
|G1(
jω)|,|G
2(jω)|
10−2
10−1
100
101
102
103
0
30
60
90
120
150
180
Non-minimumPhase, G2
MinimumPhase, G1
Bode-Phase Plot
Frequency, (rads/sec.)
6 (G
1(jω))
,6(G
2(jω))
• Note that the change in phase of G1 is much smaller than change of
phase in G2. Hence G1 is “minimum phase” and G2 is
“nonminimum-phase”
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–18
• Non-minimum phase usually associated with delay.
G2(s) = G1(s)s− 1
s+ 1︸ ︷︷ ︸Delay
• Note:s− 1
s+ 1is very similar to a first-order Padé approximation to a
delay. It is the same when evaluated at s= jω.
• Consider using feedback to control a nonminimum-phase system.
What do the root-locus plotting techniques tell us?
Steady-State Errors from Bode-Magnitude Plot
• Recall our discussion of steady-state errors to step/ramp/parabolic
inputs versus “system type” (summarized on pg. 4–4–17)
• Consider a unity-feedback system.
• If the open-loop plant transfer function has N poles at s= 0 then the
system is “type N”
• K p is error constant for type 0.
• Kv is error constant for type 1.
• Ka is error constant for type 2...
• For a unity-feedback system, K p = lims→0
G(s).
– At low frequency, a type 0 system will have G(s) ≈ K p.
– We can read this off the Bode-magnitude plot directly!
– Horizontal y-intercept at low freqency = K p.
➠ ess= 1
1+ K pfor step input.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–19
• Kv = lims→0
sG(s), and is nonzero for a type 1 system.
– At low frequency, a type 1 system will have G(s) ≈ Kv
s.
– At low frequency, |G( jω)| ≈ Kv
ω. Slope of −20 dB/decade.
– Use the above approximation to extend the low-frequency
asymptote to ω = 1. The asymptote (NOT THE ORIGINAL|G( jω)|) evaluated at ω = 1 is Kv.
➠ ess= 1
Kv
for ramp input.
• Ka = lims→0
s2G(s), and is nonzero for a type 2 system.
– At low frequency, a type 2 system will have G(s) ≈ Ka
s2.
– At low frequency, |G( jω)| ≈ Ka
ω2. Slope of −40 dB/decade.
– Again, use approximation to extend low-frequency asymptote to
ω = 1. The asymptote evaluated at ω = 1 is Ka.
➠ ess= 1
Kafor parabolic input.
• Similar for higher-order systems.
10−2
10−1
100
101
−40
−30
−20
−10
0
10
20Example 1
Frequency, (rads/sec.)
Mag
nitu
de
10−2
10−1
100
101
0
10
20
30
40
50
60Example 2
Frequency, (rads/sec.)
Mag
nitu
de
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–20
EXAMPLE 1:
➤ Horizontal as ω→ 0, so we know this is type 0.
➤ Intercept = 6 dB. . .K p = 6 dB = 2 [linear units].
EXAMPLE 2:
➤ Slope = -20 dB/decade as ω→ 0, so we know this is type 1.
➤ Extend slope at low frequency to ω = 1.
➤ Intercept=20 dB. . . Kv = 20 dB = 10 [linear units].
Stability Revisited
• If we know the closed-loop transfer function of a system in rational-
polynomial form, we can use Routh to find stable ranges for K .
• Motivation : What if we only have open-loop frequency response?
A Simple Example
• Consider, for now, that we know the transfer-function of the system,
and can plot the root-locus.
EXAMPLE :
r (t) y(t)K1
s(s+ 1)2
K = 2
=(s)
<(s)
• We see neutral stability at K = 2. The system is stable for K < 2 and
unstable for K > 2.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–21
• Recall that a point is on the root locus if |K G(s)| = 1 and6 G(s) = −180◦.
• If system is neutrally stable, jω-axis will have a point (points) where
|K G( jω)| = 1 and 6 G( jω) = −180◦.• Consider the Bode plot of
K G(s). . .
• A neutral-stability condition from
Bode plot is: |K G( jωo)| = 1 AND6 K G( jωo) = −180◦ at the same
frequency ωo.
• In this case, increasing
K →instability ➠ |K G( jω)| < 1
at 6 K G( jω) = −180◦ =stability.
• In some cases, decreasing
K →instability ➠ |K G( jω)| > 1
at 6 K G( jω) = −180◦ =stability.
10−2
10−1
100
101
−80
−60
−40
−20
0
20
40
10−2
10−1
100
101
−270
−240
−210
−180
−150
−120
−90
K = 2K = 10
K = 0.1
KEY POINT: We can find neutral stability point on Bode plot, but don’t
(yet) have a way of determining if the system is stable or not. Nyquist
found a frequency-domain method to do so.
Nyquist Stability
• Poles of closed-loop transfer function in RHP—the system is unstable.
• Nyquist found way to count closed-loop poles in RHP.
• If count is greater than zero, system is unstable.
• Idea:
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–22
– First, find a way to count closed-loop poles inside a contour.
– Second, make the contour equal to the RHP.
• Counting is related to complex functional mapping.
Interlude: Complex Functional Mapping
• Nyquist technique is a graphical method to determine system stability,
regions of stability and MARGINS of stability.
• Involves graphing complex functions of s as a polar plot.
EXAMPLE : Plotting f (x), a real function of a real variable x.
x
f (x)
• This can be done.
EXAMPLE : Plotting F(s), a complex function of a complex variable s.
?
s
F(s)
NO! This is wrong!
• Must draw mapping of points or lines from s-plane to F(s)-plane.
s0
F(s0)=(F)
<(F)
s F(s)jω
σ
mapping
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–23
EXAMPLE : F(s) = 2s+ 1 . . . “map the four points: A, B, C, D”
A
BC
D
1−1
j
− j
=(s)
<(s)
EXAMPLE : Map a square contour (closed path) by F(s) = s
s+ 2.
A
BC
D
1−1
j
− j
F(A)
F(B)
F(C)
F(D)
1−1
j
− j
=(s)
<(s)
FORESHADOWING: By drawing maps of a specific contour, using a
mapping function related to the plant open-loop frequency-response,
we will be able to determine closed-loop stability of systems.
Mapping Function: Poles of the Function
• When we map a contour containing (encircling) poles and zeros of
the mapping function, this map will give us information about how
many poles and zeros are encircled by the contour.
• Practice drawing maps when we know poles and zeros.
• Evaluate G(s)|s=so.
G(so) = |Ev|ejα
α =∑
6 (zeros)−∑
6 (poles).
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–24
EXAMPLE :
<(s)
=(s)c1
F(c1)
α
• In this example, there are no zeros or poles inside the contour. The
phase α increases and decreases, but never undergoes a net change
of 360◦ (does not encircle the origin).
EXAMPLE :
<(s)
=(s)c2
F(c2)
α
• One pole inside contour. Resulting map undergoes 360◦ net phase
change. (Encircles the origin).
EXAMPLE :
<(s)
=(s)c3
F(c3)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–25
• In this example, there are two poles inside the contour, and the map
encircles the origin twice.
• These examples give heuristic evidence of the general rule: Cauchy’s
theorem
“Let F(s) be the ratio of two polynomials in s. Let the closed
curve C in the s-plane be mapped into the complex plane
through the mapping F(s). If the curve C does not pass through
any zeros or poles of F(s) as it is traversed in the CW direction,
the corresponding map in the F(s)-plane encircles the origin
N = Z − P times in the CW direction,” whereZ = #of zeros of F(s)in C,
P = #of poles of F(s) in C.
• Consider the following feedback system:
G(s)D(s)
H (s)
y(t)r (t)
T(s) = D(s)G(s)
1+ D(s)G(s)H(s).
• For closed-loop stability, no poles of T(s)
in RHP.
– No zeros of 1+ D(s)G(s)H(s) in RHP.
– Let F(s) = 1+ D(s)G(s)H(s).
– Count zeros in RHP using Cauchy
theorem! (Contour=entire RHP).
=(s)
<(s)
R→∞
• The Nyquist criterion simplifies Cauchy’s criterion for feedback
systems of the above form.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–26
• Cauchy: F(s) = 1+ D(s)G(s)H(s). N = # of encirclements of origin.
• Nyquist: F(s) = D(s)G(s)H(s). N = # of encirclements of −1.
<(s)
=(s) Cauchy
<(s)
=(s) Nyquist
• Simple? YES!!!
• Think of Nyquist path as four parts:
I. Origin. Sometimes a special case (later
examples).
II. + jω-axis. FREQUENCY-response of
O.L. system! Just plot it as a polar plot.
III. For physical systems=0.
IV. Complex conjugate of II.
=(s)
<(s)I
IIIII
IV
• So, for most physical systems, the Nyquist plot, used to determine
CLOSED-LOOP stability, is merely a polar plot of LOOP frequency
response D( jω)G( jω)H( jω).
• We don’t even need a mathematical model of the system. Measured
data of G( jω) combined with our known D( jω) and H( jω) are
enough to determine closed-loop stability.
Lecture notes prepared by Dr. Gregory L. Plett
Nyquist Plots/Nyquist Stability Criterion
+_
Y s( )R s( ) K Gp s( )
Y s( )R s( )
=KGp s( )
1 KGp s( )} Closed loop TF
∆ s( ) = 1 KGp s( ) } Denominator Form for Nyquist Analysis
1) Plot Nyquist Plot (i.e., a Polar Plot) for Im K Gp. jω( ) versus Re K Gp
. jω( )using the Nyquist contour. (Assume K = 1)
2) Apply the Nyquist Criterion to the Nyquist Plot and then determine the stability of the closed-loop system.
Nyquist Criterion
P0 denotes the number of poles of Gp s( ) inside s-plane contour.
1801 −∠N denotes the net number CW encirclements of the point
If the contour in the s-plane is CW, then CW is the positive direction.
1=⇒ N 1−=⇒ Ni.e., 1 CW 1 CCW
If the contour in the s-plane is CCW, then CCW is the positive direction.
1=⇒ N 1−=⇒ Ni.e., 1 CCW 1 CW
Zc denotes the number of closed-loop poles inside the s-plane contour.
Zc N P0 } Formula for calculation purposes
Re{s}
Im {s}
R∞→R
R
Example Nyquist Contour
Draw the Nyquist Plot for H s( )1
s 1for the following s-plane contour.
Step 1) Let s jω H j ω.( )1
j ω. 1
Step 2) Plot a pole/zero plot for H(s) on the s-plane contour picture and include measurement scheme to the j ω - axis along with the necessary critical points.
Step 3) Enter a magnitude/phase table entry for each critical point.
Re{s}
Im {s}
A
B
C-1
κβ
rmag
θPhasePoint
A 1 0
B 0 90
C 0 0
H jω( )1
jω 1r
1
κ
Angle H jω( )( ) Angle jω 1( ) θ βStep 4) Use critical points to draw Nyquist Plot.
Step 5) Nyquist plot is symmetric about real axis. Draw other half.
Re{H(jω )}
Im{H(jω )}
B,C A
rθ
Draw a Polarplot on a rectangularcoordinatesystem
}
Example
Re{s}
Im{s}
R
ε
∞→R0→ε
Nyquist Contour
Draw the Nyquist Plot for H s( )1
s s 1( )for the following s-plane contour.
Step 1) Let s jω H j ω.( )1
jω j ω. 1( )
Step 2) Plot a pole/zero plot for H(s) on the s-plane contour
picture and include measurement scheme to the jω axis
along with the necessary critical points.
Step 3) Enter a magnitude/phase table entry for each critical point.
Re{s}
Im{s}
AB
C
D-1
rmag
θPhasePoint
∞A 0
∞B 90"Blow-up"
Re{s}
Im {s}
A
B
90 o
ε
C 0 180
D 0 0
H jω( )1
jω jω 1.
Angle H jω( )( ) Angle jω( ) Angle jω 1( )
Re{H(jω)}
Im{H(jω)}
B
C,D-1
A
rθ
∞=r
Step 4) Use critical points to draw Nyquist Plot.
Step 5) Nyquist plot is symmetric about real axis. Draw other half.
Example - Determine stability with Nyquist Plot
R s( )+
_
Y s( )K Gp s( ) Gp s( )
1s s 1( ). s 10( ).
Re{s}
Im{s}
R
ε
∞→R0→ε
Use Nyquist Plot, Contour and Criterion to discuss quantitatively how the control gain K affectsclosed-loop stability.
Nyquist Contour
Closed LoopTransfer Function
Y s( )R s( )
K Gp. s( )
1 K Gp. s( )
}
Nyquist Form for the denominator
∆ s( ) 1 K1
s s 1( ). s 10( ).. }
Step 1) Let s jω K Gp. jω( )
K
jω( ) jω 1( ). jω 10( ). } Assume K = 1
Step 2) Plot a pole/zero plot for Gp s( ) on the s-plane contour
picture and include measurement scheme to the jω axis
Re{s}
Im{s}
AB
C
D-1-10
along with the necessary critical points.
Step 3) Enter a magnitude/phase table entry for each critical point.
r θpoint mag phase
A ∞ 0"Blow-up"
Re{s}
Im {s}
A
B
90 o
ε
B ∞ 90
C 0 270
D 0 0
Gp jω( )1
jω jω 1. jω 10.
Angle Gp jω( ) Angle jω( ) Angle jω 1( ) Angle jω 10( )
Step 4) Use critical points to draw Nyquist Plot. r θStep 5) Nyquist plot is symmetric about real axis. Draw other half. point mag phase
A ∞ 0
B ∞ 90
Re{Gp(jω )}
Im{Gp(jω )}
B
C,D A
rθ
∞=r
C 0 270
D 0 0
Nyquist Plot withK = 1}
Re{KGp(jω)}
Im{KGp(jω)}
B
C,D-1
A
rθ
∞=rLarger K
Nyquist Plot fordifferent valuesof K}
As K is increased, the shape of the Nyquist plot does not change because K is a real number(i.e., K only affects the magnitude (size); K does NOT affect the phase (shape))
Re{KGp(jω)}
Im{KGp(jω)}
B
C,D-1
A
rθ
∞=r
Nyquist Contour
Re{s}
Im{s}
-1-10
CW +CCW -
Nyquist Criterion
1) Find P0 => P0 0 ( Number of poles of Gp s( ) inside the contour)
2) Determine the sign notation for the encirclements.
Contour is CW so, CW encirclements are positive and CCW encirclements are negative
3) Find N (i.e., the number of encirclements of (-1,0) for different values of K
Number of closed looppoles inside the contourAlso compute Zc Zc N P0 }
N Zc Stability
Nyquist Criteriontablesmall K 0 0 Yes }
big K 2 2 No
4) Understanding the above table:
For small K, no closed loop poles are inside the s-plane contour. From the contour,we can see that this means that for small K the closed loop system is stable
For big K, two closed loop poles are inside the s-plane contour; hence, for big K,the closed loop system is unstable
Root Locus agrees with the Nyquist Criterion
-12 -10 -8 -6 -4 -2 0 2 4-15
-10
-5
0
5
10
15
Real Axis
Imag
Axi
s
Gp s( )1
s s 1( ). s 10( ).
Root Locus for} ∆ s( ) 1 K Gp
. s( )
small K: closed loop system is stable
big K: closed loop system is unstable
N Zc Stability
Nyquist Criteriontablesmall K 0 0 Yes }
big K 2 2 No
Re{s}
Im{s}
R∞→R
R
Example - Clockwise Contour
+_
Nyquist ContourR s( ) Y s( )
K H s( )
Use Nyquist Plot, Contour and Criterion to discuss quantitatively how the control gain K affectsclosed-loop stability.
H s( )s 1s 1
Closed LoopTransfer Function
We can see from the root locusthat the system goes unstable
Y s( )R s( )
K H. s( )1 K H. s( )
}
-2 -1.5 -1 -0.5 0 0.5 1 1.5 2-1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
1
Real Axis
Imag
Axi
s
Nyquist Form for the denominator
∆ s( ) 1 Ks 1s 1. }
Step 1) Let s jω
AssumeK = 1K H s( ). K jω 1( ).
jω 1( ) }
Step 2) Plot a pole/zero plot for H s( ) on the s-plane contour
picture and include measurement scheme to the jω axis
Step 3) Enter a magnitude/phase table entry for each critical point.
Re{s}
Im {s}
A
B
C-1 1
Nyquist Contourr θ
point mag phase
A 1 180
B 1 0
C 1 0
H jω( )jω 1
jω 1Angle H jω( )( ) Angle jω 1( ) Angle jω 1( )
Step 4) Use critical points to draw Nyquist Plot.r θ
Step 5) Nyquist plot is symmetric about real axis. Draw other half. point mag phase
Re{H(jω)}
Im{H(jω)}
B,C-1
A
rθ
A 1 180
B 1 0K 1
C 1 0
Re{s}
Im{s}
A
B
C-1 1
CW +CCW -
Nyquist Contour
As K is decreased below 1, the Nyquist Plot intersects the Re{j ω } axis before -1
As K is increased beyond 1, the Nyquist Plotintersects the Re{j ω } axis beyond -1
Nyquist Criterion
1) Find P0 => P0 0 ( Number of poles of H s( ) inside the contour)
2) Determine the sign notation for the encirclements.
Contour is CW so, CW encirclements are positive and CCW encirclements are negative
3) Find N (i.e., the number of encirclements of (-1,0) for different values of K
Also compute Zc Zc N P0 Number of closed looppoles inside the contour}
N Zc Stability
Nyquist Criteriontablesmall K 0 0 Yes }
big K 1 1 No
4) Understanding the above table:
For small K, no closed loop pole is inside the s-plane contour. From the contour,we can see that this means that for small K the closed loop system is stable
For big K, one closed loop pole is inside the s-plane contour; hence, for big K,the closed loop system is unstable
Same Example - Counterclockwise Contour
Re{s}
Im {s}
∞→RR
+_
R s( ) Y s( )K H s( )
Nyquist Contour
Use Nyquist Plot, Contour and Criterion to discuss quantitatively how the control gain K affectsclosed-loop stability. H s( )
s 1s 1
Step 1) Let s jω
AssumeK = 1K H s( ). K jω 1( ).
jω 1( ) }
Step 2) Plot a pole/zero plot for H s( ) on the s-plane contour
picture and include measurement scheme to the jω axis
Step 3) Enter a magnitude/phase table entry for each critical point.
Re{s}
Im {s}
A
B
C -1 1
r θpoint mag phase Nyquist
ContourA 1 180
B 1 0
C 1 0
H jω( )jω 1
jω 1
Angle H jω( )( ) Angle jω 1( ) Angle jω 1( )
Note: Numbers in the table are exactly the same as before
Step 4) Use critical points to draw Nyquist Plot. r θStep 5) Nyquist plot is symmetric about real axis. Draw other half.
point mag phase
Re{H(jω)}
Im{H(jω)}
B,C-1
A
rθ
A 1 180
B 1 0K 1
C 1 0
Re{s}
Im{s}
-1 1
CW -CCW +
Nyquist Contour
As K is decreased below 1, the Nyquist Plot intersects the Re{j ω } axis before -1
As K is increased beyond 1, the Nyquist Plotintersects the Re{j ω } axis beyond -1
Nyquist Criterion
1) Find P0 => P0 1 ( Number of poles of H s( ) inside the contour)
2) Determine the sign notation for the encirclements.
Contour is CCW so, CW encirclements are negative and CCW encirclements are positive
3) Find N (i.e., the number of encirclements of (-1,0) for different values of K
Also compute Zc Zc N P0 Number of closed looppoles inside the contour}
N Zc Stability
small K 0 1 Yes Nyquist Criteriontable}
big K 1 0 No
4) Understanding the above table:
For small K, one closed loop pole is inside the s-plane contour. From the contour,we can see that this means that for small K the closed loop system is stable
For big K, no closed loop pole is inside the s-plane contour; hence, for big K,the closed loop system is unstable
Re{s}
Im{s}
R
ε
∞→R0→ε
Example - Clockwise Contour
+_
Nyquist ContourR s( ) Y s( )
K H s( )
Use Nyquist Plot, Contour and Criterion to discuss quantitatively how the control gain K affectsclosed-loop stability.
H s( )1
s s 1( ). s 2( ).
Closed LoopTransfer Function
Y s( )R s( )
K H. s( )1 K H. s( )
}
Nyquist Form for the denominator
∆ s( ) 1 K1
s s 1( ). s 2( ).. }
AssumeK = 1Step 1) Let s jω K H s( ). K
jω( ) jω 1( ). jω 2( ). }
Step 2) Plot a pole/zero plot for H s( ) on the s-plane contour
picture and include measurement scheme to the jω axis
Re{s}
Im{s}
AB
C
D-1-2
Step 3) Enter a magnitude/phase table entry for each critical point. Nyquist
Contourr θpoint mag phase
A ∞ 0
B ∞ 90 "Blow-up"
Re{s}
Im {s}
A
B
90 o
ε
C 0 270
D 0 0
H jω( )1
jω jω 1. jω 2.
Angle H jω( )( ) Angle jω( ) Angle jω 1( ) Angle jω 2( )
Step 4) Use critical points to draw Nyquist Plot. r θStep 5) Nyquist plot is symmetric about real axis. Draw other half. point mag phase
Re{Gp(jω)}
Im{Gp(jω)}
B
C,D A
rθ
∞=r
-1
A ∞ 0K 1
B ∞ 90
C 0 270
D 0 0
Re{s}
Im{s}
AB
C
D-1-2
CW +CCW -
Nyquist Contour
Nyquist Criterion
1) Find P0 => P0 0 ( Number of poles of H s( ) inside the contour)
2) Determine the sign notation for the encirclements.
Contour is CW so, CW encirclements are positive and CCW encirclements are negative
3) Find N (i.e., the number of encirclements of (-1,0) for different values of K
Also compute Zc Zc N P0 Number of closed looppoles inside the contour}
N Zc Stability
Nyquist Criteriontablesmall K 0 0 Yes }
big K 2 2 No
4) Understanding the above table:
For small K, no closed loop pole is inside the s-plane contour. From the contour,we can see that this means that for small K the closed loop system is stable
For big K, two closed loop poles are inside the s-plane contour; hence, for big K,the closed loop system is unstable
Re{s}
Im {s}
R
∞→R0→ε
ε
Same Example - Counterclockwise Contour
+_
R s( ) Y s( ) Nyquist ContourK H s( )
Use Nyquist Plot, Contour and Criterion to discuss quantitatively how the control gain K affectsclosed-loop stability. H s( )
1s s 1( ). s 2( ).
Step 1) Let s jω
AssumeK = 1K H s( ). K
jω( ) jω 1( ). jω 2( ). }Step 2) Plot a pole/zero plot for H s( ) on the s-plane contour
picture and include measurement scheme to the
Re{s}
Im {s}
-1-2A
B
C
D
jω axis
Step 3) Enter a magnitude/phase table entry for each critical point.
NyquistContour
r θpoint mag phase
A ∞ 0
B ∞ 90 "Blow-up"
Re{s}
Im {s}
A
B
90 o
ε
C 0 270
D 0 540
H jω( )1
jω jω 1. jω 2.
Angle H jω( )( ) Angle jω( ) Angle jω 1( ) Angle jω 2( )
Step 4) Use critical points to draw Nyquist Plot. r θStep 5) Nyquist plot is symmetric about real axis. Draw other half. point mag phase
Re{Gp(jω)}
Im{Gp(jω)}
B
C,D A
rθ
∞=r
-1
A ∞ 0
B ∞ 90K 1
C 0 270
D 0 540
Re{s}
Im {s}
-1-2
CW -CCW + Nyquist
Contour
Nyquist Criterion
1) Find P0 => P0 3 ( Number of poles of H s( ) inside the contour)
2) Determine the sign notation for the encirclements.
Contour is CCW so, CW encirclements are negative and CCW encirclements are positive
3) Find N (i.e., the number of encirclements of (-1,0) for different values of K
Number of closed looppoles inside the contourAlso compute Zc Zc N P0 }
N Zc Stability
small K 0 3 Yes Nyquist Criteriontable}
big K 2 1 No
4) Understanding the above table:
For small K, all three closed loop poles are inside the s-plane contour. From the contour,we can see that this means that for small K the closed loop system is stable
For big K, only one closed loop pole is inside the s-plane contour; hence, for big K,the closed loop system is unstable
Example: Using Nyquist Plots to Draw Root Loci
Given the Nyquist Plot and the Transfer Function draw the Root Locus
�B
Y s( )R s( ) K H s( )
H s( )s 2( ) s 4( ).
s2 s 1( ). s 3( ). s 5( ).
-1
Re{H(jω)}
Im{H(jω)}
rθ
∞=r
Stable region
-b -1/a
K 1
Re{s}
Im{s}
R
ε
∞→R
0→ε
Nyquist ContourThe Nyquist
Plot is given}
-7 -6 -5 -4 -3 -2 -1 0 1 2-5
-4
-3
-2
-1
0
1
2
3
4
5
Real Axis
Imag
Axi
s
This is how you might betempted to draw the root locus without theNyquist plot
{
Does the Nyquist Plot concur ?
1) Find P0 ; the number of poles inside the contour P0 0
2) Determine the sign notation for the encirclements.
Contour is CW so, CW encirclements are positive and CCW encirclements are negative
3) Find N (i.e., the number of encirclements of (-1,0) for different values of K
Also compute Zc Zc N P0
N Zc Stability
small K 2 2 No The aboveroot locusis wrong
Nyquist Criteriontable} =>
medium K 0 0 Yes
big K 2 2 No
N Zc Stability
small K 2 2 No Nyquist Criteriontable}
medium K 0 0 Yes
big K 2 2 No
4) Understanding the above table:
For small K, two closed loop poles are inside the s-plane contour. From the contour,we can see that this means that for small K the closed loop system is unstable
For medium K, no closed loop poles are inside the s-plane contour. From the contour,we can see that this means that for medium K the closed loop system is stable
For big K, two closed loop poles are inside the s-plane contour; hence, for big K,the closed loop system is unstable
The above table assists in the Root Locus sketch
-7 -6 -5 -4 -3 -2 -1 0 1 2-5
-4
-3
-2
-1
0
1
2
3
4
5
Real Axis
Imag
Axi
s
*1K
*2K
small K
medium K
large K
}{
}
From the above root locus, we can conclude that the system is stable for
*2
*1 KKK <<
-1-b -1/a
The above result matches that of the Nyquist criterion
bK
1*1 = aK =*
2and
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–33
• The distance between the current (stable) system and an unstable
system is called a “stability margin.”
• Can have a gain margin and a phase margin.
GAIN MARGIN : Factor by which the gain is less than the neutral stability
value.
• Gain margin measures “How much can we increase the gain of the
loop transfer function L(s) = D(s)G(s)H(s) and still have a stable
system?”
• Many Nyquist plots are like this one.
Increasing loop gain magnifies the
plot.
• GM =1/(distance between origin and
place where Nyquist map crosses
real axis).
• If we increase gain, Nyquist map
“stretches” and we may encircle −1.
PM
1
GM
• For a stable system, GM > 1 (linear units) or GM > 0 dB.
PHASE MARGIN : Phase factor by which phase is greater than neutral
stability value.
• Phase margin measures “How much delay can we add to the loop
transfer function and still have a stable system?”
• PM = Angle to rotate Nyquist plot to achieve neutral stability =
intersection of Nyquist with circle of radius 1.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–34
• If we increase open-loop delay, Nyquist map “rotates” and we may
encircle −1.
• For a stable system, PM > 0◦.
IRONY: This is usually easiest to check on Bode plot, even though
derived on Nyquist plot!
• Define gain crossover as frequency where Bode magnitude is 0 dB.
• Define phase crossover as frequency where Bode phase is −180◦.
• GM = 1/(Bode gain at
phase-crossover
frequency) if Bode gain is
measured in linear units.
• GM = (− Bode gain at
phase-crossover
frequency) [dB] if Bode
gain measured in dB.
• PM = Bode phase at
gain-crossover −(−180◦).
10−2
10−1
100
101
102
−30
−20
−10
0
10
20
30
10−2
10−1
100
101
102
−270
−240
−210
−180
−150
−120
−90
Frequency, (rads/sec.)
Frequency, (rads/sec.)
Mag
nitu
deP
hase
• We can also determine stability as K changes. Instead of defining
gain crossover where |G( jω)| = 1, use the frequency where
|K G( jω)| = 1.
• You need to be careful using this test.
– It works if you apply it blindly and the system is minimum-phase.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–35
– You need to think harder if the system is nonminimum-phase.
– Nyquist is the safest bet.
PM and Performance
• A bonus of computing PM from the open-loop frequency response
graph is that it can help us predict closed-loop performance of the
system.
• PM is related to damping. Consider open-loop 2nd-order system
G(s) = ω2n
s(s+ 2ζωn)
with unity feedback,
T(s) = ω2n
s2+ 2ζωn + ω2n
.
• The relationship between PM and ζ is: (for this system)
PM = tan−1
2ζ√√
1+ 4ζ 4− 2ζ 2
• For PM ≤ 60◦, ζ ≈ PM
100.
• For this system we can also infer Mp from PM.
10 20 30 40 50 60 70 800
0.2
0.4
0.6
0.8
1Damping ratio versus PM
Phase margin
Dam
ping
ratioζ
0 10 20 30 40 50 60 70 800
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1Overshoot fraction versus PM
Phase margin
Mp,o
vers
hoot
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–36
Bode’s Gain-Phase Relationship
• “For any stable minimum-phase system (that is, one with no RHP
zeros or poles), the phase of G( jω) is uniquely related to the
magnitude of G( jω)”
• Relationship: 6 G( jωo) = 1
π
∫ ∞−∞
(d M
du
)W(u) du (in radians)
M = ln |G( jω)|u = ln
(ω
ωo
)d M
du≈ slope n of log-mag curve at ω = ωo
W(u) = weighting function = ln(coth|u|/2)
• W(u) ≈ π2
2δ(u). Using this re-
lationship, 6 G( jω) ≈ n × 90◦
if slope of Bode magnitude-
plot is constant in the decade-
neighborhood of ω. −6 −4 −2 0 2 4 60
0.5
1
1.5
2
2.5
3
3.5
4
Normalized freq. u
W(u)
• So, if 6 G( jω) ≈ −90◦ if n = −1.
• So, if 6 G( jω) ≈ −180◦ if n = −2.
KEY POINT: Want crossover |G( jω)| = 1 at a slope of about −1 for good
PM. We will soon see how to do this (design!).
Closed-Loop Frequency Response
• Most of the notes in this section have used the open-loop frequency
response to predict closed-loop behavior.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE ANALYSIS 8–37
• How about closed-loop frequency response?
T(s) = K D(s)G(s)
1+ K D(s)G(s).
• General approximations are simple to make. If,|K D( jω)G( jω)| � 1 for ω� ωc
and |K D( jω)G( jω)| � 1 for ω� ωc
where ωc is the cutoff frequency where open-loop magnitude
response crosses magnitude=1.
|T( jω)| =∣∣∣∣ K D( jω)G( jω)
1+ K D( jω)G( jω)
∣∣∣∣ ≈{
1, ω� ωc;|K D( jω)G( jω)|, ω� ωc.
• Note: ωc ≤ ωbw ≤ 2ωc.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510: Feedback Control Systems. 9–1
FREQUENCY-RESPONSE DESIGN
• The frequency-response methods we have seen so far largely tell us
about stability and stability margins of a closed-loop system based on
open-loop response.
• Now, we look at frequency-response based design methods which
primarily aim at improving stability margins.
• Also, given the relationship between PM and performance, we have
some idea of transient response as well.
• Start thinking of Bode-magnitude and Bode-phase plots as “LEGO” to
make the frequency response we want.
PD Compensation
• Compensator D(s) = K (1+ TDs).
• We have seen from root-locus that this has a stabilizing effect.
• Magnitude and phase effect:
0.1
TD
1
TD
10
TD
K
10K
0.1
TD
1
TD
10
TD
90◦
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE DESIGN 9–2
• PD controller increases phase for frequencies over ω ≈ 0.1/TD. So,
locate 1/TD < crossover so that phase margin at crossover is better.
• Problem: Magnitude response continues to increase as frequency
increases. This amplifies high-frequency sensor noise.
Lead Compensation
• Compensator D(s) = K
[T s+ 1
αT s+ 1
], α < 1.
• Approximate PD control for frequencies up to ω = 1
αT.
• Magnitude and phase effect:
1
T
1
αTωmax
K
K
α
0.1
T1
T
1
αT
10
αTωmax
φmax
• The phase contributed at frequency ω is
φ = tan−1 (Tω)− tan−1 (αTω) .
• The maximum phase is
φmax= sin−1
(1− α1+ α
)at ωmax= 1
T√α.
• To find α to add a certain phase φmax
α = 1− sin(φmax)
1+ sin(φmax).
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE DESIGN 9–3
• We can show that ωmax occurs mid-way between1
Tand
1
αTon a log
scale
log(ωmax) = log
( 1√T√αT
)= log
(1√T
)+ log
(1√αT
)
= 1
2
[log
(1
T
)+ log
(1
αT
)].
• How much can we
improve phase with a
lead network?
100
101
102
0
10
20
30
40
50
60
70
80
90
1/α
φm
ax
• If we need more phase improvement, we can use a double-lead
compensator:
D(s) = K
[T s+ 1
αT s+ 1
]2
.
• Need to compromise between good phase margin and good sensor
noise rejection at high frequency.
Design Method #1 for Lead Controllers
• Design specification include:
– Desired steady-state error.
– Desired phase margin.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE DESIGN 9–4
• Compute steady-state error of compensated system. Set equal to
desired steady-state error by computing K .
• Evaluate the PM of the uncompensated system using the value of K
from above. ωmax initially set to crossover frequency.
• Add a small amount of PM (5◦ to 12◦) to the needed phase lead.
(Lead network moves crossover point, so need to design
conservatively): Gives φmax.
• Determine α = 1− sin(φmax)
1+ sin(φmax).
• Determine T = 1
ωmax√α
.
• Iterate if necessary (choose a slightly different ωmax or φmax).
EXAMPLE : Plant G(s) = 1
s(s+ 1)
• Want steady-state error for ramp input < 0.1,
• Want overshoot Mp < 25%.
• Steady-state error
ess= lims→0
s
[1
1+ D(s)G(s)
]R(s)
= lims→0
[1
s+ D(s) 1(s+1)
]= 1
D(0)
• D(s) = K
[T s+ 1
αT s+ 1
]so D(0) = K .
• So,1
D(0)= 1
K= 0.1 . . . K = 10. This gives ωmax= 3 rads/sec.
• Overshoot spec. Mp < 25%gives PM > 45◦.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE DESIGN 9–5
• Evaluating Bode diagrams of |K G(s)| at crossover, we see we have a
phase margin of 18◦. Need about 27◦ more to meet spec.
• Note, addition of pole and zero from lead network will shift crossover
frequency somewhat. To be safe, design for added phase of 37◦
instead of 27◦.
• α = 1− sin(37)
1+ sin(37)= 0.25. T = 1√
0.25(3)= 0.667
• D(s) = 10
[2s/3+ 1
2s/12+ 1
].
10−2
10−1
100
101
102
−40
−30
−20
−10
0
10
20
30
40
50
60
10−2
10−1
100
101
102
−180
−170
−160
−150
−140
−130
−120
−110
−100
−90
ω (rad/sec)
ω (rad/sec)
Mag
nitu
deP
hase
−2 −1.5 −1 −0.5 0 0.5 1−1.5
−1
−0.5
0
0.5
1
1.5
−7 −6 −5 −4 −3 −2 −1 0 1 2−6
−4
−2
0
2
4
6
Real Axis
Real Axis
Imag
Axi
sIm
agA
xis
• Resulting PM = 44◦. Iterate if desired to meet specs.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE DESIGN 9–6
0 0.5 1 1.5 2 2.50
0.2
0.4
0.6
0.8
1
1.2
Time (sec.)
Am
plitu
deStep Response
0 0.5 1 1.5 2 2.5 30
0.5
1
1.5
2
2.5
3
Time (sec.)
Am
plitu
de
Ramp Response
• Summary of design example.
1. Determine dc-gain so that steady-state errors meet spec.
2. Select α and T to achieve an acceptable PM at crossover.
Design Method #2 for Lead Controllers
• Design specifications
– Bandwidth requirements.
– PM requirements, rather than ess and PM requirements.
• Choose open-loop crossover frequency ωc to be half the desired
closed-loop bandwidth.
• EvaluateKG = |G( jωc)|, φG = 6 G( jωc).
• Compute phase lead requiredφmax= PM− φG − 180.
• Compute α
α = 1− sin(φmax)
1+ sin(φmax).
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE DESIGN 9–7
• Compute T
T = 1√αωc
.
• Compensation is
D(s) = K
[T s+ 1
αT s+ 1
]
|D( jωc)| = K
√1α+ 1
α + 1
= K
√α√α
√1α+ 1
α + 1
= K√α.
• Open-loop gain at ωc is designed to be 1:|D( jωc)||G( jωc)| = 1
K√α|G( jωc)| = 1
K =√α
KG.
• Our design is now complete.
EXAMPLE : Desired gain crossover frequency of 10 radians per second.
Desired PM of 60◦. G(s) = 1
s(s+ 1).
• KG =∣∣∣∣ 1
j 10( j 10+ 1)
∣∣∣∣ = 0.01, φG = −174.3◦.
• φmax= 60◦ + 174.3◦ − 180◦ = 54.3◦.
• α = 1− sin(φmax)
1+ sin(φmax)= 0.1037.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE DESIGN 9–8
• T = 1√α10= 0.3105.
• KD =√α
KG= 32.36.
• Matlab code to automate this procedure:% [K,T,alpha]=bod_lead(np,dp,wc,PM) computes the lead compensation of the plant np/dp to have% phase margin PM at crossover frequency wc. e.g., [K,T,alpha]=bod_lead([1],[1 1 0],5,60);function [K,T,alpha]=bod_lead(np,dp,wc,PM)
% first compute the plant response at wc.[magc,phc]=bode(np,dp,wc);
% now, compute the needed phase lead at wc and convert to radians for use with "sine"phir=(-180+PM-phc)*pi/180;
if abs(phir)>pi/2,disp(’A simple phase lead/lag cannot change the phase by more than +/- 90 degrees.’);error(’Aborting.’);
end;
% the required alpha isalpha=(1-sin(phir))/(1+sin(phir));
% compute the needed gain change K and the time constant T.T=1/(wc*sqrt(alpha)); K=sqrt(alpha)/magc;
% compute the new open-loop system by convolving the plant polynomials with the compensator.nol=conv(np,K*[T 1]); dol=conv(dp,[alpha*T 1]);
% check the solution by plotting the Bode plot for the new open-loop polynomials. Include the frequency w=1% to get the full resonance response to show the gain margin. Also, plot the uncompensated Bode response.w=logspace(-2,1)*wc; w(34)=wc; clf;[mag1,ph1]=bode(np,dp,w); [mag2,ph2]=bode(nol,dol,w);subplot(211);semilogx(w/wc,20*log10(mag1),’–’); hold on; semilogx(w/wc,20*log10(mag2)); grid; plot(w/wc,0*w+1,’g-’);ylabel(’Magnitude (dB)’); title(’Phase-lead design (uncompensated=dashed; compensated=solid)’);
subplot(212);semilogx(w/wc,ph1,’–’); hold on; semilogx(w/wc,ph2); grid; plot(w/wc,0*w-180+PM,’g-’);ylabel(’Phase’); xlabel(’Frequency/wc (i.e., "1"=wc)’);
• Matlab results:
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE DESIGN 9–9
0.01 0.1 1 10 −60
−40
−20
0
20
40M
agni
tude
(dB
)Phase−lead design (uncompensated=dashed; compensated=solid)
0.01 0.1 1 10 −180
−150
−120
−90
Pha
se
Frequency/wc (i.e., "1"=wc)
PI Compensation
• In many problems it is important to keep bandwidth low, and also
reduce steady-state error.
• PI compensation used here.
D(s) = K
[1+ 1
TI s
].
K
10K
ωTI 10ωTI
−90◦
0.1ωTI ωTI 10ωTI
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE DESIGN 9–10
• Infinite gain at zero frequency
– Reduces steady-state error to step, ramp, etc.
– But also has integrator “anti-windup” problems.
• Adds phase below breakpoint.
– We want to kep breakpoint frequency very low to keep from
destabilizing system.1
TI� ωc.
Lag Compensation
• Approximates PI, but without integrator overflow.
D(s) = α[
T s+ 1
αT s+ 1
]α > 1.
• Primary objective of lag is to add 20 log10α dB gain to low frequencies
without changing PM.
1
α
1
αT1
T
−90◦
1
αT1
T
• Steady-state response improves with little effect on transient
response.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE DESIGN 9–11
Typical process
• Assumption is that we need to modify (increase) the dc-gain of the
loop transfer function.
– If we apply only a gain, then ωc typically increases and the phase
margin decreases. NOT GOOD.
– Instead, use lag compensation to lower high-frequency gain.
• Assume plant has gain K (adjustable), or that we insert a gain K into
the system. Adjust the open-loop gain K to meet phase margin
requirements (plus about 5◦ slop factor) at crossover without
additional compensation.
• Draw Bode diagram of system using the gain K from above. Evaluate
low-frequency gain.
• Determine α to meet low-frequency gain requirements.
• Choose one corner frequency ω = 1
T(the zero) to be about one
decade below crossover frequency. (This way, the phase added by
the lag compensator will minimally affect PM. The phase added at
crossover will be about 5◦, hence our previous slop factor).
• The other corner frequency is at ω = 1
αT.
• Iterate design to meet spec.
EXAMPLE :
G(s) = K(1
0.5s+ 1)(s+ 1)
(12s+ 1
).• Design compensator for PM ≥ 25◦, K p = 9.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE DESIGN 9–12
1. Set K = 4.5 for PM = 30◦. This gives crossover at ωc ≈ 1.2
rads/sec.
2. Low-frequency gain now = 4.5.
3. Should be raised by a factor of 2 to get K p = 9. So, α = 2.
4. Choose corner frequency at ω = 0.2 rads/sec.1
T= 0.2, or T = 5.
5. We then know other corner frequency ω = 1
αT= 1
10.
D(s) = 2
[5s+ 1
10s+ 1
].
0 5 10 15 20 250
0.2
0.4
0.6
0.8
1
1.2
1.4From: U(1)
To:
Y(1
)
Time (sec.)
Am
plitu
de
Step Response
10−2
10−1
100
101
102
−40
−30
−20
−10
0
10
20
10−2
10−1
100
101
102
−270
−240
−210
−180
−150
−120
−90
−60
−30
0
ω (rad/sec)
ω (rad/sec)
Mag
nitu
deP
hase
−3.5 −3 −2.5 −2 −1.5 −1 −0.5 0 0.5 1−2
−1
0
1
2
−3.5 −3 −2.5 −2 −1.5 −1 −0.5 0 0.5 1−2
−1
0
1
2
Real Axis
Real Axis
Imag
Axi
sIm
agA
xis
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE DESIGN 9–13
• Many other aproaches exist.
• Typically require both lead and lag to meet specs.
• Many “recipes” . . . most require iteration.
Design Based on Sensitivity
• Develop conditions on Bode plot of loop transfer function
D(s)G(s)H(s) that will ensure good performance with respect to
sensitivity, steady-state errors and sensor noise.
• Steady-state performance = lower bound on very-low-frequency gain
of system.
• Sensor noise = upper bound on high-frequency gain.
• Unmodeled system resonance:
10−1
100
101
102
−100
−80
−60
−40
−20
0
Frequency
Mag
nitu
de
• Magnitude may go over 1. Can cause instability. Must ensure that
high-frequency gain is low so magnitude does not go over 1.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE DESIGN 9–14
sens
itivi
ty b
ound
ary
Sen
sor
nois
e an
d pl
ant
Ste
ady-
stat
eE
rror
Bou
ndar
y
Mag
nitu
deof
D(s)G(s)
Sensitivity Functions
• Consider
r (t) y(t)
v(t)
w(t)
D(s) G(s)
Y(s) = W(s)+ G(s)D(s)[ R(s)− V(s)− Y(s)]
[1+ G(s)D(s)] Y(s) = W(s)+ G(s)D(s)[ R(s)− V(s)]
or, Y(s) = 1
1+ G(s)D(s)W(s)+ G(s)D(s)
1+ G(s)D(s)[ R(s)− V(s)].
• Tracking error4= R(s)− Y(s)
E(s) = R(s)− 1
1+ G(s)D(s)W(s)− G(s)D(s)
1+ G(s)D(s)[ R(s)− V(s)]
= 1
1+ G(s)D(s)[ R(s)−W(s)] − 1
1+ G(s)D(s)G(s)D(s)V(s)
• Define the “sensitivity function” S(s) to be
S(s)4= 1
1+ G(s)D(s)
which is the transfer function from r (t) to e(t) and from w(t) to −e(t).
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE DESIGN 9–15
• The “complementary sensitivity function” T(s) = 1− S(s)
1− S(s) = G(s)D(s)
1+ G(s)D(s)= T(s)
which is the transfer function from r (t) to y(t).
• If V = 0, thenY(s) = S(s)W(s)+ T(s)R(s)
andE(s) = S(s)[ R(s)−W(s)].
• The sensitivity function here is related to the one we saw several
weeks ago
STG =
∂T
∂G· G
T
= 1+ D(s)G(s)− D(s)G(s)
[1+ D(s)G(s)]2· G(s)[1+ D(s)G(s)]
G(s)
= 1
1+ D(s)G(s)= S(s)
So S(s) is equal to the sensitivity of the transfer function to plant
perturbations.
• Recall that T(s)+ S(s) = 1
– Regardless of D(s)
– Regardless of G(s)
• We would like T(s) = 1. Then S(s) = 0; Disturbance is cancelled,
design is insensitive to plant perturbation, steady-state error ≈ 0.
• BUT, for physical plants, G(s)→ 0 for high frequencies. Furthermore,
the transfer function between V(s) and E(s) is T(s). To reduce high
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE DESIGN 9–16
frequency noise effects, T(s)→ 0 as frequency increases, and
S(s) ≈ 1.
• Typical sensitivity and complementary sensitivity (closed-loop
transfer) functions are:
Perf
orm
ance
Spe
c.
Stab
ility
Spe
c.
|S(jω)|
|T(jω)|
• Another view of sensitivity:
D( jω)G( jω)
=(s)
<(s)1+ D( jω)G( jω)
• So, 1+ D( jω)G( jω) is the distance between the Nyquist curve to the
−1 point. S( jω) = 1
1+ D( jω)G( jω).
• A large value of |S( jω)| indicates a Nyquist plot that is nearly
unstable.
• The maximum value of |S| is a more accurate measure of stability
than PM or GM. So, we want max|S( jω)| small. How small?
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE DESIGN 9–17
• Note: E( jω) = S( jω)R( jω)|E( jω)| = |S( jω)R( jω)| ≤ |S( jω)||R( jω)|
put a frequency-based error bound|E( jω)| ≤ |S( jω)||R( jω)| ≤ eb
• Let W1(ω) = R( jω)/eb. Then,
|S( jω)| ≤ 1
W1(ω).
EXAMPLE : A unity-feedback system is to have an error less than 0.005
for all unity-amplitude sinusoids below 500 rads/sec. Draw |W1( jω)|for this design.
• Spectrum of R( jω) is unity for 0≤ ω ≤ 500. Since eb = 0.005,
W1(ω) = 1
0.005= 200 for this range.
0 500 1000 1500 20000
50
100
150
200
Frequency (rads/sec.)
Mag
nitu
de
• We can translate this requirement into a loop-gain requirement. When
errors are small, loop gain is high, so |S( jω)| ≈ 1
|D( jω)G( jω)| and
1
|D( jω)G( jω)| ≤1
W1(ω)
or, |D( jω)G( jω)| ≥ W1(ω)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE DESIGN 9–18
Robustness
• Typically there is some uncertainty in the plant transfer function. We
want our design to be robustly stable, and to robustly give good
performance (often called H∞ design).
• Uncertainty often expressed as multiplicativeG( jω) = Gn( jω)[1+W2( jω)1( jω)]
• W2(ω) is a function of frequency expressing uncertainty, or size of
possible error in transfer function as a function of frequency.
• W2(ω) is almost always small at low frequencies.
• W2(ω) increases at high frequencies as unmodeled structural
flexibility is common.
• “Typical W2”
0 500 1000 1500 20000
100
200
300
400
500
600
700
Frequency (rads/sec.)
Mag
nitu
de
• 1( jω) expresses uncertainty in phase. The only restriction is|1( jω)| ≤ 1.
Design
• Assume design for nominal plant Gn(s) is stable. Thus,
1+ D( jω)Gn( jω) 6= 0∀ω.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE DESIGN 9–19
• For robust stability,1+ D( jω)G( jω) 6= 0∀ω
1+ D( jω)Gn( jω)[1+W2(ω)1( jω)] 6= 0
1+ D( jω)Gn( jω)
1+ D( jω)Gn( jω)︸ ︷︷ ︸6=0 by assumption
+ D( jω)Gn( jω)
1+ D( jω)Gn( jω)W2(ω)1( jω) 6= 0
recall, T( jω) = D( jω)Gn( jω)
1+ D( jω)Gn( jω),
[1+ T( jω)W2(ω)1( jω)] 6= 0
so, |T( jω)W2(ω)1( jω)| < 1
or, |T( jω)|W2(ω) < 1.
• For high freqencies D( jω)Gn( jω) is typically small, so
T( jω) ≈ D( jω)Gn( jω). Thus|D( jω)Gn( jω)|W2(ω) < 1
|D( jω)Gn( jω)| < 1
W2(ω).
EXAMPLE : The uncertainty in a plant model is described by a function
W2(ω) which is zero until ω = 3000rads/sec, and increases linearly
from there to a value of 100at ω = 10,000 rads/sec. It remains
constant at 100 for higher frequencies. Plot constraint on
D( jω)Gn( jω).
• Where W2(ω) = 0, there is no constraint on the magnitude of the loop
gain. Above ω = 3000, 1/W2(ω) is a hyperbola from∞ to 0.01 at
10,000.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, FREQUENCY-RESPONSE DESIGN 9–20
0 2000 4000 6000 8000 100000
1
2
3
4
5
6
7
8
Frequency (rads/sec.)
Mag
nitu
de
• Combining W1(ω) and W2(ω) requirements,
0 2000 4000 6000 8000 10000−80
−60
−40
−20
0
20
40
60
80
100
Frequency (rads/sec.)
Log
Mag
nitu
de
• Limitation: Crossover needs to be with slope ≈ −1. So, cannot make
constraints too strict, or design will be unstable.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510: Feedback Control Systems. 10–1
STATE-SPACE MODELS
1. What are they?
2. Why use them?
3. How do we formulate them?
4. How are they related to the transfer functions we have used already?
What are They?
• Representation of the dynamics of an Nth-order system as a
first-order differential equation in an N-vector called the STATE. ➠ N
first-order equations.
• Classic example: 2nd-order E.O.M.
m f (t)
y(t)
k
b
m..y(t) = f (t)− b
.y(t)− ky(t)
➠..y(t) = f (t)− b
.y(t)− ky(t)
m.
• Define a state vector
Ex(t) =[
y(t).y(t)
]
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–2
then,.Ex(t) =
[ .y(t)..y(t)
]= .
y(t)
− k
my(t)− b
m
.y(t)+ 1
mf (t)
.
• We can write this in the form.Ex(t) = AEx(t)+ B f (t), where A and B are
constant matrices.
A =
, B =
.
• Complete the picture by setting y(t) as a function of Ex(t). The general
form is:y(t) = CEx(t)+ D f (t)
where C and D are constant matrices.
C =[ ]
, D =[ ]
• Fundamental form for linear state-space model:.Ex(t) = AEx(t)+ Bu(t)
y(t) = CEx(t)+ Du(t).
where u(t) is the input, Ex(t) is the “state”, A, B, C, D are constant
matrices. We usually assume that Ex(t) is a vector, so simplify notation
by simply using x(t).
Why Use Them?
• Transfer functions provide: u→ G(s)→ y. That is, only an
input-output mapping. State variables provide easy access to what is
going on inside the system (homogeneous dynamics).
• Convenient way to express E.O.M. The matrix format is great for
computers.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–3
• Allows new analysis and synthesis tools.
• GREAT for multi-input, multi-output systems. These are very hard to
work with transfer functions.
How do we Formulate Them?
• A variety of ways. e.g., from E.O.M.
• Also from transfer functions.
• Three cases:
1] Transfer function is only made up of poles.
G(s) = 1
s3+ a1s2+ a2s+ a3= Y(s)
U (s)
➠...y(t)+ a1
..y(t)+ a2
.y(t)+ a3y(t) = u(t)
– Choose output and derivatives as the state.
x(t) =[ ..
y(t).y(t) y(t)
]T. Then
.x(t) =
...y(t)..y(t).y(t)
=
−a1 −a2 −a3
1 0 0
0 1 0
..y(t).y(t)
y(t)
+
1
0
0
u(t)
y(t) =[
0 0 1]
x(t)+[
0]
u(t).
2] Transfer function has poles and zeros, but is strictly proper.
G(s) = b1s2+ b2s+ b3
s3+ a1s2+ a2s+ a3= Y(s)
U (s)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–4
Break up transfer function into two parts.V(s)
U (s)contains all of the
poles ofY(s)
U (s). Then, Y(s) = [b1s
2+ b2s+ b3]V(s). Or,
y(t) = b1..v(t)+ b2
.v(t)+ b3v(t).
But, V(s)[s3+ a1s2+ a2s+ a3] = U (s), or,
...v(t)+ a1
..v(t)+ a2
.v(t)+ a3v(t) = u(t). The representation for this is
the same as in Case [1]. Let x(t) =[ ..v(t)
.v(t) v(t)
]T. Then
.x(t) =
...v(t)..v(t).v(t)
=
−a1 −a2 −a3
1 0 0
0 1 0
..v(t).v(t)
v(t)
+
1
0
0
u(t)
represents the dynamics of v(t). All that remains is to couple in the
zeros of the system.
Y(s) = [b1s2+ b2s+ b3]V(s)
y(t) =[
b1 b2 b3
]x(t)+
[0]
u(t)
3] Non-proper transfer function.
G(s) = b0s3+ b1s2+ b2s+ b1
s3+ a1s2+ a2s+ a3
= β1s2+ β2s+ β3
s3+ a1s2+ a2s+ a3+ D,
where the βi terms are computed via long division. The remainder
D is the feedthrough term.
• Matlab command tf2ss(num,den) converts a transfer function
form to state-space form.
• We will see that we have a lot of freedom when making our
state-space models (i.e., in choosing the components of x(t)).
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–5
Modal (Diagonal) Form
• There are various “canonical” forms for representing the dynamics of
any particular system.
• All related by linear algebra—change of basis.
• Diagonal form very useful. . .
• Assume G(s) = N(s)
D(s), D(s) has distinct roots pi (real).
G(s) = N(s)
(s− p1)(s− p2) · · · (s− pn)
= r1
s− p1+ r2
s− p2+ · · · + rn
s− pn.
Now, letX1(s)
U (s)= r1
s− p1➠
.x1(t) = p1x1(t)+ r1u(t)
...
Xn(s)
U (s)= rn
s− pn➠
.xn(t) = pnxn(t)+ rnu(t).
Or,.x(t) = Ax(t)+ Bu(t)
y(t) = Cx(t)+ Du(t)
A =
p1 0
p2. . .
0 pn
, B =
r1
r2...
rn
C =[
1 1 · · · 1], D =
[0]
• Easily extends to handle complex poles s= σ + jω.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–6
• Convenient for keeping track of system poles. . . they are right on the
diagonal!
• Good representation to use. . . numerical robustness.
State-Space to Transfer Function
• Start with the state equations.x(t) = Ax(t)+ Bu(t)
y(t) = Cx(t)+ Du(t)
• Laplace transforms X(s)− x(0) = AX(s)+ BU(s)
Y(s) = C X(s)+ DU (s)
or(s I − A)X(s) = BU(s)+ x(0)
X(s) = (s I − A)−1BU(s)+ (s I − A)−1x(0)
andY(s) = [C(s I − A)−1B+ D]︸ ︷︷ ︸
transfer function of system
U (s)+ C(s I − A)−1x(0)︸ ︷︷ ︸response to initial conditions
• So,Y(s)
U (s)= C(s I − A)−1B+ D,
but
(s I − A)−1 = adjoint(s I − A)
det(s I − A).
adjoint(s I − A) = [γi, j ]T
where γi, j = (−1)i+ j det(Mi, j )
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–7
where Mi, j = matrix (s I − A) with i th row and j th col. removed.
• Slightly easier to compute (for SISO systems)Y(s)
U (s)= C(s I − A)−1B+ D
=det
[s I − A B
−C D
]
det[s I − A]EXAMPLE :
A = −a1 −a2 −a3
1 0 0
0 1 0
B =
1
0
0
C =[
b1 b2 b3
]
G(s) =
det
s+ a1 a2 a3 1
−1 s 0 0
0 −1 s 0
−b1 −b2 −b3 0
det
s+ a1 a2 a3
−1 s 0
0 −1 s
= b3+ b2s+ b1s2
det[s I − A]
= b1s2+ b2s+ b3
s3+ a1s2+ a2s+ a3
• Example makes clear that the characteristic equation for the system
(Denominator of transfer function=0) is det[s I − A] = 0. (eigenvalues).
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–8
• Poles of system are roots of det[s I − A] = 0.
Transformations
• State-space representations are not unique. Selection of state x are
quite arbitrary.
• Analyze the transformation of.x(t) = Ax(t)+ Bu(t)
y(t) = Cx(t)+ Du(t)
Let x(t) = T z(t), where T is an invertible (similarity) transformation
matrix..z(t) = T−1 .
x(t)
= T−1[ Ax(t)+ Bu(t)]
= T−1[ AT z(t)+ Bu(t)]
= T−1AT︸ ︷︷ ︸A
z(t)+ T−1B︸ ︷︷ ︸B
u(t)
y(t) = CT︸︷︷︸C
z(t)+ D︸︷︷︸D
u(t)
so.z(t) = Az(t)+ Bu(t)
y(t) = Cz(t)+ Du(t).
• Argue that we should be able to use either model.
• Are they going to give the same transfer function?
H1(s) = C(s I − A)−1B+ D
H2(s) = C(s I − A)−1B+ D
• Need H1(s) = H2(s).
H1(s) = C(s I − A)−1B+ D
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–9
= CT T−1(s I − A)−1T T−1B+ D
= (CT)[T−1(s I − A)T ]−1(T−1B)+ D
= C(s I − A)−1B+ D = H2(s).
Transfer function not changed by similarity transform.
EXAMPLE :
H(s) = b1s2+ b2s+ b3
s3+ a1s2+ a2s+ a3
• Only six parameters in transfer function. But, A has 3× 3, B has
3× 1, C has 1× 3: a total of 15 parameters.
• Appears that we have 9 degrees of freedom in state-space model.
Contradiction?9= size
[ ].
Time (Dynamic) Response
• Develop more insight into the system response by looking at
time-domain solution for x(t).
• Scalar case first, then many states and MIMO.
Homogeneous Part (scalar)
• .x(t) = ax(t), x(0).
• Take Laplace. X(s) = (s− a)−1x(0).
• Inverse Laplace. x(t) = eatx(0).
Homogeneous Part (full solution)
• .x(t) = Ax(t), x(0).
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–10
• Take Laplace. X(s) = (s I − A)−1x(0).
• x(t) = L−1[(s I − A)−1]x(0).
• But,
(s I − A)−1 = I
s+ A
s2+ A2
s3+ · · ·
so,
L−1[(s I − A)−1] = I + At + A2t2
2!+ A3t3
3!+ · · ·
4= eAt matrix exponential
x(t) = eAtx(0).
• eAt : “Transition matrix” or “state-transition matrix.”
• Matrix exponential expm.m
• e(A+B)t = eAteBt iff AB= B A.
• Will say more about this form (eAt) when we discuss the structure of
A.
• Computation of eAt = L−1[(s I − A)−1] straightforward for 2× 2.
EXAMPLE :.x = Ax, A =
[0 1
−2 −3
]
(s I − A)−1 =[
s −1
2 s+ 3
]−1
=[
s+ 3 1
−2 s
]1
(s+ 2)(s+ 1)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–11
=
2
s+ 1− 1
s+ 2
1
s+ 1− 1
s+ 2−2
s+ 1+ 2
s+ 2
−1
s+ 1+ 2
s+ 2
eAt =[
2e−t − e−2t e−t − e−2t
−2e−t + 2e−2t −e−t + 2e−2t
]1(t)
• This is the best way to find eAt if A 2× 2.
Forced Solution (scalar).x(t) = ax(t)+ bu(t), x(0)
x(t) = eatx(0)+∫ t
0ea(t−τ)bu(τ ) dτ︸ ︷︷ ︸convolution
• Where did this come from?
1..x(t)− ax(t) = bu(t)
2. e−at[.x(t)− ax(t)] = d
dt[e−atx(t)] = e−atbu(t).
3.∫ t
0
d
dt[e−aτx(τ )] dτ = e−atx(t)− x(0) =
∫ t
0e−aτbu(τ ) dτ.
Forced Solution (full solution)
• Now, let.x(t) = Ax(t)+ Bu(t), x ∈ <n×1, u ∈ <m×1.
• Follow three steps above to get
x(t) = eAtx(0)+∫ t
0eA(t−τ)Bu(τ ) dτ
• Clearly, if y(t) = Cx(t)+ Du(t),
y(t) = CeAtx(0)︸ ︷︷ ︸initial resp.
+∫ t
0CeA(t−τ)Bu(τ ) dτ︸ ︷︷ ︸convolution
+ Du(t)︸ ︷︷ ︸feedthrough
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–12
More on the Matrix Exponential
• Have seen the key role of eAt in the solution for x(t). Impacts the
system response, but need more insight.
• Consider what happens if the matrix A is diagonalizable, that is, there
exists a matrix T such that T−1AT = 3 =diagonal.
• Then, eAt = T e3tT−1, and
e3t =
eλ1t 0
eλ2t
. . .
0 eλnt
• Much simpler form for the exponential, but how to find T, 3?
• Eigenvalues/eigenvectors.
Eigenvalues and Eigenvectors
• λ is an eigenvalue of A if det(λI − A) = 0 which is true iff there exists
a nonzero vector v so that(λI − A)v = 0 ➠ Av = λv
v = eigenvector.
• Repeat to find all eigenvectors. Assume that v1, v2, . . . vn are linearly
independent.Avi = λivi i = 1,2, . . . ,n
A[v1 v2 . . . vn
]︸ ︷︷ ︸
T
=[v1 v2 . . . vn
] λ1 0. . .
0 λn
︸ ︷︷ ︸3
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–13
• AT = T3 ➠ T−1AT = 3.
• Not all matrices diagonalizable
A =[
0 1
0 0
]det(λI − A) = λ2
• One eigenvalue λ = 0. Solve for the eigenvectors[0 1
0 0
][va
vb
]= 0 ➠ all vectors of the form
[va
0
]6= 0.
Dynamic Interpretation
• Write T−1AT = 3 as T−1A = 3T−1 with
T−1 =
wT
1
wT2...
wTn
, i .e., rows of T−1.
wTi A = λiw
Ti , so wi is a left eigenvector of A and note that wT
i v j = δi, j .
• How does this help?
eAt = T e3tT−1
=[v1 v2 . . . vn
]
eλ1t 0
eλ2t
. . .
0 eλnt
wT
1
wT2...
wnT
=n∑
i=1
eλi tviwTi
• Very simple form.
• Can be used to develop intuition about dynamic response≈ eλi t .
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–14
• Recall,.x(t) = Ax(t)
x(t) = eAtx(0)
= T e3tT−1x(0)
=n∑
i=1
eλi tvi (wTi x(0)).
• Solution (trajectory) can be expressed as a linear combination of
system modes: vi eλi t .
• Left eigenvectors decompose initial state x(0) into modal coordinates
wTi x(0).
• eλi t propagates mode forward in time. Stability?
• vi corresponds to “relative phasing” of state contribution to the modal
response.
EXAMPLE : Let’s consider a specific system.x(t) = Ax(t)
y(t) = Cx(t)
with x(t) ∈ <16×1, y(t) ∈ <. (16-state, single output).
• A lightly damped system.
• Typical output to initial conditions:
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–15
0 50 100 150 200 250 300−2
−1.5
−1
−0.5
0
0.5
1
1.5
2
Impulse Response
Am
plitu
de
Time (sec.)
• Output waveform is very complicated. Looks almost random or
unpredictable.
• However, such a solution can be decomposed into much simpler
modal components.
• How? Diagonalize A to form an equivalent system.
– Assume A is diagonalizable by T .
– Define new coordinates by x(t) = Tx(t) so.x(t) = T−1Ax(t) = T−1ATx(t) = 3x(t).
– In new coordinate system, system is diagonal (decoupled).
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–16
0 50 100 150 200 250−1
0
1
0 50 100 150 200 250
−0.5
0
0.5
0 50 100 150 200 250−1
0
1
0 50 100 150 200 250
−0.5
0
0.5
0 50 100 150 200 250
−0.5
0
0.5
0 50 100 150 200 250
−1
0
1
0 50 100 150 200 250−1
0
1
0 50 100 150 200 250
−0.5
0
0.5
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–17
1/s
1/s
λ1
λn
x1
xn
Trajectories consist of n indepen-
dent modes; that is,xi (t) = eλi t xi (0)
hence the name, “modal form.”
• Can writex(t) = eAtx(0)
= T e3tT−1x(0)
=n∑
i=1
eλi tvi (wTi x(0)).
Thus, trajectory can be expressed as linear combination of modes.
Interpretation.
• Left eigenvectors decompose initial state x(0) into modal components
wTi x(0).
• eλi t term propagates i th mode forward t seconds.
• Reconstruct state as linear combination of right eigenvectors.
Zeros—SISO System
• Seen eigenvalues of A are the poles. Zeros of transfer function?
• What is a zero?
• Put in u(t) = u0ezi t and you get a zero output at “frequency” ezi t .
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–18
• State space: Have input and state contributionsu(t) = u0e
zi t, x(t) = x0ezi t . . . y(t) = 0.
.x(t) = Ax(t)+ Bu(t) ➠ zi e
zi t x(0) = Ax(0)ezi t + Bu0ezi t
➠[
zi I − A −B] x(0)
. .
u0
= 0
y(t) = Cx(t)+ Du(t) ➠ Cx(0)ezi t + Du0ezi t=0
➠[
C D] x(0)
. .
u0
= 0
• Put the two together[zi I − A −B
−C −D
][x(0)
u0
]= 0
• Zero at frequency zi if there exists a nontrivial solution of
det
[zi I − A −B
−C −D
]= 0
• Recall
det
[s I − A −B
−C −D
]
det(s I − A).
EXAMPLES : We see that a specific frequency is blocked in the output by
a zero, BUT, the output does not need to be identically zero.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–19
y2out
y2out
y1out
y1out
s+1
du/dt
s
1
s+1
Transfer Fcn(with initial states)
0
Constant
1
1
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1Intermediate output: –, Final output: ––
Am
plitu
de
Time (sec.)
y2out
y2out
y1out
y1out
1
s+1
Transfer Fcn(with initial states)
s+1
s+10
Transfer Fcn
0
Constant
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 50
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1Intermediate output: –, Final output: ––
Am
plitu
de
Time (sec.)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–20
Feedback Control
• System dynamics.x(t) = Ax(t)+ Bu(t)
y(t) = Cx(t)
• System poles given by eigenvalues of A.
• Want to use input u(t) to change the dynamics.
• Will assume the form of LINEAR STATE FEEDBACK.u(t) = r (t)− K x(t), K ∈ <1×n.
r (t) y(t)u(t) A, B,C
x
K
• Full state feedback with gain vector K .
• Substitute:.x(t) = Ax(t)+ B(r (t)− K x(t))
= (A− BK)x(t)+ Br(t)
y(t) = Cx(t) If r = 0 . . . regulation.
• Design objective: Pick K so that ACL = A− BK has some nice
properties. For example,
– A unstable, ACL stable.
– Put two poles at −2± j . (Pole placement).
• There are n parameters in the gain vector K and n eigenvalues of A.
So, what can we achieve?
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–21
EXAMPLE :.x(t) =
[1 1
1 2
]x(t)+
[1
0
]u(t).
det(s I − A) = (s− 1)(s− 2)− 1= s2− 3s+ 1.
(Note. The original system is unstable).
• Let
u(t) = −[
k1 k2
]x(t) = −K x(t)
ACL = A− BK =[
1 1
1 2
]−[
1
0
] [k1 k2
]
=[
1− k1 1− k2
1 2
].
• So, det(s I − A) = s2+ (k1− 3)s+ (1− 2k1+ k2).
• By choosing k1 and k2, we can put λi (ACL) ANYWHERE in the
complex plane (in complex-conjugate pairs, that is!)
• Poles at −5, −6?
• Compare desired closed-loop characteristic equation
(s+ 5)(s+ 6) = s2+ 11s+ 30
withdet(s I − A) = s2+ (k1− 3)s+ (1− 2k1+ k2)
• So,k1− 3 = 11, or, k1 = 14
1− 2k1+ k2 = 30, or, k2 = 57.
• K = [14 57].
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–22
• So, with the n parameters in K , can we always relocate all n λi (ACL)?
– Most physical systems, qualified yes.
– Mathematically, EMPHATIC NO!
• Boils down to whether or not the system is controllable. That is, if
every internal system mode can be excited by inputs, either directly or
indirectly.
EXAMPLE :.x(t) =
[1 1
0 2
]x(t)+
[1
0
]u(t)
u(t) = −K x(t).
ACL = A− BK =[
1− k1 1− k2
0 2
]
det(s I − ACL) = (s− 1+ k1)(s− 2).
Feedback of the state cannot move the pole at s= 2. System cannot be
stabilized via state feedback.
• Reason? Modal form:
AV = V3 3 =[
1 0
0 2
], V =
[1 1
0 1
], V−1 =
[1 −1
0 1
]
convert.x(t) = Ax(t)+ Bu(t) to
.z(t) = 3z(t)+ V−1Bu(t)
V−1B =[
1 −1
0 1
][1
0
]=[
1
0
]
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–23
Therefore, modal dynamics
.z(t) =
[1 0
0 2
]z(t)+
[1
0
]u(t).
– Decoupled
– Control input does not influence second mode directly or indirectly.
– System is NOT controllable.
• “Easier” ways to test controllability. Is the (controllability) matrix
Mc =[
B AB A2B . . . An−1B]
n×n
full rank?EXAMPLE :
Mc =[
1 1
0 1
], Rank =?
EXAMPLE :
Mc =[
1 1
0 0
], Rank =?
• Design tedious as shown for more than 2× 2 since we need symbolic
det(s I − ACL).
• Much easier to work with control canonical form of the state-space
representation.
A = −a1 −a2 −a3
1 0 0
0 1 0
, B =
1
0
0
C =[
b1 b2 b3
]
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–24
• Note, K =[
k1 k2 k3
], so
BK = k1 k2 k3
0 0 0
0 0 0
.
• Useful because characteristic equation obvious.
ACL = A− BK = −a1− k1 −a2− k2 −a3− k3
1 0 0
0 1 0
• φCL = det(s I − ACL) = s3+ (a1+ k1)s2+ (a2+ k2)s+ (a3+ k3) = 0.
• Compare φCL with desired φCL, and compute K .
Summary of Design Procedure
1. Transform arbitrary (A, B) representation to control-canonical form
(Ac, Bc): x(t) = T z(t).
2. Solve for gains Kc (by inspection).
3. Convert Kc to K (for A, B) with K = KcT−1.
• Ackermann’s formula does this entire process in one “step.”
K = [0 0 . . . 1]M−1c φd(A)
whereMc = [B AB A2B . . . An−1B]
φd(A) = An + α1An−1+ · · · + αnI
where φd(s) = sn + α1sn−1+ . . .+ αn = 0
That is, φd(s) is the characteristic equation of desired pole locations.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–25
• Revisit previous example. φd(s) = s2+ 11s+ 30.
Mc =[
1 1
0 1
]
K =[
0 1] [ 1 −1
0 1
]{[1 1
1 2
][1 1
1 2
]+ 11
[1 1
1 2
]+ 30
[1 0
0 1
]}
=[
0 1]{[ 1 3
3 5
]+[
41 11
11 52
]}
=[
0 1] [ 42 14
14 57
]
=[
14 57]. ✓ same as before.
• acker.m ➠ Very easy in Matlab, but numerical issues.
• place.m ➠ Use this instead, unless you have repeated roots.
• polyvalm.m ➠ To compute φd(A).
Reference Input
• So far, we have looked at how to pick K to get homogeneous
dynamics that we want.λi (ACL) − fast/slow/real poles ...
How does this improve our ability to track a reference?
• Started with u(t) = r (t)− K x(t).
• Want y(t) ≈ r (t) for good tracking.
• Frequency domain, wantY(s)
R(s)≈ 1. Usually only get this performance
at low frequencies.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–26
• Problem is that u(t) = r (t)− K x(t) is simple, but it gives steady-stateerrors.
EXAMPLE :
A =[
1 1
1 2
], B =
[1
0
], K =
[14 57
]
• Let C =[
1 0]. Then
Y(s)
R(s)= C(s I − A+ BK)−1B.
Y(s)
R(s)=[
1 0] [ s+ 13 56
−1 s− 2
]−1[1
0
]
= s− 2
s2+ 11s+ 30.
• Final value theorem for step input, y(t)→ −2
306= 1 !
Partial state−space model: A=[1 1; 1 2], B=[1; 0], C=[1 0; 0 1], D=[0; 0].
x(t)
Kx(t)
y(t)yout
youtSumStep
x’ = Ax+Bu y = Cx+Du
State−Space
K
K=[14 57]
K
C=[1 0]
0 1 2 3 4 5 6 7 8 9 10−0.08
−0.06
−0.04
−0.02
0
0.02
0.04
0.06Step Response
Am
plitu
de
Time (sec.)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–27
• Modification: Need steady-state values for x(t) and u(t) that are
nonzero. . . Then, regulate around them.(u(t)− uss) = −K (x(t)− xss)
• uss and xss related to rss.uss= Nu︸︷︷︸
1×1
rss
xss= Nx︸︷︷︸n×1
rss.
• How to find Nu and Nx? Use equations of motion..x(t) = Ax(t)+ Bu(t)
y(t) = Cx(t)+ Du(t)
• At steady state,.x(t) = 0 = Axss+ Buss
y(t) = rss= Cxss+ Duss.
• Two equations and two unknowns.[A B
C D
][Nx
Nu
]=[
0
1
]
• Control signal is nowu(t) = Nur (t)− K (x(t)− Nxr (t))
= −K x(t)+ (Nu + K Nx)r (t)
= −K x(t)+ Nr(t)
• N computed without knowing r (t). It works for any r (t).
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–28
• In our example
[Nx
Nu
]=
1
−1
2−1
2
• Nu + K Nx = −15.
• New equations:.x(t) = Ax(t)+ B(Nu + K Nx)r (t)− BK x(t)
= (A− BK)x(t)+ BNr(t)
y(t) = Cx(t)
• Therefore, (Y(s)
R(s)
)new=(
Y(s)
R(s)
)old× N
= −15(s− 2)
s2+ 11s+ 30
= −15s+ 30
s2+ 11s+ 30
which has zero steady-state error to a unit-step.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–29
r (t)
r (t)
y(t)
y(t)
u(t)
u(t)
A, B,C
A, B,C
x
x
K
K
N
Nx
Nu
Partial state−space model: A=[1 1; 1 2], B=[1; 0], C=[1 0; 0 1], D=[0; 0].
x(t)
Kx(t)
y(t)yout
youtSumStep
x’ = Ax+Bu y = Cx+Du
State−Space
K
K=[14 57]
−15
Gain
K
C=[1 0]
0 1 2 3 4 5 6 7 8 9 10−0.8
−0.6
−0.4
−0.2
0
0.2
0.4
0.6
0.8
1Step Response
Am
plitu
de
Time (sec.)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–30
Pole Placement
• Classical question: Where do we place the closed-loop poles?
• Dominant second-order behavior, just as before.
• Assume dominant behavior given by roots of
s2+ 2ζωns+ ω2n ➠ s= −
{ωn ± jωn
√1− ζ 2
}• Put other poles so that the time response is much faster than this
dominant behavior.
• Place them so that they are “sufficiently damped.”
– Real part < −4ζωn.
– Keep frequency same as open loop.
• Be very careful about moving poles too far. Takes a lot of control
effort.
• Can also choose closed-loop poles to mimic a system that has
performance that you like. Set closed-loop poles equal to this
prototype system.
• Scaled to give settling time of 1 sec. or bandwidth of ω = 1 rad/sec.
Bessel Prototype Systems
0 2 4 6 8 10 12 14 160
0.2
0.4
0.6
0.8
1
Step Response: Constant Bandwidth
Time (sec.)
Am
plitu
de
0 0.5 1 1.5 2 2.5 30
0.2
0.4
0.6
0.8
1
Step Response: Constant ts
Time (sec.)
Am
plitu
de
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–31
ITAE Prototype Systems
0 2 4 6 8 10 12 14 160
0.2
0.4
0.6
0.8
1
Step Response: Constant Bandwidth
Time (sec.)
Am
plitu
de
0 0.5 1 1.5 2 2.5 30
0.2
0.4
0.6
0.8
1
Step Response: Constant ts
Time (sec.)
Am
plitu
de
ITAE pole locations for ts = 1 sec.
1: −4.6200
2: −4.6598± 4.6598j
3: −4.3503± 8.9178j −5.9126
4: −4.2358± 12.6174j −6.2537± 4.139j
5: −3.9484± 13.5531j −6.0401± 5.6006j −9.3938
6: −2.9905± 12.1918j −5.6018± 7.5540j −7.0889± 2.7724j
Bessel pole locations for ts = 1 sec.
1: −4.6200
2: −4.0530± 2.3400j
3: −3.9668± 3.7845j −5.0093
4: −4.0156± 5.0723j −5.5281± 1.6553j
5: −4.1104± 6.3142j −5.9268± 3.0813j −6.4480
6: −4.2169± 7.5300j −6.2613± 4.4018j −7.1205± 1.4540j
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–32
ITAE pole locations for ωo = 1 rad/sec.
1: −1.0000
2: −0.7071± 0.7071j
3: −0.5210± 1.0680j −0.7081
4: −0.4240± 1.2630j −0.6260± 0.4141j
5: −0.3764± 1.2920j −0.5758± 0.5339j −0.8955
6: −0.3099± 0.9617j −0.5805± 0.7828j −0.7346± 0.2873j
Bessel pole locations for ωo = 1 rad/sec.
1: −1.0000
2: −0.8660± 0.5000j
3: −0.7455± 0.7112j −0.9420
4: −0.6573± 0.8302j −0.9047± 0.2711j
5: −0.5906± 0.9072j −0.8516± 0.4427j −0.9264
6: −0.5385± 0.9617j −0.7998± 0.5622j −0.9093± 0.1856j
PROCEDURE: For nth-order system—desired bandwidth.
1. Determine desired bandwidth ωo.
2. Find the nth-order poles from the table of constant bandwidth, and
multiply pole locations by ωo.
3. Use Acker/place to locate poles. Simulate and check control effort.
PROCEDURE: For nth-order system—desired settling time.
1. Determine desired settling time ts.
2. Find the nth-order poles from the table of constant settling time, and
divide pole locations by ts.
3. Use Acker/place to locate poles. Simulate and check control effort.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, STATE-SPACE MODELS 10–33
EXAMPLE :
G(s) = 1
s(s+ 1)(s+ 4)
A = −5 −4 0
1 0 0
0 1 0
, B =
1
0
0
want ts = 2, and 3rd-order Bessel.
• s1 = −5.0093
2= −2.5047.
• s2,3 = −3.9668± 3.7845j
2= −1.9834± 1.8922j
• Bessel model has no overshoot, but is slow compared with ITAE.
• NOT a good idea for flexible systems. Why?
10−1
100
101
−140
−120
−100
−80
−60
−40
−20
0ITAE: –, Bessel, ’––’
Mag
nitu
de
ω, (rads/sec.)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510: Feedback Control Systems. 11–1
REVIEW OF FEEDBACK CONTROL
Goals of Feedback Control
• Change dynamic response of a system to have desired properties.
• Output of system tracks reference input.
• Reject disturbances.
Dynamic Response
• We wish to control linear-time invariant (LTI) systems.
• These dynamics may be specified via linear, constant-coefficient
ordinary differential equations (LCCODE).
• Examples include:
– Mechanical systems: Use Newton’s laws.
– Electrical systems: Use Kirchoff’s laws.
– Electro-mechanical systems (generator/motor).
– Thermodynamic systems.
– Fluid-dynamic systems.
EXAMPLE: Second-order system:..y(t)+ 2ζωn
.y(t)+ ω2
ny(t) = ω2nu(t).
• “u(t)” is the input.
• “y(t)” is the output.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, REVIEW OF FEEDBACK CONTROL 11–2
• .y(t)
4= dy(t)
dt.
• ..y(t)
4= d2y(t)
dt2.
• The Laplace Transform is a tool to help analyze dynamic systems.
Y(s) = H(s)U (s), where
– Y(s) is Laplace transform of output, y(t);
– U (s) is Laplace transform of input, u(t);
– H(s) is transfer function—the Laplace tx of impulse response, h(t).
• L{ .
y(t)}= sY(s) for no initial conditions.
EXAMPLE: Second-order system:
s2Y(s)+ 2ζωnsY(s)+ ω2nY(s) = ω2
nU (s)
Y(s) = ω2n
s2+ 2ζωns+ ω2n
U (s).
• Transforms for systems with LCCODE representations can be written
as Y(s) = H(s)U (s), where
H(s) = b0sm+ b1sm−1+ · · · + bm−1s+ bm
a0sn + a1sn−1+ · · · + an−1s+ an,
where n ≥ m for physical systems.
• These can be represented in Matlab using vectors of numerator and
denominator polynomials:
num=[b0 b1 . . . bm];
den=[a0 a1 . . . an];
sys=tf(num,den);
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, REVIEW OF FEEDBACK CONTROL 11–3
• Can also represent these systems by factoring the polynomials into
zero-pole-gain form:
H(s) = K
∏mi=1(s− zi )∏ni=1(s− pi )
.
sys=zpk(z,p,k); % in Matlab
• Input signals of interest include the following:
u(t) = k δ(t) . . . U (s) = k impulse
u(t) = k 1(t) . . . U (s) = k/s step
u(t) = kt 1(t) . . . U (s) = k/s2 ramp
u(t) = kt2/2 1(t) . . . U (s) = k/s3 parabola
u(t) = k sin(ωt) 1(t) . . . U (s) =kω
s2+ ω2sinusoid
• Matlab’s “impulse ,” “step ,” and “lsim ” commands can be used to
find output time histories.
• The Final Value Theorem states that if a system is stable and has a
final, constant value,lim
t→∞ x(t) = lims→0
s X(s).
This is useful when investigating steady-state errors in a control
system.
Block Diagrams
• Useful when analyzing systems comprised of a number of sub-units.
H (s) Y(s)U(s) Y(s) = H (s)U(s)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, REVIEW OF FEEDBACK CONTROL 11–4
H1(s) H2(s) Y(s)U(s) Y(s) = [H1(s)H2(s)] U(s)
H1(s)
H2(s)
Y(s)U(s) Y(s) = [H1(s)+ H2(s)] U(s)
H1(s)
H2(s)
Y(s)R(s)U1(s)
Y2(s) U2(s)
Y(s) = H1(s)
1+ H2(s)H1(s)R(s)
• Block-diagram algebra (or Mason’s rule) may be used to reduce block
diagrams to a single transfer function.
⇐⇒
⇐⇒
⇐⇒
H (s)
H (s)
H (s)H (s)
H (s)
1
H (s)
H1(s)H1(s) H2(s)
H2(s)
1
H2(s)Y(s)Y(s)
Y(s)Y(s)
Y1(s)Y1(s)
Y2(s)Y2(s)
U(s)U(s)
U1(s)U1(s)
U2(s)U2(s)
R(s)R(s)
“Unity Feedback”
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, REVIEW OF FEEDBACK CONTROL 11–5
Dynamic Response versus Pole Locations
• The poles of H(s) determine (qualitatively) the dynamic response of
the system. The zeros of H(s) quantify the relationship.
• If the system has only real poles, each one is of the form:
H(s) = 1
s+ σ .• If σ > 0, the system is stable, and h(t) = e−σ t1(t). The time constant
is τ = 1/σ, and the response of the system to an impulse or step
decays to steady-state in about 4 or 5 time constants.
0 1 2 3 4 50
0.2
0.4
0.6
0.8
1impulse([0 1],[1 1]);
Time (sec × τ )t = τ
←− 1
e
e−σ t
h(t)
0 1 2 3 4 50
0.2
0.4
0.6
0.8
1step([0 1],[1 1]);
Time (sec × τ )t = τ
y(t)×
K
K (1− e−t/τ )
System response. K = DC gain
Response to initial condition−→ 0.
• If a system has complex-conjugate poles, each may be written as:
H(s) = ω2n
s2+ 2ζωns+ ω2n
.
We can extract two more parameters from this equation:
σ = ζωn andωd = ωn
√1− ζ 2.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, REVIEW OF FEEDBACK CONTROL 11–6
• σ plays the same role as above—it specifies
decay rate of the response.
• ωd is the oscillation frequency of the output.
Note: ωd 6= ωn unless ζ = 0.
• ζ is the “damping ratio” and it also plays a
role in decay rate and overshoot.
θ = sin−1(ζ )
=(s)
<(s)ωd
σ
ωn
• Impulse response h(t) = ωne−σ t sin(ωdt) 1(t).
• Step response y(t) = 1− e−σ t
(cos(ωdt)+ σ
ωdsin(ωdt)
).
0 2 4 6 8 10 12−1
−0.5
0
0.5
1ζ = 0
0.2
0.4
0.6
0.8ζ = 1
ωnt
y(t)
Impulse Responses of 2nd-Order Systems
0 2 4 6 8 10 120
0.5
1
1.5
2ζ = 0
0.2
0.4
0.6
0.8
1.0
ωnt
y(t)
Step Responses of 2nd-Order Systems
• A summary chart of impulse responses and step responses versus
pole locations is:=(s)
<(s)
Impulse responses vs. pole locations
=(s)
<(s)
Step responses vs. pole locations
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, REVIEW OF FEEDBACK CONTROL 11–7
• Time-domain specifications determine where poles SHOULD be
placed in the s-plane. (step-response).
0.1
0.91
ttr
Mptp
ts
• Rise time tr = time to go from 10%
to 90% of final value.
• Settling time ts = time until perma-
nently within ≈ 1% of final value.
• Overshoot Mp = maximum PER-
CENT overshoot. 0 0.2 0.4 0.6 0.8 1.00
10
20
30
40
50
60
70
80
90
100
ζ
Mp,%
tr ≈ 1.8/ωn . . . ωn ≥ 1.8/trts ≈ 4.6/σ . . . σ ≥ 4.6/ts
Mp ≈ e−πζ/√
1−ζ 2. . . ζ ≥ f n(Mp)
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, REVIEW OF FEEDBACK CONTROL 11–8
Basic Feedback Properties
r (t) y(t)D(s) G(s) Y(s)
R(s)= D(s)G(s)
1+ D(s)G(s)= T(s).
• Stability depends on roots of denominator of T(s): 1+ D(s)G(s) = 0.
• Routh test used to determine stability.
• Steady-state error found from (for unity feedback)E(s)
R(s)= 1
1+ D(s)G(s).
• ess= limt→∞ e(t) = lim
s→0sE(s) if the limit exists.
– System type = 0 iff ess is finite for unit-step reference-input 1(t).
– System type = 1 iff ess is finite for unit-ramp reference-input r (t).
– System type = 2 iff ess is finite for unit-parabola ref.-input p(t). . .
• For unity-feedback systems,
K p = lims→0
D(s)G(s). “postion error constant”
Kv = lims→0
s D(s)G(s). “velocity error constant”
Ka = lims→0
s2D(s)G(s). “acceleration error constant”
• Steady-state errors versus system type for unity feedback:
Step input Ramp input Parabola input
Type 01
1+ K p∞ ∞
Type 1 01
Kv
∞Type 2 0 0
1
Ka
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, REVIEW OF FEEDBACK CONTROL 11–9
Types of Controllers
“Proportional” ctrlr: u(t) = Ke(t). D(s) = K .
“Integral” ctrlr u(t) = K
TI
∫ t
−∞e(t) dt. D(s) = K
TI s“Derivative” ctrlr. u(t) = K TD
.e(t) D(s) = K TDs
Combinations: PI: D(s) = K (1+ 1
TI s);
PD: D(s) = K (1+ TDs) ;PID: D(s) = K
(1+ 1
TI s+ TDs
).
Lead: D(s) = KT s+ 1
αT s+ 1, α < 1 (approx PD)
Lag: D(s) = KT s+ 1
αT s+ 1, α > 1 (approx PI;
often, K = α)
Lead/Lag: D(s) = K(T1s+ 1)(T2s+ 1)
(α1T1s+ 1)(α2T2s+ 1), α1 < 1, α2 > 1.
...
Root Locus
• A root locus plot shows (parametrically) the possible locations of the
roots of the equation
1+ Kb(s)
a(s)= 0.
• For a unity-gain feedback system,
T(s) = D(s)G(s)
1+ D(s)G(s).
• The poles of the closed-loop system T(s) depend on the open-loop
transfer functions D(s)G(s). Suppose D(s) = K D0(s).closed-loop poles at 1+ K (D0(s)G(s)) = 0
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, REVIEW OF FEEDBACK CONTROL 11–10
which is the root-locus form.
• Drawing the root locus allows us to select K for good pole locations.
Intuition into the root-locus helps us design D0(s) with lead/ lag/ PI/
PID. . . controllers.
Root-Locus Drawing Rules
• The steps in drawing a 180◦ root locus follow from the basic phase
definition. This is the locus of
1+ Kb(s)
a(s)= 0, K ≥ 0
(phase of
b(s)
a(s)= −180◦
)• They are
– STEP 1: On the s-plane, mark poles (roots of a(s)) by an × and zeros (roots of a(s)) with an ◦.There will be a branch of the locus departing from every pole and a branch arriving at every zero.
– STEP 2: Draw the locus on the real axis to the left of an odd number of real poles plus zeros.
– STEP 3: Draw the asymptotes, centered at α and leaving at angles φ, where
n−m = number of asymptotes.
n = order of a(s)
m = order of b(s)
α =∑
pi −∑ zi
n−m= −a1+ b1
n−m
φl = 180◦ + (l − 1)360◦
n−m, l = 1, 2, . . .n−m
For n−m> 0, there will be a branch of the locus approaching each asymptote and departing toinfinity. For n−m< 0, there will be a branch of the locus arriving from infinity along eachasymptote.
– STEP 4: Compare locus departure angles from the poles and arrival angles at the zeros where
qφdep =∑
ψi −∑
φi − 180◦ − l360◦
qψarr =∑
φi −∑
ψi + 180◦ + l360◦
where q is the order of the pole or zero and l takes on q integer values so that the angles arebetween ±180◦ . ψi is the angle of the line going from the i th zero to the pole or zero whoseangle of departure or arrival is being computed. Similarly, φi is the angle of the line from the i thpole.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, REVIEW OF FEEDBACK CONTROL 11–11
– STEP 5: If further refinement is required at the stability boundary, assume s0 = jω0 andcompute the point(s) where the locus crosses the imaginary axis for positive K .
– STEP 6: For the case of multiple roots, two loci come together at 180◦ and break away at ±90◦.Three loci segments approach each other at angles of 120◦ and depart at angles rotated by 60◦.
– STEP 7 Complete the locus, using the facts developed in the previous steps and makingreference to the illustrative loci for guidance. The loci branches start at poles and end at zeros orinfinity.
– STEP 8 Select the desired point on the locus that meets the specifications (s0), then use themagnitude condition to find that the value of K associated with that point is
K = 1
|b (s0) /a (s0)| .
• When K is negative, the definition of the root locus in terms of the
phase relationship is
0◦ locus definition: The root locus of b(s)/a(s) is the set of points
in the s-plane where the phase of b(s)/a(s) is 0◦.
• For this case, the steps above are modified as follows:– STEP 2: Draw the locus on the real axis to the left of an even number of real poles plus zeros.
– STEP 3: The asymptotes depart at
φl = (l − 1)360◦
n−m, l = 1, 2, . . .n−m.
– STEP 4: The locus departure and arrival angles are modified to
qφdep =∑
ψi −∑
φi − l360◦
qψarr =∑
φi −∑
ψi + l360◦.
Note that the 180◦ term has been removed.
Frequency Response
• The frequency response of a system directly tells us the relative
magnitude and phase of a system’s output sinusoid if the system
input is a sinusoid. [What about output frequency?]
• If the plant’s transfer function is G (s), the open-loop frequency
response is G ( jω).
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, REVIEW OF FEEDBACK CONTROL 11–12
• We can plot G( jω) as a function of ω in three ways:
– Bode Plot.
– Nyquist Plot.
– Nichols Plot (we did not cover this).
Bode Plots
• A ‘Bode plot’ is really two plots: 20 log10 |G ( jω)| versus ω and 6 G( jω)
versus ω. The Bode-magnitude plot is plotted on a log-log scale. The
Bode-phase plot is plotted linear-log scale.
• The transfer function G(s) is broken up into its component parts, and
each part is plotted separately.Gain of K ; magnitude & phase
0.1 1 10
|K | > 1
|K | < 1
dB0.1 1 10
Delay; magnitude & phase
0.1 1 10
dB0.1 1 10
Zero at origin; magnitude & phase
dB
0.1 1 10
90◦
0.1 1 10
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, REVIEW OF FEEDBACK CONTROL 11–13
Pole at origin; magnitude & phase
dB
0.1 1 10
−90◦
0.1 1 10
Zero on real axis; magnitude & mp-phase & nmp-phase
0.1ωi 1ωi 10ωi
dB
0.1ωi 1ωi 10ωi
90◦
0.1ωi 1ωi 10ωi
90◦
180◦
Pole on real axis; magnitude & mp-phase & nmp-phase
0.1ωi 1ωi 10ωidB
0.1ωi 1ωi 10ωi
−90◦
0.1ωi 1ωi 10ωi
−90◦
−180◦
Complex zeros; magnitude & mp-phase & nmp-phase
0.1ωn ωn 10ωn
−20
0
20
40
0.1ωn ωn 10ωn
0◦
90◦
180◦
0.1ωn ωn 10ωn0◦
90◦
180◦
270◦
360◦
Complex poles; magnitude & mp-phase & nmp-phase
0.1ωn ωn 10ωn
−40
−20
0
20
0.1ωn ωn 10ωn
0◦
−90◦
−180◦
0.1ωn ωn 10ωn0◦
−90◦
−180◦
−270◦
−360◦
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, REVIEW OF FEEDBACK CONTROL 11–14
Bode Plot Techniques
• It is useful to be able to plot the frequency response of a system by
hand in order to
– Design simple systems without the aid of a computer,
– Check computer-based results, and
– Understand the effect of compensation changes in design
iterations.
• H.W. Bode developed plotting techniques in the 1930s that enabled
quick hand potting of the frequency response. His rules are:– STEP 1: Manipulate the transfer function into the Bode form
K G( jω) = Ko( jω)n( jωτ1+ 1)( jωτ2+ 1...)
( jωτa + 1)( jωτb+ 1...)
– STEP 2: Determine the value of n for the Ko( jω)n term. Plot the low-frequency magnitudeasymptote through the point Ko at ω = 1 rad/sec with the slope of n (or n× 20 dB per decade).
– STEP 3: Determine the break point s where ω=1/τi . Complete the composite magnitudeasymptotes by extending the low frequency asymptote until the first frequency break point, thenstepping the slope by ±1 or±2, depending on whether the break point is from a first or secondorder term in the numerator or denominator, and continuing through all break points inascending order.
– STEP 4: Sketch in the approximate magnitude curve by increasing from the asymptote by afactor of 1.4 (+3dB) at first order numerator breaks and decreasing it by a factor of 0.707 (-3dB)at first order denominator breaks. At second order break points, sketch in the resonant peak (orvalley) using the relation that |G( jω)| = 1/(2ζ ) at the break.
– STEP 5: Plot the low frequency asymptote of the phase curve, φ = n× 90◦ .
– STEP 6: As a guide, sketch in the approximate phase curve by changing the phase graduallyover two decades by ±90◦ or ±180◦ at each break point in ascending order. For first order termsin the numerator, the gradual change of phase is +90◦; in the denominator, the change is ±180◦ .
– STEP 7: Locate the asymptotes for each individual phase curve so that their phase changecorresponds to the steps in the phase from the approximate curve indicated by Step 6. Sketch ineach individual phase.
– STEP 8 Graphically add each phase curve. Use dividers if an accuracy of about ±5◦ is desired.If lessor accuracy is acceptable, the composite curve can be done by eye, keeping in mind thatthe curve will start at the lowest frequency asymptote and end on the highest frequencyasymptote, and will approach the intermediate asymptotes to an extent that is determined by theproximity of the break points to each other.
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, REVIEW OF FEEDBACK CONTROL 11–15
Nyquist Plots
• Nyquist plot is a mapping of loop transfer function D(s)G(s) along the
Nyquist path to a polar plot.
• Think of Nyquist path as four parts:
I: Origin. Sometimes a special case.
II: + jω axis. FREQUENCYresponse of O.L. system! Just
plot it as a polar plot.
III: For many physical systems, zero.
Some counter-examples.
IV: Complex conjugate of II.
=(s)
<(s)I
IIIII
IV
• The test:
– N = #CW encirclements of −1/K point when F(s) = D(s)G(s).
– P = # of OPEN-LOOP unstable poles.
– Z = # of CLOSED-LOOP unstable poles.
– Z = N + P
• The system is stable iff Z = 0.
• For poles on the jω-axis, use modified Nyquist path.
Bode Plot Performance
• At low frequency, approximate Bode plot with K G( jω) = K0( jω)n.
– n = system type . . . slope = −20n dB/decade.
– K0 = K p for type 0, = Kv for type I, . . .
Lecture notes prepared by Dr. Gregory L. Plett
ECE4510, REVIEW OF FEEDBACK CONTROL 11–16
• Gain margin (for systems which become unstable with increasing
gain) = factor by which gain is less than 0dB when phase = −180◦.
• Phase margin (for same systems) = amount phase is greater than
−180◦ when gain = 1.
• PM related to damping. ζ ≈ PM/100when PM < 70◦.
• PM therefore related to Mp.
10 20 30 40 50 60 70 800
0.2
0.4
0.6
0.8
1Damping ratio versus PM
Phase margin
Dam
ping
ratioζ
0 10 20 30 40 50 60 70 800
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1Overshoot fraction versus PM
Phase margin
Mp,o
vers
hoot
• Gain-phase relationship: For minimum-phase systems,6 G( jω) ≈ n× 90◦ where n = slope of log-log plot of gain. (n = −1 if
slope = −20dB/decade, n = −2 if slope = −40dB/decade . . . )
• Therefore want slope at gain crossover ≈ −20dB/decade for decent
phase margin.
Lecture notes prepared by Dr. Gregory L. Plett