problemas4s

41
22419 Control por Computador Grado en Ingenier´ ıa Electr´onica Industrialy Autom´ atica Homework: Analysis of discrete-time control systems December 10, 2013 1. Check the stability of a discrete-time system whose characteristic equation is P (z )= z 3 1.3z 2 0.08z +0.24 = 0 using the modified Routh-Hurwitz test. Solution : For the Routh-Hurwitz (RH) test to be useful for checking the stability of discrete-time systems, variable z must be transformed so that the right-half side of the transformed complex plane becomes again the unstable area. The following bilinear transformation is usually employed to this purpose: z = 1+ w 1 w For this particular case: P (w)= 1+ w 1 w 3 1.3 1+ w 1 w 2 0.08 1+ w 1 w +0.24 = w 3 +2.5758w 2 +0.5354w 0.0707 0.5051w 3 +1.5152w 2 1.5152w +0.5051 P (w)=0 w 3 +2.5758w 2 +0.5354w 0.0707 = 0 The polynomial to study through the RH test is thus P (w)= w 3 +2.5758w 2 +0.5354w 0.0707: w 3 1 0.5354 w 2 2.5758 -0.0707 w 1 0.5628 0 w 0 -0.0707 1

description

control por computador uib

Transcript of problemas4s

Page 1: problemas4s

22419 Control por Computador

Grado en Ingenierıa Electronica Industrial y Automatica

Homework: Analysis of discrete-time control systems

December 10, 2013

1. Check the stability of a discrete-time system whose characteristic equation is P (z) =z3 − 1.3z2 − 0.08z + 0.24 = 0 using the modified Routh-Hurwitz test.

Solution:

For the Routh-Hurwitz (RH) test to be useful for checking the stability of discrete-timesystems, variable z must be transformed so that the right-half side of the transformedcomplex plane becomes again the unstable area. The following bilinear transformation isusually employed to this purpose:

z =1 + w

1− w

For this particular case:

P (w) =

(

1 + w

1− w

)3

− 1.3

(

1 + w

1− w

)2

− 0.08

(

1 + w

1− w

)

+ 0.24

=w3 + 2.5758w2 + 0.5354w− 0.0707

−0.5051w3 + 1.5152w2 − 1.5152w+ 0.5051

P (w) = 0 ⇒ w3 + 2.5758w2 + 0.5354w− 0.0707 = 0

The polynomial to study through the RH test is thus P ′(w) = w3 +2.5758w2 +0.5354w−0.0707:

w3 1 0.5354w2 2.5758 -0.0707w1 0.5628 0w0 -0.0707

1

Page 2: problemas4s

Alberto Ortiz 2

Since there is one sign change along the first column of the RH array, we conclude thesystem is unstable since one root of P ′ lies in the right-half side of the w−plane, and,consequently, one root of P (z) lies outside the unit circle in the z−plane.

2. Check the stability of a discrete-time system whose characteristic equation is F (z) =z3 + z2 + 0.5z + 0.25 = 0 using the Jury test.

Solution:

We first check the necessary conditions:

(a) F (1) = 1 + 1 + 0.5 + 0.25 = 2.75 > 0

(b) F (−1)× (−1)3 =(

(−1)3 + (−1)2 + 0.5(−1) + 0.25)

(−1) = 0.25 > 0

(c) |a0| = 0.25 < a3 = 1

Since all conditions are met, we must apply the necessary and sufficient conditions andthus build matrices H1, H2, V = H1 +H2 and W = H1 −H2:

H1 =

[

1 10 1

]

H2 =

[

0.50 0.250.25 0

]

V =

[

1.50 1.250.25 1

]

W =

[

0.50 0.75−0.25 1

]

In this case, for the system to be stable, the determinants of V and W must be positive:|V | = 1.5− 0.31 > 0 and |W | = 0.5 + 0.19 > 0. The system is thus stable.

3. Check the stability of a discrete-time system whose characteristic equation is F (z) =z2 + z + 0.25 = 0 using the Jury test.

Solution:

Since the degree of the characteristic polynomial is 2, the following conditions are neces-sary and sufficient:

(a) F (1) = 1 + 1 + 0.25 = 2.25 > 0

(b) F (−1)× (−1)2 =(

(−1)2 + (−1) + 0.25)

(+1) = 0.25 > 0

(c) |a0| = 0.25 < a2 = 1

The system is thus stable.

4. Determine the range of values for K under which the discrete-time system whose charac-teristic equation is F (z) = z3+z2+z+K = 0 is stable using the modified Routh-Hurwitztest.

Page 3: problemas4s

Alberto Ortiz 3

Solution:

The polynomial is first transformed using z = (1 + w)/(1 − w):

F (w) =

(

1 + w

1− w

)3

+

(

1 + w

1− w

)2

+

(

1 + w

1− w

)

+K

=(K − 1)w3 − (3K + 1)w2 + 3(K − 1)w − (K + 3)

w3 − 3w2 + 3w − 1

F (w) = 0 ⇒ (K − 1)w3 − (3K + 1)w2 + 3(K − 1)w − (K + 3) = 0

The polynomial to study through the RH test is thus F ′(w) = (K − 1)w3 − (3K + 1)w2 +3(K − 1)w − (K + 3):

w3 K − 1 3(K − 1)w2 −(3K + 1) −(K + 3)

w1 8K(K−1)3K+1 0

w0 −(K + 3)

In order to avoid sign changes in the first column of the RH array, all terms must bepositive:

K − 1 > 0 −(3K + 1) > 0 8K(K−1)3K+1 > 0 −(K + 3) > 0

⇓ ⇓ ⇓ ⇓K > 1 3K + 1 < 0 8K(K − 1) > 0 K + 3 < 0

⇓ ⇓ ⇓ ⇓K > 1 K < − 1

3 K > 0 and K > 1, or K < −3K < 0 and K < 1

⇒ The conditions are contradictory, no K satisfies all the conditions.

or all negative:

K − 1 < 0 −(3K + 1) < 0 8K(K−1)3K+1 < 0 −(K + 3) < 0

⇓ ⇓ ⇓ ⇓K < 1 3K + 1 > 0 8K(K − 1) < 0 K + 3 > 0

⇓ ⇓ ⇓ ⇓K < 1 K > − 1

3 K > 0 and K < 1, or K > −3K < 0 and K > 1

⇒ In this case, 0 < K < 1 meets all the conditions.

5. Find the stable range for a gain K in the forward path of a discrete-time control systemwhose plant is given by G(s) = 1

s+3 and a zero-order hold with T = 0.02s using the Jurytest.

Page 4: problemas4s

Alberto Ortiz 4

Solution:

The transfer function for this system is given by:

Y (z)

X(z)=

K z−1z Z

[

G(s)s

]

1 +K z−1z Z

[

G(s)s

]

The characteristic equation is 1 +K z−1z Z

[

G(s)s

]

= 0, so we need to determine Z[

G(s)s

]

:

Z[

G(s)

s

]

= Z[

1

s(s+ 3)

]

= Z[

A

s+

B

s+ 3

]

A = s1

s(s+ 3)

s=0

=1

3, B = (s+ 3)

1

s(s+ 3)

s=−3

= −1

3

Z[

G(s)

s

]

=1

3Z[

1

s− 1

s+ 3

]

=1

3

(

z

z − 1− z

z − e−3T

)

=z

3

1− e−3T

(z − 1)(z − e−3T )

The characteristic equation is thus:

1 +Kz − 1

zZ[

G(s)

s

]

= 1 +K

3

1− e−3T

z − e−3T= 0

⇒ 3(z − e−3T ) +K(1− e−3T ) = 3z + 0.0582K − 2.8250 = 0

Since the degree of the characteristic polynomial P (z) = 3z + 0.0582K − 2.8250 is 1, thefollowing conditions are necessary and sufficient:

(a) P (1) = 3 + 0.0582K − 2.8250 = 0.1750 + 0.0582K > 0 ⇒ K > −0.1750/0.0582 =−3.0069

(b) P (−1) × (−1)1 = −(−3 + 0.0582K − 2.8250) = 5.8250 − 0.0582K > 0 ⇒ K <5.8250/0.0582 = 100.0859

