Skip to content
Systems Theory

Realisation: canonical forms, modal form and cancellations

The realisation problem, the controllable canonical form with proof, the companion matrix, reachability proved, the observable form by duality, the modal form from partial fractions, cancellations and hidden modes.

Often what is known about a system is its transfer function, obtained from measurements or from a frequency-domain design, and a state-space representation is needed: to simulate it, to implement it in a circuit or a program, to design state feedback. This is the realisation problem. In this lesson we look at the controllable canonical form with proof, why it is always reachable and when it is observable, the dual form, the modal form from partial fractions, and what happens when there are cancellations.

The problem

Given a rational transfer function G(s), we look for A, B, C, D such that C(sI - A)^{-1}B + D = G(s). If G is proper but not strictly (numerator and denominator of the same degree), divide first: D = \lim_{s\to\infty}G(s) and realise the strictly proper remainder. There are infinitely many realisations, because every change of coordinates produces another one (lesson on representations); the most useful ones are the canonical forms.

The controllable canonical form

Consider, to fix ideas, a third-order system:

    \[ G(s) = \frac{b_2s^2 + b_1s + b_0}{s^3 + a_2s^2 + a_1s + a_0} \]

Theorem. A realisation of G(s) is

    \[ A = \begin{pmatrix} 0 & 1 & 0 \\ 0 & 0 & 1 \\ -a_0 & -a_1 & -a_2 \end{pmatrix},\quad B = \begin{pmatrix} 0 \\ 0 \\ 1 \end{pmatrix},\quad C = \begin{pmatrix} b_0 & b_1 & b_2 \end{pmatrix},\quad D = 0 \]

Proof. Introduce an auxiliary variable w defined by W(s) = U(s)/(s^3 + a_2s^2 + a_1s + a_0), i.e. \dddot{w} + a_2\ddot{w} + a_1\dot{w} + a_0w = u. Then Y = (b_2s^2 + b_1s + b_0)W, i.e. y = b_2\ddot{w} + b_1\dot{w} + b_0w. Choosing as state x_1 = w, x_2 = \dot{w}, x_3 = \ddot{w} gives \dot{x}_1 = x_2, \dot{x}_2 = x_3 and, from the differential equation, \dot{x}_3 = -a_0x_1 - a_1x_2 - a_2x_3 + u: these are the rows of A and B. The output y = b_0x_1 + b_1x_2 + b_2x_3 gives C. ∎

Controllable canonical form of a third-order system
A chain of three integrators: the input, minus the feedbacks weighted by the coefficients a_2, a_1, a_0, becomes the derivative of x_3; integrating gives x_3, x_2 and x_1. The coefficients of the characteristic polynomial are exactly the feedback weights.

The matrix A is called a companion matrix: the coefficients of its characteristic polynomial are exactly the a_i of the last row. The realisation is also a practical recipe: a chain of n integrators with constant feedbacks, as was done with analogue computers and as one writes in a simulation program.

Theorem. The controllable canonical form is always reachable.

Proof. Compute \mathcal{R} = (B\ \ AB\ \ A^2B): B = (0, 0, 1)^T, AB is the last column of A, (0, 1, -a_2)^T, and A^2B = (1, -a_2, a_2^2 - a_1)^T. The matrix

    \[ \mathcal{R} = \begin{pmatrix} 0 & 0 & 1 \\ 0 & 1 & -a_2 \\ 1 & -a_2 & a_2^2 - a_1 \end{pmatrix} \]

is triangular with respect to the anti-diagonal with all 1s on it, so it has determinant \pm 1 and full rank, whatever the coefficients. ∎

Observability, instead, is not guaranteed: the controllable canonical form is observable if and only if numerator and denominator have no common roots. If there is a cancellation, the realisation has more states than needed, and the extra part is unobservable.

The dual form

Transposing the controllable canonical form (A^T, with C^T in place of B and B^T in place of C) gives the observable canonical form. The transfer function does not change, because G is a scalar and equals its transpose: B^T(sI - A^T)^{-1}C^T = (C(sI - A)^{-1}B)^T = G. By duality (lesson on observability) this form is always observable, and it is reachable only if there are no cancellations.

The modal form

If the poles p_1, \dots, p_n are distinct, the partial fraction expansion

    \[ G(s) = \sum_{i=1}^{n}\frac{r_i}{s - p_i} \]

immediately suggests a diagonal realisation: \dot{x}_i = p_ix_i + u for each i, and y = \sum_i r_ix_i. Each state is a mode, and the subsystems work in parallel. Every mode is reachable (the input enters all of them) and observable if and only if its residue r_i is non-zero: a zero residue is exactly a cancelled pole.

Example. For G(s) = (s + 3)/((s + 1)(s + 2)) the residues are r_1 = (-1 + 3)/(-1 + 2) = 2 and r_2 = (-2 + 3)/(-2 + 1) = -1, so

    \[ \dot{x}_1 = -x_1 + u,\quad \dot{x}_2 = -2x_2 + u,\quad y = 2x_1 - x_2 \]

The controllable canonical form of the same function has A = \begin{pmatrix} 0 & 1 \\ -2 & -3 \end{pmatrix} (the matrix of the example in the lesson on the solution), B = (0\ \ 1)^T and C = (3\ \ 1). The two realisations are related by a change of coordinates, the one that diagonalises A.

Cancellations

Change the numerator to s + 1: G(s) = (s + 1)/((s + 1)(s + 2)) = 1/(s + 2). The canonical form with C = (1\ \ 1) has two states and is reachable, but the transfer function is first order: the realisation is not minimal, and by the theorem of the lesson on observability the extra part must be unobservable. Indeed \mathcal{O} = \begin{pmatrix} 1 & 1 \\ -2 & -2 \end{pmatrix} has rank 1. The mode e^{-t} is there, but the output does not see it.

Here the hidden mode is stable and does no harm. If it were unstable, and the system were actually built that way (in a circuit, or as the series of a controller and a process), we would have a system that looks perfect from its transfer function and yet diverges. The moral of realisation theory: the transfer function describes the input-output behaviour, not the system; to know everything one needs the state-space representation, or the certainty that it is minimal.

Subscribe
Notify of
guest
0 Comments
Oldest
Newest Most Voted
0
Would love your thoughts, please comment.x
()
x