Вы находитесь на странице: 1из 16

Eduardo Lobo Lustosa Cabral

OBSERVADORES DE ESTADO

1. Motivao
 Um controlador por realimentao de estados necessita que todos os estados do sistema
sejam conhecidos a todo instante de tempo.

 Frequentemente nem todos os estados do sistema esto disponveis.

 Usualmente somente as sadas do sistema so conhecidas e, assim, somente as sadas


esto disponveis para realimentao.

 O que fazer para solucionar esse problema?


Utilizar um modelo do sistema para estimar os estados pro meio das sadas do
sistema.
Estimativa do vetor de estados x (t ) x (t )
Controle alterado de u(t ) = Kx (t ) para u(t ) = Kx (t )

 Questes:
1) Como calcular a estimativa do vetor de estados?
2) Esse esquema frunciona?

2. Problema do observador de estados

 Dado o modelo do sistema LIT de ordem n,

x& (t ) = A
x (t ) + B
u(t )
(1)
x (t ) + D
y (t ) = C u(t )

,B
Dinmica do modelo no exatamente igual realidade matrizes A eD
,C do
modelo so conhecidas mas apresentam erros em relao dinmica do sistema real,
ou seja, em relao s matrizes A, B, C e D.
Vetor de entradas u(t) conhecido.
Vetor de sadas y(t) so medidos
Vetor de estados x(t) desconhecido para t 0.

 Objetivo desenvolver um sistema dinmico cujo vetor de estados, x (t ) , conhecido e


igual ao vetor x(t) para todo tempo t 0.
1
Eduardo Lobo Lustosa Cabral

 Existem duas abordagens:


1) Observador em malha aberta.
2) Observador em malha fechada.

3. Observador em malha aberta


,B
 Como se conhece o modelo do sistema, ou seja, as matrizes A eD
,C pode-se
simular o sistema usando o modelo em paralelo com o sistema real.

 Usando a equao dos estados do modelo

x& (t ) = A
x (t ) + B
u(t ) (2)

Nesse caso tem-se que x (t ) = x (t ) para todo t 0 desde que a condio inicial do
vetor de estados, x (0) , seja conhecida e que as matrizes A ,B eD
,C do modelo sejam
iguais s matrizes do sistema real A, B, C e D.

Um esquema do observador em malha aberta mostrado na Figura 1.

Sistema real y(t)


( A, B, C, D )
Estados x(t)
u(t)

Modelo y& (t )
(A ,B ,D
,C )
Estados x (t )

Figura 1. Esquema do observador em malha aberta mostrando tambm o sistema real.

 Problemas
No se conhece a condio inicial x(0)
O modelo apresenta erros e no igual ao sistema real.

 Anlise

Uma anlise do desempenho do observador em malha aberta pode ser realizada


analisando as equaes de estado do sistema e do modelo.

2
Eduardo Lobo Lustosa Cabral

x& (t ) = Ax (t ) + Bu(t ) (3)


x& (t ) = A
x (t ) + B
u(t ) (4)

Erro de estimao dos estados:


~ (t ) = x (t ) x (t )
x (5)

~ (t ) = 0 para todo t 0.
Deseja-se que x

A dinmica do erro de estimao dos estados obtida subtraindo a eq. (4) da eq. (3)

(
x& (t ) x& (t ) = Ax (t ) A ) (
x (t ) + B B )
u(t ) (6)

,B
Assumindo que os erros entre as matrizes A e A, B so desprezveis, tem-se:

~& (t ) = Ax
x& (t ) x& (t ) = A(x (t ) x (t ) ) x ~ (t ) (7)

A soluo dessa equao dada por:

~ (t ) = e At x
x ~ ( 0) (8)

~ (0) = 0 isso garante que x


Se x(0) for conhecido ento x ~ (t ) = 0 , para todo t 0
situao no realista;

~ (0) 0 assim,
Situao mais realista se x(0) no conhecido ento x
~ (t ) 0 ,
somente se os plos da matriz A forem estveis possvel garantir que x
para t .

 Concluso:
