Lecture5 Ipd462
Lecture5 Ipd462
Lecture 5
Reference Feedforward, Disturbance Feedforward,
Structural Limitations
March, 2023
[email protected] Lecture 5 1 / 37
References:
K. J. Åström and R. Murray. Feedback Systems: An introduction for scientists
and engineers. Princeton University Press, 2008.
G. C. Goodwin, S. F. Graebe, and M. E. Salgado. Control System Design.
Prentice Hall, Upper Saddle River, NJ, 2001.
M. M. Seron, J. H. Braslavsky, and G. C. Goodwin. Fundamental Limitations in
Filtering and Control. Springer-Verlag, 1997.
Acknowledgement
This course is based on the material of Professor Juan C. Aguëro, who belongs to the
Electronic Engineering Department at Universidad Técnica Federico Santa María.
[email protected] Lecture 5 2 / 37
Outline
1 Reference Feedforward
2 Disturbance Feedforward
[email protected] Lecture 5 3 / 37
One-degree-of-freedom control system
Di Do
+ +
R E U + Y
C Go
P +
− +
C=
L
Bo
Go =
Ao +
+
Dn
Y = To (R − Dn ) + Sio Di + So Do
U = Suo (R − Dn − Do ) − To Di
[email protected] Lecture 5 4 / 37
Effect of zeros on system response
Although the location of the poles determines the nature of system modes, it is the
location of the zeros which determines the proportion in which these modes are com-
bined. These combinations may look completely different from the individual modes.
[email protected] Lecture 5 5 / 37
Effect of zeros on system response
Example
Consider a transfer function H given by
s+c
H= , c>0
c(s + 1)(s + 2)
This structure allows us to study the effects of a variable zero location, without
affecting the location of the poles and the d.c. gain.
3
c = 0.1
c = 0.25
c = 1.5
2 c = 10
0
0 1 2 3 4 5 6 7 8
Time[s]
[email protected] Lecture 5 6 / 37
Agenda
1 Reference Feedforward
2 Disturbance Feedforward
[email protected] Lecture 5 7 / 37
Reference Feedforward
Reference Feedforward
We can use a two-degree-of-freedom architecture to improve reference tracking. The
essential idea of reference feedforward is to use H to invert To at certain key frequen-
cies i.e. so that HTo = 1 at the poles of the reference model.
Two-degree-of-freedom architecture
Di Do
+ +
R R̄ E U + Y
H + C Go
− +
+
+
Dn
The Feedforward control element is in the forward path of the feedback loop.
[email protected] Lecture 5 8 / 37
Reference Feedforward
The tracking performance can be quantified through the following equations (assuming
disturbances Di , Dn , and Do are zero)
Y = HTo R
U = HSuo R
R R̄ E U Y
H + C Go
−
R R̄ Y
H To
We can now shape the sensitivity from R to Y independent of the other sensitivities.
[email protected] Lecture 5 9 / 37
Reference Feedforward
[email protected] Lecture 5 10 / 37
Reference Feedforward
The key to the reference feedforward controller is that the controller H is not in
the closed loop, so it does not affect the roots of the characteristic equation of the
original system.
Poles and zeros of H may be selected to add, or cancel, poles and zeros of the
closed loop transfer function, To .
The essential idea of reference feedforward is to use H to invert To at certain key
frequencies.
Note that, by this strategy, one can avoid using high gain feedback to bring
To (ωi ) to 1.
Note also the use of reference feedforward in this way does not provide perfect
tracking if there is a change in the model.
[email protected] Lecture 5 11 / 37
Reference Feedforward
Performance of a feedback loop can be made robust by choosing the B.W. of To small
Again, key idea ⇒ Inversion. However, we now invert To
H = FR [To ]−1
For regulators, which have constant set points (and have integral action), has no
benefit.
[email protected] Lecture 5 12 / 37
Agenda
1 Reference Feedforward
2 Disturbance Feedforward
[email protected] Lecture 5 13 / 37
Disturbance Feedforward
Dg
Gf
+ +
R + + U + Y
C Go1 Go2
−
[email protected] Lecture 5 14 / 37
Disturbance Feedforward
Also,
U = −Suo (Go2 + Gf )Dg .
Gf must be stable and proper (it is open loop control).
What should Gf be? To reject disturbances, i.e. Y = 0, ideally
Go1 Gf = −1
∴ Gf = −[Go1 ]−1
Gf would be expected to be high pass as Go1 will typically possess a low pass
characteristic.
Relative degree? Will have to include “fast” poles in Gf to make it proper.
Gives more flexibility in the design as trade-offs can be relaxed.
[email protected] Lecture 5 15 / 37
Agenda
1 Reference Feedforward
2 Disturbance Feedforward
[email protected] Lecture 5 16 / 37
Structural Limitations - Open Loop Poles and Zeros
Preliminary concepts
Laplace Transform: For causal systems
Z ∞
F(s) = f (t)e−st dt
0
When s → 0
Z ∞
f (t)dt = lim F(s)
0 s→0
[email protected] Lecture 5 17 / 37
Structural Limitations - Open Loop Poles and Zeros
Preliminary concepts
Change of sign:
Z ∞
f (t)dt = 0, → f (t) changes sign (Positive and negative)
0
1 −(s+a)t ∞
Z ∞
F(s) = e−at e−st dt = − e
0 s+a 0
1 ∞
F(s) = − e−(σ +ar )t e−j(ω+ai )t
σ + jω + ar + jai 0
Then, to converge at the upper limit σ + ar > 0 or equivalently σ > −ar . That is:
[email protected] Lecture 5 18 / 37
Structural Limitations - Open Loop Poles and Zeros
We next study the effect of open loop poles and zeros on achievable performance
We shall see that open loop poles and zeros have a dramatic (and predictable)
effect on closed loop performance.
We begin by examining the so-called interpolation constraints which show how
open loop poles and zeros are reflected in the poles and zeros of the closed loop
sensitivity functions.
Go C Bo P Go Bo L
To = = Sio = =
1 + Go C Ao L + Bo P 1 + Go C Ao L + Bo P
1 Ao L C Ao P
So = = Suo = =
1 + Go C Ao L + Bo P 1 + Go C Ao L + Bo P
[email protected] Lecture 5 19 / 37
Structural Limitations - Open Loop Poles and Zeros
Observations
1 The nominal complementary sensitivity To has a zero at all uncancelled zeros of
Go .
[email protected] Lecture 5 20 / 37
Structural Limitations - Open Loop Poles and Zeros
(I) Effect of open loop integrators
If Ao L = sk (Ao L)′ then
1 sk (Ao L)′
So = = k
1 + Go C s (Ao L)′ + Bo P
Consider that the error signal is e(t) = r(t) − y(t) = r(t) − To r(t) = (1 − To )r(t) =
So r(t), then E = So R. For a unit step input R = 1/s we have
1 sk (Ao L)′
lim e(t) = lim sE = lim sSo = lim k = 0, k≥1
t→∞ s→0 s→0 s s→0 s (Ao L)′ + Bo P
Thus, e(t) changes sign, and this implies overshoot (y(t) ≥ r(t))
[email protected] Lecture 5 21 / 37
Structural Limitations - Open Loop Poles and Zeros
Ao L = si (Ao L)′ i ≥ 1
lim (Ao L)′ = c0 ̸= 0
s→0
lim (Bo P) = c1 ̸= 0
s→0
i.e. the plant-controller combination has i poles at the origin. Then, for a step output
disturbance or step set point, the control error, e(t), satisfies
lim e(t) = 0 ∀i ≥ 1
t→∞
Z ∞
e(t)dt = 0 ∀i ≥ 2
0
[email protected] Lecture 5 22 / 37
Structural Limitations - Open Loop Poles and Zeros
Lemma: (cont.)
Also, for a negative unit ramp output disturbance or a positive unit ramp reference, the
control error, e(t), satisfies
c0
lim e(t) = for i = 1
t→∞ c1
lim e(t) = 0 ∀i ≥ 2
t→∞
Z ∞
e(t)dt = 0 ∀ i ≥ 3
0
[email protected] Lecture 5 23 / 37
Structural Limitations - Open Loop Poles and Zeros
Say we want to eliminate the effect of ramp input disturbances in steady state
This can be achieved by placing 2 integrators in the controller.
However, we then see that the error to a step reference change must satisfy
Z∞
e(t)dt = 0
0
This, in turn, implies that the error must change sign, i.e. overshoot must occur.
Thus it is impossible to have zero steady state error to ramp type disturbances
with no overshoot to a step reference.
[email protected] Lecture 5 24 / 37
Structural Limitations - Open Loop Poles and Zeros
L = si (L)′ i ≥ 1
lim (L)′ = li ̸= 0
s→0
lim (P) = p0 ̸= 0
s→0
the controller alone has i poles at the origin. Then, for a step input disturbance, the
control error, e(t), satisfies
lim e(t) = 0 ∀i ≥ 1
t→∞
Z ∞
e(t)dt = 0 ∀i ≥ 2
0
[email protected] Lecture 5 25 / 37
Structural Limitations - Open Loop Poles and Zeros
Lemma: (cont.)
Also, for a negative unit ramp input disturbance, the control error, e(t), satisfies
li
lim e(t) = for i = 1
t→∞ p0
lim e(t) = 0 ∀i ≥ 2
t→∞
Z∞
e(t)dt = 0 ∀i ≥ 3
0
[email protected] Lecture 5 26 / 37
Structural Limitations - Open Loop Poles and Zeros
Z ∞
e(t)dt = lim E
0 s→0
1
= lim So (for unit step)
s→0 s
=0
A = B!
The above holds for a one d.o.f. feedback control system. Overshoot can actually be
avoided if the architecture is changed to a two-degree-of-freedom control system.
[email protected] Lecture 5 27 / 37
Structural Limitations - Open Loop Poles and Zeros
However, it turns out that zeros in the right half plane have an even more
dramatic effect on achievable transient performances of feedback loops.
Hence, we next develop a series of integral constraints that apply to the transient
response of feedback systems having various combinations of open loop poles
and zeros.
[email protected] Lecture 5 28 / 37
Structural Limitations - Open Loop Poles and Zeros
evaluating at s = zo we have
Z ∞
Y(zo ) = To (zo )R(zo ) = y(t)e−zo t dt
0
Thus, y(t) changes sign (e−zo t ≥ 0), and this implies undershoot.
[email protected] Lecture 5 29 / 37
Structural Limitations - Open Loop Poles and Zeros
(III) Effect of Minimum phase zeros on the right of closed loop poles
Recall that E = So R, and consider zo is minimum phase zero located to the right of
closed loop poles. Then
Z ∞
E= e(t)e−st dt = So R
0
evaluating at s = zo we have
Z ∞
e(t)e−zo t dt = So (zo )R(zo )
0
1
Z ∞
e(t)e−zo t dt =
0 zo
If zo < 0 → e(t) < 0. Thus, e(t) changes sign (e−zo t ≥ 0), and this implies overshoot.
[email protected] Lecture 5 30 / 37
Structural Limitations - Open Loop Poles and Zeros
evaluating at s = ηo we have
Z ∞
E(ηo ) = So (ηo )R(ηo ) = e(t)e−ηo t dt
0
Thus, e(t) changes sign (e−ηo t ≥ 0), and this implies overshoot.
[email protected] Lecture 5 31 / 37
Structural Limitations - Open Loop Poles and Zeros
Lemma:
Consider a feedback control loop having stable closed loop poles located to the left of
−α for some α > 0. Also assume that the controller has at least one pole at the origin.
Then, for an uncancelled plant zero z0 or an uncancelled plant pole η0 to the right of
the closed loop poles, i.e. satisfying Re{z0 } > −α or Re{η0 } > −α respectively, we
have
(i) For a positive unit reference step or a negative unit step output disturbance, we
have
Z∞
1
e(t)e−z0 t dt =
z0
0
Z∞
e(t)e−η0 t dt = 0
0
[email protected] Lecture 5 32 / 37
Structural Limitations - Open Loop Poles and Zeros
(cont.)
(ii) For a positive unit step reference and for z0 in the right half plane, we have
Z∞
y(t)e−z0 t dt = 0
0
The above integral constraints show that (irrespective of how the closed loop
control system is designed) the closed loop performance is constrained in various
ways.
[email protected] Lecture 5 33 / 37
Structural Limitations - Open Loop Poles and Zeros
A real stable (LHP) zero to the right of all closed loop poles produces overshoot
in the step response.
A real unstable (RHP) zero always produces undershoot in the step response.
The amount of undershoot grows as the zero approaches the origin.
Any real open loop pole to the right of all closed loop poles will produce
overshoot in a one d.o.f. control architecture.
Conclusion
To avoid poor closed loop transient performance:
1 The bandwidth should in practice be set less than the smallest non-minimum
phase zero.
2 It is advisable to set the closed loop bandwidth greater than the real part of any
unstable pole.
[email protected] Lecture 5 34 / 37
Structural Limitations
The limitations arising from these effects are fundamental within the given
architecture
This suggests that the way to overcome these limitations is to consider changing
the basic architecture of the problem.
We have only examined the effects with respect to a one d.o.f. architecture.
[email protected] Lecture 5 35 / 37
Structural Limitations
For example, open loop poles in the RHP usually induce slow stable zeros in the
controller which lead to overshoot in response to a step input.
With a two d.o.f. controller it is possible to cancel these zeros outside the loop.
Note that they remain a difficulty inside the loop and thus contribute to design
trade-offs regarding robustness, disturbance rejection, etc.
[email protected] Lecture 5 36 / 37
Structural Limitations - Example
Example
Effect of Two Degree of Freedom Architecture on Closed Loop Response with PI
Control
Consider the feedback control of plant with a PI controller:
1 2s + 1
Go = ; C =
s s
Closed loop poles are (−1; −1). A controller zero is at (−0.5).
1
If we prefilter the reference by H = 2s+1 , then no overshoot occurs in response
to a step change in the reference signal.
one d.o.f
two d.o.f
1
0.5
0
0 1 2 3 4 5 6 7 8 9 10
Time[s]
[email protected] Lecture 5 37 / 37