Part 5 - Stability

Introduction

Until now, we have not had any ways of determining whether a system is stable or not. Stability is one of the most important system specifications.

If a system is unstable, then transient response and steady-state errors are not important.

An unstable system cannot be designed for a specific transient response or steady state error requirements.

There are many definitions for stability, depending on the kind of system or the point of view, but we’ll examine a few stability criterions for linear, time-invariant (LTI) systems.

Stability

Recall that the total response of a system is,

c(t)=cforced(t)+cnatural(t)c(t) = c_{\text{forced}}(t) + c_{\text{natural}}(t)
  1. A system is stable if the natural response tends to zero as tt \to \infty.
  2. A system is unstable if the natural response grows unbounded as tt \to \infty.
  3. A system is marginally stable if natural response neither decays or grows (stays constant or oscillates with fixed amplitude) as tt \to \infty.

BIBO Stability

The Bounded Input Bounded Output (BIBO) stability criterion states that a system is stable if the output is bounded for any bounded input.

  1. A system is stable if every bounded input produces a bounded output.
  2. A system is unstable if any bounded input produces an unbounded output.

Stability and Poles

To determine if a system is stable, we can examine the poles of the closed-loop system.

Transfer function in rational-polynomial form,

G(s)=Q(s)P(s).G(s) = \frac{Q(s)}{P(s)}.

The orders of the polynomial Q(s)Q(s) and P(s)P(s) are mm and nn, respectively and nn is greater than mm.

Remember that the transfer function G(s)G(s) is the ratio of the Laplace transforms of the output to the input with zero initial conditions.

In general some of the poles may be complex, but for all systems of practical interest, the coefficents of P(s)P(s) are real and this means that any complex roots must occur in conjugate pairs.

Theorem 1 (Stability criterion)

The system is stable if and only if

real(pi)<0,i,\text{real}(p_i) < 0, \quad \forall i,

where pip_i are the roots of the polynomial equation P(s)=0P(s) = 0.

We could calculate these roots numerically, but we would like a better method which does not require that all roots be determined.

Necessary Stability Condition

A necessary condition for a polynomial to have all roots in the open left hand plane, is to have all coefficents of the polynomial to be present and to have the same sign.

However, this is not a sufficient condition.

A sufficient condition that a system is unstable is that all coefficents do not have the same sign.

If some coefficients are missing, system may be unstable, or at best, marginally stable.

If all coefficients are same sign and present, system could stable or unstable.

A better method which does not require that all roots to be determined is the Routh-Hurwitz criterion.

Routh-Hurwitz Criterion

This method will give us the stability information without having to find poles of the closed-loop system.

The Routh-Hurwitz method will tell us,

  1. How many poles are in the left half-plane.
  2. How many poles are in the right half-plane.
  3. How many poles are on the imaginary axis.

To apply the method we need to,

  1. Construct a table of data called a Routh table.
  2. Interpret the table to determine the number of poles in each region.

Generating a Basic Routh Table

The Routh-Hurwitz criterion focuses on the coefficients of the denominator of the transfer function.

The Routh table has (n+1)(n + 1) rows.

  • If nn is odd, the table has ((n+1)/2)((n + 1) / 2) columns.
  • If nn is even, the table has (n/2+1)(n/2 + 1) columns.

The first two rows of the table are the coefficients of the polynomial P(s)P(s).

Row 1 of the Routh table is the coefficients of the even powers of ss, sn,sn2,sn4,s^n, s^{n-2}, s^{n-4}, \ldots.

Row 2 of the Routh table is the coefficients of the odd powers of ss, sn1,sn3,sn5,s^{n-1}, s^{n-3}, s^{n-5}, \ldots.

The remaining entries are filled in as follows,

  1. Each entry is a negative determinant of entries from the previous two rows divided by the entry in the first column of the row above.
  2. Left-hand column of determinant is always the first column of the previous two rows.
  3. Right-hand column is the elements of the column above and directly to the right of the current location.
  4. If no column to the right, use a zero.

Let P(s)=a=sn+a1sn1+a2sn2++anP(s) = a_= s^n + a_1 s^{n-1} + a_2 s^{n-2} + \ldots + a_n.

The Routh table for P(s)P(s) is,

Table 1: General Routh array for P(s)P(s).
sns^n a0a_0 a2a_2 a4a_4 a6a_6 \ldots
sn1s^{n-1} a1a_1 a3a_3 a5a_5 a7a_7 \ldots
sn2s^{n-2} b1b_1 b2b_2 b3b_3 b4b_4 \ldots
sn3s^{n-3} c1c_1 c2c_2 c3c_3 c4c_4 \ldots
sn4s^{n-4} d1d_1 d2d_2 d3d_3 d4d_4 \ldots
\vdots \vdots \vdots \vdots \vdots \ddots
s0s^0 \ldots \ldots \ldots \ldots \ldots

