You are on page 1of 16

1

Stability of Digital
Control Systems
M. Sami Fadali
Professor of Electrical Engineering
UNR
2
Outline
Asymptotic stability.
Input-output stability.
Stability conditions.
Routh-Hurwitz criterion.
Jury test.
Nyquist criterion and stability
margins.
3
Asymptotic Stability
Response due to any initial conditions
decays to zero asymptotically in the steady
state, i.e. the response due to the initial
conditions satisfies
0 ) ( =

k y
k
_|
Marginal Stability: response due to any
initial conditions remains bounded but
does not decay to zero.
4
Bounded-Input-Bounded-Output
(BIBO) Stability
Response due to any bounded input
remains bounded.
u k b k
b
u
u
( ) , , , , ... < =
< <
0 1 2
0
y k b k
b
y
y
( ) , , , , . . . < =
< <
0 1 2
0
5
Stable Z-Domain Pole
Locations
Sampled exponential and its z-transform
with p real or complex
p z
z
k p
k

=
Z
,... 2 , 1 , 0 ,

>
=
<


1 ,
1 , 1
1 , 0
p
p
p
p
k
k
_|
6
Time Sequence
Bounded sequence for poles in the closed unit
disc (i.e. on or inside the unit circle).
Sequence decays exponentially for poles in the
open unit disc (i.e. inside the unit circle).
Unbounded sequence for repeated poles on the
unit circle.
For real time sequences poles and partial
fraction coefficients are either real or complex
conjugate pairs.

= =

= = =
n
i i
i
n
i
k
i i
p z
z
A z F k p A k f
1 1
) ( ,... 2 , 1 , 0 , ) (
Z
7
Theorem: Asymptotic Stability
In the absence of pole-zero cancellation, a
LTI digital system is asymptotically stable
if its transfer function poles are in the open
unit disc and marginally stable if the poles
are in the closed unit disc with no repeated
poles on the unit circle.
8
Proof
,... 2 , 1 , 0
) ( ) 1 ( ... ) 1 ( ) (
) ( ) 1 ( ... ) 1 ( ) (
0 1
0 1 1
=
+ + + + + + + =
+ + + + + + +

k
k u b k u b m k u b m k u b
k y a k y a n k y a n k y
m m
n
Response of the system due to ICs y(0), y(1), ., y(n)
Y z
N z
z a z a z a
n
n
n
( )
( )
. . .
=
+ + + +


1
1
1 0
1. Denominator of the output z-transform = denominator of
the z-transfer function for no pole-zero cancellation.
2. Poles of Y(z) = poles of transfer function.
3. Y(z) due to initial conditions is bounded for system
poles in the closed unit disc unit (no repeated poles on
the unit circle) & decays exponentially for system poles
in the open unit disc (inside the unit circle).
9
Example
Determine the asymptotic stability of the
following systems:
( )
( )( )
( )
( )( ) 1 . 0 2 . 0
2 . 0 4
) ( )
1 . 0 2
2 4
) ( )


=


=
z z
z
z H b
z z
z
z H a
( )
( )( )
( )
( )( ) 1 1 . 0
2 . 0 8
) ( )
1 . 0 2 . 0
3 . 0 5
) ( )


=


=
z z
z
z H d
z z
z
z H c
10
Solution
Use Theorem 1 can (a) and (b) without pole-
zero cancellation.
Ignore zeros, (do not affect response due ICs)
a) Pole outside the unit circle unstable
b) All poles inside the unit circle asymptotically
stable.
c) All poles inside the unit circle asymptotically
stable.
d) One pole on the unit circle marginally stable.
11
BIBO Stability
Is system BIBO stable if its impulse
response h(k) is bounded? NO
Counterexample: bounded & strictly positive
impulse response
y k h k i u i k
i
k
( ) ( ) ( ) , , , , . . . = =
=

