Observadores Identidade

Como é do conhecimento de todos, o estado de um sistema contém todas as informações sobre o comportamento dinâmico do sistema.

Ou seja, se conhecermos x(0) (tempo inicial arbitrário), conhecemos a evolução do sistema , supondo-se, é claro, que se conheçam A, B, C e u(t) .

Por isto mesmo a realimentação de estado é uma "arma" muito poderosa, pois, por meio dela, podemos posicionar arbitrariamente todos os pólos do sistema.

Acontece que em inúmeros problemas reais (pense-se, por exemplo, no caso de um reator de energia nuclear, com altas temperaturas internas) o estado não é accessível para medida e, consequentemente, não pode ser realimentado. Que fazer nestes casos? Uma solução é usar realimentação dinâmica, i.e., realimentar-se a resposta, não através de um ganho puro ( K mxp), mas através de um compensador dinâmico ( C mxp (s)). Já estudamos bastante este problema no caso escalar. O estudo deste problema para o caso multivariável, através de matriz de transferência, é deixado para o curso de P.G.

A outra solução é, como veremos neste capítulo, estimar (ou "observar") o estado, i.e. obter xe(t) tal que xe(t)  x(t) quando  e, em seguida, realimentar (por meio de ganho puro K mxn ) o estado estimado xe(t).

Veremos que, assim, podemos obter também posicionamento arbitrário dos pólos do sistema.

Acontece que, como veremos também logo a seguir, esta "outra" solução não é bem outra, porque acontece que para estimar o estado usamos também, na realidade, um compensador dinâmico, que é chamado "observador" (ou "observador de Luenberger" ou "estimador de estado").

Seja então o sistema
 
= A.x + B.u
y = C.x
(1)

com as dimensões usuais.

Suponha-se que se queira conhecer o estado x(t) , não se tendo acesso ao mesmo para medida direta. Temos porém acesso à resposta y(t).

1) Uma maneira óbvia de resolver este problema é construir um modelo  = A.x + B.u, que chamaremos de (Am,Bm) e submetê-lo ao mesmo controle u(t), , e condição inicial x(0).
 

É claro que se xe(0) = x(0), Am = A, Bm = B, teremos
 
xe(t) = x(t) 

Note-se que o modelo do sistema não precisa ter o mesmo "hardware" do sistema (1).

Um simulador (programa de computador) é suficiente, bastando que as equações matemáticas sejam as mesmas.

Mas esta solução tem um grave inconveniente: ela é em "malha aberta", ou seja se houver qualquer erro de implementação i.e. xe(t)  x(t) e/ou os parâmetros de (1) forem perturbados, poderá haver uma grande diferença (se, por exemplo, x(t) for não-limitado) entre x(t) e xe(t).

Suponha-se doravante que o sistema (1) é observável.

2) Uma segunda maneira de resolver este problema (da observação de estado) é a seguinte.

De (1) vem
 

Ou seja, de (1) e das equações acima, vem

Ora, sendo u e y mensuráveis, podemos obter, através de diferenciadores .

Da equação vetorial correspondente podemos tomar n equações diferenciais L.I.: com efeito, sendo (1) observável por hipótese, a matriz que multiplica x, que é a matriz de observabilidade, tem posto cheio. Então, tomando estas n equações escalares L.I. temos

y(t) = O.x(t) +u(t)

onde y(t), O e u(t) são definidos pelas n equações diferemciais L.I..

A grande dificuldade prática nesta solução da estimação do estado é que ela exige a diferenciação de u(t) e y(t). Ora, sabemos que se deve evitar o uso de derivadores num sistema, porque eles amplificam ruídos, sinais parasitas e sinais exógenos em geral.

3) Uma 3a solução para o problema da estimação de estado utiliza o Corol. 5 .

Supondo u(t) = 0, então x(0) pode ser determinado pela expressão

São 2 as desvantagens deste método:

a) supõe u(t) = 0

b) só permite calcular x(0). Se quisermos calcular, por exemplo x(t1), temos que calcular W0(t1,T) e depois a integral acima entre t1 e T. Ou por outras palavras, a solução é "off-line".

Estamos pois interessados em uma solução para o problema da estimação de estado que não tenha os quatro inconvenientes principais acima, ou seja, que tenha as seguintes características

i) não use diferenciadores

ii) não seja preciso conhecer o estado inicial x(0) da planta

iii) seja "on-line"

iv) Sistema possa estar submetido a u(t)

A solução do problema satisfazendo as 4 condições é dada pelo famoso observador de Luenberger, que passamos a estudar.

Como dispomos, para medida, de u e y,

seja
 
e = M.xe - L.y + N.u (2)

onde xe é o estado estimado de (1) e M, L e N ainda devem ser determinados
 
e = M.xe - L.C.x + N.u (2')

Subtraindo  = A.x + B.u da equação acima, vem

e = M.xe - (A + L.C).x + (N - B).u

Ora, queremos que [ xe(t) - x(t) ] 0 quanto 

Então escolhemos primeiramente
 
N = B (3)
e = M.xe - (A + L.C).x

Em seguida, escolhemos
 
M = A + LC (4)
e = (A + L.C).(xe - x)
(5)

A seguir escolhemos L tal que
 
(6)

Isto é sempre possível, se (1) for observável. Com efeito,
 
(A + L.C) =  [(A + L.C)T] =  (AT + CT.LT)

Ora, (1) é observável se só se o posto de PoT for cheio, onde

Ou seja, (A, C) é observável se só se (AT, CT) for controlável.

Mas (AT,CT) é controlável se só se L t.q. (AT + CT.LT) pode ser arbitrariamente escolhido.

Então, o observador de Luenberger é dado por (2) com (3), (4) e (6), i.e.
 
e = (A + L.C).xe - L.y + B.u (7)

onde L é t.q. (6) seja satisfeito

Então o diagrama de blocos no domínio do tempo para o SMF (sistema (1) e observador (7)) é:
 

Se L é escolhido t.q. (6) seja satisfeito, temos

[ xe(t) - x(t) ] 0 quanto 

Esta estrutura, tal como a 1a solução, não é robusta com relação à perturbação dos parâmetros da planta, mas tem a grande vantagem de não ser necessário conhecer x(0).

Resumindo o estudo feito até aqui a respeito do observador de Luenberger, temos
 

Teorema 1

Se (1) for observável, seu estado pode ser estimado com um observador de dimensão n dado por
 
e = (A + L.C).xe - L.y + B.u (7 bis)

onde L é escolhido de modo que (A + L.C) esteja em pontos escolhidos arbitrariamente de . O erro, xe(t) - x(t), entre o estado estimado xe(t) e o estado x(t) de (1), é dado por

xe(t) - x(t) = e(A + L.C).t. (xe(0) - x(0))

e tenderá a zero tão rapidamente quanto se queira mediante escolha apropriada de L.
 

Observação:

Na prática, para obter decaimento muito rápido do erro, é quase sempre necessário usar ganhos (i.e., a matriz L) muito altos, o que introduz saturações (e, portanto, não linearidades) e amplificações excessivas de sinais parasitas, ruídos, etc...

Segue um exemplo