SLIDE 1
Plan of the Lecture
◮ Review: state-space notions: canonical forms,
controllability.
◮ Today’s topic: controllability, stability, and pole-zero
cancellations; effect of coordinate transformations; conversion of any controllable system to CCF.
SLIDE 2 Plan of the Lecture
◮ Review: state-space notions: canonical forms,
controllability.
◮ Today’s topic: controllability, stability, and pole-zero
cancellations; effect of coordinate transformations; conversion of any controllable system to CCF. Goal: explore the effect of pole-zero cancellations on internal stability; understand the effect of coordinate transformations on the properties of a given state-space model (transfer function;
- pen-loop poles; controllability).
SLIDE 3 Plan of the Lecture
◮ Review: state-space notions: canonical forms,
controllability.
◮ Today’s topic: controllability, stability, and pole-zero
cancellations; effect of coordinate transformations; conversion of any controllable system to CCF. Goal: explore the effect of pole-zero cancellations on internal stability; understand the effect of coordinate transformations on the properties of a given state-space model (transfer function;
- pen-loop poles; controllability).
Reading: FPE, Chapter 7
SLIDE 4
State-Space Realizations
˙ x = Ax + Bu y = Cx u y
SLIDE 5
State-Space Realizations
˙ x = Ax + Bu y = Cx u y
◮ a given transfer function G(s) can be realized using
infinitely many state-space models
SLIDE 6 State-Space Realizations
˙ x = Ax + Bu y = Cx u y
◮ a given transfer function G(s) can be realized using
infinitely many state-space models
◮ certain properties make some realizations preferable to
SLIDE 7 State-Space Realizations
˙ x = Ax + Bu y = Cx u y
◮ a given transfer function G(s) can be realized using
infinitely many state-space models
◮ certain properties make some realizations preferable to
◮ one such property is controllability
SLIDE 8 Controllability Matrix
Consider a single-input system (u ∈ R): ˙ x = Ax + Bu, y = Cx x ∈ Rn The Controllability Matrix is defined as C(A, B) =
- B | AB | A2B | . . . | An−1B
- We say that the above system is controllable if its
controllability matrix C(A, B) is invertible.
SLIDE 9 Controllability Matrix
Consider a single-input system (u ∈ R): ˙ x = Ax + Bu, y = Cx x ∈ Rn The Controllability Matrix is defined as C(A, B) =
- B | AB | A2B | . . . | An−1B
- We say that the above system is controllable if its
controllability matrix C(A, B) is invertible.
◮ As we will see later, if the system is controllable, then we
may assign arbitrary closed-loop poles by state feedback of the form u = −Kx.
SLIDE 10 Controllability Matrix
Consider a single-input system (u ∈ R): ˙ x = Ax + Bu, y = Cx x ∈ Rn The Controllability Matrix is defined as C(A, B) =
- B | AB | A2B | . . . | An−1B
- We say that the above system is controllable if its
controllability matrix C(A, B) is invertible.
◮ As we will see later, if the system is controllable, then we
may assign arbitrary closed-loop poles by state feedback of the form u = −Kx.
◮ Whether or not the system is controllable depends on its
state-space realization.
SLIDE 11 Example: Computing C(A, B)
Let’s get back to our old friend: ˙ x1 ˙ x2
1 −6 −5
x1 x2
1
u, y =
1
x1 x2
SLIDE 12 Example: Computing C(A, B)
Let’s get back to our old friend: ˙ x1 ˙ x2
1 −6 −5
x1 x2
1
u, y =
1
x1 x2
⇒ A ∈ R2×2 = ⇒ C(A, B) ∈ R2×2
SLIDE 13 Example: Computing C(A, B)
Let’s get back to our old friend: ˙ x1 ˙ x2
1 −6 −5
x1 x2
1
u, y =
1
x1 x2
⇒ A ∈ R2×2 = ⇒ C(A, B) ∈ R2×2 C(A, B) = [B | AB]
SLIDE 14 Example: Computing C(A, B)
Let’s get back to our old friend: ˙ x1 ˙ x2
1 −6 −5
x1 x2
1
u, y =
1
x1 x2
⇒ A ∈ R2×2 = ⇒ C(A, B) ∈ R2×2 C(A, B) = [B | AB] AB = 1 −6 −5 1
1 −5
SLIDE 15 Example: Computing C(A, B)
Let’s get back to our old friend: ˙ x1 ˙ x2
1 −6 −5
x1 x2
1
u, y =
1
x1 x2
⇒ A ∈ R2×2 = ⇒ C(A, B) ∈ R2×2 C(A, B) = [B | AB] AB = 1 −6 −5 1
1 −5
⇒ C(A, B) = 1 1 −5
SLIDE 16 Example: Computing C(A, B)
Let’s get back to our old friend: ˙ x1 ˙ x2
1 −6 −5
x1 x2
1
u, y =
1
x1 x2
⇒ A ∈ R2×2 = ⇒ C(A, B) ∈ R2×2 C(A, B) = [B | AB] AB = 1 −6 −5 1
1 −5
⇒ C(A, B) = 1 1 −5
- Is this system controllable?
SLIDE 17 Example: Computing C(A, B)
Let’s get back to our old friend: ˙ x1 ˙ x2
1 −6 −5
x1 x2
1
u, y =
1
x1 x2
⇒ A ∈ R2×2 = ⇒ C(A, B) ∈ R2×2 C(A, B) = [B | AB] AB = 1 −6 −5 1
1 −5
⇒ C(A, B) = 1 1 −5
- Is this system controllable?
det C = −1 = 0 = ⇒ system is controllable
SLIDE 18
Controller Canonical Form
A single-input state-space model ˙ x = Ax + Bu, y = Cx is said to be in Controller Canonical Form (CCF) is the matrices A, B are of the form A = 1 . . . 1 . . . . . . . . . . . . ... . . . . . . . . . 1 ∗ ∗ ∗ . . . ∗ ∗ , B = . . . 1 A system in CCF is always controllable!!
(The proof of this for n > 2 uses the Jordan canonical form, we will not worry about this.)
SLIDE 19
CCF with Arbitrary Zeros
In our example, we had G(s) = s + 1 s2 + 5s + 6, with a minimum-phase zero at z = −1.
SLIDE 20
CCF with Arbitrary Zeros
In our example, we had G(s) = s + 1 s2 + 5s + 6, with a minimum-phase zero at z = −1. Let’s consider a general zero location s = z: G(s) = s − z s2 + 5s + 6
SLIDE 21 CCF with Arbitrary Zeros
In our example, we had G(s) = s + 1 s2 + 5s + 6, with a minimum-phase zero at z = −1. Let’s consider a general zero location s = z: G(s) = s − z s2 + 5s + 6 This gives us a CCF realization ˙ x1 ˙ x2
1 −6 −5
x1 x2
1
u, y =
1
x1 x2
SLIDE 22 CCF with Arbitrary Zeros
In our example, we had G(s) = s + 1 s2 + 5s + 6, with a minimum-phase zero at z = −1. Let’s consider a general zero location s = z: G(s) = s − z s2 + 5s + 6 This gives us a CCF realization ˙ x1 ˙ x2
1 −6 −5
x1 x2
1
u, y =
1
x1 x2
- Since A, B are the same, C(A, B) is the same =
⇒ the system is still controllable.
SLIDE 23 CCF with Arbitrary Zeros
In our example, we had G(s) = s + 1 s2 + 5s + 6, with a minimum-phase zero at z = −1. Let’s consider a general zero location s = z: G(s) = s − z s2 + 5s + 6 This gives us a CCF realization ˙ x1 ˙ x2
1 −6 −5
x1 x2
1
u, y =
1
x1 x2
- Since A, B are the same, C(A, B) is the same =
⇒ the system is still controllable. A system in CCF is controllable for any locations of the zeros.
SLIDE 24 OCF with Arbitrary Zeros
Start with the CCF ˙ x1 ˙ x2
1 −6 −5
x1 x2
1
u, y =
1
x1 x2
SLIDE 25 OCF with Arbitrary Zeros
Start with the CCF ˙ x1 ˙ x2
1 −6 −5
x1 x2
1
u, y =
1
x1 x2
(A → AT , B → CT , C → BT ) ˙ x1 ˙ x2
−6 1 −5
A=AT
x1 x2
−z 1
B=CT
u, y =
C=BT
x1 x2
SLIDE 26 OCF with Arbitrary Zeros
Start with the CCF ˙ x1 ˙ x2
1 −6 −5
x1 x2
1
u, y =
1
x1 x2
(A → AT , B → CT , C → BT ) ˙ x1 ˙ x2
−6 1 −5
A=AT
x1 x2
−z 1
B=CT
u, y =
C=BT
x1 x2
- We already know that this system realizes the same t.f. as the
- riginal system.
SLIDE 27 OCF with Arbitrary Zeros
Start with the CCF ˙ x1 ˙ x2
1 −6 −5
x1 x2
1
u, y =
1
x1 x2
(A → AT , B → CT , C → BT ) ˙ x1 ˙ x2
−6 1 −5
A=AT
x1 x2
−z 1
B=CT
u, y =
C=BT
x1 x2
- We already know that this system realizes the same t.f. as the
- riginal system.
But is it controllable?
SLIDE 28 OCF with Arbitrary Zeros
˙ x1 ˙ x2
−6 1 −5
A=AT
x1 x2
−z 1
B=CT
u, y =
C=BT
x1 x2
SLIDE 29 OCF with Arbitrary Zeros
˙ x1 ˙ x2
−6 1 −5
A=AT
x1 x2
−z 1
B=CT
u, y =
C=BT
x1 x2
- Let’s find the controllability matrix:
SLIDE 30 OCF with Arbitrary Zeros
˙ x1 ˙ x2
−6 1 −5
A=AT
x1 x2
−z 1
B=CT
u, y =
C=BT
x1 x2
- Let’s find the controllability matrix:
C( ¯ A, ¯ B) = ¯ B | ¯ A ¯ B
SLIDE 31 OCF with Arbitrary Zeros
˙ x1 ˙ x2
−6 1 −5
A=AT
x1 x2
−z 1
B=CT
u, y =
C=BT
x1 x2
- Let’s find the controllability matrix:
C( ¯ A, ¯ B) = ¯ B | ¯ A ¯ B
A ¯ B = −6 1 −5 −z 1
SLIDE 32 OCF with Arbitrary Zeros
˙ x1 ˙ x2
−6 1 −5
A=AT
x1 x2
−z 1
B=CT
u, y =
C=BT
x1 x2
- Let’s find the controllability matrix:
C( ¯ A, ¯ B) = ¯ B | ¯ A ¯ B
A ¯ B = −6 1 −5 −z 1
−z − 5
SLIDE 33 OCF with Arbitrary Zeros
˙ x1 ˙ x2
−6 1 −5
A=AT
x1 x2
−z 1
B=CT
u, y =
C=BT
x1 x2
- Let’s find the controllability matrix:
C( ¯ A, ¯ B) = ¯ B | ¯ A ¯ B
A ¯ B = −6 1 −5 −z 1
−z − 5
A, ¯ B) = −z −6 1 −z − 5
SLIDE 34 OCF with Arbitrary Zeros
˙ x1 ˙ x2
−6 1 −5
A=AT
x1 x2
−z 1
B=CT
u, y =
C=BT
x1 x2
- Let’s find the controllability matrix:
C( ¯ A, ¯ B) = ¯ B | ¯ A ¯ B
A ¯ B = −6 1 −5 −z 1
−z − 5
A, ¯ B) = −z −6 1 −z − 5
SLIDE 35 OCF with Arbitrary Zeros
˙ x1 ˙ x2
−6 1 −5
A=AT
x1 x2
−z 1
B=CT
u, y =
C=BT
x1 x2
- Let’s find the controllability matrix:
C( ¯ A, ¯ B) = ¯ B | ¯ A ¯ B
A ¯ B = −6 1 −5 −z 1
−z − 5
A, ¯ B) = −z −6 1 −z − 5
- det C = z(z + 5) + 6 = z2 + 5z + 6
SLIDE 36 OCF with Arbitrary Zeros
˙ x1 ˙ x2
−6 1 −5
A=AT
x1 x2
−z 1
B=CT
u, y =
C=BT
x1 x2
- Let’s find the controllability matrix:
C( ¯ A, ¯ B) = ¯ B | ¯ A ¯ B
A ¯ B = −6 1 −5 −z 1
−z − 5
A, ¯ B) = −z −6 1 −z − 5
- det C = z(z + 5) + 6 = z2 + 5z + 6 = 0
for z = −2 or z = −3
SLIDE 37 OCF with Arbitrary Zeros
˙ x1 ˙ x2
−6 1 −5
A=AT
x1 x2
−z 1
B=CT
u, y =
C=BT
x1 x2
- Let’s find the controllability matrix:
C( ¯ A, ¯ B) = ¯ B | ¯ A ¯ B
A ¯ B = −6 1 −5 −z 1
−z − 5
A, ¯ B) = −z −6 1 −z − 5
- det C = z(z + 5) + 6 = z2 + 5z + 6 = 0
for z = −2 or z = −3 The OCF realization of the transfer function G(s) = s − z s2 + 5s + 6 is not controllable when z = −2 or −3, even though the CCF is always controllable.
SLIDE 38
Beware of Pole-Zero Cancellations!
The OCF realization of the transfer function G(s) = s − z s2 + 5s + 6 is not controllable when z = −2 or −3, even though the CCF is always controllable.
SLIDE 39
Beware of Pole-Zero Cancellations!
The OCF realization of the transfer function G(s) = s − z s2 + 5s + 6 is not controllable when z = −2 or −3, even though the CCF is always controllable. Let’s examine G(s) when z = −2:
SLIDE 40 Beware of Pole-Zero Cancellations!
The OCF realization of the transfer function G(s) = s − z s2 + 5s + 6 is not controllable when z = −2 or −3, even though the CCF is always controllable. Let’s examine G(s) when z = −2: G(s) = s − z s2 + 5s + 6
✘✘ ✘
s + 2 (✘✘
✘
s + 2)(s + 3) = 1 s + 3
SLIDE 41 Beware of Pole-Zero Cancellations!
The OCF realization of the transfer function G(s) = s − z s2 + 5s + 6 is not controllable when z = −2 or −3, even though the CCF is always controllable. Let’s examine G(s) when z = −2: G(s) = s − z s2 + 5s + 6
✘✘ ✘
s + 2 (✘✘
✘
s + 2)(s + 3) = 1 s + 3 — pole-zero cancellation!
SLIDE 42 Beware of Pole-Zero Cancellations!
The OCF realization of the transfer function G(s) = s − z s2 + 5s + 6 is not controllable when z = −2 or −3, even though the CCF is always controllable. Let’s examine G(s) when z = −2: G(s) = s − z s2 + 5s + 6
✘✘ ✘
s + 2 (✘✘
✘
s + 2)(s + 3) = 1 s + 3 — pole-zero cancellation! For z = −2, G(s) is a first-order transfer function, which can always be realized by this 1st-order controllable model: ˙ x1 = −3x1 + u, y = x1 − → G(s) = 1 s + 3
SLIDE 43
Beware of Pole-Zero Cancellations!!
We can look at this from another angle: consider the t.f. G(s) = 1 s + 3
SLIDE 44
Beware of Pole-Zero Cancellations!!
We can look at this from another angle: consider the t.f. G(s) = 1 s + 3 We can realize it using a one-dimensional controllable state-space model ˙ x1 = −3x1 + u, y = x1
SLIDE 45 Beware of Pole-Zero Cancellations!!
We can look at this from another angle: consider the t.f. G(s) = 1 s + 3 We can realize it using a one-dimensional controllable state-space model ˙ x1 = −3x1 + u, y = x1
- r a noncontrollable two-dimensional state-space model
˙ x1 ˙ x2
−6 1 −5 x1 x2
2 1
y =
x1 x2
SLIDE 46 Beware of Pole-Zero Cancellations!!
We can look at this from another angle: consider the t.f. G(s) = 1 s + 3 We can realize it using a one-dimensional controllable state-space model ˙ x1 = −3x1 + u, y = x1
- r a noncontrollable two-dimensional state-space model
˙ x1 ˙ x2
−6 1 −5 x1 x2
2 1
y =
x1 x2
- — certainly not the best way to realize a simple t.f.!
SLIDE 47 Beware of Pole-Zero Cancellations!!
We can look at this from another angle: consider the t.f. G(s) = 1 s + 3 We can realize it using a one-dimensional controllable state-space model ˙ x1 = −3x1 + u, y = x1
- r a noncontrollable two-dimensional state-space model
˙ x1 ˙ x2
−6 1 −5 x1 x2
2 1
y =
x1 x2
- — certainly not the best way to realize a simple t.f.!
Thus, even the state dimension of a realization of a given t.f. is not unique!!
SLIDE 48
Beware of Pole-Zero Cancellations!!
Here is a really bad realization of the t.f. G(s) = 1 s + 3.
SLIDE 49
Beware of Pole-Zero Cancellations!!
Here is a really bad realization of the t.f. G(s) = 1 s + 3. Use a two-dimensional model: ˙ x1 = −3x1 + u ˙ x2 = 100x2 y = x1
SLIDE 50
Beware of Pole-Zero Cancellations!!
Here is a really bad realization of the t.f. G(s) = 1 s + 3. Use a two-dimensional model: ˙ x1 = −3x1 + u ˙ x2 = 100x2 y = x1
◮ x2 is not affected by the input u (i.e., it is an
uncontrollable mode), and not visible from the output y
SLIDE 51
Beware of Pole-Zero Cancellations!!
Here is a really bad realization of the t.f. G(s) = 1 s + 3. Use a two-dimensional model: ˙ x1 = −3x1 + u ˙ x2 = 100x2 y = x1
◮ x2 is not affected by the input u (i.e., it is an
uncontrollable mode), and not visible from the output y
◮ does not change the transfer function
SLIDE 52
Beware of Pole-Zero Cancellations!!
Here is a really bad realization of the t.f. G(s) = 1 s + 3. Use a two-dimensional model: ˙ x1 = −3x1 + u ˙ x2 = 100x2 y = x1
◮ x2 is not affected by the input u (i.e., it is an
uncontrollable mode), and not visible from the output y
◮ does not change the transfer function ◮ ... and yet, horrible to implement: x2(t) ∝ e100t
SLIDE 53
Beware of Pole-Zero Cancellations!!
Here is a really bad realization of the t.f. G(s) = 1 s + 3. Use a two-dimensional model: ˙ x1 = −3x1 + u ˙ x2 = 100x2 y = x1
◮ x2 is not affected by the input u (i.e., it is an
uncontrollable mode), and not visible from the output y
◮ does not change the transfer function ◮ ... and yet, horrible to implement: x2(t) ∝ e100t
The transfer function can mask undesirable internal state behavior!!
SLIDE 54
Pole-Zero Cancellations and Stability
SLIDE 55
Pole-Zero Cancellations and Stability
◮ In case of a pole-zero cancellation, the t.f. contains much
less information than the state-space model because some dynamics are “hidden.”
SLIDE 56
Pole-Zero Cancellations and Stability
◮ In case of a pole-zero cancellation, the t.f. contains much
less information than the state-space model because some dynamics are “hidden.”
◮ These dynamics can be either good (stable) or bad
(unstable), but we cannot tell from the t.f.
SLIDE 57
Pole-Zero Cancellations and Stability
◮ In case of a pole-zero cancellation, the t.f. contains much
less information than the state-space model because some dynamics are “hidden.”
◮ These dynamics can be either good (stable) or bad
(unstable), but we cannot tell from the t.f.
◮ Our original definition of stability (no RHP poles) is flawed
because there can be RHP eigenvalues of the system matrix A that are canceled by zeros,yet they still have dynamics associated with them.
SLIDE 58
Pole-Zero Cancellations and Stability
◮ In case of a pole-zero cancellation, the t.f. contains much
less information than the state-space model because some dynamics are “hidden.”
◮ These dynamics can be either good (stable) or bad
(unstable), but we cannot tell from the t.f.
◮ Our original definition of stability (no RHP poles) is flawed
because there can be RHP eigenvalues of the system matrix A that are canceled by zeros,yet they still have dynamics associated with them. Definition of Internal Stability (State-Space Version): a state-space model with matrices (A, B, C, D) is internally stable if all eigenvalues of the A matrix are in LHP.
SLIDE 59
Pole-Zero Cancellations and Stability
◮ In case of a pole-zero cancellation, the t.f. contains much
less information than the state-space model because some dynamics are “hidden.”
◮ These dynamics can be either good (stable) or bad
(unstable), but we cannot tell from the t.f.
◮ Our original definition of stability (no RHP poles) is flawed
because there can be RHP eigenvalues of the system matrix A that are canceled by zeros,yet they still have dynamics associated with them. Definition of Internal Stability (State-Space Version): a state-space model with matrices (A, B, C, D) is internally stable if all eigenvalues of the A matrix are in LHP. This is equivalent to having no RHP open-loop poles and no pole-zero cancellations in RHP.
SLIDE 60
Coordinate Transformations
Now that we have seen that a given transfer function can have many different state-space realizations, we would like a systematic procedure of generating such realizations, preferably with favorable properties (like controllability). One such procedure is by means of coordinate transformations.
SLIDE 61
Coordinate Transformations
x1 x2 ¯ x2 ¯ x1
x − → ¯ x = Tx, T ∈ Rn×nnonsingular x = T −1¯ x
(go back and forth between the coordinate systems)
SLIDE 62 Coordinate Transformations
For example, x1 x2
→ ¯ x1 ¯ x2
x1 + x2 x1 − x2
SLIDE 63 Coordinate Transformations
For example, x1 x2
→ ¯ x1 ¯ x2
x1 + x2 x1 − x2
- This can be represented as
¯ x = Tx, where T = 1 1 1 −1
SLIDE 64 Coordinate Transformations
For example, x1 x2
→ ¯ x1 ¯ x2
x1 + x2 x1 − x2
- This can be represented as
¯ x = Tx, where T = 1 1 1 −1
- The transformation is invertible: det T = −2, and
T −1 = 1 det T −1 −1 −1 1
1
2 1 2 1 2
− 1
2
SLIDE 65 Coordinate Transformations
For example, x1 x2
→ ¯ x1 ¯ x2
x1 + x2 x1 − x2
- This can be represented as
¯ x = Tx, where T = 1 1 1 −1
- The transformation is invertible: det T = −2, and
T −1 = 1 det T −1 −1 −1 1
1
2 1 2 1 2
− 1
2
- Or we can see this directly:
¯ x1 + ¯ x2 = 2x1; ¯ x1 − ¯ x2 = 2x2
SLIDE 66
Coordinate Transformations and State-Space Models
Consider a state-space model ˙ x = Ax + Bu y = Cx and a change of coordinates ¯ x = Tx (T invertible).
SLIDE 67
Coordinate Transformations and State-Space Models
Consider a state-space model ˙ x = Ax + Bu y = Cx and a change of coordinates ¯ x = Tx (T invertible). What does the system look like in the new coordinates?
SLIDE 68
Coordinate Transformations and State-Space Models
Consider a state-space model ˙ x = Ax + Bu y = Cx and a change of coordinates ¯ x = Tx (T invertible). What does the system look like in the new coordinates? ˙ ¯ x = ˙ Tx
SLIDE 69
Coordinate Transformations and State-Space Models
Consider a state-space model ˙ x = Ax + Bu y = Cx and a change of coordinates ¯ x = Tx (T invertible). What does the system look like in the new coordinates? ˙ ¯ x = ˙ Tx = T ˙ x
(linearity of derivative)
SLIDE 70
Coordinate Transformations and State-Space Models
Consider a state-space model ˙ x = Ax + Bu y = Cx and a change of coordinates ¯ x = Tx (T invertible). What does the system look like in the new coordinates? ˙ ¯ x = ˙ Tx = T ˙ x
(linearity of derivative)
= T(Ax + Bu)
SLIDE 71
Coordinate Transformations and State-Space Models
Consider a state-space model ˙ x = Ax + Bu y = Cx and a change of coordinates ¯ x = Tx (T invertible). What does the system look like in the new coordinates? ˙ ¯ x = ˙ Tx = T ˙ x
(linearity of derivative)
= T(Ax + Bu) = T(AT −1¯ x + Bu) (x = T −1¯ x)
SLIDE 72 Coordinate Transformations and State-Space Models
Consider a state-space model ˙ x = Ax + Bu y = Cx and a change of coordinates ¯ x = Tx (T invertible). What does the system look like in the new coordinates? ˙ ¯ x = ˙ Tx = T ˙ x
(linearity of derivative)
= T(Ax + Bu) = T(AT −1¯ x + Bu) (x = T −1¯ x) = TAT −1
¯ A
¯ x + TB
B
u
SLIDE 73 Coordinate Transformations and State-Space Models
Consider a state-space model ˙ x = Ax + Bu y = Cx and a change of coordinates ¯ x = Tx (T invertible). What does the system look like in the new coordinates? ˙ ¯ x = ˙ Tx = T ˙ x
(linearity of derivative)
= T(Ax + Bu) = T(AT −1¯ x + Bu) (x = T −1¯ x) = TAT −1
¯ A
¯ x + TB
B
u y = Cx
SLIDE 74 Coordinate Transformations and State-Space Models
Consider a state-space model ˙ x = Ax + Bu y = Cx and a change of coordinates ¯ x = Tx (T invertible). What does the system look like in the new coordinates? ˙ ¯ x = ˙ Tx = T ˙ x
(linearity of derivative)
= T(Ax + Bu) = T(AT −1¯ x + Bu) (x = T −1¯ x) = TAT −1
¯ A
¯ x + TB
B
u y = Cx = CT −1
¯ C
¯ x
SLIDE 75
Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1
SLIDE 76
Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 What happens to
◮ the transfer function? ◮ the controllability matrix?
SLIDE 77
Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1
SLIDE 78
Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 Claim: The transfer function doesn’t change.
SLIDE 79
Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 Claim: The transfer function doesn’t change. Proof:
SLIDE 80
Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 Claim: The transfer function doesn’t change. Proof: ¯ G(s) = ¯ C(Is − ¯ A)−1 ¯ B
SLIDE 81 Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 Claim: The transfer function doesn’t change. Proof: ¯ G(s) = ¯ C(Is − ¯ A)−1 ¯ B = (CT −1)
SLIDE 82 Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 Claim: The transfer function doesn’t change. Proof: ¯ G(s) = ¯ C(Is − ¯ A)−1 ¯ B = (CT −1)
= CT −1 TIT −1s − TAT −1−1 TB
SLIDE 83 Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 Claim: The transfer function doesn’t change. Proof: ¯ G(s) = ¯ C(Is − ¯ A)−1 ¯ B = (CT −1)
= CT −1 TIT −1s − TAT −1−1 TB = CT −1 T (Is − A) T −1−1 TB
SLIDE 84 Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 Claim: The transfer function doesn’t change. Proof: ¯ G(s) = ¯ C(Is − ¯ A)−1 ¯ B = (CT −1)
= CT −1 TIT −1s − TAT −1−1 TB = CT −1 T (Is − A) T −1−1 TB = C T −1T
I
(Is − A)−1 T −1T
I
B
SLIDE 85 Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 Claim: The transfer function doesn’t change. Proof: ¯ G(s) = ¯ C(Is − ¯ A)−1 ¯ B = (CT −1)
= CT −1 TIT −1s − TAT −1−1 TB = CT −1 T (Is − A) T −1−1 TB = C T −1T
I
(Is − A)−1 T −1T
I
B = C (Is − A)−1 B ≡ G(s)
SLIDE 86
Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 The transfer function doesn’t change.
SLIDE 87
Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 The transfer function doesn’t change. In fact:
SLIDE 88
Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 The transfer function doesn’t change. In fact:
◮ open-loop poles don’t change
SLIDE 89
Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 The transfer function doesn’t change. In fact:
◮ open-loop poles don’t change ◮ characteristic polynomial doesn’t change:
SLIDE 90 Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 The transfer function doesn’t change. In fact:
◮ open-loop poles don’t change ◮ characteristic polynomial doesn’t change:
det(Is − ¯ A) = det(Is − TAT −1) = det
= det T · det(Is − A)−1 · det T −1 = det(Is − A)−1
SLIDE 91
Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1
SLIDE 92
Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 Claim: Controllability doesn’t change.
SLIDE 93
Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 Claim: Controllability doesn’t change. Proof: For any k = 0, 1, . . .,
SLIDE 94
Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 Claim: Controllability doesn’t change. Proof: For any k = 0, 1, . . ., ¯ Ak ¯ B = (TAT −1)kTB = TAkT −1TB = TAkB (by induction)
SLIDE 95
Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 Claim: Controllability doesn’t change. Proof: For any k = 0, 1, . . ., ¯ Ak ¯ B = (TAT −1)kTB = TAkT −1TB = TAkB (by induction) Therefore, C( ¯ A, ¯ B) = [TB | TAB | . . . | TAn−1B]
SLIDE 96
Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 Claim: Controllability doesn’t change. Proof: For any k = 0, 1, . . ., ¯ Ak ¯ B = (TAT −1)kTB = TAkT −1TB = TAkB (by induction) Therefore, C( ¯ A, ¯ B) = [TB | TAB | . . . | TAn−1B] = T[B | AB | . . . | An−1B]
SLIDE 97
Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 Claim: Controllability doesn’t change. Proof: For any k = 0, 1, . . ., ¯ Ak ¯ B = (TAT −1)kTB = TAkT −1TB = TAkB (by induction) Therefore, C( ¯ A, ¯ B) = [TB | TAB | . . . | TAn−1B] = T[B | AB | . . . | An−1B] = TC(A, B)
SLIDE 98
Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 Claim: Controllability doesn’t change. Proof: For any k = 0, 1, . . ., ¯ Ak ¯ B = (TAT −1)kTB = TAkT −1TB = TAkB (by induction) Therefore, C( ¯ A, ¯ B) = [TB | TAB | . . . | TAn−1B] = T[B | AB | . . . | An−1B] = TC(A, B) Since det T = 0, det C( ¯ A, ¯ B) = 0 if and only if det C(A, B) = 0.
SLIDE 99
Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 Claim: Controllability doesn’t change. Proof: For any k = 0, 1, . . ., ¯ Ak ¯ B = (TAT −1)kTB = TAkT −1TB = TAkB (by induction) Therefore, C( ¯ A, ¯ B) = [TB | TAB | . . . | TAn−1B] = T[B | AB | . . . | An−1B] = TC(A, B) Since det T = 0, det C( ¯ A, ¯ B) = 0 if and only if det C(A, B) = 0. Thus, the new system is controllable if and only if the old one is.
SLIDE 100
Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1
SLIDE 101 Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 Note: The controllability matrix does change: C( ¯ A, ¯ B)
new
= T
trans.
C(A, B)
A, ¯ B) [C(A, B)]−1
SLIDE 102 Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 Note: The controllability matrix does change: C( ¯ A, ¯ B)
new
= T
trans.
C(A, B)
A, ¯ B) [C(A, B)]−1 This is a recipe for going from one controllable realization of a given t.f. to another.
SLIDE 103 Coordinate Transformations and State-Space Models
˙ x = Ax + Bu
T
− − − − → ˙ ¯ x = ¯ A¯ x + ¯ Bu y = Cx y = ¯ C¯ x where ¯ A = TAT −1, ¯ B = TB, ¯ C = CT −1 Note: The controllability matrix does change: C( ¯ A, ¯ B)
new
= T
trans.
C(A, B)
A, ¯ B) [C(A, B)]−1 This is a recipe for going from one controllable realization of a given t.f. to another. CCF is the most convenient controllable realization of a given t.f., so we want to convert a given controllable system to CCF (useful for control design).
SLIDE 104
Example: Converting a Controllable System to CCF
Note!! The way I do this is different from the textbook.
SLIDE 105 Example: Converting a Controllable System to CCF
Note!! The way I do this is different from the textbook. Consider A = −15 8 −15 7
1 1
SLIDE 106 Example: Converting a Controllable System to CCF
Note!! The way I do this is different from the textbook. Consider A = −15 8 −15 7
1 1
Convert to CCF if possible.
SLIDE 107 Example: Converting a Controllable System to CCF
Note!! The way I do this is different from the textbook. Consider A = −15 8 −15 7
1 1
Convert to CCF if possible. Step 1: check for controllability.
SLIDE 108 Example: Converting a Controllable System to CCF
Note!! The way I do this is different from the textbook. Consider A = −15 8 −15 7
1 1
Convert to CCF if possible. Step 1: check for controllability. AB = −15 8 −15 7 1 1
−7 −8
SLIDE 109 Example: Converting a Controllable System to CCF
Note!! The way I do this is different from the textbook. Consider A = −15 8 −15 7
1 1
Convert to CCF if possible. Step 1: check for controllability. AB = −15 8 −15 7 1 1
−7 −8
⇒ C = 1 −7 1 −8
SLIDE 110 Example: Converting a Controllable System to CCF
Note!! The way I do this is different from the textbook. Consider A = −15 8 −15 7
1 1
Convert to CCF if possible. Step 1: check for controllability. AB = −15 8 −15 7 1 1
−7 −8
⇒ C = 1 −7 1 −8
– controllable
SLIDE 111
Example: Converting a Controllable System to CCF
Step 2: Determine desired C( ¯ A, ¯ B).
SLIDE 112
Example: Converting a Controllable System to CCF
Step 2: Determine desired C( ¯ A, ¯ B). We need to figure out ¯ A and ¯ B.
SLIDE 113 Example: Converting a Controllable System to CCF
Step 2: Determine desired C( ¯ A, ¯ B). We need to figure out ¯ A and ¯ B. For CCF, we must have ¯ A = 1 −a2 −a1
¯ B = 1
so we need to find the coefficients a1, a2.
SLIDE 114 Example: Converting a Controllable System to CCF
Step 2: Determine desired C( ¯ A, ¯ B). We need to figure out ¯ A and ¯ B. For CCF, we must have ¯ A = 1 −a2 −a1
¯ B = 1
so we need to find the coefficients a1, a2. Recall: the characteristic polynomial does not change: det(Is − A) = det(Is − ¯ A)
SLIDE 115 Example: Converting a Controllable System to CCF
Step 2: Determine desired C( ¯ A, ¯ B). We need to figure out ¯ A and ¯ B. For CCF, we must have ¯ A = 1 −a2 −a1
¯ B = 1
so we need to find the coefficients a1, a2. Recall: the characteristic polynomial does not change: det(Is − A) = det(Is − ¯ A) det s + 15 −8 15 s − 7
s −1 a2 s + a1
SLIDE 116 Example: Converting a Controllable System to CCF
Step 2: Determine desired C( ¯ A, ¯ B). We need to figure out ¯ A and ¯ B. For CCF, we must have ¯ A = 1 −a2 −a1
¯ B = 1
so we need to find the coefficients a1, a2. Recall: the characteristic polynomial does not change: det(Is − A) = det(Is − ¯ A) det s + 15 −8 15 s − 7
s −1 a2 s + a1
- (s + 15)(s − 7) + 120 = s(s + a1) + a2
SLIDE 117 Example: Converting a Controllable System to CCF
Step 2: Determine desired C( ¯ A, ¯ B). We need to figure out ¯ A and ¯ B. For CCF, we must have ¯ A = 1 −a2 −a1
¯ B = 1
so we need to find the coefficients a1, a2. Recall: the characteristic polynomial does not change: det(Is − A) = det(Is − ¯ A) det s + 15 −8 15 s − 7
s −1 a2 s + a1
- (s + 15)(s − 7) + 120 = s(s + a1) + a2
s2 + 8s + 15 = s2 + a1s + a2
SLIDE 118 Example: Converting a Controllable System to CCF
Step 2: Determine desired C( ¯ A, ¯ B). We need to figure out ¯ A and ¯ B. For CCF, we must have ¯ A = 1 −a2 −a1
¯ B = 1
so we need to find the coefficients a1, a2. Recall: the characteristic polynomial does not change: det(Is − A) = det(Is − ¯ A) det s + 15 −8 15 s − 7
s −1 a2 s + a1
- (s + 15)(s − 7) + 120 = s(s + a1) + a2
s2 + 8s + 15 = s2 + a1s + a2
SLIDE 119
Example: Converting a Controllable System to CCF
Step 2: Determine desired C( ¯ A, ¯ B).
SLIDE 120
Example: Converting a Controllable System to CCF
Step 2: Determine desired C( ¯ A, ¯ B). We need to figure out ¯ A and ¯ B.
SLIDE 121 Example: Converting a Controllable System to CCF
Step 2: Determine desired C( ¯ A, ¯ B). We need to figure out ¯ A and ¯ B. For CCF, we must have ¯ A = 1 −a2 −a1
¯ B = 1
SLIDE 122 Example: Converting a Controllable System to CCF
Step 2: Determine desired C( ¯ A, ¯ B). We need to figure out ¯ A and ¯ B. For CCF, we must have ¯ A = 1 −a2 −a1
¯ B = 1
We have just computed ¯ A = 1 −15 −8
¯ B = 1
SLIDE 123 Example: Converting a Controllable System to CCF
Step 2: Determine desired C( ¯ A, ¯ B). We need to figure out ¯ A and ¯ B. For CCF, we must have ¯ A = 1 −a2 −a1
¯ B = 1
We have just computed ¯ A = 1 −15 −8
¯ B = 1
- Therefore, the new controllability matrix should be
C( ¯ A, ¯ B) = [ ¯ B | ¯ A ¯ B] = 1 1 −8
SLIDE 124
Example: Converting a Controllable System to CCF
Step 3: Compute T.
SLIDE 125
Example: Converting a Controllable System to CCF
Step 3: Compute T. Recall: T = C( ¯ A, ¯ B) · [C(A, B)]−1
SLIDE 126
Example: Converting a Controllable System to CCF
Step 3: Compute T. Recall: T = C( ¯ A, ¯ B) · [C(A, B)]−1 C(A, B) = 1 −7 1 −8
SLIDE 127 Example: Converting a Controllable System to CCF
Step 3: Compute T. Recall: T = C( ¯ A, ¯ B) · [C(A, B)]−1 C(A, B) = 1 −7 1 −8
1 −7 1 −8 −1
SLIDE 128 Example: Converting a Controllable System to CCF
Step 3: Compute T. Recall: T = C( ¯ A, ¯ B) · [C(A, B)]−1 C(A, B) = 1 −7 1 −8
1 −7 1 −8 −1 = 1 −1 −8 7 −1 1
SLIDE 129 Example: Converting a Controllable System to CCF
Step 3: Compute T. Recall: T = C( ¯ A, ¯ B) · [C(A, B)]−1 C(A, B) = 1 −7 1 −8
1 −7 1 −8 −1 = 1 −1 −8 7 −1 1
8 −7 1 −1
SLIDE 130 Example: Converting a Controllable System to CCF
Step 3: Compute T. Recall: T = C( ¯ A, ¯ B) · [C(A, B)]−1 C(A, B) = 1 −7 1 −8
1 −7 1 −8 −1 = 1 −1 −8 7 −1 1
8 −7 1 −1
A, ¯ B) = 1 1 −8
SLIDE 131 Example: Converting a Controllable System to CCF
Step 3: Compute T. Recall: T = C( ¯ A, ¯ B) · [C(A, B)]−1 C(A, B) = 1 −7 1 −8
1 −7 1 −8 −1 = 1 −1 −8 7 −1 1
8 −7 1 −1
A, ¯ B) = 1 1 −8
1 1 −8 8 −7 1 −1
SLIDE 132 Example: Converting a Controllable System to CCF
Step 3: Compute T. Recall: T = C( ¯ A, ¯ B) · [C(A, B)]−1 C(A, B) = 1 −7 1 −8
1 −7 1 −8 −1 = 1 −1 −8 7 −1 1
8 −7 1 −1
A, ¯ B) = 1 1 −8
1 1 −8 8 −7 1 −1
1 −1 1
SLIDE 133
In the next lecture, we will see why CCF is so useful.