ees-20: sistemas de controle ii - - ita, divisão de ...kawakami/ees20/aula11_handouts.pdf ·...

56
EES-20: Sistemas de Controle II 06 Setembro 2017 1 / 56

Upload: dohanh

Post on 07-Feb-2019

218 views

Category:

Documents


0 download

TRANSCRIPT

EES-20: Sistemas de Controle II

06 Setembro 2017

1 / 56

Recapitulando: Observador de Estado

Modelo da planta:x = Ax + Bu

y = Cx

Observador de estado:

˙x = Ax + Bu + L(y − y)

y = Cx

Erro de estimacao do estado:

x = x − x

Dinamica do erro de estimacao:

˙x = (A− LC )x

2 / 56

Recapitulando: Observador de Estado

˙x = (A− LC )x

Pergunta 1: Como escolher as posicoes para os autovalores de (A− LC ) ?

Resposta: Se for adotada uma lei de controle da forma u = −Kx + Fr , ospolos de malha fechada corresponderao a uniao dos autovalores de(A− BK ) e (A− LC ). Desse modo, se os autovalores de (A− BK )tiverem sido alocados com vistas a obtencao de um modo dominante emmalha fechada, convem que os autovalores de (A− LC ) estejam afastadospara a esquerda, com relacao ao(s) polo(s) desse modo dominante.

3 / 56

Recapitulando: Observador de Estado

˙x = (A− LC )x

Pergunta 2: Tendo-se escolhido posicoes para os autovalores de (A− LC ),e sempre possıvel obter L de modo a realizar a alocacao desejada ?

4 / 56

Observabilidade

Um sistema com modelo da forma

x = Ax + Bu

y = Cx

e dito observavel se for possıvel alocar os autovalores de (A− LC ) emposicoes arbitrarias do plano complexo por meio de escolha da matriz L.

De forma resumida, diz-se que o par (A,C ) e observavel.

Vale notar que a observabilidade do sistema nao esta relacionada com amatriz B.

Pergunta 2 reformulada: Como determinar se o par (A,C ) e ou nao eobservavel ?

5 / 56

Forma canonica observavel

Vamos considerar inicialmente o caso em que o modelo esta na chamadaforma canonica observavel:

A =

0 0 · · · 0 −an1 0 · · · 0 −an−1...

. . ....

......

0 0. . . 0 −a2

0 0 · · · 1 −a1

, B =

bnbn−1

...b2b1

C =

[0 0 · · · 0 1

]Pode-se mostrar que essa e uma realizacao da seguinte funcao detransferencia:

G (s) =Y (s)

U(s)=

b1sn−1 + · · ·+ bn−1s + bn

sn + a1sn−1 + · · ·+ an−1s + an

6 / 56

Forma canonica observavel

A =

0 0 · · · 0 −an1 0 · · · 0 −an−1...

. . ....

......

0 0. . . 0 −a2

0 0 · · · 1 −a1

, B =

bnbn−1

...b2b1

C =

[0 0 · · · 0 1

]Com efeito, como G (s) e escalar, pode-se escrever

G (s) = GT (s) = [C (sI − A)−1B]T = BT (sI − AT )−1CT

com AT , CT e BT correspondendo as matrizes “A”, “B” e “C” darealizacao canonica controlavel.

7 / 56

Forma canonica observavel

A =

0 0 · · · 0 −an1 0 · · · 0 −an−1...

. . ....

......

0 0. . . 0 −a2

0 0 · · · 1 −a1

, C =[

0 0 · · · 0 1]

Com (A,C ) na forma canonica observavel, tem-se

(A−LC ) =

0 0 · · · 0 −an1 0 · · · 0 −an−1...

. . ....

......

0 0. . . 0 −a2

0 0 · · · 1 −a1

l1l2...

ln−1

ln

[

0 0 · · · 0 1]

8 / 56

Forma canonica observavel

(A− LC ) =

0 0 · · · 0 −(an + l1)1 0 · · · 0 −(an−1 + l2)...

. . ....

......

0 0. . . 0 −(a2 + ln−1)

0 0 · · · 1 −(a1 + ln)

Basta escolher l1, l2, . . . , ln de modo que o polinomio caracterıstico de(A− LC ) corresponda ao desejado.

9 / 56

Conversao para forma canonica observavel

Considere-se agora a chamada matriz de observabilidade Po ∈ Rn×n

definida como

Po =

CCA

...CAn−1

Se a matriz Po for inversıvel, e possıvel converter o modelo para a formacanonica observavel por meio de uma transformacao de similaridade.