(c) |a0| = 0.0582K − 2.8250 < a1 = 3 ⇒{

K < 5.8250/0.0582 = 100.0859

K > −0.1750/0.0582 = −3.0069

Consequently, K ∈ [−3.0069, 100.0859] for the system to be stable.

6. Check the stability of a discrete-time system whose transfer function is

G(z) =5(z − 2)

(z − 0.1)(z − 0.8)

using: (a) the modified Routh-Hurwitz test and (b) the Jury test.

Solution:

For both cases, the characteristic equation is given by P (z) = z2 − 1.8z + 0.08 = 0.

Page 5: problemas4s

Alberto Ortiz 5

(a) Transforming the characteristic equation in order for the RH test to be usable, weobtain:

P (w) =w2 + 0.6389w− 0.2500

0.3472w2 − 0.6944w+ 0.3472= 0

The polynomial to study through the RH test is thus P ′(w) = w2+0.6389w− 0.2500:

w2 1 -0.2500w1 0.6389 0w0 -0.2500

Since there is one sign change along the first column of the RH array, we concludethe system is unstable since one root of P ′ lies in the right-half side of the w−plane,and, consequently, one root of P (z) lies outside the unit circle in the z−plane.

(b) Since the degree of the characteristic polynomial is 2, the following conditions arenecessary and sufficient:

(a) P (1) = 1− 1.8 + 0.08 6> 0

(b) F (−1)× (−1)2 = (1 + 1.8 + 0.08)(+1) = 2.88 > 0

(c) |a0| = 0.08 < a2 = 1

Since the first condition is not met, we can conclude that the system is unstable.

7. Determine the range of values for K under which the discrete-time system of the figure(T = 1s) is stable using: (a) the modified Routh-Hurwitz test and (b) the Jury test.

X(s) K Gzoh(s)1

s(s+1)

+ E(s) E∗(s) Y (s)

Solution:

The transfer function for this system is given by:

Y (z)

X(z)=

K z−1z Z

[

G(s)s

]

1 +K z−1z Z

[

G(s)s

]

Page 6: problemas4s

Alberto Ortiz 6

The characteristic equation is 1 +K z−1z Z

[

G(s)s

]

= 0, so we need to determine Z[

G(s)s

]

:

Z[

G(s)

s

]

= Z[

1

s2(s+ 1)

]

= Z[

A1

s2+

A2

s+

B

s+ 3

]

A1 = s21

s2(s+ 1)

s=0

= 1

A2 =d

dss2

1

s2(s+ 1)

s=0

= − 1

(s+ 1)2

s=0

= −1

B = (s+ 1)1

s2(s+ 1)

s=−1

= 1

Z[

G(s)

s

]

= Z[

1

s2− 1

s+

1

s+ 1

]

=

(

Tz

(z − 1)2− z

z − 1+

z

z − e−T

)

=z(

(T + e−T − 1)z + (1− e−T − Te−T ))

(z − 1)2(z − e−T )

The characteristic equation is thus:

1 +Kz − 1

zZ[

G(s)

s

]

= 1 +K(T + e−T − 1)z + (1− e−T − Te−T )

(z − 1)(z − e−T )= 0

⇒ z2 − 1.3679z + 0.3679 +K(0.3679z + 0.2642) =

z2 + (0.3679K − 1.3679)z + 0.2642K + 0.3679 = 0

(a) Transforming the characteristic equation in order for the RH test to be usable, weobtain:

P (w) =(2.7358− 0.1037K)w2 + (1.2642− 0.5284K)w+ 0.6321K

w2 − 2w + 1= 0

The polynomial to study through the RH test is thus P ′(w) = (2.7358−0.1037K)w2+(1.2642− 0.5284K)w+ 0.6321K:

w2 2.7358 - 0.1037K 0.6321Kw1 1.2642 - 0.5284K 0w0 0.6321K

In order to avoid sign changes in the first column of the RH array, all terms mustbe positive:

2.7358− 0.1037K > 0 1.2642− 0.5284K > 0 0.6321K > 0⇓ ⇓ ⇓

K < 26.3819 K < 2.3925 K > 0

⇒ In this case, 0 < K < 2.3925 meets all the conditions.

Page 7: problemas4s

Alberto Ortiz 7

or all negative:

2.7358− 0.1037K < 0 1.2642− 0.5284K < 0 0.6321K < 0⇓ ⇓ ⇓

K > 26.3819 K > 2.3925 K < 0

⇒ The conditions are contradictory, no K satisfies all the conditions.

(b) Since the degree of the characteristic polynomial P (z) = z2 +(0.3679K− 1.3679)z+0.2642K + 0.3679 is 2, the following conditions are necessary and sufficient:

(a) P (1) = 1+(0.3679K−1.3679)+0.2642K+0.3679> 0 ⇒ 0.6321K > 0 ⇒ K > 0

(b) P (−1)× (−1)2 = 1 − (0.3679K − 1.3679) + 0.2642K + 0.3679 > 0 ⇒ 2.7358−0.1037K > 0 ⇒ K < 26.3819

(c) |a0| = 0.2642K + 0.3679 < a2 = 1 ⇒ K < 1−0.36790.2642 = 0.6321

0.2642 = 2.3925

So, for the system to be stable, 0 < K < 2.3925.

8. Check, using the Jury test, the stability of a system whose dynamics is given by thefollowing difference equation:

y(k + 2) + 0.8y(k + 1) + 0.07y(k) = 2x(k + 1) + 0.2x(k)

Solution:

We first z-transform the difference equation assuming initial conditions 0, and next de-termine the transfer function:

z2Y (z) + 0.8zY (z) + 0.07Y (z) = 2zX(z) + 0.2X(z) ⇒ Y (z)

X(z)=

2z + 0.2

z2 + 0.8z + 0.07

Since the degree of the characteristic polynomial P (z) = z2+0.8z+0.07 is 2, the followingconditions are necessary and sufficient:

(a) P (1) = 1 + 0.8 + 0.07 = 1.87 > 0

(b) P (−1)× (−1)2 = 1− 0.8 + 0.07 = 0.27 > 0

(c) |a0| = 0.07 < a2 = 1

The system is thus stable.

9. Determine the overshoot and the settling time for the following discrete-time closed-loopsystem with T = 0.1s:

X(s) 8 Gzoh(s)1

s(s+3)

+ E(s) E∗(s) Y (s)

Page 8: problemas4s

Alberto Ortiz 8

Solution:

We first determine the system transfer function:

H(z) =Y (z)

X(z)=

8 z−1z Z

[

G(s)s

]

1 + 8 z−1z Z

[

G(s)s

]

L(z) = 8z − 1

zZ[

G(s)

s

]

= 8z − 1

zZ[

1

s2(s+ 3)

]

= 8z − 1

zZ[

A1

s2+

A2

s+

B

s+ 3

]

A1 = s21

s2(s+ 3)

s=0

=1

3

A2 =d

dss2

1

s2(s+ 3)

s=0

= − 1

(s+ 3)2

s=0

= −1

9

B = (s+ 3)1

s2(s+ 3)

s=−3

=1

9

L(z) =8

9

z − 1

zZ[

3

s2− 1

s+

1

s+ 3

]

=8

9

z − 1

z

(

3Tz

(z − 1)2− z

z − 1+

z

z − e−3T

)

=8

9

3T (z − e−3T )− (z − 1)(z − e−3T ) + (z − 1)2

(z − 1)(z − e−3T )

=8

9

(3T + e−3T − 1)z + (1 − 3Te−3T − e−3T )

z2 − (1 + e−3T )z + e−3T=

0.3265z + 0.2955

9z2 − 15.667z + 6.6674

H(z) =0.3265z + 0.2955

9z2 − 15.3408z + 6.9629

From the characteristic equation 9z2 − 15.3408z + 6.9629 = 0 we obtain the system polesas z1,2 = 0.8523± j0.2175.

In order to use the expressions for the overshoot and the settling time of continuous-timesecond-order systems, we have first to calculate the poles s1,2 = σ ± jω of the equivalentcontinuous-time system:

|z| = 0.8796, 6 z = 0.2499 rad ⇒ σ =1

Tln |z| = −1.2832, ω =

1

T6 z = 2.4983 rad/s.

s1 = −1.2832+ j2.4983 = −δωn ± jωn

1− δ2 ⇒{

δωn = 1.2832

ωn

√1− δ2 = 2.4983

ω2n − δ2ω2

n = 2.49832 ⇒ ω2n − 1.28322 = 2.49832 ⇒ ωn = 2.8085 rad/s, δ = 0.4569

The remaining calculations are straightforward:

Mp = 100e− πδ√

1−δ2 = 19.92%, ts =π

δωn= 2.4483 s

Page 9: problemas4s

Alberto Ortiz 9

10. Determine the overshoot and the settling time for the following discrete-time closed-loopsystem with T = 0.1s:

X(s) C(z) = 4z−0.1 Gzoh(s)

1s(s+3)

+ E(s) E∗(s) Y (s)

Solution:

We first determine the system transfer function:

H(z) =Y (z)

X(z)=

C(z) z−1z Z

[

G(s)s

]

1 + C(z) z−1z Z

[

G(s)s

]

L(z) = C(z)z − 1

zZ[

G(s)

s

]

=4

z − 0.1

z − 1

zZ[

1

s2(s+ 3)

]

=4

z − 0.1

z − 1

zZ[

A1

s2+

A2

s+

B

s+ 3

]

A1 = s21

s2(s+ 3)

s=0

=1

3

A2 =d

dss2

1

s2(s+ 3)

s=0

= − 1

(s+ 3)2

s=0

= −1

9

B = (s+ 3)1

s2(s+ 3)

s=−3

=1

9

L(z) =4

z − 0.1

z − 1

z

1

9Z[

3

s2− 1

s+

1

s+ 3

]

=4

z − 0.1

z − 1

z

1

9

(

3Tz

(z − 1)2− z

z − 1+

z

z − e−3T

)

=4

9

3T (z − e−3T )− (z − 1)(z − e−3T ) + (z − 1)2

(z − 0.1)(z − 1)(z − e−3T )

=4

9

(3T + e−3T − 1)z + (1− 3Te−3T − e−3T )

z3 − (e−3T + 1.1)z2 + (1.1e−3T + 0.1)z − 0.1e−3T

=0.1633z + 0.1477

9z3 − 16.5674z2 + 8.2341z − 0.6667

H(z) =0.1633z + 0.1477

9z3 − 16.5674z2 + 8.3974z − 0.5190

From the characteristic equation 9z3 − 16.5674z2 + 8.3974z − 0.5190 = 0 we obtain thesystem poles as z1,2 = 0.8847± j0.1546, z3 = 0.0715. In order to use the expressions forthe overshoot and the settling time of continuous-time second-order systems, we first haveto discard one of the previous roots. Since z3 is closer to 0, and so less dominant, we keep

Page 10: problemas4s

Alberto Ortiz 10

z1,2 and proceed with the calculations:

|z| = 0.8981, 6 z = 0.1731 rad ⇒ σ =1

Tln |z| = −1.0750, ω =

1

T6 z = 1.7306 rad/s

s1 = −1.0750 + j1.7306 = −δωn ± jωn

1− δ2 ⇒{

δωn = 1.0750

ωn

√1− δ2 = 1.7306

ω2n − δ2ω2

n = 1.73062 ⇒ ω2n − 1.07502 = 1.73062 ⇒ ωn = 2.0373 rad/s, δ = 0.5277

The remaining calculations are straightforward:

Mp = 100e− πδ√

1−δ2 = 14.2061%, ts =π

δωn= 2.9224 s

11. Determine the poles of a second-order discrete-time system with T = 0.2s so that Mp =5% and tp = 2s.

Solution:

We start calculating the damping ration δ and the natural frequency ωn of the continuous-time system:

Mp = 100e− πδ√

1−δ2 ⇒ − πδ√1− δ2

= ln(0.01Mp) ⇒ δ =

ln2(0.05)

π2 + ln2(0.05)= 0.6901

tp =π

ωn

√1− δ2

⇒ ωn =π

tp√1− δ2

2√1− 0.69012

= 2.1705 rad/s.

The continuous-time system poles are thus s = −δωn± jωn

√1− δ2 = −1.4979+ j1.5708 .

To finish, the poles for the discrete-time system are obtained from the transformation froms to z:

z = esT = e−1.4979T e±j1.5708T = 0.7411 cos(0.3142)± j0.7411 sin(0.3142) = 0.70± j0.23

12. Determine the static error expressions and constants for the closed-loop configurationsshown in the figure:

(a)X(s) G1(s) G2(s)

H(s)

+ E(s) Y (s)

Y ∗(s)

Page 11: problemas4s

Alberto Ortiz 11

(b)X(s) G1(s) G2(s)

H(s)

+ E(s) Y (s)

Solution:

(a) We first have to determine an expression for the error E(z):

E(s) = X(s)− Y ∗(s)H(s)

Y (s) = U∗(s)G2(s)

U(s) = E∗(s)G1(s)

⇒ U∗(s) = E∗(s)G∗1(s) ⇒ Y ∗(s) = E∗(s)G∗

1(s)G∗2(s)

⇒ E∗(s) = X∗(s)− Y ∗(s)H∗(s)

= X∗(s)− E∗(s)G∗1(s)G

∗2(s)H

∗(s)

⇒ E(z) = X(z)− E(z)G1(z)G2(z)H(z)

⇒ E(z) =1

1 +G1(z)G2(z)H(z)X(z)

If we define Q(z) = G1(z)G2(z)H(z), then:

ess = limz→1

z − 1

zE(z) = lim

z→1

z − 1

z

1

1 +Q(z)X(z)

The expressions for the standard inputs step, ramp and parabola are as follows:

X(z) = zz−1 esp = lim

z→1

[

z − 1

z

1

1 +G1(z)G2(z)H(z)

z

z − 1

]

[step] =1

1 + limz→1 G1(z)G2(z)H(z)

Kp = limz→1

G1(z)G2(z)H(z) = limz→1

1

(z − 1)NA(z)

B(z)

esp =1

1 +Kp=

{

1/(1 +Kp) system of type 0

0 system of type 1 or higher

Page 12: problemas4s

Alberto Ortiz 12

X(z) = Tz(z−1)2 esv = lim

z→1

[

z − 1

z

1

1 +G1(z)G2(z)H(z)

Tz

(z − 1)2

]

[ramp] =T

limz→1(z − 1)G1(z)G2(z)H(z)

Kv =1

Tlimz→1

(z − 1)G1(z)G2(z)H(z) =1

Tlimz→1

z − 1

(z − 1)NA(z)

B(z)

esv =1

Kv=

∞ system of type 0

1/Kv system of type 1

0 system of type 2 or higher

X(z) = T 2z(z+1)2(z−1)3 esa = lim

z→1

[

z − 1

z

1

1 +G1(z)G2(z)H(z)

T 2z(z + 1)

2(z − 1)3

]

[parabola] =2T 2

2 limz→1(z − 1)2G1(z)G2(z)H(z)

Ka =1

T 2limz→1

(z − 1)2G1(z)G2(z)H(z) =1

T 2limz→1

(z − 1)2

(z − 1)NA(z)

B(z)

esa =1

Ka=

∞ system of type 0

∞ system of type 1

1/Ka system of type 2

0 system of type 3 or higher

(b) As before, we first try to determine an expression for the error E(z):

E(s) = X(s)− Y (s)H(s)

Y (s) = U∗(s)G2(s)

U(s) = E(s)G1(s)

⇒ U(s) = (X(s)− Y (s)H(s))G1(s)

= X(s)G1(s)− Y (s)H(s)G1(s)

= X(s)G1(s)− U∗(s)G2(s)H(s)G1(s)

⇒ U∗(s) = XG∗1(s)− U∗(s)G1G2H

∗(s)

⇒ U∗(s) =XG1(z)

1 +G1G2H(z)

E(s) = X(s)− Y (s)H(s) = X(s)− U∗(s)G2(s)H(s)

⇒ E∗(s) = X∗(s)− U∗(s)G2H∗(s)

⇒ E(z) = X(z)− XG1(z)G2H(z)

1 +G1G2H(z)=

X(z) +X(z)G1G2H(z)−XG1(z)G2H(z)

1 +G1G2H(z)

Consequently:

ess = limz→1

z − 1

zE(z) = lim

z→1

z − 1

z

X(z) +X(z)G1G2H(z)−XG1(z)G2H(z)

1 +G1G2H(z)

Page 13: problemas4s

Alberto Ortiz 13

In this case, it is not possible to pre-calculate the error as a function of the type ofinput and the type of system, since X gets mixed with G1 in ess.

13. Determine the static errors for the configurations of exercise 12 for a sampling period ofT = 1s and the following transfer functions:

G1(s) =s− 1

s+ 5, G2(s) =

3

s+ 7, H(s) =

1

s+ 1

Solution:

For case (a), Q(z) = G1(z)G2(z)H(z) is given by:

G1(z) = Z[

1

s+ 5s− 1 + 1

]

−Z[

1

s+ 5

]

= Z[

d

dte−5t + δ(t)

]

− z

z − e−5T

= Z[

−5e−5t + δ(t)]

− z

z − e−5T= Z

[

−5e−5kT + δ(kT )]

− z

z − e−5T

= −5z

z − e−5T+ 1− z

z − e−5T= 1− 6z

z − e−5T= −5z + e−5T

z − e−5T

G2(z) = Z[

3

s+ 7

]

=3z

z − e−7T

H(z) = Z[

1

s+ 1

]

=z

z − e−T

Consequently:

Q(z) = − 15z3 + 0.0202z2

z3 − 0.3755z2 + 0.0028z + e−13

It is a system of type 0. Therefore:

esp =1

1 +Kp=

1

1 +Kp=

1

1− 23.9447= −0.0436

Kp = limz→1

Q(z) = − 15 + 0.0202

1− 0.3755 + 0.0028 + e−13= −23.9447

esv = ∞esa = ∞

For case (b), we have to determine:

ess = limz→1

z − 1

z

X(z) +X(z)G1G2H(z)−XG1(z)G2H(z)

1 +G1G2H(z)

Page 14: problemas4s

Alberto Ortiz 14

So, we need to know first G1G2H(z), G2H(z) and XG1(z):

G1(s)G2(s)H(s) =3(s− 1)

(s+ 5)(s+ 7)(s+ 1)=

A

s+ 5+

B

s+ 7+

C

s+ 1

A = (s+ 5)3(s− 1)

(s+ 5)(s+ 7)(s+ 1)

s=−5

=−18

−8=

9

4

B = (s+ 7)3(s− 1)

(s+ 5)(s+ 7)(s+ 1)

s=−7

=−24

12= −2

C = (s+ 1)3(s− 1)

(s+ 5)(s+ 7)(s+ 1)

s=−1

=−6

24= −1

4

G1G2H(z) =1

4

[

9z

z − e−5T− 8

z

z − e−7T− z

z − e−T

]

=z(

(−8e−7T + 9e−5T − e−T )z + 9e−8T − 8e−6T − e−12T)

4(z − e−5T )(z − e−7T )(z − e−T )

= − z(0.0786z + 0.0042)

(z − 0.0067)(z − 0.0009)(z − 0.3679)

G2(s)H(s) =3

(s+ 1)(s+ 7)=

A

s+ 1+

B

s+ 7

A = (s+ 1)3

(s+ 1)(s+ 7)

s=−1

=3

6=

1

2

B = (s+ 7)3

(s+ 1)(s+ 7)

s=−7

=3

−6= −1

2

G2H(z) =1

2

[

z

z − e−T− z

z − e−7T

]

=1

2

z(e−T − e−7T )

(z − e−T )(z − e−7T )

=0.1835z

(z − 0.3679)(z − 0.0009)

X(s)G1(s) =1

s

s− 1

s+ 5=

s− 1

s(s+ 5)=

A

s+

B

s+ 5[step]

A = ss− 1

s(s+ 5)

s=0

=−1

5

B = (s+ 5)s− 1

s(s+ 5)

s=−5

=6

5

XG1(z) =1

5

[

6z

z − e−5T− z

z − 1

]

=z(5z + e−5T − 6)

5(z − 1)(z − e−5T )=

z(z − 1.1987)

(z − 1)(z − 0.0067)

Page 15: problemas4s

Alberto Ortiz 15

X(s)G1(s) =1

s2s− 1

s+ 5=

s− 1

s2(s+ 5)=

A1

s2+

A2

s+

B

s+ 5[ramp]

A1 = s2s− 1

s2(s+ 5)

s=0

=−1

5

A2 =d

dss2

s− 1

s2(s+ 5)

s=0

=6

(s+ 5)2

s=0

=6

25

B = (s+ 5)s− 1

s2(s+ 5)

s=−5

=−6

25

XG1(z) =1

25

[

−5Tz

(z − 1)2+ 6

z

z − 1− 6

z

z − e−5T

]

=z

25

−5T (z − e−5T ) + 6(z − 1)(z − e−5T )− 6(z − 1)2

(z − 1)2(z − e−5T )

=z(

(6− 5T − 6e−5T )z + (5Te−5T + 6e−5T − 6))

25(z − 1)2(z − 0.0067)=

z (0.0384z − 0.2370)

(z − 1)2(z − 0.0067)

X(s)G1(s) =1

s3s− 1

s+ 5=

s− 1

s3(s+ 5)=

A1

s3+

A2

s2+

A3

s+

B

s+ 5[parabola]

A1 = s3s− 1

s3(s+ 5)

s=0

=−1

5

A2 =d

dss3

s− 1

s3(s+ 5)

s=0

=6

(s+ 5)2

s=0

=6

25

A3 =1

2!

d2

ds2s3

s− 1

s3(s+ 5)

s=0

=−6

(s+ 5)3

s=0

= − 6

125

B = (s+ 5)s− 1

s3(s+ 5)

s=−5

=6

125

XG1(z) =1

125

[

−25T 2z(z+1)2(z−1)3 + 30 Tz

(z−1)2 − 6 zz−1 + 6 z

z−e−5T

]

= z250

−25T 2(z+1)(z−e−5T )+60T (z−1)(z−e−5T )−12(z−1)2(z−e−5T )+12(z−1)3

(z−1)3(z−e−5T )

=z((60T−25T 2+12e−5T −12)z2+(24−60T−25T 2+(25T 2−60T−24)e−5T )z +

250(z−1)3(z−0.0067)

+ ((25T 2+60T+12)e−5T −12))

=z(0.0923z2−0.2456z−0.0454)

(z−1)3(z−0.0067)

Summing up:

G1G2H(z) = − z(0.0786z + 0.0042)

(z − 0.0067)(z − 0.0009)(z − 0.3679)

Page 16: problemas4s

Alberto Ortiz 16

G2H(z) =0.1835z

(z − 0.3679)(z − 0.0009)

XG1(z) =z(z − 1.1987)

(z − 1)(z − 0.0067)[step]

XG1(z) =z (0.0384z − 0.2370)

(z − 1)2(z − 0.0067)[ramp]

XG1(z) =z(

0.0923z2 − 0.2456z − 0.0454)

(z − 1)3(z − 0.0067)[parabola]

ess = limz→1

z − 1

z

X(z) +X(z)G1G2H(z)−XG1(z)G2H(z)

1 +G1G2H(z)

Consequently:

esp = limz→1

z−1z

zz−1(1−

z(0.0786z+0.0042)(z−0.0067)(z−0.0009)(z−0.3679) )−

z(z−1.1987)(z−1)(z−0.0067)

0.1835z(z−0.3679)(z−0.0009)

1− z(0.0786z+0.0042)(z−0.0067)(z−0.0009)(z−0.3679)

= limz→1

1− z(0.0786z+0.0042)(z−0.0067)(z−0.0009)(z−0.3679) − z−1.1987

z−0.00670.1835z

(z−0.3679)(z−0.0009)

1− z(0.0786z+0.0042)(z−0.0067)(z−0.0009)(z−0.3679)

= limz→1

(z−0.0067)(z−0.0009)(z−0.3679)−z(0.0786z+0.0042)−0.1835z(z−1.1987)(z−0.0067)(z−0.0009)(z−0.3679)−z(0.0786z+0.0042) = 1.0670

esv = limz→1

z−1z

Tz

(z−1)2(1− z(0.0786z+0.0042)

(z−0.0067)(z−0.0009)(z−0.3679) )−z(0.0384z−0.2370)

(z−1)2(z−0.0067)0.1835z

(z−0.3679)(z−0.0009)

1− z(0.0786z+0.0042)(z−0.0067)(z−0.0009)(z−0.3679)

= limz→1

1z−1

T− Tz(0.0786z+0.0042)(z−0.0067)(z−0.0009)(z−0.3679)

− 0.0384z−0.2370z−0.0067

0.1835z(z−0.3679)(z−0.0009)

1− z(0.0786z+0.0042)(z−0.0067)(z−0.0009)(z−0.3679)

= limz→1

1z−1

T (z−0.0067)(z−0.0009)(z−0.3679)−Tz(0.0786z+0.0042)−0.1835z(0.0384z−0.2370)(z−0.0067)(z−0.0009)(z−0.3679)−z(0.0786z+0.0042) = ∞

esa = limz→1

z−1z

T2z(z+1)

2(z−1)3(1− z(0.0786z+0.0042)

(z−0.0067)(z−0.0009)(z−0.3679) )−z(0.0923z2−0.2456z−0.0454)

(z−1)3(z−0.0067)0.1835z

(z−0.3679)(z−0.0009)

1− z(0.0786z+0.0042)(z−0.0067)(z−0.0009)(z−0.3679)

= limz→1

1(z−1)2

T2(z+1)2 (1− z(0.0786z+0.0042)

(z−0.0067)(z−0.0009)(z−0.3679) )−0.0923z2−0.2456z−0.0454

z−0.00670.1835z

(z−0.3679)(z−0.0009)

1− z(0.0786z+0.0042)(z−0.0067)(z−0.0009)(z−0.3679)

= limz→1

1(z−1)2

T2(z+1)2 ((z−0.0067)(z−0.0009)(z−0.3679)−z(0.0786z+0.0042)) −

(z−0.0067)(z−0.0009)(z−0.3679)−z(0.0786z+0.0042)

− 0.1835z(0.0923z2−0.2456z−0.0454)

= ∞

14. Find the steady-state error for a sampled unit step and a sampled unit ramp, assumingT = 0.02s.

X(z) 0.35zz−1 Gzoh(s)

s+8s+5

+ E(z) Y (z)

Page 17: problemas4s

Alberto Ortiz 17

Solution:

The steady-state errors for step and ramp inputs are, respectively, given by:

esp =1

1 +Kp=

1

1 + limz→1 L(z)

esv =1

Kv=

T

limz→1(z − 1)L(z)

where L(z) is the open-loop transfer function.

In this case, L(z) = C(z)G′(z), where:

G′(z) =z − 1

zZ[

G(s)

s

]

=z − 1

zZ[

(s+ 8)

s(s+ 5)

]

=z − 1

zZ[

A

s+

B

s+ 5

]

A = s(s+ 8)

s(s+ 5)

s=0

=8

5

B = (s+ 5)(s+ 8)

s(s+ 5)

s=−5

= −3

5

G′(z) =1

5

z − 1

zZ[

8

s− 3

s+ 5

]

=1

5

z − 1

z

(

8z

z − 1− 3z

z − e−5T

)

=1

5

8(z − e−5T )− 3(z − 1)

z − e−5T=

5z + 3− 8e−5T

5z − 5e−5T=

z − 0.8477

z − 0.9048

Consequently, L(z) = 0.35zz−1

z−0.8477z−0.9048 and:

esp =1

1 + limz→10.35zz−1

z−0.8477z−0.9048

=1

∞ = 0

esv =0.02

limz→1(z − 1)0.35zz−1z−0.8477z−0.9048

=0.02(1− 0.9048)

0.35(1− 0.8477)= 0.0357

15. Find the steady-state error for the system shown in the figure:

Gd(s)

X(s) C∗(s) Gzoh(s) G(s)+ E(s) E∗(s) U∗(s) + Y (s)

D(s)

+

where the sampling period is 0.03s, the transfer functions involved are:

Gd(s) =2

s+ 1, G(s) =

4(s+ 2)

s(s+ 3)and C∗(s) =

esT − 0.95

esT − 1,

Page 18: problemas4s

Alberto Ortiz 18

and the inputs are X(s) = 0 and D(s) = 1/s (unit-step disturbance).

Solution:

First we have to find an expression for E(z):

E(s) = X(s)− Y (s)Y (s) = [D(s)Gd(s) + E∗(s)C∗(s)Gzoh(s)]G(s)

}

⇒ E(s) = X(s)−D(s)Gd(s)G(s) − E∗(s)C∗(s)Gzoh(s)G(s)

⇒ E∗(s) = X∗(s)−DGdG∗(s)− E∗(s)C∗(s)(G′)∗(s)

⇒ E(z) = X(z)−DGdG(z)− E(z)C(z)G′(z)

⇒ E(z) =X(z)−DGdG(z)

1 + C(z)G′(z)

Now, replacing the expressions available for the different elements of the control system,we obtain:

DGdG(z) = Z [D(s)Gd(s)G(s)] = Z[

8(s+ 2)

s2(s+ 1)(s+ 3)

]

= Z[

A1

s2+

A2

s+

B

s+ 1+

C

s+ 3

]

A1 = s28(s+ 2)

s2(s+ 1)(s+ 3)

s=0

=16

3

A2 =d

dss2

8(s+ 2)

s2(s+ 1)(s+ 3)

s=0

=8(s+ 1)(s+ 3)− 8(s+ 2)(s+ 3 + s+ 1)

(s+ 1)2(s+ 3)2

s=0

=24− 64

9= −40

9

B = (s+ 1)8(s+ 2)

s2(s+ 1)(s+ 3)

s=−1

=8

2= 4

C = (s+ 3)8(s+ 2)

s2(s+ 1)(s+ 3)

s=−3

=−8

−18=

4

9

DGdG(z) =4

9Z[

12

s2− 10

s+

9

s+ 1+

1

s+ 3

]

=4

9

[

12Tz

(z − 1)2− 10z

z − 1+

9z

z − e−T+

z

z − e−3T

]

=4z

9

12T (z − e−T )(z − e−3T )− 10(z − 1)(z − e−T )(z − e−3T )

(z − 1)2(z − e−T )(z − e−3T )+

4z

9

9(z − 1)2(z − e−3T ) + (z − 1)2(z − e−T )

(z − 1)2(z − e−T )(z − e−3T )

=z(1.0879z2 − 2.0348z + 0.9505)

9(z − 1)2(z2 − 1.8844z + 0.8869)

Page 19: problemas4s

Alberto Ortiz 19

G′(z) =z − 1

zZ[

G(s)

s

]

=z − 1

zZ[

4(s+ 2)

s2(s+ 3)

]

=z − 1

zZ[

A1

s2+

A2

s+

B

s+ 3

]

A1 = s24(s+ 2)

s2(s+ 3)

s=0

=8

3

A2 =d

dss2

4(s+ 2)

s2(s+ 3)

s=0

=4(s+ 3)− 4(s+ 2)

(s+ 3)2

s=0

=4

9

B = (s+ 3)4(s+ 2)

s2(s+ 3)

s=−3

= −4

9

G′(z) =4

9

z − 1

zZ[

6

s2+

1

s− 1

s+ 3

]

=4

9

z − 1

z

[

6Tz

(z − 1)2+

z

z − 1− z

z − e−3T

]

=4

9

6T (z − e−3T ) + (z − 1)(z − e−3T )− (z − 1)2

(z − 1)(z − e−3T )

=4(1 + 6T − e−3T )z + 4(e−3T − 6Te−3T − 1)

9(z − 1)(z − e−3T )=

1.0643z − 1.0023

9(z − 1)(z − 0.9139)

The final expression for E(z) will thus be:

E(z) =X(z)−DGdG(z)

1 + C(z)G′(z)=

0− z(1.0879z2−2.0348z+0.9505)9(z−1)2(z2−1.8844z+0.8869)

1 + z−0.95z−1

1.0643z−1.00239(z−1)(z−0.9139)

= − z(1.0879z2 − 2.0348z + 0.9505)(z − 0.9139)

(z2 − 1.8844z + 0.8869) [9(z − 1)2(z − 0.9139) + (z − 0.95)(1.0643z− 1.0023)]

Finally:

e(∞) = limz→1

z − 1

z(

− z(1.0879z2 − 2.0348z + 0.9505)(z − 0.9139)

(z2 − 1.8844z + 0.8869) [9(z − 1)2(z − 0.9139) + (z − 0.95)(1.0643z− 1.0023)]

)

= 0

16. Reduce the following discrete-time transfer function up to third order:

G(z) = 0.5(z − 0.7)(z − 0.1)(z2 − 0.1z + 0.001)(z − 0.51)(z2 − 0.7z + 0.15)

(z − 0.9)(z2 − 1.6z + 0.79)(z − 0.15)(z − 0.5)(z2 − 0.65z − 0.14)z

Solution:

We first have to determine the roots for all the subexpressions of G(z), and next selectpoles and zeros for removal/cancellation up to leaving at most third order both at the

Page 20: problemas4s

Alberto Ortiz 20

numerator and the denominator:

poles

z − 0.9 0.9 0.9 preserve

z2 − 1.6z + 0.79 0.8± j0.3873 0.8888 preserve

z − 0.15 0.15 0.15 cancel with zero z = 0.1

z − 0.5 0.5 0.5 cancel with zero z = 0.51

z2 − 0.65z − 0.14 0.8206 0.8206 cancel with zero z = 0.7

−0.1706 0.1706 cancel with zero z = 0.0887

z 0 0 preserve

zeros

z − 0.7 0.7 0.7 cancel with pole z = 0.8206

z − 0.1 0.1 0.1 cancel with pole z = 0.15

z2 − 0.1z + 0.001 0.0887 0.0887 cancel with pole z = −0.1706

0.0113 0.0113 replace by zero z = 0

z − 0.51 0.51 0.51 cancel with pole z = 0.5

z2 − 0.7z + 0.15 0.35± j0.1658 0.3873 preserve

The resulting transfer function turns out to be:

G′sim(z) =

(z2 − 0.7z + 0.15)z

(z − 0.9)(z2 − 1.6z + 0.79)z=

(z2 − 0.7z + 0.15)

(z − 0.9)(z2 − 1.6z + 0.79)

while the gain adjustment is given by:

K =limz→1

G(z)

limz→1

G′sim(z)

=limz→1

0.5 (z−0.7)(z−0.1)(z2−0.1z+0.001)(z−0.51)(z2−0.7z+0.15)(z−0.9)(z2−1.6z+0.79)(z−0.15)(z−0.5)(z2−0.65z−0.14)z

limz→1

(z2−0.7z+0.15)(z−0.9)(z2−1.6z+0.79)

= 0.6678

Finally:

Gsim(z) = 0.6678(z2 − 0.7z + 0.15)

(z − 0.9)(z2 − 1.6z + 0.79)

The next figure compares the step responses of the original and the simplified systems:

0 10 20 30 40 50 60 700

2

4

6

8

10

12

14

16

Step response

time (sec)

mag

nitu

de

originalsimplified

Page 21: problemas4s

Alberto Ortiz 21

17. Construct the root locus for the following characteristic equations:

(a) z2 + (0.15K − 1.5)z + 1 = 0

(b) z2 + (0.4 + 0.14K)z + (0.5 + 0.5K) = 0

Solution:

(a) We start collecting information on different aspects of the root locus:

• The poles of the open-loop transfer function are the roots of the characteristicequation when K = 0, while the zeros are the roots for K = ∞:

K = 0 ⇒ z2 − 1.5z + 1 = 0 ⇒ z = 0.7500± j0.6614

K = ∞ ⇒ limK→∞

1

K

[

z2 + (0.15K − 1.5)z + 1]

= 0 ⇒ 0.15z = 0 ⇒ z = 0

There are two complex poles, one zero at z = 0 and another zero at −∞:

limK→∞

z = limK→∞

−(0.15K − 1.5)±√

(0.15K − 1.5)2 − 4

2

=

{

−(0.15K − 1.5) + (0.15K − 1.5) = 0

−∞−∞ = −∞

We can rebuild the open-loop transfer function L(z) = P (z)Q(z) as follows:

z2 + (0.15K − 1.5)z + 1 = z2 − 1.5z + 1 + 0.15Kz = 0

1 +K P (z)Q(z) = 0 ⇒ Q(z) +KP (z) = 0

}

⇒ Q(z) = z2 − 1.5z + 1, P (z) = 0.15z

Therefore, the root locus comprises two branches starting at z = 0.7500±j0.6614and ending at z = 0 and z = −∞.

• Since the poles are complex, the only real interval belonging to the root locus is(−∞, 0].

• There is only one asymptote (n − m = 2 − 1 = 1) with angle (2k + 1)π/(n −m)|k=0 = 180◦ (the intersect with the real axis is irrelevant in this case).

• There must be a break-in point between zeros z = −∞ and z = 0:

K = −z2 − 1.5z + 1

0.15z⇒ dK

dz= − (2z − 1.5)0.15z − 0.15(z2 − 1.5z + 1)

0.152z2

= −0.15z2 − 0.15

0.0225z2= 0 ⇒ z = ±1

The break-in point is at z = −1, since z = +1 does not belong to the root locus.The value of K for this point is:

K(−1) = −z2 − 1.5z + 1

0.15z

z=−1

=1 + 1.5 + 1

0.15= 23.33

Page 22: problemas4s

Alberto Ortiz 22

• The intersects with the imaginary axis are obtained from the zeros of the firstcolumn of the Routh-Hurwitz array for 1 + L(z) = 0:

z2 1 1z1 0.15K − 1.5z0 1

→ 0.15K − 1.5 = 0 ⇒ K = 10

z2 + (0.15K − 1.5)z + 1 = 0

K=10

= z2 + 1 = 0 ⇒ z = ±j

• To find the intersects with the unit circumference we must consider 1+L(w) = 0and look for the zeros in the first column of the Routh-Hurwitz array:

1+L(w) = 0 ⇒(

w + 1

w − 1

)2

+ (0.15K − 1.5)

(

w + 1

w − 1

)

+ 1 = 0

⇒ (w + 1)2 + (0.15K − 1.5)(w + 1)(w − 1) + (w − 1)2

(w − 1)2= 0

⇒ w2 + 2w + 1 + (0.15K − 1.5)w2 − (0.15K − 1.5) + w2 − 2w + 1

(w − 1)2= 0

⇒ (0.5 + 0.15K)w2 + (3.5− 0.15K)

(w − 1)2= 0

×20−→ (3K + 10)w2 + 70− 3K = 0

w2 3K + 10 70− 3Kw1 0

↓w1 ǫw0 70− 3K

3K + 10 = 0 ⇒ K = −3.33 < 0

70− 3K = 0 ⇒ K = 23.33

The intersect with the unit circumference coincides with the break-in point: K =23.33 and z = −1.

Apart from manually drawing the root locus using the information collected, we canbuild the root locus by means of matlab with the following commands:

Lz = tf([0.15 0],[1 -1.5 1],1)

figure(1); rlocus(Lz)

Page 23: problemas4s

Alberto Ortiz 23

Root Locus

Real Axis

Imag

inar

y A

xis

−2.5 −2 −1.5 −1 −0.5 0 0.5 1−1.5

−1

−0.5

0

0.5

1

1.5

System: LzGain: 0Pole: 0.75 + 0.661iDamping: 1.54e−016Overshoot (%): 100Frequency (rad/sec): 0.723

System: LzGain: 0Pole: 0.75 − 0.661iDamping: 1.54e−016Overshoot (%): 100Frequency (rad/sec): 0.723

System: LzGain: 10.1Pole: −0.00584 − 0.996iDamping: 0.00268Overshoot (%): 99.2Frequency (rad/sec): 1.58

System: LzGain: 10.1Pole: −0.00502 + 0.996iDamping: 0.00266Overshoot (%): 99.2Frequency (rad/sec): 1.58

System: LzGain: 23.3Pole: −1 − 0.000875iDamping: 8.12e−006Overshoot (%): 100Frequency (rad/sec): 3.14

(b) We start collecting information on different aspects of the root locus:

• The poles of the open-loop transfer function are the roots of the characteristicequation when K = 0, while the zeros are the roots for K = ∞:

K = 0 ⇒ z2 + 0.4z + 0.5 = 0 ⇒ z = −0.2000± j0.6782

K = ∞ ⇒ limK→∞

1

K

[

z2 + (0.4 + 0.14K)z + (0.5 + 0.5K)]

= 0 ⇒ 0.14z + 0.5 = 0

⇒ z = −3.5714

There are two complex poles, one zero at z = −3.5714 and another zero at +∞ or−∞. We can determine which by setting K to a large value, e.g. 106, and solving

for z: z2 +(0.4+ 0.14K)z+(0.5+ 0.5K) = 0

K=106= z2 +140000z+500000 =

0 ⇒ z1,2 = {−139996.43,−3.5715}. So, the second zero is at −∞.

We can rebuild the open-loop transfer function L(z) = P (z)Q(z) as follows:

z2 + (0.4 + 0.14K)z + (0.5 + 0.5K) = z2 + 0.4z + 0.5 + 0.14Kz + 0.5K = 0

1 +K P (z)Q(z) = 0 ⇒ Q(z) +KP (z) = 0

}

⇒ Q(z) = z2 + 0.4z + 0.5, P (z) = 0.14z + 0.5

Therefore, the root locus comprises two branches starting at z = 0.7500±j0.6614and ending at z = −3.5714 and z = −∞.

Page 24: problemas4s

Alberto Ortiz 24

• Since the poles are complex, the only real interval belonging to the root locus is(−∞,−3.5714].

• There is only one asymptote (n − m = 2 − 1 = 1) with angle (2k + 1)π/(n −m)|k=0 = 180◦ (the intersect with the real axis is irrelevant in this case).

• There must be a break-in point between zeros z = −∞ and z = −3.5714:

K = −z2 + 0.4z + 0.5

0.14z + 0.5⇒ dK

dz= − (2z + 0.4)(0.14z + 0.5)− 0.14(z2 + 0.4z + 0.5)

(0.14z + 0.5)2

= −0.14z2 + z + 0.13

(0.14z + 0.5)2= 0 ⇒ z1,2 = {−7.0104,−0.1325}

The break-in point is at z = −7.0104, since z = −0.1325 does not belong to theroot locus. The value of K for this point is:

K(−7.0104) = −z2 + 0.4z + 0.5

0.14z + 0.5

z=−7.0104

= 97.2914

• The intersects with the imaginary axis are obtained from the zeros of the firstcolumn of the Routh-Hurwitz array for 1 + L(z) = 0:

z2 1 0.5 + 0.5Kz1 0.4 + 0.14K ⇒ 0.4 + 0.14K = 0 ⇒ K = − 0.4

0.14 = −2.8571z0 0.5 + 0.5K ⇒ 0.5 + 0.5K = 0 ⇒ K = −1

There are no intersects with the imaginary axis since the zeros of the first columnof the Routh-Hurwitz array correspond to K < 0.

• To find the intersects with the unit circumference we must consider 1+L(w) = 0and look for the zeros in the first column of the Routh-Hurwitz array:

1+L(w) = 0 ⇒(

w + 1

w − 1

)2

+ (0.4 + 0.14K)

(

w + 1

w − 1

)

+ (0.5 + 0.5K) = 0

⇒ (w + 1)2 + (0.4 + 0.14K)(w + 1)(w − 1) + (0.5 + 0.5K)(w − 1)2

(w − 1)2= 0

⇒ w2 + 2w + 1 + (0.4 + 0.14K)w2 − (0.4 + 0.14K) +

(0.5 + 0.5K)w2 − 2(0.5 + 0.5K)w + (0.5 + 0.5K)

(w − 1)2= 0

⇒ (1.9 + 0.64K)w2 + (1−K)w + (1.1 + 0.36K)

(w − 1)2= 0

⇒ (1.9 + 0.64K)w2 + (1−K)w + (1.1 + 0.36K) = 0

w2 1.9 + 0.64K 1.1 + 0.36K ⇒ 1.9 + 0.64K = 0 ⇒ K = −2.9688w1 1−K ⇒ 1−K = 0 ⇒ K = 1w0 1.1 + 0.36K ⇒ 1.1 + 0.36K = 0 ⇒ K = −3.0556

The intersect with the unit circumference is for K = 1 or at z1,2 = −0.2700±j0.9629 (roots of z2 + 0.54z + 1 = 0).

Page 25: problemas4s

Alberto Ortiz 25

Apart from manually drawing the root locus using the information collected, we canbuild the root locus by means of matlab with the following commands:

Lz = tf([0.14 0.5],[1 0.4 0.5],1)

figure(1); rlocus(Lz)

Root Locus

Real Axis

Imag

inar

y A

xis

−14 −12 −10 −8 −6 −4 −2 0 2

−4

−3

−2

−1

0

1

2

3

4

System: LzGain: 0Pole: −0.2 + 0.678iDamping: 0.183Overshoot (%): 55.6Frequency (rad/sec): 1.89

System: LzGain: 1.03Pole: −0.273 − 0.969iDamping: −0.00383Overshoot (%): 101Frequency (rad/sec): 1.85

System: LzGain: 97.3Pole: −7.01 − 1.12e−007iDamping: −0.527Overshoot (%): 701Frequency (rad/sec): 3.7

System: LzGain: InfPole: −3.57Damping: −0.376Overshoot (%): 357Frequency (rad/sec): 3.39

18. Determine the root locus for the discrete-time system of the figure for: (a) T = 0.1s, (b)T = 2s and (c) removing the sampler and the ZOH, and replacing the digital controllerby a continuous-time controller C(s) = K/s. Find the system poles for a gain K = 2 inall three cases.

X(s) C(z) = KTz

z−1 Gzoh(s) G(s) = 1s+1

+ E(s) E∗(s) Y (s)

Solution:

Page 26: problemas4s

Alberto Ortiz 26

We have to determine the characteristic polynomial for (a), (b) and (c):

1 +KL(z) = 1 + C(z)z − 1

zZ[

G(s)

s

]

= 1 +KTz

z − 1

z − 1

zZ[

1

s(s+ 1)

]

= 1 +KTZ[

1

s− 1

s+ 1

]

= 1 +KT

(

z

z − 1− z

z − e−T

)

= 1 +KTz(1− e−T )

(z − 1)(z − e−T )

1 +KL(s) = 1 + C(s)G(s) = 1 +K1

s(s+ 1)

(a) The open-loop transfer function and the characteristic equation for T = 0.1s are:

L(z) = Tz(1− e−T )

(z − 1)(z − e−T )=

0.0095z

z2 − 1.9048z + 0.9048

1 +KL(z) = z2 − (1 + e−T )z + e−T +KTz −KTe−T z

= z2 + (KT − 1− e−T −KTe−T )z + e−T

= z2 + (0.0095K − 1.9048)z + 0.9048 = 0

Now, we can start collecting information on different aspects of the root locus:

• The poles of the open-loop transfer function are z1,2 = {1, 0.9048}, while thereis one finite zero at z = 0. The other zero is at +∞ or −∞. We can deter-mine which by setting K to a large value, e.g. 106, and solving for z: z2 +

(0.0095K − 1.9048)z + 0.9048 = 0

K=106= z2 + 9498.0952z + 0.9048 = 0 ⇒

z1,2 = {−9498.0951, 0.0001}. So, the second zero is at −∞.Therefore, the root locus comprises two branches starting at z1,2 = {0.9048, 1}and ending at z = 0 and z = −∞.

• The intervals over the real axis belonging to the root locus are (−∞, 0] and[0.9048, 1].

• There is only one asymptote (n − m = 2 − 1 = 1) with angle (2k + 1)π/(n −m)|k=0 = 180◦ (the intersect with the real axis is irrelevant in this case).

• There must be a breakaway point between z = 0.9048 and z = 1 and one break-inpoint between z = −∞ and z = 0:

K = −z2 − 1.9048z + 0.9048

0.0095z

⇒ dK

dz= − (2z − 1.9048)0.0095z− 0.0095(z2 − 1.9048z + 0.9048)

0.00952z2

= −0.0095z2 − 0.0086

0.00952z2= 0 ⇒ z = ±0.9512

Page 27: problemas4s

Alberto Ortiz 27

The breakaway point is at z = 0.9512 (between the two poles) while the break-inpoint is at z = −0.9512 (between the two zeros). The value of K for these pointsare:

K(+0.9512) = −z2 − 1.9048z + 0.9048

0.0095z

z=0.9512

= 0.2506

K(−0.9512) = −z2 − 1.9048z + 0.9048

0.0095z

z=−0.9512

= 400.7599

• The intersects with the imaginary axis are obtained from the zeros of the firstcolumn of the Routh-Hurwitz array for 1 +KL(z) = 0:

z2 1 0.9048z1 0.0095K − 1.9048 ⇒ 0.0095K − 1.9048 = 0 ⇒ K = 200.5053z0 0.9048

The intersects with the imaginary axis are thus:

z2 + (0.0095K − 1.9048)z + 0.9048 = 0

K=200.5053

⇒ z2 + 0.9048 = 0 ⇒ z1,2 = ±j0.9512

• To find the intersects with the unit circumference we must consider 1+KL(w) =0 and look for the zeros in the first column of the Routh-Hurwitz array:

1+KL(w) = 0 ⇒(

w + 1

w − 1

)2

+ (0.0095K − 1.9048)

(

w + 1

w − 1

)

+ 0.9048 = 0

⇒ (w + 1)2 + (0.0095K − 1.9048)(w + 1)(w − 1) + 0.9048(w− 1)2

(w − 1)2= 0

⇒ w2 + 2w + 1 + (0.0095K − 1.9048)w2 − (0.0095K − 1.9048) +

0.9048w2 − 2 · 0.9048w+ 0.9048

(w − 1)2= 0

⇒ 0.0095Kw2 + 0.1904w+ 3.8096− 0.0095K

(w − 1)2= 0

⇒ 0.0095Kw2 + 0.1904w+ 3.8096− 0.0095K = 0

w2 0.0095K 3.8096− 0.0095K ⇒ 0.0095K = 0 ⇒ K = 0w1 0.1904w0 3.8096− 0.0095K ⇒ 3.8096− 0.0095K = 0

⇒ K = 401.0105

The intersect with the unit circumference is for K = 0 and z = 1, and forK = 401.0105 and z = −1.

Page 28: problemas4s

Alberto Ortiz 28

Apart from manually drawing the root locus using the information collected, wecan build the root locus by means of matlab with the following commands:

Lz = tf([0.0095 0],[1 -1.9048 0.9048],1)

figure(1); rlocus(Lz)

Root Locus

Real Axis

Imag

inar

y A

xis

−2.5 −2 −1.5 −1 −0.5 0 0.5 1 1.5

−1

−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

1

System: LzGain: 200Pole: 0.00171 − 0.945iDamping: 0.0358Overshoot (%): 89.4Frequency (rad/sec): 1.57

System: LzGain: 0.253Pole: 0.951 + 0.00482iDamping: 0.995Overshoot (%): 0Frequency (rad/sec): 0.0503

System: LzGain: 401Pole: −0.951 + 0.00212iDamping: 0.016Overshoot (%): 95.1Frequency (rad/sec): 3.14

System: LzGain: 200Pole: 0.000568 + 0.945iDamping: 0.0358Overshoot (%): 89.4Frequency (rad/sec): 1.57

(b) The open-loop transfer function and the characteristic equation for T = 2s are:

L(z) = Tz(1− e−T )

(z − 1)(z − e−T )=

1.7293z

z2 − 1.1353z + 0.1353

1 +KL(z) = z2 + (1.7293K − 1.1353)z + 0.1353 = 0

Now, we can start collecting information on different aspects of the root locus:

• The poles of the open-loop transfer function are z1,2 = {0.1353, 1}, while thereis one finite zero at z = 0. The other zero is at +∞ or −∞. We can determinewhich by setting K to a large value, e.g. 106, and solving for z: z2+(1.7293K−1.1353)z + 0.1353 = 0

K=106= z2 + 1729328.2982z + 0.1353 = 0 ⇒ z1,2 =

{−1729328.2982, 0}. So, the second zero is at −∞.Therefore, the root locus comprises two branches starting at z1,2 = {0.1353, 1}and ending at z = 0 and z = −∞.

• The intervals over the real axis belonging to the root locus are (−∞, 0] and[0.1353, 1].

• There is only one asymptote (n − m = 2 − 1 = 1) with angle (2k + 1)π/(n −m)|k=0 = 180◦ (the intersect with the real axis is irrelevant in this case).

Page 29: problemas4s

Alberto Ortiz 29

• There must be a breakaway point between z = 0.1353 and z = 1 and one break-inpoint between z = −∞ and z = 0:

K = −z2 − 1.1353z + 0.1353

1.7293z

⇒ dK

dz= − (2z − 1.1353)1.7293z− 1.7293(z2 − 1.1353z + 0.1353)

1.72932z2

= −1.7293z2 − 0.23397

1.72932z2= 0 ⇒ z = ±0.3678

The breakaway point is at z = 0.3678 (between the two poles) while the break-inpoint is at z = −0.3678 (between the two zeros). The value of K for these pointsare:

K(+0.3678) = −z2 − 1.1353z + 0.1353

1.7293z

z=0.3678

= 0.2311

K(−0.3678) = −z2 − 1.1353z + 0.1353

1.7293z

z=−0.3678

= 1.0819

• The intersects with the imaginary axis are obtained from the zeros of the firstcolumn of the Routh-Hurwitz array for 1 +KL(z) = 0:

z2 1 0.1353z1 1.7293K − 1.1353 ⇒ 1.7293K − 1.1353 = 0 ⇒ K = 0.6565z0 0.1353

The intersects with the imaginary axis are thus:

z2 + (1.7293K − 1.1353)z + 0.1353 = 0

K=0.6565

⇒ z2 + 0.1353 = 0 ⇒ z1,2 = ±j0.3678

• To find the intersects with the unit circumference we must consider 1+KL(w) =0 and look for the zeros in the first column of the Routh-Hurwitz array:

1+KL(w) = 0 ⇒(

w + 1

w − 1

)2

+ (1.7293K − 1.1353)

(

w + 1

w − 1

)

+ 0.1353 = 0

⇒ (w + 1)2 + (1.7293K − 1.1353)(w + 1)(w − 1) + 0.1353(w− 1)2

(w − 1)2= 0

⇒ w2 + 2w + 1 + (1.7293K − 1.1353)w2 − (1.7293K − 1.1353) +

0.1353w2 − 2 · 0.1353w+ 0.1353

(w − 1)2= 0

⇒ 1.7293Kw2 + 1.7294w+ 0.2706− 1.7293K

(w − 1)2= 0

⇒ 1.7293Kw2 + 1.7294w+ 2.2706− 1.7293K = 0

Page 30: problemas4s

Alberto Ortiz 30

w2 1.7293K 2.2706− 1.7293K ⇒ 1.7293K = 0 ⇒ K = 0w1 1.7294w0 2.2706− 1.7293K ⇒ 2.2706− 1.7293K = 0

⇒ K = 1.3130

The intersect with the unit circumference is for K = 0 and z = 1, and forK = 1.3130 and z = −1.

Apart from manually drawing the root locus using the information collected, wecan build the root locus by means of matlab with the following commands:

Lz = tf([1.7293 0],[1 -1.1353 0.1353],1)

figure(1); rlocus(Lz)

Root Locus

Real Axis

Imag

inar

y A

xis

−1.5 −1 −0.5 0 0.5 1 1.5

−1

−0.5

0

0.5

1

System: LzGain: 0.231Pole: 0.365 + 3.38e−009iDamping: 1Overshoot (%): 0Frequency (rad/sec): 0.504

System: LzGain: 1.08Pole: −0.37Damping: 0.302Overshoot (%): 37Frequency (rad/sec): 1.65

System: LzGain: 0.657Pole: −0.000637 + 0.367iDamping: 0.538Overshoot (%): 13.5Frequency (rad/sec): 0.933

System: LzGain: 1.31Pole: −1Damping: −0.000515Overshoot (%): 100Frequency (rad/sec): 1.57

(c) The open-loop transfer function and the characteristic equation are:

L(s) =1

s2 + s

1 +KL(s) = s2 + s+K = 0

Now, we can start collecting information on different aspects of the root locus:

• The poles of the open-loop transfer function are s1,2 = {0,−1}, while the zerosare both infinite, one at s = +∞ and the other at s = −∞. Therefore, the rootlocus comprises two branches starting at s1,2 = {0,−1}, and ending at s = +∞and z = −∞.

• The interval over the real axis belonging to the root locus is [−1, 0].

Page 31: problemas4s

Alberto Ortiz 31

• There are two asymptotes (n − m = 2 − 0 = 2) with angles θk = (2k+1)π2 =

{π/2, 3π/2}. The centroid is at s =∑

pi−∑

cj2 = (−1+0)−0

2 = −0.5.

• There is one breakaway point which coincides with the asymptotes centroid:

K = −s2 + s

1⇒ dK

ds= −2s− 1 = 0 ⇒ s = −0.5

The value of K for this point is:

K(−0.5) = −(s2 + s)

s=−0.5

= 0.25

• The intersects with the imaginary axis are obtained from the zeros of the firstcolumn of the Routh-Hurwitz array for 1 +KL(s) = 0:

z2 1 Kz1 1z0 K ⇒ K = 0

The only intersect with the imaginary axis is thus one of the poles.

Apart from manually drawing the root locus using the information collected, wecan build the root locus by means of matlab with the following commands:

Ls = tf(1,[1 1 0])

figure(1); rlocus(Ls)

Root Locus

Real Axis

Imag

inar

y A

xis

−1.5 −1 −0.5 0 0.5−0.8

−0.6

−0.4

−0.2

0

0.2

0.4

0.6

0.8

System: LsGain: 0.25Pole: −0.5Damping: 1Overshoot (%): 0Frequency (rad/sec): 0.5

System: LsGain: 0.0048Pole: −0.995Damping: 1Overshoot (%): 0Frequency (rad/sec): 0.995

Page 32: problemas4s

Alberto Ortiz 32

19. Determine the resonant peak, the resonant frequency and the bandwidth for the followingclosed-loop discrete-time system with T = 1s:

X(z) G′(z) =0.2(z+0.8)

z2−0.8z+0.2

+ E(z) Y (z)

Solution:

We have to determine first the closed-loop transfer function:

Y (z)

X(z)=

0.2(z+0.8)z2−0.8z+0.2

1 + 0.2(z+0.8)z2−0.8z+0.2

=0.2z + 0.16

z2 − 0.6z + 0.36

The system poles are z1,2 = 0.3± j0.5196.

We determine the equivalent poles in continuous time:

|z| = 0.6000, 6 z = 1.0472 rad ⇒ σ =1

Tln |z| = −0.5108, ω =

1

T6 z = 1.0472 rad/s.

s = −0.5108 + j1.0472 = −δωn ± jωn

1− δ2 ⇒{

δωn = 0.5108

ωn

√1− δ2 = 1.0472

ω2n − δ2ω2

n = 1.04722 ⇒ ω2n − 0.51082 = 1.04722 ⇒ ωn = 1.1651 rad/s, δ = 0.4384

From this we can straightforwardly determine the resonant peak and the bandwidth:

Mr =1

2δ√1− δ2

= 1.2689 (20 log10 Mr = 2.0686 dB), ωr = ωn

1− 2δ2 = 0.9142 rad/sec

ωc = ωn

[

(1− 2δ2) +√

4δ4 − 4δ2 + 2]

12

= 1.5588 rad/sec

If we verify these calculations with Matlab, we obtain:

Page 33: problemas4s

Alberto Ortiz 33

As can be observed, apart from the evident DC gain difference, both systems behave simi-larly with regard to the magnitude of the frequency response, with subtle differences as forthe bandwith and the resonant peak features.

20. Determine the gain and phase margins for the following closed-loop discrete-time system:

X(w) G′(w) = 150(w+2)(w+10)

H(w) = 7w+7

+ Y (w)

Solution:

We first determine L(w) = G′(w)H(w) = 1050(w+2)(w+7)(w+10) .

Next, we determine L(jν):

L(jν) =1050

(w + 2)(w + 7)(w + 10)

w=jν

=1050

(2 + jν)(7 + jν)(10 + jν)

=(147000− 19950ν2) + j(1050ν3 − 109200ν)

ν6 + 153ν4 + 5496ν2 + 19600

Now, we can solve for ν in Im[L(jν)] = 0: 1050ν3−109200ν = 0 ⇒ ν = {0,±10.1980}.As can be observed, ν = ±∞ also leads to Im[L(jν)] = 0:

limν→∞

1050ν3 − 109200ν

ν6 + 153ν4 + 5496ν2 + 19600= 0

νp ∈ {0,+10.1980,+∞} is the frequency leading to the value of L(jν) over the realaxis closest to −1 + j0:

L(j0) =147000

19600= 7.5

L(j10.1980) = −0.5719

L(j∞) = limν→∞

147000− 19950ν2

ν6 + 153ν4 + 5496ν2 + 19600= 0

νp is thus +10.1980.

The gain margin can be calculated as:

Kgm =1

|L(jνp)|=

1

0.5719= 1.7486 ⇒ GM = 20 log10 Kgm = 4.8536

Page 34: problemas4s

Alberto Ortiz 34

To determine the phase margin, we must solve for ν in |L(jν)| = 1:

(147000− 19950ν2) + j(1050ν3 − 109200ν)

ν6 + 153ν4 + 5496ν2 + 19600

= 1 ⇒√

(147000− 19950ν2)2 + (1050ν3 − 109200ν)2

(ν6 + 153ν4 + 5496ν2 + 19600)2= 1 ⇒

(147000− 19950ν2)2 + (1050ν3 − 109200ν)2 = (ν6 + 153ν4 + 5496ν2 + 19600)2 ⇒ν12 + 306ν10 + 34401ν8 + 618488ν6−

132488000ν4 − 5843990000ν2 − 21225500000 = 0 ⇒ν = {±3.77± j10.98,±j10,±7.72,±j7,±j2}⇒ νg = +7.7204 rad

We can now determine PM:

L(jνg) = −0.9452− j0.3264⇒ PM = 6 L(jνg) + π = 19.0521◦

We can verify these calculations with Matlab from e.g. the Nyquist plot of L(w):

−2 −1 0 1 2 3 4 5 6 7 8−5

−4

−3

−2

−1

0

1

2

3

4

5

Nyquist Diagram

Real Axis

21. Determine the gain and phase margins for the following closed-loop discrete-time systemwith T = 0.1s:

X(z) G′(z) = 0.0952z(z−1)(z−0.905)

+ E(z) Y (z)

Solution:

Page 35: problemas4s

Alberto Ortiz 35

In this case, we have L(z) = G′(z). We have to determine L(w) using z =1 + T

2w

1− T2w

T=0.1

=

20 + w

20− w:

L(w) =0.0952 20+w

20−w(

20+w20−w − 1

)(

20+w20−w − 0.905

) =0.0952(20 + w)(20− w)

2w(1.9 + 1.905w)=

38.08− 0.0952w2

3.8w + 3.81w2

We next determine L(jν):

L(jν) =38.08− 0.0952w2

3.8w + 3.81w2

w=jν

=38.08 + 0.0952ν2

−3.81ν2 + j3.8ν

=38.08 + 0.0952ν2

−3.81ν2 + j3.8ν

−3.81ν2 − j3.8ν

−3.81ν2 − j3.8ν

= − (145.0848ν + 0.3627ν3) + j(144.7040+ 0.3618ν2)

14.5161ν3 + 14.4400ν

Now, we can solve for νp in Im[L(jν)] = 0: 144.7040 + 0.3618ν2 = 0 ⇒ ν =±j19.9989. This means the Nyquist plot does not intersect the real axis. As can beobserved, ν = ±∞ also leads to Im[L(jν)] = 0:

limν→∞

144.7040+ 0.3618ν2

14.5161ν3 + 14.4400ν= 0

So, νp = +∞.

The gain margin is thus:

Kgm =1

|L(jνp)|=

1

limν→∞

145.0848ν+0.3627ν3

14.5161ν3+14.4400ν

=14.5161

0.3627= 40.0223

⇒ GM = 20 log10 Kgm = 32.0460

To determine the phase margin, we must solve for ν in |L(jν)| = 1:

(145.0848ν + 0.3627ν3) + j(144.7040+ 0.3618ν2)

14.5161ν3 + 14.44ν

= 1 ⇒√

(145.0848ν + 0.3627ν3)2 + (144.7040+ 0.3618ν2)2

(14.5161ν3 + 14.44ν)2= 1 ⇒

(145.0848ν + 0.3627ν3)2 + (144.7040+ 0.3618ν2)2 − (14.5161ν3 + 14.44ν)2 = 0 ⇒ν = {±3.1230,±j3.2014,±j0.9974}⇒ νg = +3.1230 rad

We can now determine PM:

L(jνg) = −0.9526− j0.3042⇒ PM = 6 L(jνg) + π = 17.7102◦

Page 36: problemas4s

Alberto Ortiz 36

We can check these calculations with Matlab from e.g. the Nyquist plot of L(w):

Nyquist Diagram

Real Axis−10 −9 −8 −7 −6 −5 −4 −3 −2 −1 0

−150

−100

−50

0

50

100

150

System: LwGain Margin (dB): 32At frequency (rad/sec): InfClosed Loop Stable? Yes

System: LwPhase Margin (deg): 17.7Delay Margin (sec): 0.099At frequency (rad/sec): 3.12Closed Loop Stable? Yes

System: LwReal: −9.86Imag: 72.2Frequency (rad/sec): −0.137

System: LwReal: −7.65Imag: 13.8Frequency (rad/sec): −0.559

System: LwReal: −9.69Imag: −50.6Frequency (rad/sec): 0.192

System: LwReal: −8.18Imag: −17.2Frequency (rad/sec): 0.477

22. Determine the gain margin, the phase margin and the bandwidth for the following closed-loop discrete-time system with T = 0.2s:

X(s) Gzoh(s) G(s) = 7s+5

+ E(s) E∗(s) Y (s)

Solution:

In this case, we have L(z) = G′(z) =z − 1

zZ[

7

s(s+ 5)

]

=0.8850

z − 0.3679.

Next, we have to determine L(w) using z =1 + T

2w

1− T2w

T=0.2

=10 + w

10− w:

L(w) =0.8850

10+w10−w − 0.3679

=8.8500− 0.8850w

6.3210 + 1.3679w

Page 37: problemas4s

Alberto Ortiz 37

We next determine L(jν):

L(jν) =8.8500− j0.8850ν

6.3210 + j1.3679ν=

8.8500− j0.8850ν

6.3210 + j1.3679ν

6.3210− j1.3679ν

6.3210− j1.3679ν

=(29.8965− 0.6470ν2)− j9.4594ν

ν2 + 21.3532

Now, we can solve for ν in Im[L(jν)] = 0: −9.4594ν = 0 ⇒ ν = 0.

As can be observed, ν = ±∞ also leads to Im[L(jν)] = 0:

limν→∞

−9.4594ν

ν2 + 21.3532= 0

νp ∈ {0,+∞} is the frequency leading to the value of L(jν) over the real axis closestto −1 + j0:

L(j0) =29.8965

21.3532= 1.4001

L(j∞) = limν→∞

29.8965− 0.6470ν2

ν2 + 21.3532= −0.6470

Therefore, νp is +∞.

The gain margin is, thus, calculated as:

Kgm =1

|L(jνp)|=

1

0.6470= 1.5456 ⇒ GM = 20 log10 Kgm = 3.7822

To determine the phase margin, we must solve for ν in |L(jν)| = 1:

(29.8965− 0.6470ν2)− j9.4594ν

ν2 + 21.3532

= 1 ⇒√

(29.8965− 0.6470ν2)2 + 9.45942ν2

(ν2 + 21.3532)2= 1 ⇒

(29.8965− 0.6470ν2)2 + 9.45942ν2 − (ν2 + 21.3532)2 = 0 ⇒0.5814ν4 − 8.0878ν2 − 437.84 = 0 ⇒ν = {±5.9385,±j4.6211}⇒ νg = +5.9385

We can now determine PM:

L(jνg) = 0.1251− j0.9922 ⇒ PM = 6 L(jνg) + π = 97.1840◦

The Nyquist plots of L(w) and L(z), as well as the precise margin values calculatedby Matlab, are provided below to check and discuss the results obtained:

Page 38: problemas4s

Alberto Ortiz 38

>> allmargin(Lz) >> allmargin(Lw)

GainMargin: 1.545681009813324 GainMargin: 1.545649717514124

GMFrequency: 15.707963268631948 GMFrequency: Inf

PhaseMargin: 97.143329726671482 PhaseMargin: 97.192396318832607

PMFrequency: 5.362315461090347 PMFrequency: 5.937530819422515

DelayMargin: 1.580913098439896 DelayMargin: 0.285695750516008

DMFrequency: 5.362315461090347 DMFrequency: 5.937530819422515

Stable: 1 Stable: 1

Nyquist Diagram

Real Axis−1.5 −1 −0.5 0 0.5 1 1.5 2

−1.5

−1

−0.5

0

0.5

1

1.5

System: LwPhase Margin (deg): 97.2Delay Margin (sec): 0.286At frequency (rad/sec): 5.94Closed Loop Stable? Yes

System: LwGain Margin (dB): 3.78At frequency (rad/sec): InfClosed Loop Stable? Yes

Page 39: problemas4s

Alberto Ortiz 39

Nyquist Diagram

Real Axis−1.5 −1 −0.5 0 0.5 1 1.5 2

−1.5

−1

−0.5

0

0.5

1

1.5

System: LzGain Margin (dB): 3.78At frequency (rad/sec): 15.7Closed Loop Stable? Yes

System: LzPhase Margin (deg): 97.1Delay Margin (samples): 1.58At frequency (rad/sec): 5.36Closed Loop Stable? Yes

As can be observed, on the one hand, there are slight differences in the margin valuesobtained due to rounding errors in our calculations, either to derive L(w) and laterwhile obtaining the requested performance values from L(w). On the other hand, thecritical phase frequency νp obtained from L(w) is ∞ while for L(z) is 15.7080. Thisis because, while working with L(w), we use the fictitious frequency νp (= ∞), whilethe calculations performed over L(z) make use of the real frequency ωp (= 15.7080).The correspondence can be easily checked using the transformation from ω to ν:ν = 2

T tan ωT2 ⇒ ωp = 2

T tan−1 νpT2 = π

T = 15.7080. The same happens with the

critical gain frequencies: νg = 5.94 and ωg = 5.36 = 2T tan−1 νgT

2 .

To finish, we have to determine the bandwidth of the system, and, as a first option,we can approximate this system by a standard first-order system. To do so, we needto go back to G′(z) = 0.8850

z−0.3679 , and determine the closed-loop transfer function:

Y (z)

X(z)=

G′(z)

1 +G′(z)=

0.8850

z + 0.5171

We next transform the discrete-time pole z = −0.5171 to the continuous-time do-main:

σ =1

Tln |z| = −3.2977 , ω =

1

T6 z =

±π

T= ±15.7080⇒ s = −3.2937± j15.7080

Page 40: problemas4s

Alberto Ortiz 40

We can derive the bandwidth using standard second-order formulation:

δωn = 3.2937

ωn

√1− δ2 = 15.7080

}

⇒ ω2n − (ωnδ)

2 = 15.70802

⇒ ωn =√

15.70802 + 3.29372 = 16.0496

⇒ δ =3.2937

16.0496= 0.2052

ωc = ωn

[

(1− 2δ2) +√

4δ4 − 4δ2 + 2]1/2

= 24.1903

If we plot the step responses of both the discrete-time system and the equivalentsecond-order system, we obtain the following (the right plot comes from equalizing the

responses of the discrete- and the continuous-time systems, i.e. 1

limz→1G′(z)

1+G′(z)

G′(z)1+G′(z)):

0 0.5 1 1.5 2 2.5 3 3.5 40

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

Step Response

Time (sec)

DTCT 2nd order

0 0.5 1 1.5 2 2.5 3 3.5 40

0.2

0.4

0.6

0.8

1

1.2

1.4

1.6

Step Response

Time (sec)

DTCT 2nd order

As can be observed, the responses, apart from the different steady-state values, arequite similar. However, the bode plots for both systems look quite different:

−6

−4

−2

0

2

4

6

10−1

100

101

10

−180

−135

−90

−45

0

discrete−time system

Frequency (rad/sec)10

010

110

210

3−180

−135

−90

−45

0

equivalent 2nd−order continuous−time system

Frequency (rad/sec)

−80

−70

−60

−50

−40

−30

−20

−10

0

10

20

System: GsFrequency (rad/sec): 24.2Magnitude (dB): −3.02

Page 41: problemas4s

Alberto Ortiz 41

As can be noticed from the left plot, the bandwidth of the discrete-time system isinfinite. The bandwidth of the equivalent continuous-time system is, however, ofabout 24.2 rad/sec.