Observador em malha aberta depende da dinmica do sistema.
Observador em malha aberta no funciona direito.

4. Observador em malha fechada


 Uma forma bvia de resolver o problema do observador em malha aberta usar a
informao disponvel dos sensores (sadas y(t)).

 Definindo o erro de estimao das sadas do sistema:


~
y(t ) = y(t ) y (t ) (9)

x (t ) + D
Como y(t ) = Cx (t ) + Du(t ) e y (t ) = C u(t ) , ento:

3
Eduardo Lobo Lustosa Cabral

~ ( ) (
x (t ) + D D
y(t ) = Cx (t ) C u(t ) ) (10)

,D
Assumnido que o erro entre as matrizes C e as matrizes C,D desprezvel.

~ ~ (t )
y(t ) C(x (t ) x (t ) ) Cx (11)

 O erro de estimao das sadas pode ser realimentado na dinmica do modelo do sistema
para melhorar a estimativa do vetor de estados.

 Dinmica do observador de estados em malha fechada:

x& (t ) = A u(t ) + L~
x (t ) + B y(t )
(12)
x (t ) + D
y (t ) = C u(t )

onde L a matriz de ganhos do observador.

 Dimenso da matriz L nxp, onde n a ordem do sistema e p o nmero de sadas.

 Um esquema do observador em malha fechada mostrado na Figura 2 e um diagrama de


blocos representando a estrutura do observador mostrado na Figura 3.

Sistema real y(t)


( A, B, C, D )
Estados x(t)

u(t) +
L