10 / 56

Conversao para forma canonica observavel

Com efeito, seja h a ultima coluna de P−1o , isto e:

P−1o =

[• • · · · h

]e defina-se a seguinte matriz de transformacao de similaridade:

P =[h Ah · · · An−1h

]−1

Como resultado da transformacao, tem-se A = PAP−1 , ou seja

P−1A = AP−1

Portanto:[h Ah · · · An−1h

]A = A

[h Ah · · · An−1h

]=[Ah A2h · · · Anh

]11 / 56

Conversao para forma canonica observavel

[h Ah · · · An−1h

]A =

[Ah A2h · · · Anh

]Conclui-se que A tem a seguinte forma:

A =

0 0 · · · 0 −an1 0 · · · 0 −an−1...

. . ....

......

0 0. . . 0 −a2

0 0 · · · 1 −a1

12 / 56

Conversao para forma canonica observavel

Com respeito a matriz C , tem-se

C = CP−1 = C[h Ah · · · An−1h

]=[Ch CAh · · · CAn−1h

]Por outro lado, como PoP

−1o = I , pode-se escrever

CCA

...CAn−1

[ • • · · · h]

=

1 0 · · · 00 1 · · · 0...

.... . .

...0 0 · · · 1

Logo, conclui-se que

ChCAh

...CAn−1h

=

00...1

13 / 56

Conversao para forma canonica observavel

C =[Ch CAh · · · CAn−1h

]

ChCAh

...CAn−1h

=

00...1

Portanto:

C =[Ch CAh · · · CAn−1h

]=[

0 0 · · · 1]

Desenvolvimento similar ao empregado na conversao para forma canonicacontrolavel (aula de 18 de agosto), adaptado de A. C. Faleiros e T. Yoneyama,Teoria Matematica de Sistemas, 2002.

14 / 56

Conversao para forma canonica observavel

Com (A, C ) na forma canonica observavel, pode-se facilmente obter umamatriz L de modo a alocar os autovalores de (A− LC ) nas posicoesdesejadas.

Uma vez que

A− LC = PAP−1 − LCP−1 = P(A− P−1LC )P−1

basta tomar L = P−1L para que os autovalores de (A− LC ) estejam nasposicoes desejadas.

15 / 56

Observabilidade: Condicao suficiente

Portanto, conclui-se que a inversibilidade da matriz Po ∈ Rn×n e condicaosuficiente para a observabilidade do par (A,C ).

16 / 56

Interpretacao alternativa para a propriedade deobservabilidade

Desenvolvimento similar ao apresentado na aula de 21 de agosto, parao caso da controlabilidade. Vide tambem Geromel e Korogui (2001),paginas 201 e 202.

17 / 56

Observabilidade: Interpretacao alternativa

Se o sistema for observavel, pode-se determinar o valor de x(0) com basenos sinais de entrada u(t) e saıda y(t) ao longo de um dado intervalo detempo [0, tf ].

Com efeito, adotando a notacao x0 , x(0), pode-se escrever

y(t) = Cx(t) = C[eAtx0 +

∫ t

0eA(t−τ)Bu(τ)dτ

]e, portanto,

CeAtx0 = y(t)− C

∫ t

0eA(t−τ)Bu(τ)dτ

Multiplicando os dois lados dessa expressao por eAT tCT , obtem-se[

eAT tCTCeAt

]x0 = eA

T tCT[y(t)− C

∫ t

0eA(t−τ)Bu(τ)dτ

]18 / 56

[eA

T tCTCeAt]x0 = eA

T tCT[y(t)− C

∫ t

0eA(t−τ)Bu(τ)dτ

]Integrando os dois lados dessa expressao para t entre 0 e tf , chega-se a

[∫ tf

0eA

T tCTCeAtdt

]x0 =

∫ tf

0eA

T tCT

[y(t)−C

∫ t

0eA(t−τ)Bu(τ)

]dτ

]dt

Seja o “Gramiano de Observabilidade”Wo ∈ Rn×n definido como

Wo =

∫ tf

0eA

T tCTCeAtdt

Se Wo for inversıvel, obtem-se x0 como

x0 = W−1o

{∫ tf

0eA

T tCT

[y(t)− C

∫ t

0eA(t−τ)Bu(τ)

]dτ

]dt

}19 / 56

Observabilidade: Interpretacao alternativa

Wo =

∫ tf

0eA

T tCTCeAtdt

