Anda di halaman 1dari 9

ECE382/ME482 Spring 2005 Homework 3 Solution March 7, 2005 1

Solution to HW3

AP4.5 We are given a block diagram in Figure AP4.5 on page 237 of the text and asked to
find steady state errors due to (a) a step disturbance and (b) a ramp input. We are then
asked in part (c) to find a suitable value of the gain K, not more than 10, and plot the
response to the unit step disturbance.
Solution:

(a) First we note that when the input R(s) is zero, the error E(s) is equal to the negative
of the output Y (s). The transfer function from the disturbance input to the output
is determined by noting that in this case, the block containing the transfer function
1/(s + 2)2 is in the feedforward path and the remaining two blocks are in the feedback
path. Noting that the feedback into the first summer is negative, we thus have after
simplification a block with gain K/s in the feedback path. Setting the input R(s)
to zero and noting that the feedback into the second summer is positive we have
transfer function from disturbance input D(s) to output Y (s) of
1
Y (s) (s+2)2 s
= = 3 2
. (1)
D(s) 1 s(s+2)2
K s + 4s + 4s + K

The steady state error due to a step disturbance R(s) = 1/s is thus, by the final value
theorem,  
1 s
ess = lim s = 0. (2)
s0 s s3 + 4s2 + 4s + K

(b) The transfer function from the input R(s) to the error E(s) is

E(s) 1 s(s + 2)2


= K
= (3)
R(s) 1 + s(s+2)2 s(s + 2)2 + K

where we have noted that all of the blocks are in the feedback path. Then the steady state
error corresponding to a ramp input is

s(s + 2)2
 
1 4
ess = lim s 2 = . (4)
s0 s s(s + 2)2 + K K

This indicates that increasing the gain K decreases the steady state error resulting from
a ramp input.

