Modelling and Control of Dynamic Systems - ut · Modelling and Control of Dynamic Systems ... that...

Preview:

Citation preview

Modelling and Control of Dynamic

Systems

Controllability and Observability

Sven LaurUniversity of Tartu

Closed-loop Controllers:

Basic Structure

Closed-loop control with state estimation

y[k]u[k]SystemController

r[k]G[z]State

Estimator

The instability of a open loop controller is caused by gradual accumulation ofdisturbances. The control signal becomes unsynchronised with the system.

⊲ If we can estimate the system state from the output, we can circumventsuch synchronisation errors. The system must be observable for that.

⊲ Even if we know the system state, it might be impossible to track thereference signal. In brief, the system must be controllable.

1

Controllability

The state equation is controllable if for any input state x0 and for any finalstate x1 there exists an input u that transfers x0 to x1 in a finite time.

⊲ T6. The n dimensional pair (A, B) is controllable iff the controllabilitymatrix

[B AB A2B An−1B

]has the maximal rank n.

The desired input can be computed from the system of linear equations

x1 = Anx0 + An−1Bu[0] + An−2Bu[1] + · · · + Bu[n − 1] .

Although the theorem T6 gives an explicit method for controlling thesystem, it is an off-line algorithm with a time lag n.

A good controller design should yield a faster and more robust method.

2

Observability

The state equation is observable if for any input state x0 and for any inputsignal u, finite the output y sequence determines uniquely x0.

⊲ T7. The pair (A,C) is observable iff the observability matrix

C

CA

. . .CAn−1

has the maximal rank n.

3

Offline state estimation algorithm

Again, the input state x0 can be computed from a system of linear equations

y[0] = Cx0 + Du[0]

y[1] = CAx0 + CBu[0] + Du[1]

· · ·

y[n − 1] = CAn−1x0 + · · · + CBu[n − 2] + Du[n − 1]

Although this equation allows us to find out the state of the system, it isoffline algorithm, which provides a state estimation with a big time lag.

A good state space estimator must be fast and robust.

4

General structure of state estimators

y[k]u[k] System

State Estimatorx[k]

x[k] = Ax[k − 1] + Bu[k − 1]

y[k] = Cx[k] + Du[k]

A state estimate x[k] is updated according to u[k] and y[k]:

⊲ Update rules are based on linear operations.

⊲ The state estimator must converge quickly to the true value x[k]

⊲ The state estimator must tolerate noise in the inputs u[k] and y[k].

5

Example

Consider a canonical realisation of the transfer function g[z] = 0.5z+0.5z2

−0.25

A =

[0 0.251 0

]

B =

[10

]

C = [0.5 0.5] D = 0

Then a possible stable state estimator is following

x[k + 1] = Ax[k] + Bu[k] + 1(y[k] − Cx[k]︸ ︷︷ ︸

y[k]

) .

In general, the feedback vector 1 can be replaced with any other vector toincrease the stability of a state estimator.

6

Kalman Decomposition

Equivalent state equations

Two different state descriptions of linear systems