Se o par (A,C ) for observavel, pode-se mostrar que Wo e positivo definidae, portanto, inversıvel.

20 / 56

Inversibilidade de Wo

Wo =

∫ tf

0eA

T tCTCeAtdt

Inicialmente, deve-se notar que

W To =

(∫ tf

0eA

T tCTCeAtdt

)T

=

∫ tf

0

(eA

T tCTCeAt)T

dt

=

∫ tf

0eA

T tCTCeAtdt = Wo

e, portanto, Wo e simetrica.

21 / 56

Inversibilidade de Wo

Wo =

∫ tf

0eA

T tCTCeAtdt

Considerando agora uma dada condicao inicial x0 ∈ Rn, tem-se

xT0 Wox0 =

∫ tf

0xT0 eA

T tCT︸ ︷︷ ︸zT (t)

CeAtx0︸ ︷︷ ︸z(t)

dt =

∫ tf

0z2(t)dt ≥ 0, ∀tf > 0

em que z(t) = CeAtx0 e escalar.

22 / 56

Inversibilidade de Wo

xT0 Wox0 =

∫ tf

0z2(t)dt ≥ 0, ∀tf > 0

z(t) = CeAtx0

Uma vez que z(t) e funcao contınua do tempo, a integral

∫ tf

0z2(t)dt

somente sera nula se z(t) = 0, ∀t ∈ [0, tf ].

Se for esse o caso, entao z(0) = z(0) = · · · = z(n−1)(0) = 0, isto e,

z(t)z(t)

...

z(n−1)(t)

t=0

=

CeAtx0CAeAtx0

...CAn−1eAtx0

t=0

=

CCA

...CAn−1

︸ ︷︷ ︸

Po

x0 =

00...0

ou seja, Pox0 = 0.

23 / 56

Inversibilidade de Wo

Pox0 = 0

Se (A,C ) for controlavel, entao Po sera inversıvel e a equacao Pox0 = 0 soadmitira a solucao x0 = 0.

Portanto, xT0 Wox0 somente sera igual a zero se x0 = 0.

Tendo-se ja provado que xT0 Wox0 ≥ 0, ∀x0 ∈ Rn, conclui-se que

xT0 Wox0 > 0,∀x0 6= 0

ou seja, Wo e positivo definida.

24 / 56

Controlabilidade: Condicao necessaria

Pode-se tambem mostrar que a inversibilidade de Po e condicao necessariapara que o par (A,C ) seja observavel.

Com efeito, suponha que Po nao seja inversıvel, ou seja, que Po tenhaposto n1 < n.

Tomem-se entao n1 linhas linearmente independentes de Po , aquidenotadas por q1, q2, . . . , qn1 .

A parte nao observavel do modelo e isoladaempregando uma matriz de transformacao daforma ao lado, com as ultimas (n − n1) linhasescolhidas de modo que P tenha posto completo.

Demonstracao: Vide C. T. Chen, Linear SystemTheory and Design, 1984 (pagina 203).

P =

q1q2...

qn1••...•

25 / 56

Exemplo 1

R1

L

R2 Cu

iL = x1

vC = x2

y = x2

Exemplo adaptado de C. T. Chen, Linear System Theory and Design, 1984(pagina 193).

26 / 56

Exemplo 1

R1

L

R2 Cu

u

iL = x1

vC = x2

y = x2

u x1

vL

iCx2 R2

vL = Lx1

vL = R1(u − x1)

}x1 =

R1

L(u − x1)

iC = Cx2

iC = u − x2/R2

}x2 =

1

C

(u − x2

R2

)27 / 56

Exemplo 1

x1 =R1

L(u − x1) , x2 =

1

C

(u − x2

R2

), y = x2

x =

−R1

L0

0 − 1

R2C

x +

R1

L

1

C

u, y =[

0 1]x

Tem-se, portanto:

A =

−R1

L0

0 − 1

R2C

, B =

R1

L

1

C

, C =[

0 1]

28 / 56

Exemplo 1

A =

−R1

L0

0 − 1

R2C

, B =

R1

L

1

C

, C =[

0 1]

A matriz de observabilidade Po e dada por

Po =

C

CA

=

0 1

0 − 1

RC

Como detPo = 0, conclui-se que o sistema nao e observavel.

29 / 56

Exemplo 1: Interpretacao

R1

L

R2 Cu

u

iL = x1

vC = x2

y = x2

u x1

vL

iCx2 R2

→ Monitorando apenas u(t) e y(t), nao e possıvel determinar qual afracao da corrente u(t) que passa pelo indutor.