Modelo
,B ,D
,C ) y& (t )
(A
Estados x (t )

Figura 2. Esquema do observador em malha aberta mostrando tambm o sistema real.

4
Eduardo Lobo Lustosa Cabral

Sistema real y(t)


u(t) ( A, B, C, D )
Estados x(t)

+
L

+ + x (t ) + y (t )
B
+
C
+

Figura 3. Diagrma de blocos da estrutura do observador de estados em malha fechada.

 A dinmica do erro de estimao dos estados obtida subtraindo a equao dos estados
do modelo (eq. 12) da equao de estados do sistema real (eq. 3).

x (
~& (t ) = x& (t ) x& (t ) = Ax (t ) A ) ( )
u(t ) L(y(t ) y (t ) )
x (t ) + B B (13)

Substituindo as sadas do sistema real e do modelo pelas suas respectivas equaes em


funo dos estados e das entradas,

(
~& (t ) = Ax (t ) A
x ) (
x (t ) + B B ) (
u(t ) L Cx (t ) + Du(t ) Cx (t ) D
u(t ) ) (14)

ou

(
~& (t ) = Ax (t ) A
x ) ( )
u(t ) + L(Cx (t ) Cx (t ) ) L Du(t ) D
x (t ) + B B (
u(t ) ) (15)

,B
Assumindo que os erros entre as matrizes do modelo ( A ,D ) e as matrizes do
,C
sistema real ( A, B ,C,D) so desprezveis, tem-se:

~& (t ) = A(x (t ) x (t ) ) LC(x (t ) x (t ) )


x (16)

5
Eduardo Lobo Lustosa Cabral

Rearranjando, finalmente tem-se a equao da dinmica do erro de estimao dos


estados:

~& (t ) = (A LC)x
x ~ (t ) = A x~
mf (t ) (17)

Onde Amf a matriz da malha fechada do observador de estados.

 Observaes:
Pode selecionar a matriz L de forma a melhorar a dinmica do observador em malha
fechada.
Para se projetar um observador de estados em malha fechada o sistema tem que ser
observvel.

 Similaridade entre os problemas do observador de estados e o regulador de estados:

Regulador A mf = A BK Matriz de ganhos K escolhida para que os plos do


sistema em malha fechada sejam os desejados.

Observador A mf = A LC Matriz de ganhos L escolhida para que os plos


do observador em malha fechada sejam os desejados.

Os problemas do regulador e do observador de estados so duais ou seja, so


idnticos.

5. Clculo dos ganhos do observador em malha fechada


 Se o sistema definido pelas matrizes (A, C) for observvel plos da matriz do
observador em malha fechada (A LC) podem ser localizados onde forem desejados.

 O mtodo utilizado para calcula a mtriz de ganhos do observador (L) o mesmo utilizado
para calcular os ganhos de um regulador de estados.

 Plos da matriz (A LC) e (A LC)t so iguais.

( A LC) t = A t C t Lt

Comparando a matriz ( A t C t Lt ) com a matriz em malha fechada do regulador


(A BK) percebe-se que ambas tem a mesma estrutura.

Por analogia tem-se:

6
Eduardo Lobo Lustosa Cabral

A A t
t
B C
t
K L

Calcular a matriz de ganhos Lt para o sistema definido pela matriz At representa o


mesmo tipo de problema que calcular a matriz de ganhos de um regulador de estados
(K).

Para calcular a matriz Lt usam-se os mesmos mtodos utilizados para calcular a


matriz de ganhos do regulador, mas:

No lugar der A usa-se At


No lugar de B usa-se Ct
No lugar de calcular K calcula-se Lt

No Matlab pode-se usar as funes place ou acker.

Localizao dos plos do observador:

 A pergunta que surge naturalmente onde se deve localizar os plos do observador de


estados?

 Plos do observador devem ser mais rpidos do que os plos do regulador de


estados cerca de 2 a 3 vezes mais rpidos parte real dos plos do observador
em malha fechada deve ser 2 a 3 vezes maior do a parte real dos plos do regulador
de estados.

 No existe problema de saturao no observador nem de excitao de dinmicas de alta


frequncia observador somente existe dentro do computador.

 Medidas de sensores tem rudos cuidado deve ser tomado ao usar as medidas dos
sensores para estimar os estados do sistema.

 Ao se escolher os plos do observador deve-se considerar:


Plos muito rpidos (observador com ganhos altos) tendem a acentuar o efeito
dos rudos de medidas estados tendem a seguir as medidas que sempre
apresentam rudos.
Plos lentos (observador com ganhos baixos) estimativas dos estados tendem a
seguir o modelo da planta.
Quanto menor o ganho do observador observador tende a malha aberta e aumenta
a tendncia de ignorar as medidas dos sensores.

 Observador de estados timo Filtro de Kalman


Balanceia os efeitos dos rudos de medidas dos sensores e os erros do modelo.

7
Eduardo Lobo Lustosa Cabral

Se forem conhecidos os erros de medidas e do modelo melhor usar o Filtro de


Kalman.

Observaes:

1) Os ganhos do observador de estados estabilizam somente o erro de estimao se o


sistema for instvel, ento, os estados do sistema tendem a infinito, mas o erro de
estimao tender a zero.

2) Existem muitas aplicaes de estimao de estados alm de sistemas de controle


previso de mercado financeiro, sensores inteligentes, previso de consumo de energia
etc.

3) Mais detalhes sobre observadores de estado e teoria de estimao exige o conhecimento


de processos estocsticos e teoria de otimizao.

4) Estimao depende do que se confia mais nas medidas dos sensores ou no modelo do
sistema.

6. Exemplos
Exemplo 1: Projeto de observador usando mtodo algbrico (caso SISO).

Dado o sistema SISO:

1 1 1
x& (t ) = x (t ) + u (t )
1 2 0 .
y (t ) = [1 0]x (t )

Primeiro deve-se verificar a observabilidade do sistema, assim:

1 0
MO = posto(M O ) = 2 sistema observvel.
1 1

Plos do sistema (autovalores da matriz A):

+ 1 1 1 = 0,38;
det (I A ) = det = ( + 1)( + 2) 1 = 2 + 3 + 1 = 0
1 + 2 2 = 2,62.
Observa-se que o sistema estvel.

Observador em malha fechada:

x& (t ) = Ax (t ) + Bu(t ) + L(y(t ) y (t ) )



y (t ) = Cx (t )

8
Eduardo Lobo Lustosa Cabral

ou