0
0 1 2
output unbounded , 1 , 0 , 1 ) (
,... 2 , 1 , 0 , ) ( ) ( ) ( ) (
,... 2 , 1 , 0 , ) ( 0
0
1
0
2 1
= =
= > =
= < < < <

= =
i i u
k i u b i u i k h k y
k b k h b
k
i
h
k
i
h h
12
Theorem 4.2:BIBO Stability
A discrete-time linear system is BIBO
stable if and only if its impulse response
sequence is absolutely summable i.e.
h i
i
( )
=

<
0
13
Proof of Necessity (Only if)
Assume the system is BIBO stable but the
impulse response is not absolutely
summable.
Unbounded output with the bounded input
(contradiction)
y k h i y k k
i
k
( ) ( ) , ( ) =
=

as
0
u k i
h i
h i
( )
, ( )
, ( )
=
>
<

1 0
1 0
14
Proof of Sufficiency (If)
Assume an absolutely summable impulse
response and show that the system is
BIBO stable.
Use the input bound b
u
in the convolution
summation
0 , ) (
) ( ) ( ) (
0
0
> < <
s

=
=
k i h b
i k u i h k y
k
i
u
k
i
15
Theorem 4.3: BIBO Stability
A discrete-time linear system is BIBO
stable if and only if the poles of its transfer
function lie inside the unit circle.
16
Proof of Necessity
Impulse response is bounded if the poles
of the transfer function are in the closed
unit disc and decays exponentially if the
poles are in the open unit disc.
Systems with a bounded impulse
response that does not decay
exponentially are not BIBO stable.

= =

= = =
n
i i
i
n
i
k
i i
p z
z
A z H k p A k h
1 1
) ( ,... 2 , 1 , 0 , ) (
Z
17
Proof of Sufficiency
Assume exponentially decaying impulse
response (i.e. poles inside the unit circle).
A
r
is the coefficient of largest magnitude
|p
s
| < 1 is the largest pole magnitude.
The impulse response is bounded by
<

= s


=

= s
r
i
i
s r
i
p
A n p A n i h
1
1
) (
0 0
, 2 , 1 , 0 , ) (
0 0
= s s =

= =
k p nA p A p A k h
n
i
k
s r
k
i i
n
i
k
i i
18
Example 4.2
Investigate the BIBO stability of systems
with the impulse response

< s s
=
elsewhere
m k K
k h
, 0
0 ,
) (
where K is a finite constant.
19
Solution
BIBO stable since the impulse response
satisfies
( ) h i h i m K
i i
m
( ) ( )
=

=

= = + <
0 0
1
Let K= upper bound for any impulse
response of finite duration.
Any FIR system is BIBO stable.
20
Example 4.3
Investigate BIBO stability for Example 4.1
( )
( )( )
( )
( )( ) 1 . 0 2 . 0
2 . 0 4
) ( )
1 . 0 2
2 4
) ( )


=


=
z z
z
z H b
z z
z
z H a
( )
( )( )
( )
( )( ) 1 1 . 0
2 . 0 8
) ( )
1 . 0 2 . 0
3 . 0 5
) ( )


=


=
z z
z
z H d
z z
z
z H c
21
Solution
After pole-zero cancellation
a) BIBO stable, all poles inside unit circle.
b) BIBO stable, all poles inside unit circle.
c) BIBO stable, all poles inside unit circle.
d) Not BIBO stable, a pole on unit circle.
22
Z-plane Stable Pole Locations

STABLE
Unit Circle
Re[z]
Im[z]
23
MATLAB Stability Determination
Obtain roots of polynomial:
roots(den) % denominator coeffts. den
zpk(g) %g = transfer function
Stable for roots inside the unit circle.
24
MATLAB: ddamp
Gives the pole locations, , and e
n
Eigenvalue Magnitude Equiv. Damping Equiv. Freq. (rad/sec)
0.2306 + 0.7428I 0.7778 0.1941 12.9441
0.2306 - 0.7428I 0.7778 0.1941 12.9441
-0.6612 0.6612 0.1306 31.6871
Closed-loop transfer function
>> H = feedback(gforward, gfeedback, 1)
Internal Stability
25
If all the transfer functions that relate the
system inputs (R and D) to the possible
system outputs (Y and U) are BIBO stable,
then the system is internally stable.

C(z) G
ZAS
(z)
Y(z) E(z) R(z)
+