30 / 56

Exemplo 1: Interpretacao

R1

L

R2 Cu

u

iL = x1

vC = x2

y = x2

u x1

vL

iCx2 R2

x1

x2

=

−R1

L0

0 − 1

R2C

x1

x2

+

R1

L

1

C

u, y =[

0 1]x

→ O estado x1 nao afeta a saıda (nem diretamente, nem por meio deacoplamento com o estado x2)

31 / 56

Exemplo 2

Considere um sistema descrito pelo seguinte modelo:

x1 = −x1 + 3x2 + 2u

x2 = 2x2 + u

y = x1 − x2

ou seja, x = Ax + Bu, y = Cx com

A =

[−1 30 2

], B =

[21

], C =

[1 −1

]Nesse caso, tem-se

Po =

[CCA

]=

[1 −1−1 1

]

Como detPo = 0, conclui-se que o sistema nao e observavel.32 / 56

Exemplo 2

A =

[−1 30 2

], B =

[21

], C =

[1 −1

]Po =

[CCA

]=

[1 −1−1 1

]

A parte nao observavel do modelo pode ser isolada empregando a seguintematriz de transformacao de similaridade:

P =

[1 −11 0

]e sua inversa:

P−1 =

[0 1−1 1

]

33 / 56

Exemplo 2

A =

[−1 30 2

], B =

[21

], C =

[1 −1

]P =

[1 −11 0

], P−1 =

[0 1−1 1

]Tem-se, entao:

A = PAP−1 =

[−1 0−3 2

], B = PB =

[12

], C = CP−1 =

[1 0

]Empregando as novas variaveis de estado w = Px , pode-se escreverw = Aw + Bu e y = Cw , isto e:

w1 = −w1 + 0w2 + u

w2 = −3w1 + 2w2 + 2u

y = w1 + 0w234 / 56

Exemplo 2

w1 = −w1 + 0w2 + u

w2 = −3w1 + 2w2 + 2u

y = w1 + 0w2

→ O estado w2 nao afeta a saıda (nem diretamente, nem por meio deacoplamento com w1).

35 / 56

Controlabilidade e Observabilidade

Vale notar que um sistema pode ser controlavel, mas nao observavel, evice-versa.

Neste ultimo exemplo:

A =

[−1 30 2

], B =

[21

], C =

[1 −1

]Pc =

[B AB

]=

[2 11 2

]

Como detPc 6= 0, constata-se que o sistema e controlavel.

36 / 56

Decomposicao canonica de Kalman

u y

37 / 56

Decomposicao canonica de Kalman

r u yF

Kx

ru y

38 / 56

Decomposicao canonica de Kalman

ru y

39 / 56

Decomposicao canonica de Kalman

ru y

O controlador so pode alterar as caracterısticas dinamicas dos modoscontrolaveis e observaveis da planta.

40 / 56

Decomposicao canonica de Kalman

O controlador so pode alterar as caracterısticas dinamicas (isto e, deslocaros polos) dos modos controlaveis e observaveis da planta.

Como saber quais polos nao podem ser deslocados por meio derealimentacao da saıda ?

41 / 56

Como saber quais polos nao podem ser deslocados pormeio de realimentacao da saıda ?

ru y

Possibilidade 1: Isolar as partes nao controlavel e/ou nao observavel domodelo por meio de transformacoes de similaridade (como ja visto).

42 / 56

Como saber quais polos nao podem ser deslocados pormeio de realimentacao da saıda ?

ru y

Possibilidade 2: Obter a funcao de transferencia da planta - Os polosassociados a modos nao controlaveis e/ou nao observaveis seraocancelados por zeros. 43 / 56

Cancelamento de polos e zeros: Exemplo

A =

[−1 30 2

], B =

[21

], C =

[1 −1

]Nesse caso, tem-se

Pc =[B AB

]=

[2 11 2

], Po =

[CCA

]=

[1 −1−1 1

]

Como detPc 6= 0 e detPo = 0, conclui-se que o sistema e controlavel, masnao e observavel.

44 / 56

Cancelamento de polos e zeros: Exemplo

Por meio de transformacao de similaridade, chegou-se a um modelo daforma w = Aw + Bu e y = Cw , com

A =

[−1 0−3 2

], B =

[12

], C =

[1 0

]A matriz A tem autovalores em −1 e +2.

O autovalor em +2 nao pode ser deslocado por meio de realimentacao dasaıda, pois o modo associado nao e observavel.

45 / 56