where

Table 2: Entries in the general Routh array.
b1=a1a2a0a3a1b_1 = \frac{a_1 a_2 - a_0 a_3}{a_1} b2=a1a4a0a5a1b_2 = \frac{a_1 a_4 - a_0 a_5}{a_1} b3=a1a6a0a7a1b_3 = \frac{a_1 a_6 - a_0 a_7}{a_1} b4=a1a8a0a9a1b_4 = \frac{a_1 a_8 - a_0 a_9}{a_1} \ldots
c1=b1a3a1b2b1c_1 = \frac{b_1 a_3 - a_1 b_2}{b_1} c2=b1a5a1b3b1c_2 = \frac{b_1 a_5 - a_1 b_3}{b_1} c3=b1a7a1b4b1c_3 = \frac{b_1 a_7 - a_1 b_4}{b_1} c4=b1a9a1b5b1c_4 = \frac{b_1 a_9 - a_1 b_5}{b_1} \ldots
d1=c1b2b1c2c1d_1 = \frac{c_1 b_2 - b_1 c_2}{c_1} d2=c1b3b1c3c1d_2 = \frac{c_1 b_3 - b_1 c_3}{c_1} d3=c1b4b1c4c1d_3 = \frac{c_1 b_4 - b_1 c_4}{c_1} d4=c1b5b1c5c1d_4 = \frac{c_1 b_5 - b_1 c_5}{c_1} \ldots
\vdots \vdots \vdots \vdots \vdots \ddots

Interpreting a Basic Routh Table

Theorem 2 (Routh-Hurwitz criterion)

The Routh-Hurwitz criterion states that the number of poles in the right half-plane is equal to the number of sign changes in the first column of the Routh table.

A system is stable if there are no sign changes in the first column of the Routh table.

Special Cases

There are two special cases that can sometimes occur,

  1. The Routh table sometimes will have a zero only in the first column.
  2. The Routh table sometimes will have an entire row that consists of zeros.

We will only consider the first case.

Example 1

Consider the system with closed-loop transfer function,

G(s)=10s5+2s4+3s3+6s2+5s+3.G(s) = \frac{10}{s^5 + 2s^4 + 3s^3 + 6s^2 + 5s + 3}.

Therefore, the polynomial P(s)=s5+2s4+3s3+6s2+5s+3P(s) = s^5 + 2s^4 + 3s^3 + 6s^2 + 5s + 3.

The Routh table is,

Table 3: Initial Routh array for the example polynomial.
s5s^5 1 3 5
s4s^4 2 6 3
s3s^3 a1a_1 a2a_2 a3a_3
s2s^2 b1b_1 b2b_2 b3b_3
s1s^1 c1c_1 c2c_2 c3c_3
s0s^0 d1d_1 d2d_2 d3d_3

If we calculate a1a_1 we see that it is zero. Instead of writing zero, we denote it as a small number ϵ\epsilon.

The Routh table is,

Table 4: Routh array after replacing the zero leading entry with ϵ\epsilon.
s5s^5 1 3 5
s4s^4 2 6 3
s3s^3 ϵ\epsilon a2a_2 a3a_3
s2s^2 b1b_1 b2b_2 b3b_3
s1s^1 c1c_1 c2c_2 c3c_3
s0s^0 d1d_1 d2d_2 d3d_3

Let’s fill in the rest of the table, in terms of ϵ\epsilon.

Table 5: Completed Routh array in terms of ϵ\epsilon.
s5s^5 1 3 5
s4s^4 2 6 3
s3s^3 ϵ\epsilon 72\frac{7}{2} 0
s2s^2 6ϵ7ϵ\frac{6 \epsilon - 7}{\epsilon} 3 0
s1s^1 42ϵ496ϵ212ϵ14\frac{42 \epsilon - 49 - 6 \epsilon^2}{12 \epsilon - 14} 0 0
s0s^0 3 0 0

Let’s now examine the table by allowing ϵ\epsilon to approach zero from the positive side and negative side.

Table 6: Signs in the first Routh-array column as ϵ\epsilon approaches zero.
Label First Column ϵ=+\epsilon = + ϵ=\epsilon = -
s5s^5 1 + +
s4s^4 2 + +
s3s^3 ϵ\epsilon + -
s2s^2 6ϵ7ϵ\frac{6 \epsilon - 7}{\epsilon} - +
s1s^1 42ϵ496ϵ212ϵ14\frac{42 \epsilon - 49 - 6 \epsilon^2}{12 \epsilon - 14} + +
s0s^0 3 + +

We have two sign changes in the first column, therefore the system is unstable.

Conclusion

The Routh-Hurwitz criterion is a powerful tool for determining the stability of a system without having to find the poles of the closed-loop system.