Description
Frequency Response
F(s) Σ G(s) Σ H(s) Σ
−1
r u
d n
y
Figure 1: A standard control system.
1. Consider the state-space system
x˙(t) = Ax(t) + Bu(t)
y(t) = Cx(t) + Du(t),
which has solution
y(t) = CeAtx(0) + C
Z t
0
e
A(t−τ)Bu(τ )dτ + Du(t).
Assume that there is only one input and one output.
(a) Prove that
e
AtA = AeAt
and, as a consequence, that
e
At(sI − A)
−1 = (sI − A)
−1
e
At
.
Hint: for the first part of this problem, use the definition of the matrix exponential; for
the second part of this problem, use the fact that
MN −1 = (NM−1
)
−1
for any two invertible matrices M and N.
(b) Suppose that u(t) = e
st, where s is not an eigenvalue of A. Prove that
y(t) = CeAt
x(0) − (sI − A)
−1B
+
C(sI − A)
−1B + D
e
st
.
(c) Suppose that the system is stable. Prove that the transfer function from u to y is
H(s) = C(sI − A)
−1B + D.
(d) Suppose that the system is stable and that u(t) = sin(ωt). Prove that the steady-state
output is
yss(t) = |H(jω)|sin(ωt + ∠H(jω)).
(e) For the standard control system in Figure 1, compute the closed-loop transfer functions
Try(s), Tdy(s), Tny(s), Tdu(s), and Tnu(s) in terms of F(s), G(s), and H(s).
2. You have seen that the motion of a robot arm with one revolute joint can be described in
state-space form as
x˙ =
0 1
0 −1/5
x +
0
1/5
u
y =
1 0
x
where the state elements are the angle (x1) and angular velocity (x2) of the joint, the input
u is a torque applied to the arm at the joint, and the output y is a measurement of the angle.
(a) Open Loop
i. Compute (by hand) the transfer function H(s) from u to y.
ii. Compute the Bode plot of H(s), both gain and phase. You should discover that the
open-loop system acts as a low-pass filter—high-frequency inputs are attenuated.
iii. Compute the crossover frequency, i.e., the frequency ωc at which |H(jωc)| = 1.
Please do so by hand, but check your answer with the Bode plot.
iv. Compute the response y(t) to the input u(t) = sin(ωct) for the initial condition
x(0) =
0
0
.
Plot u(t), y(t), and yss(t)—computed as in Problem 1(d)—on the same figure. Verify
your result by implementing u(t) in ControlLoop in hw7prob02.m. Submit your
ControlLoop function and a snapshot of the figure after the simulation has ended.
Repeat for u(t) = sin(0.1ωct) and for u(t) = sin(10ωct). What do you notice?
v. (EXTRA CREDIT) You should have found that y(t) and yss(t) don’t quite
match—y(t) converges to something of the form yss(t) + m. In other words, the
formula from Problem 1d doesn’t quite work in this case. Explain why. Derive an
expression for yss(t) that does work, and verify your answer by plotting u(t), y(t),
and yss(t) on the same figure.
(b) Closed Loop
i. Suppose you apply a controller of the form
u = −Kxˆ + kreferencer
and an observer of the form
˙xb = Axb + Bu − L(Cxb − y)
for some choice of
K =
k1 k2
and
L =
`1
`2
,
where kreference is chosen so that y = r in steady-state. Compute the transfer
functions F(s) and G(s) that, along with H(s) from part a.i, would express the
closed-loop system in the standard form of Figure 1. Leave each transfer function in
terms of k1, k2, `1, and `2, but simplify as much as possible (i.e., eliminate common
factors from each numerator and denominator).
ii. Compute the closed-loop transfer functions Try(s), Tdy(s), Tny(s), Tdu(s), and Tnu(s).
Leave each transfer function in terms of k1, k2, `1, and `2, but simplify as much as
possible (i.e., eliminate common factors from each numerator and denominator).
Compare the denominator of each transfer function to the characteristic equations
associated with A − BK and A − LC. How are the roots of each denominator (i.e.,
the “poles”) related to the eigenvalues of the closed-loop system?
iii. Compute K and L so that the closed-loop system exhibits a time-to-peak of approximately 1.0 seconds and a peak overshoot of less than 10%.
iv. Compute Try(s) for the K and L you chose. Compute the Bode plot (gain and
phase). Find the bandwidth, i.e., the frequency ωbw at which
|Try(jωbw)| = 1/
√
2.
Please do so by hand, but check your answer with the Bode plot.
v. Simulate the closed-loop system in response to the reference signal
r(t) = (π/2) sin(0.1ωbwt)
for the initial condition
x(0) =
0
0
xb(0) =
−1
2
.
Plot r(t), y(t), and yss(t) on the same figure. Verify your result by implementing
your controller and observer in ControlLoop in hw7prob02.m. You should call
hw7prob02(rmag,rfreq)
from the MATLAB prompt to set the magnitude and frequency of r(t). Submit your
ControlLoop function and a snapshot of the figure after the simulation has ended.
Repeat for u(t) = sin(10ωbwt). What do you notice?
vi. Compute Tdy(s), Tny(s), Tdu(s), and Tnu(s) for the K and L you chose. Draw a
Bode plot for each transfer function (gain only). In each case, say whether the
transfer function is low-pass, band-pass, or high-pass.
vii. Redesign K and L so that the closed-loop system exhibits a time-to-peak of approximately 0.1 seconds (i.e., ten times smaller) and a peak overshoot of less than 10%.
How do the Bode plots in parts iv and vi change?
m1 = 2
k1 = 8
b1 = 1
m2 = 2
k2 = 8
b2 = 1
u
3. You have seen that the spring-mass-damper system shown above can be described in statespace form as
x˙ =
0 0 1 0
0 0 0 1
−8 4 −1 0.5
4 −4 0.5 −0.5
x +
0
0
0
0.5
u
y =
0 1 0 0
x
where x1 and x2 are the absolute displacements of each mass from their equilibrium positions,
x3 and x4 are the corresponding velocities of each mass, u is the applied force, and y is a
measurement of x2.
(a) Open Loop
i. Compute the transfer function H(s) from u to y.
ii. Compute the Bode plot of H(s), both gain and phase. You should discover that
the open-loop system acts as a band-pass filter—low-frequency and high-frequency
inputs are attenuated.
iii. Compute the resonant peak, i.e., the frequency ωmax at which |H(jωmax)| is biggest.
iv. Compute the response y(t) to the input u(t) = sin(ωmaxt) for the initial condition
x(0) =
0
0
0
0
Plot u(t), y(t), and yss(t)—computed as in Problem 1(d)—on the same figure. Verify
your result by implementing u(t) in ControlLoop in hw7prob03.m. Submit your
ControlLoop function and a snapshot of the figure after the simulation has ended.
(b) Closed Loop
i. Design a controller (with integral action) of the form
u = −Kxˆ − kintegralv
where
v˙ = y − r
and an observer of the form
˙xb = Axb + Bu − L(Cxb − y)
so the closed-loop system exhibits a 5%-settling time of approximately 2 seconds.
ii. Compute the transfer functions F(s) and G(s) that, along with H(s) from part a.i,
would express the closed-loop system in the standard form of Figure 1.
iii. Compute Try(s) and draw the Bode plot (gain and phase). Find the bandwidth and
the zero-frequency gain. What kind of filter does the closed-loop system act like?
iv. Compute Tdy(s), Tny(s), Tdu(s), and Tnu(s). Draw the Bode plot for each transfer
function (gain only). In each case, say whether the transfer function is low-pass,
band-pass, or high-pass.
v. Simulate the closed-loop system in response to:
r(t) = 3
d(t) = sin (t/50)
n(t) = (1/5) sin (50t)
for the initial condition
x(0) =
0
0
0
0
xb(0) =
−0.4
0.3
0.5
−0.2
Plot r(t), y(t), and yss(t) on the same figure. Verify your result by implementing
your controller and observer in ControlLoop in hw7prob03.m. You should call
hw7prob03(rmag,rfreq,dmag,dfreq,nmag,nfreq)
from the MATLAB prompt to set the magnitude and frequency of r(t), d(t), and
n(t). Submit your ControlLoop function and a snapshot of the figure after the
simulation has ended.
vi. (EXTRA CREDIT) Adjust your controller and observer design to reduce the
sensitivity of the closed-loop system to low-frequency disturbance loads and highfrequency measurement noise. How much can you do this without sacrificing performance? (I.e., without increasing the 5%-settling time?) Repeat parts iii-v with
your new design and comment on the difference.
4. (EXTRA CREDIT)
(a) Draw the Bode plot—both gain and phase—for the following transfer function:
H(s) = 2000(s + 2)
(s + 0.01)(s
2 + 40s + 40000)
Do this first by hand, then confirm your result with MATLAB. Turn in both your sketch
and the MATLAB plot.
(b) What transfer function would have produced the Bode plot shown in Figure 2? Use the
smallest number of poles and zeros that give a reasonable fit.
10−2 10−1 100 101 102 103 −90
−80
−70
−60
−50
−40
−30
−20
−10
0
PHASE
10−2 10−1 100 101 102 103 10−3
10−2
10−1
100
101
MAGNITUDE
Figure 2: Bode plot (frequency in radians, magnitude in absolute, phase in degrees).
6