Cancelamento de polos e zeros: Exemplo

A =

[−1 30 2

], B =

[21

], C =

[1 −1

]Vamos obter a funcao de transferencia entre a entrada e a saıda dosistema:

G (s) = C (sI − A)−1B =[

1 −1] [ s + 1 −3

0 s − 2

]−1 [21

]

=1

(s + 1)(s − 2)

[1 −1

] [ s − 2 30 s + 1

] [21

]

=1

(s + 1)(s − 2)

[1 −1

] [ 2s − 1s + 1

]=

s − 2

(s + 1)(s − 2)

46 / 56

Cancelamento de polos e zeros: Exemplo

G (s) =���s − 2

(s + 1)����(s − 2)=

1

s + 1

Houve cancelamento do polo em s = +2, o que e consistente com oresultado obtido por meio do isolamento da parte nao observavel domodelo.

Vale notar que o sistema e estavel no sentido BIBO, mas nao temestabilidade interna (devido a presenca de um modo instavel que nao afetaa dinamica entre a entrada e a saıda).

Esse modo nao pode ser estabilizado por realimentacao da saıda.

Que problemas podem surgir na pratica ?

47 / 56

Terminologia: Estabilizabilidade e detectabilidade

• Se os modos nao controlaveis forem estaveis, diz-se que a planta eestabilizavel.

• Se os modos nao observaveis forem estaveis, diz-se que a planta edetectavel.

Desse modo, se a planta nao for controlavel e observavel, e importanteque seja pelo menos estabilizavel e detectavel.

No exemplo apresentado, a planta nao era detectavel.

48 / 56

Terminologia: Realizacao mınima

u y

Um modelo no espaco deestados que descreva apenasos modos controlaveis eobservaveis e dito ser umarealizacao mınima para afuncao de transferenciaG (s) = Y (s)/U(s).

49 / 56

Matlab: Funcao obsvf

obsvf Observability staircase form.

[ABAR,BBAR,CBAR,T] = obsvf(A,B,C) returns a decomposition

into the observable/unobservable subspaces.

If Ob=OBSV(A,C) has rank r <= n = SIZE(A,1), then

there is a similarity transformation T such that

Abar = T * A * T’ , Bbar = T * B , Cbar = C * T’

and the transformed system has the form

| Ano A12| |Bno|

Abar = ---------- , Bbar = --- , Cbar = [ 0 | Co]

| 0 Ao | |Bo |

50 / 56

Funcao obsvf: Exemplo

>> A = [-1 3;0 2]; B = [2;1]; C = [1 -1];

>> [ABAR,BBAR,CBAR] = obsvf(A,B,C)

ABAR =

2.0000 -3.0000

-0.0000 -1.0000

BBAR =

2.1213

0.7071

CBAR =

0 1.4142

51 / 56

Matlab: Funcao ctrbf

ctrbf Controllability staircase form.

[ABAR,BBAR,CBAR,T] = ctrbf(A,B,C) returns a decomposition

into the controllable/uncontrollable subspaces.

If Co=CTRB(A,B) has rank r <= n = SIZE(A,1), then

there is a similarity transformation T such that

Abar = T * A * T’ , Bbar = T * B , Cbar = C * T’

and the transformed system has the form

| Anc 0 | | 0 |

Abar = ---------- , Bbar = --- , Cbar = [Cnc| Cc]

| A21 Ac | |Bc |

52 / 56

Matlab: Funcao minreal

minreal Minimal realization and pole-zero cancellation.

MSYS = minreal(SYS) produces, for a given LTI model SYS,

an equivalent model MSYS where all cancelling pole/zero

pairs or non minimal state dynamics are eliminated.

For state-space models, minreal produces a minimal

realization MSYS of SYS where all uncontrollable or

unobservable modes have been removed.

For a state-space model SYS=SS(A,B,C,D),

[MSYS,U] = minreal(SYS)

also returns an orthogonal matrix U such that

(U*A*U’,U*B,C*U’) is a Kalman decomposition of (A,B,C).

53 / 56

Funcao minreal: Exemplo

>> A = [-1 3;0 2]; B = [2;1]; C = [1 -1]; D = 0;

>> SYS = ss(A,B,C,D);

>> MSYS = minreal(SYS)

1 state removed.

54 / 56

Funcao minreal: Exemplo

a =

x1

x1 -1

b =

u1

x1 -0.7071

c =

x1

y1 -1.414

d =

u1

y1 0

55 / 56

Proxima aula

Filtro de Kalman

56 / 56