Anda di halaman 1dari 13

Solutions to Selected problems in Chapter 5

February 9, 2006

Problem 5.1

The rst step in checking closed loop internal stability is to check that there is no cancellation of unstable poles between controller and the plant. If there is, the four sensitivity functions will not be stable system is not internally stable. 5.1.1 The nominal plant model Go is stable and minimum phase (no unstable zero). This implies that no unstable pole-zero cancellation can arise. Hence, it is sufcient to show that the loop is internally stable by showing that To (s) is stable. Since the poles of To (s) are negative, we conclude that the system is internally stable.

Method 2: To do this explicitly, we need to show that the roots of the closed loop characteristic equation , Gcl(s) = 1 + Go(s)C(s) = (So (s))1 all lie in the open left hand plane. Given To (s), we can obtain So (s) as So (s) = 1 To (s) = and we solve for the roots of Gcl Gcl(s) = (s + 2)2 = 0 (s + 2)2 =0 s(s + 4) s(s + 4) (s + 2)2

s = (2, 2).

Note that the roots of Gcl (s)=poles of So (s). So we can as well check that So (s) is stable. 5.1.2 Given To (s) and Go (s) we can obtain C(s) from Suo (s) = So (s)C(s) = To (s)/Go (s). C(s) = To (s) 4(s + 1)2 = Go (s)So (s) s(s + 4)

5.1.3 The plant input u(t) can be computed from U (s) = Suo (s)R(s) = To (s) 4(s + 1)2 R(s) = Go (s) s(s + 2)2 2 1 3 + = 2 s + 2 (s + 2) s t 0

= u(t) = 3e2t 2te2t + 1

Problem 5.3

The Nquist polar plot can be obtained using the MATLAB nyquist command. However, for convenience, the following MATLAB program is used. % PROGRAM TO BUILD THE NYQUIST PLOT OF A TRANSFER % FUNCTION WITH DELAY AND, AT MOST, ONE INTEGRATOR. % num=input(system numerator: ); tau=input(delay: hdel=exp(-i*w1*tau); h1=freqs(num,den,w1); h1=hdel.*h1; ); den=input(system denominator: ); ); w1=input(frequency vector: %delay frequency response %rational part frequency response %overall frequency response

h2=conj(h1); plot(h1);hold; plot(h2); % drawing of the infinite radius semi-circle xx=abs(h1(1));x2=real(h2(1));y2=imag(h2(1));x1=real(h1(1));y1=imag(h1(1)); fi2=atan2(y2,x2);fi1=-fi2;dfi=-abs(2*fi1/1000);fi=[fi2:dfi:fi1]; x=xx*cos(fi);y=xx*sin(fi); plot(x,y,r); hold

NOTE: This program gives the same result as the Nyquist command in MATLAB. 5.3.1 The Nyquist plots for the six cases are shown in Figure 1.
2 4 2 0 2 4 4 2 0 a) 2 4 2 2 0 1 0.5 1

1 b) 2

0.5 c) 1 2 0 2

10

3 0.6 2

5 1 0 0 1 5 2 d) 10 10 0 10 3 2 0 2 e) 4

0.4 0.2 0 0.2 0.4 0.6 0.5 0 0.5 1 f) 1.5

Figure 1: Nyquist polar plots

For cases a), b) and d), the presence of a pole at the origin forces an innite radius semi-circle, they are represented in the picture using a thin line. One can observe that systems b) and e) exhibit special features in the neighborhood of the origin. To understand this better, both polar plots have been zoomed around the origin. The result is shown in Figure 2. The stability of the closed loop can be analyzed using the Nyquist theorem, where we recall that N is the number of encirclements of the (1, 0) point, P is the number of open loop poles in the open right half plane, and Z is the number of closed loop 3

0.1

0.3 0.2

0.05 0.1 0 0 0.1 0.05 b) zoomed 0.1 0.1 0.05 0 0.05 0.1 0.2 0.4 0.2 e) zoomed 0 0.2

Figure 2: Zoomed Nyquist plots

poles in the open right half plane (ORHP). When we apply this theory to each case we have that: a) N = 0, P = 0, thus Z = P N = 0, which implies that the loop is stable. b) N = 0, P = 0, thus Z = P N = 0, which implies that the loop is stable. c) The plot just passes through the (1, 0) point and hence the closed loop system has poles on the imaginary axis. d) The plot encircles the (1, 0) point twice clockwise, i.e. N = 2, the open loop has no poles in the ORHP, i.e. P = 0. Hence, the closed loop has Z = P N = 2 poles in the ORHP, which means that the system is unstable. e) N = 0, P = 0, thus Z = P N = 0, which implies that the loop is stable. f ) The open loop system has two poles in the ORHP, thus P = 2, and the plot does not encircle the (1, 0) point (N = 0). Hence, the closed loop has Z = P N = 2 poles in the ORHP, i.e the closed loop is unstable. 5.3.2 To compute the stability margins and the sensitivity peak, one can use the Nyquist polar plot. This was done for the case b), as shown in Figure 3. From this gure we can estimate Mg 6.37 [dB] and Mf = 30[]. 4

0.8

0.6

0.4 M 0.2
g

0 M
f

0.2

0.4

0.6

0.8

1.5

0.5

0.5

Figure 3: Stability margin and sensitivity peak for case b)

For the other two stable cases, it is easier to compute the margins using the MATLAB command margin. The results are as follows: Case a) In this case Mg = and Mf = 70.5 []. Case e) In this case Mg = 18 [db] and Mf = 42.7 []. The sensitivity peak can also be computed graphically. For case b), we have, form Figure 3, that the sensitivity peak is approximately equal to 2.33. For the other two stable cases we use the MATLAB command tf, to compute the sensitivity function. We then have that: Case a) The sensitivity peak is 1. Case e) The sensitivity peak is 1.86 5.3.3 The Bode diagrams for the six systems areas shown below. Closed loop stability can be studied using Nyquist theory. To do that the number of encirclements of the (1, 0) point has to be computed. This computation is not so straightforward as with polar plots. However, stability margins are easily computed from Bode diagrams, as suggested in Figure 4, for case b).