x& (t ) = (A LC)x (t ) + Bu(t ) + Ly(t )



y (t ) = Cx (t )

Matriz da malha fechada do observador:

1 1 l1
A mf = A LC = [1 0]
1 2 l 2
.
1 1 l1 0 l1 1 l1 1
A mf = =
1 2 l 2 0 l 2 1 l 2 2

Equao caracterstica da matriz da malha fechada do observador:

+ 1 + l1 1
det (I A mf ) = det = ( + 1 + l1 )( + 2) 1 + l 2 = 0
1 + l2 + 2

assim,

2 + (3 + l1 ) + (1 + 2l1 + l 2 ) = 0

Nota-se que pela escolha dos ganhos do observador, l1 e l2, pode-se alocar os dois
plos do observador em qualquer posio no plano s, como no caso do regulador de
estados.

Escolhendo os plos da malha fechada em 1 = 5 e 2 = 6, a equao caracterstica


desejada para om observador em malha fechada dada por:

( + 5)( + 6) = 2 + 11 + 30 = 0 .

Comparando a equao caracterstica desejada com a equao caracterstica em


funo dos ganhos do observador, tem-se:

3 + l1 = 11 l1 = 8
.
1 + 2l1 + l 2 = 30 l 2 = 13

1 l1 1 9 1
A matriz da malha fechada fica A mf = = .
1 l2 2 12 2

Exemplo 2: Frmula de Ackerman.

Dado o mesmo sistema do exemplo anterior.


9
Eduardo Lobo Lustosa Cabral

Nesse caso deve-se utilizar as matrizes At, Ct e M tO no lugar das matrizes A, B e MC


na frmula de Ackerman.

Usando os mesmos plos desejados para o observador do exemplo anterior, tem-se:

2
1 1 1 1 1 0
p ( s ) = s + 11s + 30 P( A ) =
2 t
+ 11 + 30
1 2 1 2 0 1

2 3 11 11 30 0 21 8
P( A ) = + + =
3 5 11 22 0 30 8 13

Aplicando a Frmula de Ackerman usando-se a matriz de observabilidade no lugar da


matriz de controlabilidade, tem-se:

1
1 1 21 8
L = eM P = [0 1]
1
O
0 1 8 13

1 1 21 8 29 21
Lt = [0 1] = [0 1] 8 13 = [8 13]
0 1 8 13
8
L=
13

Observa-se que obviamente obtm-se o mesmo resultado anterior.

Exemplo 3: Simulao do observador de estados dos exemplos 1 e 2.

Condio incial:
0,5
Sistema real x (0) =
1

Para o observador assume-se condio inicial no conhecida adota-se x (0) = 0 .

Entrada u(t) = onda quadrada com amplitude variando entre 0 e 2.

Figura 4 apresenta o resultado da simulao da planta e do observador.

10
Eduardo Lobo Lustosa Cabral

Estados da planta e estados observados


2.5
x1
2 x2
x obs1
1.5
x obs2
Amplitude

0.5

-0.5

-1
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
Tempo (segundos)

Erros de observao
0.4
Erro (x 1)
0.2 Erro (x 2)

0
Amplitude

-0.2

-0.4

-0.6

-0.8

-1
0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5
Tempo (segundos)

Figura 4. Simulao do observador de estados.

Figura 5 apresenta o resultado da simulao do observador e da planta usando um


A = 1,1A
erro de modelagem nas matrize
= 0,9B
B

11
Eduardo Lobo Lustosa Cabral

Estados da planta e estados observados


3
x1
2.5
x2

2 x obs1
x obs2
1.5
Amplitude

0.5

-0.5

-1
0 1 2 3 4 5 6 7 8 9 10
Tempo (segundos)

Erros de observao
0.4
Erro (x 1)
0.2 Erro (x 2)

0
Amplitude

-0.2

-0.4

-0.6

-0.8

-1
0 1 2 3 4 5 6 7 8 9 10
Tempo (segundos)

Figura 5. Simulao do observador de estados com erro nas matrizes do modelo da planta.