U(z)
D(z
(

(
(
(
(

+
+ +
=
(

) (
) (
) ( ) ( 1
) ( ) (
) ( ) ( 1
) (
) ( ) ( 1
) (
) ( ) ( 1
) ( ) (
) (
) (
z D
z R
z G z C
z G z C
z G z C
z C
z G z C
z G
z G z C
z G z C
z U
z Y
ZAS
ZAS
ZAS
ZAS
ZAS
ZAS
ZAS
Theorem 4-4
26
The system of Figure 4-3 is internally
stable if and only if all the closed-loop
poles are in the open unit disc.

C(z) G
ZAS
(z)
Y(z) E(z) R(z)
+

U(z)
D(z
Proof
27
) (
) (
) (
z D
z N
z C
C
C
=
) (
) (
) (
z D
z N
z G
G
G
ZAS
=
(

+
=
(

D
R
N N D N
N D N N
N N D D U
Y
G C G C
G C G C
G C G C
1
Characteristic polynomial D
C
D
G
+N
C
N
G
No zeros on or outside the unit circle all
the transfer functions are asymptotically
stable system is internally stable.
Theorem 4-5
28
The system of Figure 4-3 is internally stable if
and only if:
1. The characteristic polynomial 1+ C(z)G
ZAS
(z)
has no zeros on or outside the unit circle.
2. The loop gain C(z)G
ZAS
(z) has no pole-zero
cancellation on or outside the unit circle .
Example 4-4
29
1 8627 . 0 1828 . 0
) 1 3549 . 0 ( 5848 . 0
) (
2
+ +
+
=
s
s
s G
) 334 . 1 )( 1 (
) 7655 . 0 )( 8149 . 0 ( 10
= ) (


z z
z z
z C
Transfer function of isothermal chemical reactor
o Determine G
ZAS
(z) with T=0.1
o Verify that the resulting feedback system
is not internally stable with the feedback
controller

Solution
30
Discretized process transfer function
( )
) 7655 . 0 )( 8149 . 0 (
) 334 . 1 ( 075997 . 0 ) (
1 = ) (
1


=
)
`


z z
z
s
s G
z z G
ZAS
Z
Solution (Cont.)
31
) 7655 . 0 )( 8149 . 0 (
) 334 . 1 ( 075997 . 0
) 334 . 1 )( 1 (
) 7655 . 0 )( 8149 . 0 ( 10
) ( ) (



=
z z
z
z z
z z
z G z C
ZAS
violates condition (ii) of Thm. 4-5: pole at
1.334 cancels in the loop gain
32
Routh-Hurwitz Criterion
1. Transform the inside of the unit circle to
the LHP (bilinear transformation).
2. Use the Routh-Hurwitz criterion for the
investigation of discrete-time system
stability.
z
w
w
w
z
z
=
+

=

+
1
1
1
1
33
Advantages/Disadvantages
Easy stability test for low-order polynomials.
Difficult for high order z-polynomials.
For high order polynomials, use symbolic
manipulation.
F z a z a z a
a
w
w
a
w
w
a
n
n
n
n
z
w
w
n
n
n
n
( ) ...
...
= + + +

+

|
\

|
.
| +
+

|
\

|
.
| + +


=
+

1
1
0
1
1
1
1
0
1
1
1
1
34
Example 4.4
Find stability conditions for
a) The first order polynomial
0 ,
1 0 1
> + a a z a
b) The second order polynomial
a z a z a a
2
2
1 0 2
0 + + > ,
35
Solution: 1
st
order
Solve for the root.
Stability conditions
a
a
0
1
1 <
36
Solution: 2
nd
order
Stability determination by solving for roots is
difficult.
Monic polynomial
constant term = product of poles
For pole magnitudes < 1
Necessary stability condition
Sufficient for complex conjugate poles
z
a a a a
a
1 2
1 1
2
0 2
2
4
2
,
=

2 0 2 0
2
0
& 1 a a a a
a
a
< < <
37
Bilinear Transformation
a
w
w
a
w
w
a
2
2
1 0
1
1
1
1
+

|
\

|
.
| +
+

|
\

|
.
| +
( ) ( ) ( ) a a a w a a w a a a
2 1 0
2
2 0 2 1 0
2 + + + + +
Routh-Hurwitz criterion: poles of 2nd order w-polynomial
remain in the LHP iff its coefficients are all positive.
a a a
a a
a a a
2 1 0
2 0
2 1 0
0
0
0
+ >
>
+ + >
Adding the first and third conditions gives the condition
obtained earlier
a a
2 0
0 + >
38
Comments
Recall: The condition is sufficient for
complex conjugate roots and only
necessary for real roots.
For real roots, if the three conditions are
substituted in the z-domain characteristic
polynomial we obtain roots between 1
and +1.
39
Stable Parameter Range for 2nd
Order z-polynomial
0 1
0 1
0 1
1
0 1
0
0 1
2
> + +
>
> +
=
a a
a
a a
a

a
1
a
0

1
1
1
1
stable
= a
1
1
a
0
= 1
a
0
= a
1
1
40
Jury Test
The roots of the polynomial are inside the unit
circle iff
F z a z a z a z a a
n
n
n
n
n
( ) , = + + + + = >


1
1
1 0
0 0
(1) F(1) > 0
(2) (1)
n
F(1) > 0
(3) | a
0
| < a
n
(4) | b
0
| > | b
n 1
|
(5) | c
0
| > | c
n 2
|

(n+1) | r
0
| > | r
2
|
41
Jury Table
Row
1
2
z
0
a
0
a
n
z
1
a
1
a
n 1
z
2
a
2
a
n 2
.
.
.
z
n k
a
n k
a
k
.
.
.
z
n 1
a
n 1
a
1
z
n
a
n
a
0
3
4
b
0
b
n 1
b
1
b
n 2
b
2
b
n 3
.
.
b
n k
b
k
.
.
b
n 1
b
0
5
6
c
0
c
n 2
c
1
c
n 3
c
2
c
n 4
.
.
.
.
c
n 2
c
0
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
2 n 5
2 n 4
s
0
s
3
s
1
s
2
s
2
s
1
s
3
s
0
2 n 3 r
0
r
1
r
2
42
Table Entries
b
a a
a a
k n
k
n k
n k
= =
0
0 1 1 , , , ,
2 , , 1 , 0 ,
1
1 0
= =


n k
b b
b b
c
k n
k n
k

.
.
.
2 3
1 0
2
1 3
2 0
1
0 3
3 0
0
s s
s s
r
s s
s s
r
s s
s s
r = = =
43
Remarks
1. First row of Jury table: listing of the coefficients of the
polynomial F(z) in order of increasing power of z.
2. Number of rows of table 2 n 3 is always odd and the
coefficients of each even row are the same as the odd
row directly above it with the order of the coefficients
reversed.
3. The n + 1 conditions for n +1 coefficients of F(z).
4. Conditions 3 through n +1 calculated using the coefficient
of the first column of the Jury table, together with the last
coefficient of the last row.
5. The middle coefficient of the last row is never used and
need not be calculated.
6. Conditions (1) and (2) are calculated from F(z) directly. If
one of the first two conditions is violated, F(z) has roots
on or outside the unit circle (no need to construct the Jury
table or test the remaining conditions).
44
Remarks (cont.)
7- Condition (3) with a
n
= 1, requires the constant term of
the polynomial to be less than unity in magnitude. The
constant term is simply the product of the roots and must
be smaller than unity for all the roots to be inside the unit
circle.
8 For first and second order systems, the Jury stability
conditions reduce to the conditions derived earlier.
9- For higher order systems, applying the Jury test by hand
is laborious and it is preferable to test the stability of a
polynomial F(z) using a CAD package.
10- If the coefficients of the polynomial are functions of
system parameters, the Jury test can be used to obtain
the stable ranges of the system parameters.
45
Example
Test the stability of the polynomial
F z z z z z z ( ) . . . . . = + + + =
5 4 3 2
2 6 056 2 05 0 0775 0 35 0
Row
1
2
z
0
0.35
1
z
1
0.0775
2.6
z
2
2.05
0.56
z
3
0.56
2.05
z
4
2.6
0.0775
z
5
1
0.35
3
4
0.8775
0.8325
2.5729
1.854
0.1575
0.1575
1.854
2.5729
0.8325
0.8775
5
6
0.0770
0.5151
0.7143
0.2693
0.2693
0.7143
0.5151
0.0770
7 0.2593 0.0837 0.3472
46
Solution
(1) F(1) = 1 + 2.6 0.56 2.05 + 0.0775 +0.35 =1.4175 > 0
(2) (1)
5
F(1) = (1)(1+2.6+0.562.050.0775+0.35) = 0.3825 < 0
(3) | 0.35 | < 1
(4) | 0.8775 | > | 0.8325 |
(5) | 0.0770 | < | 0.5151 |
(6) | 0.2593 | < | 0.3472 |
Conditions (2), (5) & (6) violated .
Condition (2) is sufficient to conclude instability.
No. of conditions violated = No. of roots outside the unit circle.
Polynomial has roots on or outside the unit circle.
( )( )( )( )( ) F z z z z z z ( ) . . . . . = + + + = 0 7 05 05 08 2 5 0
Root at 2.5 outside the unit circle.
47
Example 4.6
Find the stable range of the gain K for the unity
feedback digital control system with analog plant
G s
K
s
( ) =
+ 3
with DAC and ADC if the sampling period is 0.02 s.
48
Solution
Transfer function for analog subsystem, ADC and DAC
( )
( )
)
`

+
=
)
`

) 3 (
1 -
1
) (
1 -
1 ) (
1
1
s s
K
z
s
s G
z z G
ZAS
_
_
Z
Z
Partial fraction expansion
K
s s
K
s s ( ) +
=
+

(
3 3
1 1
3
Transfer function
G z
K
z
ZAS
( )
.
.
=


19412 10
0 9418
2
49
Closed-loop System
Unity feedback, closed-loop characteristic equation
1 0 + = G z
ZAS
( )
z 0.9418 + 1.9412 10
2
K = 0
Stability conditions
0.9418 1.9412 10
2
K < 1
0.9418 + 1.9412 10
2
K < 1
Hence, the stable range of K is
3 < K < 100.03
Example
50
Find the stable range of the gain K for the digital
position control system with the analog plant
transfer function
) 10 (
) (
+
=
s s
K
s G
and with DAC and ADC if T= 0.05 s.
Solution
51
( )
( )
)
`

+
=
)
`

) 10 (
1 -
1
) (
1 -
1 ) (
2
1
1
s s
K
z
s
s G
z z G
ZAS
_
_
Z
Z
(

+
+ =
+ 10
1 1 10
01 . 0
) 10 (
2 2
s s s
K
s s
K
( )
( )( ) 6065 . 0 1
8467 . 0 10 0653 . 1
) (
2

+
=

z z
z K
z G
ZAS
Partial fraction expansion
Transfer function
C.L. Characteristic Equation
52
0 ) ( 1 = + z G
ZAS
( )( ) ( )
( ) 0 = 10 9.02 + 0.6065 6065 . 1 10 0653 . 1
8467 . 0 10 0653 . 1 0.6065 1
3 2 2
2
K z K z
z K z z

+ + =
+ +
( )
( )( ) 6065 . 0 1
8467 . 0 10 0653 . 1
) (
2

+
=

z z
z K
z G
ZAS
Stability Testing

1.6065)z+0.6065+9.02

1) F(1)=1+ (1.0653 10
2
K 1.6065) +0.6065 + 9.0210
3
K > 0
K > 0
2) F(1) =1 (1.065310
2
K1.6065)+0.6065+9.0210
3
K > 0
K < 1967.582
3) | 0.6065 + 0.00902 K | <1 + (0.6065 + 0.00902 K ) <1 &
(0.6065 + 0.00902 K ) <1
178.104 < K < 43.6199
The stable range is 0 < K < 43.6199
53
Thm. 4-7 Nyquist Criterion
54
N =no. of counterclockwise encirclements of the
point (1,0) for a loop gain L(z) when traversing
the stability contour (i.e. N clockwise)
L(z) has P open-loop poles inside the contour.
Then the system has closed-loop poles outside
the unit circle with given by
Z=(N)+P ( N=ZP)
Corollary: An open-loop stable system is closed-
loop stable iff the Nyquist plot does not encircle
the point (1,0) (i.e. N= 0)
Example
55
9704 . 0 97 . 1
901 . 4 95 . 4
10 = z) (
2
5
+
+

z z
z
G
ZAS
-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1
-0.8
-0.6
-0.4
-0.2
0
0.2
0.4
0.6
0.8
Nyquist Diagram
Real Axis
I
m
a
g
in
a
r
y

A
x
is
N =0, no poles || 1, the system is closed-loop stable.
Phase Margin and Gain Margin
Gain Margin: gain perturbation that makes
the system marginally stable.
Phase Margin: negative phase perturbation
that makes the system marginally stable.
56

AG(z) G(z)
+

C(z)
R(s)
Nyquist Plot: PM & GM
57
MATLAB Plots and Margins
>> nyquist(gd) % Nyquist plot.
>> bode(gd) % Bode plot.
>> [gm,pm]=margin(gd) % Find PM & GM
>> margin(gd) % GM & PM on Bode plot
Nyquist plot: click on plot and select
Characteristics
All stability margins
58
Example
59
If an amplifier of gain K = 5 is added to the
actuator, how does the value of the gain
affect closed-loop stability?
Solution
60
-5 0 5 10 15 20 25 30 35 40 45 50
-25
-20
-15
-10
-5
0
5
10
15
20
25
Nyquist Diagram
Real Axis
Im
a
g
in
a
ry
A
x
is
GM & PM
61
Nyquist Diagram
Real Axis
Im
a
g
in
a
r
y
A
x
is
-5 -4.5 -4 -3.5 -3 -2.5 -2 -1.5 -1 -0.5 0
-2
-1.5
-1
-0.5
0
0.5
1
1.5
2
System: untitled1
Real: -1.41
Imag: 0.000741
Frequency (rad/sec): -5.33
System: gdt
Real: -0.795
Imag: -0.624
Frequency (rad/sec): 2.59
>> [gm,pm]=margin(gtd)
gm =
3.4817
pm =
37.5426
( )
0 2+ =
+ = P N Z
K=1, N=0 stable
K=5

You might also like