Problem 5.4

We have that the output is given by Y (s) = To (s)R(s) + So (s)Do (s) (1)

In steady state there will be two components in y(t). One, y0 , is forced by the constant reference, and is given by y0 = T (0) 1 = (1 So (0)) 1 = 1. The second component, ys (t), is forced by the disturbance sine-wave, and in steady state, this component can be computed using phasor analysis. This yields ys (t) = |So (j0.2)| 0.5 sin(0.2t + So (j0.2)) = 0.0467 sin(0.2t + 1.5249) (2)

Thus, the steady state plant output is given by y(t) = 1+0.0467 sin(0.2t+1.5249). See maple le ch5sol.mw. 6

50

Magnitude [dB] Phase []

50 0 100 200 300 400 500 600 2 10

10

10

10

Frequency [rad/s]

Figure 4: Bode diagrams for case b)

a)
60 50 40 20

b)

Magnitude [dB]

30 20 10 0 10 20 90

Magnitude [dB] Phase []


1 0 1

40

20

40

60 0

95

100

Phase []

200

100

300

105

400

110 2 10

10

10

10

500 2 10

10

10

10

Frequency [rad/s]

Frequency [rad/s]

Figure 5: Bode diagrams for cases a) and b)

c)
200 100 150

d)

Magnitude [dB]

Magnitude [dB] Phase []


1

50

100

50

50 200

50 50

150

100

Phase []

150

100

200

50

250

0 0 10

10

300 2 10

10

10

10

Frequency [rad/s]

Frequency [rad/s]

Figure 6: Bode diagrams for cases c) and d)

e)
100 50 0

f)

Magnitude [dB]

100

Magnitude [dB]
0 1

50

200

300

100

400 0

150 100

50

80

Phase []

Phase []

60

100

40

150

20

200 1 10

10

10

0 1 10

10

10

10

Frequency [rad/s]

Frequency [rad/s]

Figure 7: Bode diagrams for cases e) and f)

10

Problem 5.10

The closed loop complementary sensitivity is given by T (s) = G(s)C(s) 1200(s + 3)(s + 5) = 4 1 + G(s)C(s) s + 100s3 + 1201s2 + 9700s + 18000 (3)

5.10.1 The closed loop is internally stable since To (s) is stable (use the MATLAB command roots) and there are no cancellations of unstable poles. 5.10.2 We know that to achieve zero steady state error, the sensitivity S(j) has to be zero in the frequency band where the reference and the disturbances have signicant energy. This can also be interpreted as having an exact model inverse in that frequency band. In this case, the reference has energy (in steady state) only at = 0, and the input disturbance, only at = 1. As shown below this can be achieved by having |C(j)| going to innity in that band. The expression for the error is given by E(s) = So (s)R(s) + Sio (s)Di (s) = So (s)R(s) + So (s)Go (s)Di (s). To have zero error when tracking the reference we require that So (0) = 0. On the other hand, to fully compensate (in steady state) the disturbance, we require that Sio (j1) = 0. Since the plant G(s) is stable and minimum phase, this condition translates into So (j1) = 0. These imply that Go (0)C(0) = Go(j1)C(j1) = . Hence, to have an innite controller gain at those frequencies, it is necessary that C(s) have poles at s = 0 and s = j1. 5.10.3 We rst try the robust stability theorem, i.e. we test the product |To (j)G (j)|. However since we do not know |G (j)|, we use instead its upper bound; we thus try

11

() = |To (j)

j | j + 20

(4)

If we use the complementary sensitivity expression in (3), we can prove, drawing


s the Bode magnitude diagram of To (s) s+20 that () < 1, . Thus, the closed

loop is robustly stable.

Problem 5.11

The introduction of an error in the controller implementation has symmetrical eect on the loop stability to that arising from plant modeling errors. This is due to the fact that the closed loop polynomial depends on the product G(s)C(s). As a preliminary result we have that the nominal sensitivity is given by So (s) = 1 To (s) = s2 s(s + 13) + 13s + 100 (5)

and the open loop transfer function is given by Go (s)C(s) = 100 To (s) = So (s) s(s + 13) (6)

From where we observe that, because the nominal closed loop is internally stable, the open loop transfer function has no unstable poles, except one at s = 0 (all unstable open loop poles should appear as zeros in So (s)). Also the open loop transfer function has no zeros in the closed RHP (all those zeros should appear as zeros in To (s)). We can dene a multiplicative control modeling error C (s) C (s) = C1 (s) Co (s) = Co (s) s+ 1 1 + To (s)C (s) (7)

Thus the true sensitivity, S(s), is given by S(s) = So (s)S (s) where S (s) = (8)

We then observe that given that the nominal closed loop is internally stable, and that the open loop is stable (except for a pole at the origin) and minimum phase, then the real loop would be stable if and only if S(s) is stable. 12

S(s) = So (s)S (s) = So (s)

1 100 1 2 + 13s + 100) (s + )(s 2 + 13s + 100) (s + )(s = So (s) 2 s(s + (13 + )s + 100 + 13) (s + )(s + 13) = 2 s + (13 + )s + 100 + 13

(9)

(10) (11)

Therefore, S(s) is stable for all > 0 (since the denominator is a second order polynomial, the necessary and sucient condition for stability is that all coecients have the same sign).

13

Anda mungkin juga menyukai