Exemplo 4: Projeto de observador usando o mtodo algbrico (caso MIMO).

Dado o sistema SISO:

12
Eduardo Lobo Lustosa Cabral

0 1 0
x& (t ) = x (t ) + u (t )
0 2 2

1 0
y (t ) = 0 1 x (t )

Primeiro deve-se verificar a observabilidade do sistema, assim:

1 0
0 1
MO = posto(MO ) = 2 sistema observvel.
0 1

0 2

Plos do sistema (autovalores da matriz A):

1 1 = 0
det (I A ) = det = ( + 2) = 0
0 + 2 2 = 2.

Observa-se que o sistema marginalmente estvel, ou seja, instvel.

Observador em malha fechada:

x& (t ) = (A LC)x (t ) + Bu(t ) + Ly(t )



y (t ) = Cx (t )

Matriz do observador em malha fechada:

0 1 l1,1 l1, 2 1 0
A mf = A LC =
0 2 l 2,1 l 2, 2 0 1
.
0 1 l1,1 l1, 2 l1,1 1 l1, 2
A mf = =
0 2 l 2,1 l 2, 2 l 2,1 2 l 2, 2

Equao caracterstica da malha fechada do observador:

+ l1,1 1 + l1, 2
det (I A mf ) = det = ( + l1,1 )( + 2 + l 2, 2 ) + l 2,1 l 2,1l1, 2 = 0
l 2,1 + 2 + l 2, 2

assim,

2 + (2 + l1,1 + l 2, 2 ) + (2l1,1 + l 2,1 + l1,1l 2, 2 l 2,1l1, 2 ) = 0

Escolhendo os plos da malha fechada de acordo com um sistema tipo Bessel com
tempo de assentamento igual a 0,5 segundos, ou seja, plos aproximadamente em:
13
Eduardo Lobo Lustosa Cabral

4 2,3 j
p 2 ,3 = = 8 4,6 j
0,5

Equao caracterstica da malha fechada desejada para o observador:

( + 8 + 4,6 j )( + 8 4,6 j ) = 2 + 16 + 85,16 = 0 .

Comparando a equao caracterstica desejada com a equao caracterstica em


funo dos ganhos do observador, tem-se:

2 + l1,1 + l 2, 2 = 16
.
2l1,1 + l 2,1 + l1,1l 2, 2 l 2,1l1, 2 = 85,16

Como se tem 4 ganhos e somente duas equaes pode-se escolher arbitrariamento o


valor de dois ganhos e calacular os outros dois escolhendo l2,1 = l2,2 = 0, tem-se:

2 + l1,1 = 16 l1,1 = 14

2 + l1,1 + l 2,1 = 85,16 l 2,1 = 57,16

l1,1 1 l1, 2 14 1
A matriz da malha fechada fica A mf = = .
l 2,1 2 l 2, 2 57,16 2

7. Exerccios
1) Deseja-se medir a velocidade de um carro tendo-se como base a medida de acelerao
proveniente de um acelermetro e a medida da velocidade mdia das rodas. A medida de
velocidade das rodas obtida pela medida de sua rotao, assim, et sujeita a erros
devido a deslizamentos da roda e erros devido a buracos e calombos no pavimento. Um
acelermetro um sensor que apresenta muito rudo de medida, alm de um erro
constante (bias). Assim, para medir a velocidade correta do carro deve-se estimar
tambm a bias da medida de acelerao para poder elimin-la. Um modelo simples do
carro para o observador pode ser descrito como se segue.

v&(t ) = a (t ) b(t ) + w1 (t )
b&(t ) = w (t )
2

(t ) = v(t ) / R + r (t )

onde v(t) a velocidade do carro, a(t) a acelerao obtida pelo acelermetro, b(t) a
bias presente na medida de acelerao, (t) a velocidade de rotao das rodas, R o
raio das rodas, w1(t) o rudo de medida da acelerao, w2(t) o rudo da bias e r(t) o
rudo de medida da velocidade mdia das rodas. Nota-se que nesse modelo tem-se os
seguintes aspectos:

A acelerao real do carro dada por a(t) b(t);

14
Eduardo Lobo Lustosa Cabral

Diversos efeitos foram desprezados, tais como, escorregamento das rodas no solo,
curvas feitas pelo veculo etc;
Todos os rudos tm distribuio gaussiana e apresentam mdia zero;
A forma como a bias modelada consiste de uma tcnica muito utilizada para
estimar valores constantes. Nota-se que o rudo da bias tem mdia zero, assim, a
derivada da bias apresenta na mdia um valor igual a zero. Uma grandeza que
apresenta derivada zero uma constante.

Utilize os seguintes valores numricos para resolver esse problema: R = 0,4m; w1 =


0,25m/s2; r1 = 2rad/s; b = 1m/s2 (bias). Observa-se que o desvio padro da bias, w2,
um parmetro de projeto, portanto voc deve obter o melhor valor para esse parmetro.
A melhor forma para obter o valor timo de w2 atravs de simulaes com diferentes
valores.
a) Coloque o sistema na forma de espao dos estados. Qual o sinal de entrada do
sistema e qual o sinal de sada do sistema? Como o modelo do carro real?
b) Calcule os plos e zeros do sistema.
c) Verifique a observabilidade do sistema.
d) Calcule os ganhos do observador para localizar os seus plos em 2 1j.
e) Simule a resposta do sistema e do observador para uma condio inicial do estado do
sistema real igual a [0, 0]t e condio inicial do observador igual a [2, 0,2]t. Para esse
caso assuma que todos os rudos so iguais a zero. Faa um grfico com as sadas do
sistema real e do observador e outro grfico com os estados do sistema real e do
observador. Para esse item voc pode e deve usar o Simulink. Utilize esse transitrio
para obter o melhor valor para w2. Comente os resultados obtidos da estimativa da
velocidade do sistema.
f) Simule a resposta do observador para um sinal de entrada na forma de dois pulsos um
positivo e outro negativo, ambos de amplitude 4m/s2 e durao de 10 segundos. O
primeiro pulso o positivo e o segundo pulso o negativo. O primeiro pulso inicia
em 10 segundos e o segundo pulso inicia em 60 segundos. A durao total do
transitrio de 80 segundos. Para construir essa entrada utilize o Repeated Sequence
Interpolated do Simulink. Assuma que todos os rudos so iguais a zero. Nesse caso
pode-se assumir que as condies iniciais do sistema real e do observador so ambas
iguais a zero, pois o carro parte do repouso. Para esse item voc pode e deve usar o
Simulink. Comente os resultados obtidos da estimativa da velocidade do sistema.
g) Repita os transitrios dos itens (e) e (f) usando os desvios padro dos rudos dados.
Apresente os grficos e comente os resultados.

2) Dado o avio F8 cuja dinmica dada por:

15
Eduardo Lobo Lustosa Cabral

0 0 1 0 0 0
1,5
x& (t ) = 1,5 0 0,0057 0,16 0,6
x (t ) + u(t )
12 12 0,8 0,0344 19 2,5

0,8524 0,2904 0 0,0140 0,0115 0,0087
1 0 0 0
y( t ) = x(t )
0 1 0 0

Pede-se:
a) Verifique a observabilidade do sistema.
b) Assumindo que somente as sadas do sistema so conhecidas, projeto um observador
de estados de modo a localizar os plos do observador de acordo com um sistema
padro tipo Bessel com plos que apresentam tempo de resposta 2 vezes menor que os
plos do avio F8.
c) Faa um modelo no Simulink que implementa o observador e o avio F8.
d) Simule o observador e o avio usando as seguintes condies:
Condio inicial para o avio: = 1, = 1o e os outros estados iguais a zero.
Condio inicial para o observador: todos os estados iguais a zero;
Entradas na forma de degrau: e = 2 e f = 1.
Faa os grficos dos estados da planta, dos estados do observador e dos erros de
observao dos estados.

 Principais comandos do Matlab a serem utilizados:


eig;
obsv;
place.

16

Вам также может понравиться