(c) We dont have much information here from which to determine what a suitable value of
K should be. Lets assume that since we were asked about steady state error due to a
ramp input, that is important, so we should probably choose a large gain (close to our
maximum of 10) so long as the system remains stable with this gain value. (We can check
that in Matlab by executing the command roots([1 4 4 K]), after assigning our chosen
value to the variable K, and making sure that all of the roots have negative real part. In
fact they do for any value of K between 0 and 10. We will learn a method for determining
this conclusively in Chapter 6.
ECE382/ME482 Spring 2005 Homework 3 Solution March 7, 2005 2

To see whether there is a tradeoff involved, lets have Matlab plot responses to step distur-
bances for several values of K. Using the following Matlab code we obtain the plot shown
in Figure 1.

clf;for k=[1:10];[y,t]=step(tf([1 0],[1 4 4 k]));plot(t,y),hold on; end;


grid
xlabel(Time (s))
ylabel(e(t))
title(Error due to step disturbance for K=1,2,...,10)
print -deps AP4.5c

Figure 1: Plot of Output Error Corresponding to Step Disturbance for a Range of Gain Values
Error due to step disturbance for K=1,2,...,10
0.25

0.2

0.15

0.1
e(t)

0.05

0.05

0.1
0 5 10 15 20 25 30 35
Time (s)

Now by plotting the results for individual gains K we can see that the smallest error is
obtained for the largest K so given the information we have, K = 10 appears to be the
best choice. (That doesnt mean a smaller positive gain is unsuitable. We are not given
any information to judge that.) If we had tested gains less than one, we would have seen
that the maximum error increases with increasing gain. If we did not want any oscillation
at all, we could see from the plot that we could achieve this by choosing a gain of 1, but
ECE382/ME482 Spring 2005 Homework 3 Solution March 7, 2005 3

there would be no reason to choose a gain less than one since that would increase the
maximum error.

AP4.7 In this problem we are given a block diagram of a system having both disturbance and
sensor noise inputs. We are asked to determine the effect of (a) the disturbance and (b)
the sensor noise on the output. We are then asked to select a value of the gain K in the
range 1 to 100, inclusive that minimizes the effects of step disturbances and sensor noise
on the steady state error. In all parts of the problem we will assume that the error E(s)
is defined to be the output of the leftmost summer.
Solution: Well apply the final value theorem to compute the steady state errors due to
step disturbance and noise inputs from the transfer functions obtained in parts (a) and
(b). Then well use this information to obtain an answer to part (c).

(a) The transfer function from the disturbance to the output is

Y (s) 2s
= (5)
D(s) s(s + 2) + 2K

so a step input of D(s) = A/s leads to a steady state error of


 
A 2s
ess = lim s = 0, (6)
s0 s s(s + 2) + 2K
i.e. the value of the gain K does not affect the value of the steady state error due to
a step disturbance.
(b) The transfer function from the noise to the output is
2K
Y (s) s(s+2) 2K
= = (7)
N (s) 1 s(s+2)
2K s(s + 2) + 2K

so a step input of N (s) = B/s leads to a steady state error of


 
B 2K
ess = lim s = B, (8)
s0 s s(s + 2) + 2K
and again the gain K has no effect on the steady state error.
(c) Weve just shown that this was a trick question. There is no best value for K in terms
of minimizing the effect of step noise and disturbance inputs on steady state error.
As in the previous problem, we could plot the error as a function of time for different
values of K and choose one that seems a reasonable compromise between the reducing
the maximum error and reducing the settling time (the time for the error to become
small a more precise definition will be given in Chapter 5).

AP4.8 Given the block diagram in Figure AP4.8, we are asked to determine (a) the transfer
function T (s) of the system, (b) the sensitivity SbT of the transfer function T (s) to variation
in the parameter b, and finally we are asked to choose a gain K [1, 50] so that the
disturbance effects and the sensitivity are both minimized.
Solution:
ECE382/ME482 Spring 2005 Homework 3 Solution March 7, 2005 4

(a) The transfer function is


Kb
Y (s) Kb
T (s) = = s+1Kb = . (9)
R(s) 1 + s+1 s + 1 + Kb

(b) The sensitivity is thus


N b D b
SbT = SbN SbD = (10)
b N b D
where N and D are the numerator and denominator of the transfer function T . We
obtain
Kb Kb s+1
SbT = = . (11)
Kb s + 1 + Kb s + 1 + Kb
(c) The transfer function from the disturbance to the output is
b
Y (s) b
= s+1Kb = (12)
D(s) 1 + s+1 s + 1 + Kb

so if we define the error to be the output of the leftmost summer, thus e(t) = y(t)
we have the following response to a unit step input:
 
1 b b
ess = lim s = . (13)
s0 s s + 1 + Kb 1 + Kb

We now have shown that both SbT and ess resulting from a step disturbance decrease
with increasing K so we should choose the maximum allowable K, namely K = 50.

DP4.6 We are given the system whose block diagram is shown in Figure DP4.6 and asked
to consider the effect of various choices of controllers on steady state error for unit step
disturbances. In particular, we are asked to determine appropriate values of the controller
gains for each case. It is noted that the parameter J represents the pitching moment of
inertia, hence is always positive.
Solution:

(a) When Gc (s) = K, the closed loop transfer function is


Y (s) K
T (s) = = 2
. (14)
R(s) Js + K
p
Accordingly, if K is positive, the roots of the denominator are s = j K/J so both
poles are on the j axis and the system
p is marginally stable. If K is negative, the
roots of the denominator are s = K/J so one pole is in the right-half plane and
the system is unstable.
(b) The steady state error to a unit step disturbance when Gc (s) = K can be determined
by first obtaining the transfer function from D(s) to Y (s) then applying the final
value theorem. The transfer function is
1
Y (s) 2 1
= Js K = 2+K
. (15)
D(s) 1 + Js2 Js
ECE382/ME482 Spring 2005 Homework 3 Solution March 7, 2005 5

We can not use the final value theorem to calculate the steady state error because
we have poles on the imaginary axis. (Refer to the explanation on page 50 of the
conditions under which the final value theorem can be applied.) In fact, since the
system will oscillate indefinitely, there is no final value.
(c) Now supposing that the controller is instead G(s) = KP + KD s we obtain the closed
loop system transfer function
Y (s) Kp + KD s
T (s) = = 2
. (16)
R(s) Js + KD s + KP
The poles are now q
KD 2 4JK
KD P
s= (17)
2J
so for stability we need to consider three cases.
(i) The expression under the square root is negative. Then the (s) = KD /(2J) so
the system is stable if and only if KD > 0 (since J > 0). The expression under
the square root is negative if 4JKP > KD 2 , i.e. if K > K 2 /(4J), so the system
P D
2
is stable if both KD > 0 and KP > KD /(4J) are true.
(ii) The expression under the square root is negative. This occurs when KD 2 > 4JK .
P
First, suppose KP > 0. Then the square root will always be less than KD , so,
as long as both KP and KD are positive, the system will be stable. (This is a
weaker condition than the one we found above.) Next, suppose KP is negative.
In that case, the square root would be greater than KD so regardless of whether
KD were positive or negative, one of the roots would end up positive. Finally,
suppose KP = 0. If KP = 0 then one of the roots will be zero and the system
will be marginally stable.
(iii) The expression under the square root is zero. Then the system is stable if and
only if KD > 0.
In summary, weve found that for stability we need both gains strictly positive.
(d) We assume here that KD and KP are positive. Now the transfer function from the
disturbance D(s) to the output (s) is
1
(s) Js2 1
= KP +KD s
= (18)
D(s) 1+ Js2 + KD s + KP
Js2

so the steady state error resulting from a step disturbance is


 
1 1 1
ess = lim s = (19)
s0 s Js2 + KD s + KP KP

MP4.3 We are given a closed loop transfer function


10K
T (s) = (20)
s2 + 20s + 10K
and asked to obtain and plot step responses for K = 10, 100, and 500. We are also asked
to develop a table comparing percent overshoot, settling time, and steady state error for
ECE382/ME482 Spring 2005 Homework 3 Solution March 7, 2005 6

these values of K. This is a little complicated since we havent yet defined settling time and
percent overshoot, so you were allowed some leeway in your answers. Heres the answer to
the problem using the definitions given in Chapter 5.
Solution: First, lets look at how these values of K affect the poles (roots of the denom-
inator) of the system transfer function. Using Matlab we find that for K = 10 we obtain
unequal poles in the left half plan; for K = 100 we obtain a repeated pole of multiplicity
2 in the left half plane; and for K = 500 we obtain a complex pair of poles in the left half
plane as shown in the following Matlab transcript.

>> roots([1 20 10])

ans =

-19.4868
-0.5132

>> roots([1 20 100])

ans =

-10.0000
-10.0000

>> roots([1 20 500])

ans =

-10.0000 +20.0000i
-10.0000 -20.0000i

Accordingly, we expect different behavior in the three cases. By calculating the damping

ratio and natural frequency we can tell more. The natural frequency will be n = K and
the damping ratio will be = 20/(2n ) = 10/ K so the system is overdamped ( > 1)
if K = 10, critically damped ( = 1) if K = 100, and underdamped ( < 1) if K = 500.
Accordingly we expect to see overshoot only in the case K = 500. Note that our findings
agree with the discussion in Section 2.4, on p. 50 of the text. There it was noted that if
< 1 there are (distinct) real roots; if = 1 there are real repeated roots; and if < 1
there is a complex conjugate pair of roots.
Before we plot the step responses, lets find out more about the sort of responses we expect.
The steady state output for a step input will be
 
1
yss = lim s T (s) = T (0) = 10. (21)
s0 s

(This means that the steady state error ess = 1 yss = 9 does not depend on the value
of K.)
ECE382/ME482 Spring 2005 Homework 3 Solution March 7, 2005 7


The 2% settling time given by (5.13) in the text is Ts,2% = 4/(n ). Since n = K and
= 20/(2n ) here, we would seem to have
4
Ts,2% = (22)
10
independent of K. However, the plot of the step responses clearly shows that this is not
the case.

>> t=[0:.01:12];
>> clf;
>> for k=[10,100,500];[y,t]=step(tf([10*k],[1 20 k]),t);plot(t,y),hold on;end;
>> xlabel(Time (s));
>> ylabel(y(t))
>> title(MP4.3 Step responses for K=10, 100, and 1000)
>> print -deps MP4.3.eps

What went wrong here? The problem is that equation (5.13) for the settling time was
derived assuming that the system response was a sinusoid multiplied by en t . This
is only true if the second order system is underdamped. From the analysis above and
the computed step responses we determine the values shown in Table for the percent
overshoot, settling time and steady state error.

Table 1: Table of Response Parameters for MP4.3


Gain Percent Overshoot 2% Settling Time (s) Steady-State Error
10 0 12.17 -9
100 0 0.85 -9
500 20.74 0.36 -9

MP4.7 We are given a block diagram in Figure MP4.7 of a closed loop system with a controller
Gc (s). We are asked to compare the response of the closed-loop system to a unit step
input for each of the two possible controllers.
Solution: We will compare the steady state errors first by hand and then using the Matlab
code shown in the transcript below.

(a) Using the proportional controller Gc (s) = K = 2 we obtain


 
1 1 1 1
ess = lim 10K
= = . (23)
s0 s 1 + s+10 1+K 3

(b) Using the proportional-integral controller Gc (s) = K0 + K1 /s = 2 + 20/2 we obtain

s2 + 10s
 
1 1
ess = lim = lim = 0. (24)
s0 s 1 + 10Ks+10
0 +K1 /s s0 s2 + 10(1 + K0 )s + K1
ECE382/ME482 Spring 2005 Homework 3 Solution March 7, 2005 8

Figure 2: Plot of Output Corresponding to Step Disturbance for a Range of Gain Values in
MP4.3
MP4.3 Step responses for K=10, 100, and 1000
14

12

10

8
y(t)

0
0 2 4 6 8 10 12
Time (s)

(c) Obviously by using a more complex controller we have managed to reduce the steady
state error for a step input to zero.

Here are the Matlab calculations, which were, actually, superfluous except that the problem
requested them. The plot of the step responses for both controllers is shown in Figure 3

>> %MP4.7
>> sysa = feedback(tf([20],[1 10]),1)

Transfer function:
20
------
s + 30

>> sysb = feedback(tf(10*[2 20],[1 10 0]),1)


ECE382/ME482 Spring 2005 Homework 3 Solution March 7, 2005 9

Transfer function:
20 s + 200
----------------
s^2 + 30 s + 200

>> step(sysa,r-,sysb,b-.)
>> print -deps MP4.7.eps

Figure 3: Plots of Step Responses for P and PI Controllers in MP4.7


Step Response
1

0.9

0.8

0.7

0.6
Amplitude

0.5

0.4

0.3

0.2

0.1

0
0 0.05 0.1 0.15 0.2 0.25 0.3
Time (sec)