Professional Documents
Culture Documents
Control Por Computador: December 10, 2013
Control Por Computador: December 10, 2013
Control Por Computador: December 10, 2013
1
2.5758
0.5628
-0.0707
1
0.5354
-0.0707
0
Alberto Ortiz
Since there is one sign change along the first column of the RH array, we conclude the
system is unstable since one root of P lies in the right-half side of the wplane, and,
consequently, one root of P (z) lies outside the unit circle in the zplane.
2. Check the stability of a discrete-time system whose characteristic equation is F (z) =
z 3 + z 2 + 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 and
thus build matrices H1 , H2 , V = H1 + H2 and W = H1 H2 :
1 1
0.50 0.25
1.50 1.25
0.50 0.75
H1 =
H2 =
V =
W =
0 1
0.25
0
0.25
1
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) =
z 2 + z + 0.25 = 0 using the Jury test.
Solution:
Since the degree of the characteristic polynomial is 2, the following conditions are necessary 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
Alberto Ortiz
Solution:
The polynomial is first transformed using z = (1 + w)/(1 w):
3
2
1+w
1+w
1+w
F (w) =
+K
+
+
1w
1w
1w
(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
w2
w1
w0
K 1
(3K + 1)
8K(K1)
3K+1
3(K 1)
(K + 3)
0
(K + 3)
In order to avoid sign changes in the first column of the RH array, all terms must be
positive:
K 1>0
K>1
K>1
(3K + 1) > 0
3K + 1 < 0
K < 31
8K(K1)
3K+1
>0
8K(K 1) > 0
(K + 3) > 0
K +3<0
K < 3
K<1
K<1
(3K + 1) < 0
3K + 1 > 0
K > 31
8K(K1)
3K+1
<0
8K(K 1) < 0
(K + 3) < 0
K +3>0
K > 3
Alberto Ortiz
Solution:
The transfer function for this system is given by:
h
i
G(s)
K z1
z Z
s
Y (z)
i
h
=
G(s)
X(z)
1 + K z1
Z
z
s
G(s)
s
= 0, so we need to determine Z
G(s)
s
G(s)
1
A
B
Z
=Z
=Z
+
s
s(s + 3)
s
s+3
1
1
1
1
A=s
= , B = (s + 3)
=
s(s + 3) s=0
3
s(s + 3) s=3
3
1
1
1 e3T
z
z
1
z
1
G(s)
= Z
=
=
Z
3T
s
3
s s+3
3 z1 ze
3 (z 1)(z e3T )
i
:
Since the degree of the characteristic polynomial P (z) = 3z + 0.0582K 2.8250 is 1, the
following 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
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) = z 2 1.8z + 0.08 = 0.
Alberto Ortiz
(a) Transforming the characteristic equation in order for the RH test to be usable, we
obtain:
w2 + 0.6389w 0.2500
P (w) =
=0
0.3472w2 0.6944w + 0.3472
The polynomial to study through the RH test is thus P (w) = w2 + 0.6389w 0.2500:
w2
w1
w0
1
0.6389
-0.2500
-0.2500
0
Since there is one sign change along the first column of the RH array, we conclude
the system is unstable since one root of P lies in the right-half side of the wplane,
and, consequently, one root of P (z) lies outside the unit circle in the zplane.
(b) Since the degree of the characteristic polynomial is 2, the following conditions are
necessary 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)
E(s)
E (s)
K
1
s(s+1)
Gzoh (s)
Solution:
The transfer function for this system is given by:
K z1
z Z
G(s)
s
Y (z)
h
i
=
G(s)
X(z)
Z
1 + K z1
z
s
Y (s)
Alberto Ortiz
G(s)
s
= 0, so we need to determine Z
1
A1
A2
B
G(s)
=Z 2
=Z
+
+
Z
s
s (s + 1)
s2
s
s+3
1
A1 = s2 2
=1
s (s + 1) s=0
d 2
1
1
A2 = s 2
= 1
=
ds s (s + 1) s=0
(s + 1)2 s=0
1
=1
B = (s + 1) 2
s (s + 1) s=1
G(s)
1
Tz
1
z
1
z
Z
=Z 2 +
=
+
s
s
s s+1
(z 1)2
z 1 z eT
z (T + eT 1)z + (1 eT T eT )
=
(z 1)2 (z eT )
G(s)
s
i
:
(a) Transforming the characteristic equation in order for the RH test to be usable, we
obtain:
P (w) =
2.7358 - 0.1037K
1.2642 - 0.5284K
0.6321K
0.6321K
0
In order to avoid sign changes in the first column of the RH array, all terms must
be positive:
2.7358 0.1037K > 0
K < 26.3819
K < 2.3925
0.6321K > 0
K>0
Alberto Ortiz
or all negative:
2.7358 0.1037K < 0
K > 26.3819
K > 2.3925
0.6321K < 0
K <0
8. Check, using the Jury test, the stability of a system whose dynamics is given by the
following 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 determine the transfer function:
z 2 Y (z) + 0.8zY (z) + 0.07Y (z) = 2zX(z) + 0.2X(z)
Y (z)
2z + 0.2
= 2
X(z)
z + 0.8z + 0.07
Since the degree of the characteristic polynomial P (z) = z 2 + 0.8z + 0.07 is 2, the following
conditions 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
E(s)
E (s)
8
Gzoh (s)
1
s(s+3)
Y (s)
Alberto Ortiz
Solution:
We first determine the system transfer function:
i
h
G(s)
z1
Z
8
z
s
Y (z)
i
h
H(z) =
=
z1
X(z)
1 + 8 z Z G(s)
s
z1
z1
z1
A2
B
G(s)
1
A1
L(z) = 8
=8
=8
+
Z
Z 2
Z
+
z
s
z
s (s + 3)
z
s2
s
s+3
1
1
A1 = s2 2
=
s (s + 3) s=0
3
1
1
1
d 2
=
s
=
A2 =
ds s2 (s + 3) s=0
(s + 3)2 s=0
9
1
1
B = (s + 3) 2
=
s (s + 3) s=3
9
8z1
3T z
1
z
1
z
3
8z1
=
Z 2 +
+
L(z) =
9 z
s
s s+3
9 z
(z 1)2
z 1 z e3T
8 3T (z e3T ) (z 1)(z e3T ) + (z 1)2
9
(z 1)(z e3T )
0.3265z + 0.2955
8 (3T + e3T 1)z + (1 3T e3T e3T )
= 2
=
9
z 2 (1 + e3T )z + e3T
9z 15.667z + 6.6674
0.3265z + 0.2955
H(z) = 2
9z 15.3408z + 6.9629
=
From the characteristic equation 9z 2 15.3408z + 6.9629 = 0 we obtain the system poles
as z1,2 = 0.8523 j0.2175.
In order to use the expressions for the overshoot and the settling time of continuous-time
second-order systems, we have first to calculate the poles s1,2 = j of the equivalent
continuous-time system:
1
1
ln |z| = 1.2832, = 6 z = 2.4983 rad/s.
T
T
(
p
=
1.2832
n
s1 = 1.2832 + j2.4983 = n jn 1 2
n 1 2 = 2.4983
12
= 19.92%,
ts =
= 2.4483 s
n
Alberto Ortiz
10. Determine the overshoot and the settling time for the following discrete-time closed-loop
system with T = 0.1s:
X(s)
E(s)
E (s)
C(z) =
4
z0.1
Gzoh (s)
1
s(s+3)
Y (s)
Solution:
We first determine the system transfer function:
i
h
G(s)
z1
Z
C(z)
z
s
Y (z)
h
i
=
H(z) =
G(s)
X(z)
Z
1 + C(z) z1
z
s
z1
4 z1
G(s)
1
L(z) = C(z)
=
Z
Z 2
z
s
z 0.1 z
s (s + 3)
4 z1
A1
A2
B
=
Z
+
+
z 0.1 z
s2
s
s+3
1
1
=
A1 = s2 2
s (s + 3) s=0
3
d 2
1
1
1
A2 =
=
=
s 2
2
ds s (s + 3) s=0
(s + 3) s=0
9
1
1
B = (s + 3) 2
=
s (s + 3) s=3
9
1
1
3
4 z11
Z 2 +
L(z) =
z 0.1 z 9
s
s s+3
4 z11
3T z
z
z
=
+
z 0.1 z 9 (z 1)2
z 1 z e3T
10
Alberto Ortiz
=
1.0750
n
s1 = 1.0750 + j1.7306 = n jn 1 2
n 1 2 = 1.7306
|z| = 0.8981, 6 z = 0.1731 rad =
12
= 14.2061%,
ts =
= 2.9224 s
n
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 continuoustime system:
s
2
ln2 (0.05)
Mp = 100e 1
= 0.6901
= ln(0.01Mp ) =
2 + ln2 (0.05)
1 2
tp =
n =
=
= 2.1705 rad/s.
n 1 2
tp 1 2
2 1 0.69012
12. Determine the static error expressions and constants for the closed-loop configurations
shown in the figure:
(a)
X(s)
E(s)
G1 (s)
G2 (s)
H(s)
Y (s)
Y (s)
11
Alberto Ortiz
(b)
X(s)
E(s)
G1 (s)
G2 (s)
Y (s)
H(s)
Solution:
(a) We first have to determine an expression for the error E(z):
z1
z1
1
z1
E(z) = lim
X(z)
z1
z
z 1 + Q(z)
The expressions for the standard inputs step, ramp and parabola are as follows:
z1
1
z
z
X(z) = z1 esp = lim
z1
z 1 + G1 (z)G2 (z)H(z) z 1
1
[step]
=
1 + limz1 G1 (z)G2 (z)H(z)
1
A(z)
Kp = lim G1 (z)G2 (z)H(z) = lim
z1
z1 (z 1)N B(z)
(
1/(1 + Kp ) system of type 0
1
esp =
=
1 + Kp
0
system of type 1 or higher
12
Alberto Ortiz
X(z) =
1
Tz
z1
z1
z 1 + G1 (z)G2 (z)H(z) (z 1)2
T
=
limz1 (z 1)G1 (z)G2 (z)H(z)
1
z 1 A(z)
1
Kv =
lim (z 1)G1 (z)G2 (z)H(z) =
lim
T z1
T z1 (z 1)N B(z)
system of type 0
1
= 1/Kv system of type 1
esv =
Kv
0
system of type 2 or higher
z1
1
T 2 z(z + 1)
esa = lim
z1
z 1 + G1 (z)G2 (z)H(z) 2(z 1)3
2T 2
=
2 limz1 (z 1)2 G1 (z)G2 (z)H(z)
1
(z 1)2 A(z)
1
Ka = 2 lim (z 1)2 G1 (z)G2 (z)H(z) = 2 lim
T z1
T z1 (z 1)N B(z)
system of type 0
system of type 1
1
esa =
=
0
system of type 3 or higher
Tz
(z1)2
esv = lim
[ramp]
X(z) =
T 2 z(z+1)
2(z1)3
[parabola]
(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)
XG1 (z)
1 + G1 G2 H(z)
E(s) = X(s) Y (s)H(s) = X(s) U (s)G2 (s)H(s)
E (s) = X (s) U (s)G2 H (s)
U (s) =
E(z) = X(z)
Consequently:
ess = lim
z1
z1
z 1 X(z) + X(z)G1 G2 H(z) XG1 (z)G2 H(z)
E(z) = lim
z1
z
z
1 + G1 G2 H(z)
13
Alberto Ortiz
In this case, it is not possible to pre-calculate the error as a function of the type of
input 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 of
T = 1s and the following transfer functions:
G1 (s) =
s1
,
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:
1
d 5t
z
1
G1 (z) = Z
=Z
s1+1 Z
e
+ (t)
s+5
s+5
dt
z e5T
z
z
= Z 5e5kT + (kT )
= Z 5e5t + (t)
5T
ze
z e5T
5T
z
6z
5z + e
z
+1
=1
=
= 5
z e5T
z e5T
z e5T
z e5T
3
3z
G2 (z) = Z
=
s+7
z e7T
z
1
=
H(z) = Z
s+1
z eT
Consequently:
Q(z) =
z3
15z 3 + 0.0202z 2
0.3755z 2 + 0.0028z + e13
esa =
ess = lim
14
Alberto Ortiz
4 z e5T
z e7T
z eT
G1 (s)G2 (s)H(s) =
A
B
3
=
+
(s + 1)(s + 7)
s+1 s+7
3
1
3
A = (s + 1)
= =
(s + 1)(s + 7) s=1
6
2
3
1
3
=
=
B = (s + 7)
(s + 1)(s + 7) s=7
6
2
T
1 z(e e7T )
z
z
1
=
G2 H(z) =
T
7T
2 ze
ze
2 (z eT )(z e7T )
0.1835z
=
(z 0.3679)(z 0.0009)
G2 (s)H(s) =
s1
A
B
1s1
=
= +
[step]
ss+5
s(s + 5)
s
s+5
s 1
1
A=s
=
s(s + 5) s=0
5
6
s 1
=
B = (s + 5)
s(s + 5) s=5
5
z(5z + e5T 6)
6z
z
z(z 1.1987)
1
=
=
XG1 (z) =
5T
5 ze
z1
5(z 1)(z e5T )
(z 1)(z 0.0067)
X(s)G1 (s) =
15
Alberto Ortiz
A2
s1
A1
B
1 s1
= 2
= 2 +
+
s2 s + 5
s (s + 5)
s
s
s+5
1
s 1
2
=
A1 = s 2
s (s + 5) s=0
5
d 2 s 1
6
6
A2 =
=
s
=
ds s2 (s + 5) s=0
(s + 5)2 s=0
25
s 1
6
B = (s + 5) 2
=
s (s + 5) s=5
25
z
z
Tz
1
+
6
6
5
XG1 (z) =
25
(z 1)2
z1
z e5T
[ramp]
X(s)G1 (s) =
A2
A3
s1
A1
B
1 s1
= 3
= 3 + 2 +
+
s3 s + 5
s (s + 5)
s
s
s
s+5
s 1
1
3
A1 = s 3
=
s (s + 5) s=0
5
d 3 s 1
6
6
A2 = s 3
=
=
ds s (s + 5) s=0
(s + 5)2 s=0
25
6
6
1 d2 3 s 1
=
s 3
=
A3 =
2
3
2! ds
s (s + 5) s=0
(s + 5) s=0
125
s 1
6
B = (s + 5) 3
=
s (s + 5) s=5
125
i
h
2
T
z(z+1)
1
z
Tz
z
XG1 (z) = 125
25 2(z1)3 + 30 (z1)
2 6 z1 + 6 ze5T
X(s)G1 (s) =
[parabola]
2
5T
)+60T (z1)(ze5T )12(z1)2 (ze5T )+12(z1)3
z 25T (z+1)(ze
250
(z1)3 (ze5T )
z (0.0923z 2 0.2456z0.0454)
(z1)3 (z0.0067)
Summing up:
G1 G2 H(z) =
z(0.0786z + 0.0042)
(z 0.0067)(z 0.0009)(z 0.3679)
16
Alberto Ortiz
0.1835z
(z 0.3679)(z 0.0009)
z(z 1.1987)
[step]
XG1 (z) =
(z 1)(z 0.0067)
z (0.0384z 0.2370)
[ramp]
XG1 (z) =
(z 1)2 (z 0.0067)
z 0.0923z 2 0.2456z 0.0454
[parabola]
XG1 (z) =
(z 1)3 (z 0.0067)
z 1 X(z) + X(z)G1 G2 H(z) XG1 (z)G2 H(z)
ess = lim
z1
z
1 + G1 G2 H(z)
G2 H(z) =
Consequently:
z1
z1 z
esp = lim
z
z1
z(0.0786z+0.0042)
z(z1.1987)
0.1835z
(1 (z0.0067)(z0.0009)(z0.3679)
) (z1)(z0.0067)
(z0.3679)(z0.0009)
z(0.0786z+0.0042)
1 (z0.0067)(z0.0009)(z0.3679)
z(0.0786z+0.0042)
z1.1987
0.1835z
(z0.0067)(z0.0009)(z0.3679) z0.0067 (z0.3679)(z0.0009)
z(0.0786z+0.0042)
1 (z0.0067)(z0.0009)(z0.3679)
= lim
= lim
(z0.0067)(z0.0009)(z0.3679)z(0.0786z+0.0042)0.1835z(z1.1987)
(z0.0067)(z0.0009)(z0.3679)z(0.0786z+0.0042)
z1
z1
z1
z1 z
esv = lim
Tz
(z1)2
= 1.0670
z(0.0786z+0.0042)
0.1835z
) z(0.0384z0.2370)
(1 (z0.0067)(z0.0009)(z0.3679)
(z1)2 (z0.0067) (z0.3679)(z0.0009)
z(0.0786z+0.0042)
1 (z0.0067)(z0.0009)(z0.3679)
T z(0.0786z+0.0042)
0.0384z0.2370
0.1835z
z0.0067
(z0.3679)(z0.0009)
1 T (z0.0067)(z0.0009)(z0.3679)
z(0.0786z+0.0042)
1 (z0.0067)(z0.0009)(z0.3679)
z1 z1
= lim
1 T (z0.0067)(z0.0009)(z0.3679)T z(0.0786z+0.0042)0.1835z(0.0384z0.2370)
(z0.0067)(z0.0009)(z0.3679)z(0.0786z+0.0042)
z1 z1
= lim
z1
z1 z
esa = lim
T 2 z(z+1)
2(z1)3
1
2
z1 (z1)
= lim
1
2
z1 (z1)
= lim
z(0.0786z+0.0042)
(1 (z0.0067)(z0.0009)(z0.3679)
)
z 0.0923z 2 0.2456z0.0454
(z1)3 (z0.0067)
z(0.0786z+0.0042)
1 (z0.0067)(z0.0009)(z0.3679)
T 2 (z+1)
2
0.1835z
(z0.3679)(z0.0009)
2 0.2456z0.0454
0.1835z
z0.0067
(z0.3679)(z0.0009)
z(0.0786z+0.0042)
1 (z0.0067)(z0.0009)(z0.3679)
z(0.0786z+0.0042)
) 0.0923z
(1 (z0.0067)(z0.0009)(z0.3679)
T 2 (z+1)
((z0.0067)(z0.0009)(z0.3679)z(0.0786z+0.0042))
2
(z0.0067)(z0.0009)(z0.3679)z(0.0786z+0.0042)
0.1835z(0.0923z 2 0.2456z0.0454)
=
14. Find the steady-state error for a sampled unit step and a sampled unit ramp, assuming
T = 0.02s.
X(z)
E(z)
0.35z
z1
Gzoh (s)
s+8
s+5
Y (z)
17
Alberto Ortiz
Solution:
The steady-state errors for step and ramp inputs are, respectively, given by:
1
1
=
1 + Kp
1 + limz1 L(z)
1
T
=
=
Kv
limz1 (z 1)L(z)
esp =
esv
=
=
Z
Z
Z
+
G (z) =
z
s
z
s(s + 5)
z
s
s+5
8
(s + 8)
=
A=s
s(s + 5) s=0
5
(s + 8)
3
B = (s + 5)
=
s(s + 5) s=5
5
1z1
8z
3
3z
8
1z1
=
Z
G (z) =
5 z
s s+5
5 z
z 1 z e5T
=
Consequently, L(z) =
esp =
esv =
0.35z z0.8477
z1 z0.9048
and:
1
1 + limz1
0.35z z0.8477
z1 z0.9048
1
=0
0.02
0.02(1 0.9048)
0.35z z0.8477 = 0.35(1 0.8477) = 0.0357
limz1 (z 1) z1 z0.9048
15. Find the steady-state error for the system shown in the figure:
D(s)
Gd (s)
X(s)
E(s)
E (s)
C (s)
U (s)
Gzoh (s)
Y (s)
G(s)
where the sampling period is 0.03s, the transfer functions involved are:
Gd (s) =
2
,
s+1
G(s) =
4(s + 2)
esT 0.95
and C (s) =
,
s(s + 3)
esT 1
18
Alberto Ortiz
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)
Now, replacing the expressions available for the different elements of the control system,
we obtain:
8(s + 2)
A1
A2
B
C
DGd G(z) = Z [D(s)Gd (s)G(s)] = Z 2
=Z
+
+
+
s (s + 1)(s + 3)
s2
s
s+1 s+3
16
8(s + 2)
=
A1 = s2 2
s (s + 1)(s + 3) s=0
3
d 2
8(s + 2)
8(s + 1)(s + 3) 8(s + 2)(s + 3 + s + 1)
A2 =
s 2
=
ds s (s + 1)(s + 3) s=0
(s + 1)2 (s + 3)2
s=0
24 64
40
=
=
9
9
8
8(s + 2)
= =4
B = (s + 1) 2
s (s + 1)(s + 3) s=1
2
4
8
8(s + 2)
=
=
C = (s + 3) 2
s (s + 1)(s + 3) s=3
18
9
12 10
12T z
10z
z
9
1
9z
4
4
+
+
+
+
DGd G(z) = Z 2
=
9
s
s
s+1 s+3
9 (z 1)2
z 1 z eT
z e3T
4z 12T (z eT )(z e3T ) 10(z 1)(z eT )(z e3T )
=
+
9
(z 1)2 (z eT )(z e3T )
4z 9(z 1)2 (z e3T ) + (z 1)2 (z eT )
9
(z 1)2 (z eT )(z e3T )
z(1.0879z 2 2.0348z + 0.9505)
=
9(z 1)2 (z 2 1.8844z + 0.8869)
19
Alberto Ortiz
z1
z1
A2
B
z1
G(s)
4(s + 2)
A1
=
=
+
Z
Z 2
Z
+
z
s
z
s (s + 3)
z
s2
s
s+3
8
4(s + 2)
=
A1 = s2 2
s (s + 3) s=0
3
d 2 4(s + 2)
4
4(s + 3) 4(s + 2)
=
A2 =
s 2
=
ds s (s + 3) s=0
(s + 3)2
9
s=0
4
4(s + 2)
=
B = (s + 3) 2
s (s + 3) s=3
9
4z1
4z1
6T z
1
z
1
z
6
G (z) =
=
+
Z 2+
9 z
s
s s+3
9 z
(z 1)2
z 1 z e3T
G (z) =
z(1.0879z 2.0348z+0.9505)
0 9(z1)
2 (z 2 1.8844z+0.8869)
X(z) DGd G(z)
=
E(z) =
1.0643z1.0023
z0.95
1 + C(z)G (z)
1 + z1 9(z1)(z0.9139)
Finally:
z1
e() = lim
z1
z
z(1.0879z 2 2.0348z + 0.9505)(z 0.9139)
2
(z 1.8844z + 0.8869) [9(z 1)2 (z 0.9139) + (z 0.95)(1.0643z 1.0023)]
=0
Solution:
We first have to determine the roots for all the subexpressions of G(z), and next select
poles and zeros for removal/cancellation up to leaving at most third order both at the
20
Alberto Ortiz
poles
0.9
0.8888
0.15
0.5
0.8206
0.1706
0
zeros
0.7
0.7
0.1
0.1
0.0887
0.0887
0.0113
0.0113
0.51
0.51
0.35 j0.1658 0.3873
0.9
0.8 j0.3873
0.15
0.5
0.8206
0.1706
0
preserve
preserve
cancel with
cancel with
cancel with
cancel with
preserve
zero
zero
zero
zero
z
z
z
z
= 0.1
= 0.51
= 0.7
= 0.0887
Gsim (z) =
lim G(z)
K=
z1
z1
(z 0.7z+0.15)
lim (z0.9)(z
2 1.6z+0.79)
z1
= 0.6678
z1
Finally:
Gsim (z) = 0.6678
(z 2 0.7z + 0.15)
(z 0.9)(z 2 1.6z + 0.79)
The next figure compares the step responses of the original and the simplified systems:
Step response
16
14
magnitude
12
original
simplified
10
8
6
4
2
0
0
10
20
30
40
time (sec)
50
60
70
21
Alberto Ortiz
17. Construct the root locus for the following characteristic equations:
(a) z 2 + (0.15K 1.5)z + 1 = 0
(b) z 2 + (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 characteristic
equation when K = 0, while the zeros are the roots for K = :
K = 0 z 2 1.5z + 1 = 0 z = 0.7500 j0.6614
1 2
z + (0.15K 1.5)z + 1 = 0 0.15z = 0 z = 0
K = lim
K K
There are two complex poles, one zero at z = 0 and another zero at :
p
(0.15K 1.5) (0.15K 1.5)2 4
lim z = lim
K
K
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:
)
=
0.15z
dz
0.152 z 2
2
0.15z 0.15
= 0 z = 1
=
0.0225z 2
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:
z 2 1.5z + 1
1 + 1.5 + 1
K(1) =
= 23.33
=
0.15z
0.15
z=1
K=
22
Alberto Ortiz
The intersects with the imaginary axis are obtained from the zeros of the first
column of the Routh-Hurwitz array for 1 + L(z) = 0:
z2
z1
z0
1 1
0.15K 1.5
0.15K 1.5 = 0 K = 10
1
z 2 + (0.15K 1.5)z + 1 = 0
= z 2 + 1 = 0 z = j
K=10
To find the intersects with the unit circumference we must consider 1 + L(w) = 0
and look for the zeros in the first column of the Routh-Hurwitz array:
2
w+1
w+1
1+L(w) = 0
+1=0
+ (0.15K 1.5)
w1
w1
(w + 1)2 + (0.15K 1.5)(w + 1)(w 1) + (w 1)2
=0
(w 1)2
w2 + 2w + 1 + (0.15K 1.5)w2 (0.15K 1.5) + w2 2w + 1
=0
(w 1)2
(0.5 + 0.15K)w2 + (3.5 0.15K)
20
= 0 (3K + 10)w2 + 70 3K = 0
(w 1)2
w2
w1
w1
w0
3K + 10 = 0 K = 3.33 < 0
3K + 10 70 3K
0
70 3K
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 can
build 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)
23
Alberto Ortiz
Root Locus
System: Lz
Gain: 10.1
Pole: 0.00502 + 0.996i
Damping: 0.00266
Overshoot (%): 99.2
Frequency (rad/sec): 1.58
1.5
System: Lz
Gain: 0
Pole: 0.75 + 0.661i
Damping: 1.54e016
Overshoot (%): 100
Frequency (rad/sec): 0.723
System: Lz
Gain: 23.3
Pole: 1 0.000875i
Damping: 8.12e006
Overshoot (%): 100
Frequency (rad/sec): 3.14
Imaginary Axis
0.5
0.5
System: Lz
Gain: 0
Pole: 0.75 0.661i
Damping: 1.54e016
Overshoot (%): 100
Frequency (rad/sec): 0.723
1.5
2.5
1.5
System: Lz
Gain: 10.1
Pole: 0.00584 0.996i
Damping: 0.00268
Overshoot (%): 99.2
Frequency (rad/sec): 1.58
0.5
0
Real Axis
0.5
24
Alberto Ortiz
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:
dK
(2z + 0.4)(0.14z + 0.5) 0.14(z 2 + 0.4z + 0.5)
z 2 + 0.4z + 0.5
=
0.14z + 0.5
dz
(0.14z + 0.5)2
2
0.14z + z + 0.13
=
= 0 z1,2 = {7.0104, 0.1325}
(0.14z + 0.5)2
K=
The break-in point is at z = 7.0104, since z = 0.1325 does not belong to the
root locus. The value of K for this point is:
z 2 + 0.4z + 0.5
K(7.0104) =
= 97.2914
0.14z + 0.5 z=7.0104
The intersects with the imaginary axis are obtained from the zeros of the first
column of the Routh-Hurwitz array for 1 + L(z) = 0:
z2
z1
z0
1 0.5 + 0.5K
0.4 + 0.14K
0.5 + 0.5K
0.4
= 2.8571
0.4 + 0.14K = 0 K = 0.14
0.5 + 0.5K = 0 K = 1
There are no intersects with the imaginary axis since the zeros of the first column
of the Routh-Hurwitz array correspond to K < 0.
To find the intersects with the unit circumference we must consider 1 + L(w) = 0
and look for the zeros in the first column of the Routh-Hurwitz array:
2
w+1
w+1
1+L(w) = 0
+ (0.5 + 0.5K) = 0
+ (0.4 + 0.14K)
w1
w1
(w + 1)2 + (0.4 + 0.14K)(w + 1)(w 1) + (0.5 + 0.5K)(w 1)2
=0
(w 1)2
w2 + 2w + 1 + (0.4 + 0.14K)w2 (0.4 + 0.14K) +
=0
(w 1)2
(1.9 + 0.64K)w2 + (1 K)w + (1.1 + 0.36K) = 0
w2
w1
w0
1.9 + 0.64K
1K
1.1 + 0.36K
1.1 + 0.36K
25
Alberto Ortiz
Apart from manually drawing the root locus using the information collected, we can
build 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
3
System: Lz
Gain: 0
Pole: 0.2 + 0.678i
Damping: 0.183
Overshoot (%): 55.6
Frequency (rad/sec): 1.89
Imaginary Axis
0
System: Lz
Gain: 97.3
Pole: 7.01 1.12e007i
Damping: 0.527
Overshoot (%): 701
Frequency (rad/sec): 3.7
System: Lz
Gain: Inf
Pole: 3.57
Damping: 0.376
Overshoot (%): 357
Frequency (rad/sec): 3.39
System: Lz
Gain: 1.03
Pole: 0.273 0.969i
Damping: 0.00383
Overshoot (%): 101
Frequency (rad/sec): 1.85
14
12
10
6
Real Axis
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 controller
by a continuous-time controller C(s) = K/s. Find the system poles for a gain K = 2 in
all three cases.
X(s)
E(s)
Solution:
E (s)
C(z) =
KT z
z1
Gzoh (s)
G(s) =
1
s+1
Y (s)
26
Alberto Ortiz
We have to determine the characteristic polynomial for (a), (b) and (c):
G(s)
1
z1
Tz z 1
Z
Z
1 + KL(z) = 1 + C(z)
=1+K
z
s
z1 z
s(s + 1)
z
1
z
1
= 1 + KT
= 1 + KT Z
s s+1
z 1 z eT
= 1 + KT
z(1 eT )
(z 1)(z eT )
1 + KL(s) = 1 + C(s)G(s) = 1 + K
1
s(s + 1)
(a) The open-loop transfer function and the characteristic equation for T = 0.1s are:
L(z) = T
0.0095z
z(1 eT )
= 2
T
(z 1)(z e )
z 1.9048z + 0.9048
1 + KL(z) = z 2 (1 + eT )z + eT + KT z KT eT z
= z 2 + (KT 1 eT KT eT )z + eT
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 there
is one finite zero at z = 0. The other zero is at + or . We can deter6
2
mine which by setting K to a large
value, e.g. 10 , and solving for z: z +
(0.0095K 1.9048)z + 0.9048 = 0
= z 2 + 9498.0952z + 0.9048 = 0
6
K=10
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-in
point between z = and z = 0:
z 2 1.9048z + 0.9048
0.0095z
(2z 1.9048)0.0095z 0.0095(z 2 1.9048z + 0.9048)
dK
=
dz
0.00952z 2
2
0.0095z 0.0086
= 0 z = 0.9512
=
0.00952z 2
K =
27
Alberto Ortiz
The breakaway point is at z = 0.9512 (between the two poles) while the break-in
point is at z = 0.9512 (between the two zeros). The value of K for these points
are:
z 2 1.9048z + 0.9048
= 0.2506
K(+0.9512) =
0.0095z
z=0.9512
z 2 1.9048z + 0.9048
K(0.9512) =
= 400.7599
0.0095z
z=0.9512
The intersects with the imaginary axis are obtained from the zeros of the first
column of the Routh-Hurwitz array for 1 + KL(z) = 0:
z2
z1
z0
1 0.9048
0.0095K 1.9048
0.0095K 1.9048 = 0 K = 200.5053
0.9048
K=200.5053
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:
2
w+1
w+1
+ 0.9048 = 0
+ (0.0095K 1.9048)
1+KL(w) = 0
w1
w1
(w + 1)2 + (0.0095K 1.9048)(w + 1)(w 1) + 0.9048(w 1)2
=0
(w 1)2
w2 + 2w + 1 + (0.0095K 1.9048)w2 (0.0095K 1.9048) +
=0
(w 1)2
0.0095K = 0 K = 0
3.8096 0.0095K = 0
K = 401.0105
The intersect with the unit circumference is for K = 0 and z = 1, and for
K = 401.0105 and z = 1.
28
Alberto Ortiz
Apart from manually drawing the root locus using the information collected, we
can 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)
System: Lz
Gain: 200
Pole: 0.000568 + 0.945i
Damping: 0.0358
Overshoot (%): 89.4
Frequency (rad/sec): 1.57
Root Locus
0.8
0.6
Imaginary Axis
System: Lz
Gain: 0.253
Pole: 0.951 + 0.00482i
Damping: 0.995
Overshoot (%): 0
Frequency (rad/sec): 0.0503
System: Lz
Gain: 401
Pole: 0.951 + 0.00212i
Damping: 0.016
Overshoot (%): 95.1
Frequency (rad/sec): 3.14
0.4
0.2
0.2
0.4
System: Lz
Gain: 200
Pole: 0.00171 0.945i
Damping: 0.0358
Overshoot (%): 89.4
Frequency (rad/sec): 1.57
0.6
0.8
2.5
1.5
0.5
Real Axis
0.5
1.5
(b) The open-loop transfer function and the characteristic equation for T = 2s are:
L(z) = T
1.7293z
z(1 eT )
= 2
T
(z 1)(z e )
z 1.1353z + 0.1353
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 there
is one finite zero at z = 0. The other zero is at + or . We can determine
which by setting K to alarge value, e.g. 106 , and solving for z: z 2 + (1.7293K
1.1353)z + 0.1353 = 0
= z 2 + 1729328.2982z + 0.1353 = 0 z1,2 =
6
K=10
{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).
29
Alberto Ortiz
There must be a breakaway point between z = 0.1353 and z = 1 and one break-in
point between z = and z = 0:
z 2 1.1353z + 0.1353
1.7293z
dK
(2z 1.1353)1.7293z 1.7293(z 2 1.1353z + 0.1353)
=
dz
1.72932z 2
1.7293z 2 0.23397
= 0 z = 0.3678
=
1.72932z 2
K =
The breakaway point is at z = 0.3678 (between the two poles) while the break-in
point is at z = 0.3678 (between the two zeros). The value of K for these points
are:
z 2 1.1353z + 0.1353
= 0.2311
K(+0.3678) =
1.7293z
z=0.3678
z 2 1.1353z + 0.1353
K(0.3678) =
= 1.0819
1.7293z
z=0.3678
The intersects with the imaginary axis are obtained from the zeros of the first
column of the Routh-Hurwitz array for 1 + KL(z) = 0:
z2
z1
z0
1 0.1353
1.7293K 1.1353
1.7293K 1.1353 = 0 K = 0.6565
0.1353
K=0.6565
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:
2
w+1
w+1
1+KL(w) = 0
+ 0.1353 = 0
+ (1.7293K 1.1353)
w1
w1
(w + 1)2 + (1.7293K 1.1353)(w + 1)(w 1) + 0.1353(w 1)2
=0
(w 1)2
w2 + 2w + 1 + (1.7293K 1.1353)w2 (1.7293K 1.1353) +
(w 1)2
30
Alberto Ortiz
w2
w1
w0
1.7293K = 0 K = 0
2.2706 1.7293K = 0
K = 1.3130
The intersect with the unit circumference is for K = 0 and z = 1, and for
K = 1.3130 and z = 1.
Apart from manually drawing the root locus using the information collected, we
can 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
Imaginary Axis
0.5
System: Lz
Gain: 1.08
Pole: 0.37
Damping: 0.302
Overshoot (%): 37
Frequency (rad/sec): 1.65
System: Lz
Gain: 0.657
Pole: 0.000637 + 0.367i
Damping: 0.538
Overshoot (%): 13.5
Frequency (rad/sec): 0.933
0
System: Lz
Gain: 1.31
Pole: 1
Damping: 0.000515
Overshoot (%): 100
Frequency (rad/sec): 1.57
0.5
System: Lz
Gain: 0.231
Pole: 0.365 + 3.38e009i
Damping: 1
Overshoot (%): 0
Frequency (rad/sec): 0.504
1.5
0.5
0
Real Axis
0.5
1.5
(c) The open-loop transfer function and the characteristic equation are:
1
+s
1 + KL(s) = s2 + s + K = 0
L(s) =
s2
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 zeros
are both infinite, one at s = + and the other at s = . Therefore, the root
locus 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].
31
Alberto Ortiz
dK
s2 + s
= 2s 1 = 0 s = 0.5
1
ds
= 0.25
s=0.5
The intersects with the imaginary axis are obtained from the zeros of the first
column of the Routh-Hurwitz array for 1 + KL(s) = 0:
z2
z1
z0
1
1
K
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, we
can build the root locus by means of matlab with the following commands:
Ls = tf(1,[1 1 0])
figure(1); rlocus(Ls)
Root Locus
0.8
0.6
0.4
Imaginary Axis
0.2
System: Ls
Gain: 0.0048
Pole: 0.995
Damping: 1
Overshoot (%): 0
Frequency (rad/sec): 0.995
0
System: Ls
Gain: 0.25
Pole: 0.5
Damping: 1
Overshoot (%): 0
Frequency (rad/sec): 0.5
0.2
0.4
0.6
0.8
1.5
0.5
Real Axis
0.5
32
Alberto Ortiz
19. Determine the resonant peak, the resonant frequency and the bandwidth for the following
closed-loop discrete-time system with T = 1s:
X(z)
E(z)
G (z) =
0.2(z+0.8)
z 2 0.8z+0.2
Y (z)
Solution:
We have to determine first the closed-loop transfer function:
0.2(z+0.8)
2
0.2z + 0.16
Y (z)
= z 0.8z+0.2
= 2
0.2(z+0.8)
X(z)
z 0.6z + 0.36
1 + z2 0.8z+0.2
s = 0.5108 + j1.0472 = n jn 1 2
n 1 2 = 1.0472
From this we can straightforwardly determine the resonant peak and the bandwidth:
p
1
Mr =
= 1.2689 (20 log10 Mr = 2.0686 dB), r = n 1 2 2 = 0.9142 rad/sec
2 1 2
h
i 21
p
= 1.5588 rad/sec
c = n (1 2 2 ) + 4 4 4 2 + 2
If we verify these calculations with Matlab, we obtain:
33
Alberto Ortiz
As can be observed, apart from the evident DC gain difference, both systems behave similarly with regard to the magnitude of the frequency response, with subtle differences as for
the 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)
Y (w)
H(w) =
7
w+7
Solution:
We first determine L(w) = G (w)H(w) =
1050
(w+2)(w+7)(w+10) .
p {0, +10.1980, +} is the frequency leading to the value of L(j) over the real
axis closest to 1 + j0:
147000
= 7.5
19600
L(j10.1980) = 0.5719
L(j0) =
147000 19950 2
=0
6 + 153 4 + 5496 2 + 19600
L(j) = lim
p is thus +10.1980.
1
1
=
= 1.7486 GM = 20 log10 Kgm = 4.8536
|L(jp )|
0.5719
34
Alberto Ortiz
5
2
3
Real Axis
21. Determine the gain and phase margins for the following closed-loop discrete-time system
with T = 0.1s:
X(z)
E(z)
G (z) =
Solution:
0.0952z
(z1)(z0.905)
Y (z)
35
Alberto Ortiz
20+w
20w
1+
1
T
2 w
T
2 w T =0.1
20+w
0.0952 20w
38.08 0.0952w2
0.0952(20 + w)(20 w)
=
=
20+w
2w(1.9 + 1.905w)
3.8w + 3.81w2
1 20w
0.905
So, p = +.
The gain margin is thus:
Kgm =
1
=
|L(jp )|
1
14.5161
145.0848+0.3627 3 = 0.3627 = 40.0223
lim 14.5161 3 +14.4400
36
Alberto Ortiz
We can check these calculations with Matlab from e.g. the Nyquist plot of L(w):
Nyquist Diagram
150
100
System: Lw
Real: 9.86
Imag: 72.2
Frequency (rad/sec): 0.137
50
System: Lw
Real: 7.65
Imag: 13.8
Frequency (rad/sec): 0.559
System: Lw
Gain Margin (dB): 32
At frequency (rad/sec): Inf
Closed Loop Stable? Yes
0
System: Lw
Phase Margin (deg): 17.7
Delay Margin (sec): 0.099
At frequency (rad/sec): 3.12
Closed Loop Stable? Yes
System: Lw
Real: 8.18
Imag: 17.2
Frequency (rad/sec): 0.477
50
System: Lw
Real: 9.69
Imag: 50.6
Frequency (rad/sec): 0.192
100
150
10
5
Real Axis
22. Determine the gain margin, the phase margin and the bandwidth for the following closedloop discrete-time system with T = 0.2s:
X(s)
E(s)
E (s)
G(s) =
Gzoh (s)
7
s+5
Y (s)
Solution:
z1
0.8850
7
In this case, we have L(z) = G (z) =
=
Z
.
z
s(s + 5)
z 0.3679
1 + T2 w
10 + w
=
:
Next, we have to determine L(w) using z =
10 w
1 T2 w T =0.2
L(w) =
8.8500 0.8850w
0.8850
=
6.3210 + 1.3679w
0.3679
10+w
10w
37
Alberto Ortiz
L(j) =
9.4594
=0
2 + 21.3532
p {0, +} is the frequency leading to the value of L(j) over the real axis closest
to 1 + j0:
29.8965
= 1.4001
21.3532
29.8965 0.6470 2
L(j) = lim
= 0.6470
2 + 21.3532
L(j0) =
Therefore, p is +.
The gain margin is, thus, calculated as:
Kgm =
1
1
=
= 1.5456 GM = 20 log10 Kgm = 3.7822
|L(jp )|
0.6470
38
Alberto Ortiz
>> allmargin(Lz)
GainMargin: 1.545681009813324
GMFrequency: 15.707963268631948
PhaseMargin: 97.143329726671482
PMFrequency: 5.362315461090347
DelayMargin: 1.580913098439896
DMFrequency: 5.362315461090347
Stable: 1
>> allmargin(Lw)
GainMargin: 1.545649717514124
GMFrequency: Inf
PhaseMargin: 97.192396318832607
PMFrequency: 5.937530819422515
DelayMargin: 0.285695750516008
DMFrequency: 5.937530819422515
Stable: 1
Nyquist Diagram
1.5
0.5
System: Lw
Gain Margin (dB): 3.78
At frequency (rad/sec): Inf
Closed Loop Stable? Yes
0
0.5
1
System: Lw
Phase Margin (deg): 97.2
Delay Margin (sec): 0.286
At frequency (rad/sec): 5.94
Closed Loop Stable? Yes
1.5
1.5
0.5
0.5
Real Axis
1.5
39
Alberto Ortiz
Nyquist Diagram
1.5
0.5
System: Lz
Gain Margin (dB): 3.78
At frequency (rad/sec): 15.7
Closed Loop Stable? Yes
0
0.5
1
System: Lz
Phase Margin (deg): 97.1
Delay Margin (samples): 1.58
At frequency (rad/sec): 5.36
Closed Loop Stable? Yes
1.5
1.5
0.5
0.5
1.5
Real Axis
As can be observed, on the one hand, there are slight differences in the margin values
obtained due to rounding errors in our calculations, either to derive L(w) and later
while obtaining the requested performance values from L(w). On the other hand, the
critical phase frequency p obtained from L(w) is while for L(z) is 15.7080. This
is because, while working with L(w), we use the fictitious frequency p (= ), while
the 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
1 p T
= T2 tan T
2 p = T tan
2 = T = 15.7080. The same happens with the
T
critical gain frequencies: g = 5.94 and g = 5.36 = T2 tan1 g2 .
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 need
0.8850
, and determine the closed-loop transfer function:
to go back to G (z) = z0.3679
G (z)
0.8850
Y (z)
=
=
X(z)
1 + G (z)
z + 0.5171
We next transform the discrete-time pole z = 0.5171 to the continuous-time domain:
=
1
ln |z| = 3.2977 ,
T
1
6 z =
= 15.7080 s = 3.2937 j15.7080
T
T
40
Alberto Ortiz
If we plot the step responses of both the discrete-time system and the equivalent
second-order system, we obtain the following (the right plot comes from equalizing the
G (z)
1
responses of the discrete- and the continuous-time systems, i.e.
G (z)
1+G (z) ):
limz1
Step Response
1+G (z)
Step Response
1.6
1.6
DT
CT 2nd order
DT
CT 2nd order
1.4
1.4
1.2
1.2
0.8
0.8
0.6
0.6
0.4
0.4
0.2
0.2
0.5
1.5
2
Time (sec)
2.5
3.5
0.5
1.5
2
Time (sec)
2.5
3.5
As can be observed, the responses, apart from the different steady-state values, are
quite similar. However, the bode plots for both systems look quite different:
discretetime system
20
10
0
System: Gs
Frequency (rad/sec): 24.2
Magnitude (dB): 3.02
10
20
0
30
40
50
60
70
6
80
45
45
90
90
135
135
180
180
1
10
10
10
Frequency (rad/sec)
10
10
10
10
Frequency (rad/sec)
10
Alberto Ortiz
41
As can be noticed from the left plot, the bandwidth of the discrete-time system is
infinite. The bandwidth of the equivalent continuous-time system is, however, of
about 24.2 rad/sec.