{

x[k + 1] = A1x[k] + B1u[k]

y[k] = C1x[k] + D1u[k]

{

x[k + 1] = A2x[k] + B2u[k]

y[k] = C2x[k] + D2u[k]

are equivalent if for any initial state x0 there exists an initial state x0 suchthat for any input u both systems yield the same output and vice versa.

⊲ T8. Two state descriptions are (algebraically) equivalent if there existsan invertible matrix P such that

A2 = PA1P−1 B2 = PB1

C2 = C1P−1 D2 = D1 .

7

Linear state space transformations

The basis e1 = (0, 1) and e2 = (1, 0) is a canonical base in R2. However a

basis a1 = (1, 1) and a2 = (1,−1) is also a basis.

Now any state x = x1e1 + x2e2 can be represented as x = x1a1 + x2a2

and vice versa. The latter is known as a basis transformation:

x1 =x1 + x2

2

x2 =x1 − x2

2

{

x1 = x1 + x2

x2 = x1 − x2

For obvious reasons, we can do all computations wrt the basis {a1, a2} sothat the underlying behaviour does not change. The same equivalence ofstate descriptions hold for other bases and larger state spaces, as well.

8

Kalman decomposition

⊲ T9. Every state space equation can be transformed into an equivalentdescription to a canonical form

xco[k + 1]xco[k + 1]xco[k + 1]xco[k + 1]

=

Aco 0 A13 0

A21 Aco A23 A24

0 0 Aco 0

0 0 A43 Aco

xco[k]xco[k]xco[k]xco[k]

+

Bco

Bco

0

0

u[k]

y[k] = [Cco 0 Cco 0] x[k] + Du[k]

where⋄ xco is controllable and observable

⋄ xco is controllable but not observable

⋄ xco is observable but not controllable

⋄ xco is neither controllable nor observable

9

Minimal realisation

⊲ T10. All minimal realisations are controllable and observable. Arealisation of a proper transfer function g[z] = N(z)/D(z) is minimal iff

it state space dimension dim(x0) = deg D(z).

10

Closed-loop Controllers:

Design Principles

General setting

According to Kalman decomposition theorem, the state variables can bedivided into four classes depending on controllability and observability.

⊲ We cannot do anything with non-controllable state variables.

⊲ Non-observable variables can be controlled only if they are marginallystable. We can do it with an open-loop controller.

⊲ For controllable and observable state variables, we can build effectiveclosed-loop controllers.

Simplifying assumptions

⊲ From now on, we assume that we always want to control state variablesthat are both controllable and directly observable: y[k] = x[k].

⊲ If this is not the case, then we must use state estimators to get anestimate of x. The latter just complicates the analysis.

11

Unity-feedback configuration

y[k]u[k] SystemControllerr[k]

g[z]C[z]p +

-1

Design tasks

⊲ Find a compensator c[z] such that system becomes stable.

⊲ Find a proper value of p such that system starts to track reference signal.

It is sometimes impossible to find p such that y[k] ≈ r[k].

⊲ The latter is impossible if g[1] = 0, then the output y[k] just dies out.

12

Overall transfer function

Now note that

y = g[z]c[z](pr − y) ⇐⇒ y =pg[z]c[z]

1 + g[z]c[z]r

and thus the configuration is stable when the new transfer function

g◦[z] =pg[z]c[z]

1 + g[z]c[z]

has poles lying in the unit circle. Now observe

g[z] =N(z)

D(z), c[z] =

B(z)

A(z)=⇒ g◦[z] =

pB(z)N(z)

A(z)D(z) + B(z)N(z)

13

Pole placement

We can control the denominator of the new transfer function g◦[z]. Let

F (z) = A(z)D(z) + B(z)N(z)

be a desired new denominator. Then there exists polynomials A(z) andB(z) for every polynomial F (z) provided that D(z) and N(z) are coprime.The degrees of the polynomials satisfy deg B(z) ≥ deg F (z) − deg D(z).

ℑ(s)

ℜ(s)

BIBO

stable

ℜ(z)

ℑ(z)

BIBO

stable

14

Signal tracking properties

Let g◦[z] be the overall transfer function.

⊲ The system stabilises if g◦[z] is BIBO stable.

⊲ The system can track a constant signal r[k] ≡ a if g◦[1] = 1.

⊲ The system can track a ramp signal r[k] ≡ ak if g◦[1] = 1 and g′◦[1] = 0.

The latter follows from the asymptotic convergence

y[k] → ag′◦[1] + kag◦[1]

for an input signal r[k] = ak. Moreover, let g◦ = N(z)/D(z). Then

g◦[1] = 1 ∧ g′◦[1] = 0 ⇐⇒ N(1) = D(1) ∧ N ′(1) = D′(1) .

15

Trade-offs in pole placement

A pole placement is a trade-off between three design criteria:

⊲ response time

⊲ overshoot ratio

⊲ maximal strength of the input signal

There is no general recipe for pole placement. Rules of thumb are given in

⊲ C.-T. Chen. Linear System Theory and Design. page 238.

16

Illustrative example

Consider a feedback loop with the transfer function g[z] = 1z−2. Then we

can try many different pole placements

F (z) ∈{z − 0.5, z + 0.5, z2 − 0.25, z2 + z + 0.25, z2 − z + 0.25

}

The corresponding compensators are

c[z] ∈

{3

2,5

2,

15

4z + 8,

24

4z + 12,

9

4z + 4

}

,

p ∈

{1

3,3

5,

1

5, ,

9

25,

1

9

}

.

They can be found systematically by solving a system of linear equations.

17

Robust signal tracking

Sometimes the system changes during the operation. The latter can bemodelled as an additional additive term w[k] in the input signal.

If we know the poles of reference signal r[k] and w[k] ahead, then we candesign a compensator that filters out the error signal w[k].

For instance, if w[k] is a constant bias, then adding an extra pole 1z−1

cancels out the effect of bias. See pages 277–283 for further examples.

In our example, the robust compensator for F [z] = z2 − 0.25 is

c[z] =12z − 9

4z − 4p = 1 .

18

Model matching

Find a feedback configuration such that g◦ is BIBO stable and g◦[1] = 1.

y[k]u[k] Systemr[k]g[z]

Controller

c1[z]+

c2[z]Feedback

⊲ The two-parameter configuration described above provides more flexibilityand it is possible to cancel out zeroes that prohibit tracking.

⊲ There are many alternative configurations. A controller design isacceptable if every closed-loop configuration is BIBO stable.

19

Recommended