ENGENHARIA DE CONTROLE II IV. SISTEMAS DIGITAIS NO ESPAÇO DE ESTADOS IV 4 OBSERVADOR DE ESTADOS IV.4. Engenharia de Controle e Automação Prof. André Ferreira
ESTIMAÇÃO DE ESTADOS
A medição do vetor de estados completo é muitas das vezes impossível ou inviável economicamente. economicamente Para implementar um controle usando realimentação de estados, uma estimativa do vetor de estados pode ser utilizada. O vetor de estados pode ser estimado a partir de sinais de entrada e saída do sistema, utilizandose um estimador de estados,também conhecido como observador de estados.
2
OBSERVADOR DE ORDEM COMPLETA
Para estimar todos os estados de um sistema, uma possibilidade seria usar as mesmas equações de estado da planta a ser observada. observada Usando o sistema em malha aberta, aberta tem tem-se: se:
Este estimador de malha aberta presume um perfeito conhecimento da dinâmica do sistema e não possui realimentação para corrigir os erros inevitáveis que ocorrem em q qualquer q implementação. p ç 3
OBSERVADOR DE ORDEM COMPLETA
As limitações desse tipo de observador ficam claras quando se calcula o erro de estimação:
1) O erro de estimação depende da matriz de estados do sistema e não pode ser escolhido arbitrariamente; 2) Para um sistema instável, o observador também será instável, sendo incapaz de rastrear os estados do sistema.
4
OBSERVADOR DE ORDEM COMPLETA
Uma alternativa U lt ti prática áti é realimentar li t a diferença entre a saída medida e a saída estimada, es a a, como co o mostrado os a o abaixo a a o (o (observador se va o de e Luenberger):
Desta forma, a dinâmica do erro de estimação é d d por: dada
Assim, a dinâmica do erro de estimação depende q é dos autovalores da matriz do observador,, que dada por:
5
OBSERVADOR DE ORDEM COMPLETA
Diagrama de blocos do observador de ordem completa:
-
6
OBSERVADOR DE ORDEM COMPLETA
Pode-se mostrar que os autovalores da matriz transposta possui os mesmos autovalores da matriz do observador. b d
7
ESTIMAÇÃO DE ESTADOS
Definição:
Se o par (A,C) é observável, então existe uma matriz de ganho de realimentação L que posiciona arbitrariamente os pólos do observador em qualquer conjunto {i, i=1, 2, ..., n}.
Se o par (A,C) for apenas detectável, então todos os modos d observáveis b á i podem d ser alocados l d arbitrariamente. 8
ESTIMAÇÃO DE ESTADOS
OBS.:
1) O par (A,C) é observável (detectável) se, e somente se, o par (AT,CT) for controlável (estabilizável).
2)) Pode-se utilizar o MATLAB p para resolver o problema da alocação de pólos do observador usando:
9
EXEMPLO
Determinado sistema discreto (T = 0,01s) é representado pelas seguintes matrizes de estado:
Calcule a matriz de ganhos L, para que os pólos do observador estejam localizados em
10
EXEMPLO Solução: S l ã >> A=[1 0.1 0;0 0.9995 0.0095;0 -0.0947 0.8954] A = 1.0000 0.1000 0 0 0.9995 0.0095 0 -0 0947 -0.0947 0 0.8954 8954 >> B=[1.622e-6 4.821e-4 9.468e-2]' B = 0.0000 0.0005 0.0947 >> C=[1 0 0] C = 1 0 0 >> pdes=[0.1 0.2+j*0.2 0.2-j*0.2] pdes = 0.1000 0.2000 + 0.2000i 0.2000 - 0.2000i
11
EXEMPLO >> L=place(A',C',pdes)' L = 2.3949 18.6734 436.2063
>> eig(A-L*C) i (A L*C) ans = 0.1000 0.2000 + 0.2000i 0.2000 - 0.2000i 12
OBSERVADOR DE ORDEM COMPLETA
O observador que utiliza a expressão é chamado de observador preditor (prediction observer).
Vetor V t d de estados t d estimados ti d ((e ações õ d de controle t l associadas) em determinado instante de amostragem não dependem do valor de medida atual da saída do sistema.
Um outro tipo p de observador,, chamado de ffiltering g observer, estima o vetor de estados utilizando o valor da saída atual do sistema (supondo que o tempo de processamento é d desprezível). í l)
13
OBSERVADOR DE ORDEM COMPLETA
Desta forma:
A dinâmica do erro de estimação neste caso é dada por: Comparando os dois tipos de observadores, observadores pode podese concluir que para o filtering observer a matriz Cp passa a ser substituída p pelo p produto CA.
Nova matriz de observabilidade: 14
OBSERVADOR DE ORDEM COMPLETA
Se o par (A,C) S (A C) é observável, b á l o par (A (A,CA) CA) também t bé será observável, exceto quando a matriz A possuir a poss autovalores ova o es nulos. os. Neste caso,, o par p ((A,CA) , ) será detectável,, porque p q os autovalores nulos estão associados com modos estáveis. Além disto, autovalores nulos estão associados com os modos mais rápidos:
Projeto do observador pode ser feito escolhendo-se uma matriz L que forneça valores adequados para os autovalores restantes de (ALCA). (A LCA)
15
EXEMPLO
Para o exemplo P l anterior, t i d determine t i o valor l da d matriz de ganhos do filtering observer.
Solução:
Usando a mesma localização dos pólos definida anteriormente:
>> L=place(A',(C*A)',pdes)' L = 0.9911 14.0383 488.6483
16
OBSERVADOR DE ORDEM REDUZIDA
Observador de ordem completa:
Para um sistema de ordem n e com l saídas (que são funções lineares dos estados), porque estimar n variáveis?
O vetor de estados é estimado a partir das entradas e saídas do sistema. sistema
É possível estimar nl variáveis e a partir dessas estimativas reconstruir o vetor de estados completo.
Desta forma, para sistemas SISO o observador de ordem d reduzida d id tterá á ordem d n1. 1
17
OBSERVADOR DE ORDEM REDUZIDA
Suposições:
Matriz de entrada B e matriz de saída C possuem rank completo. completo
Desta forma, os elementos do vetor de saída y são linearmente independentes, formando um vetor de comprimento l, deixando nl variáveis a serem determinadas. Fazendo:
onde M é uma matriz (nl) x n de rank completo, cujas linhas são linearmente independentes de C, e z é o estado parcial desconhecido.
18
OBSERVADOR DE ORDEM REDUZIDA
As matrizes em espaço de estados para as variáveis de estado transformadas são:
19
OBSERVADOR DE ORDEM REDUZIDA
A equação ã d de estados t d para o estado t d parcial i l desconhecido é: Define-se também a variável de saída: A dinâmica do observador, já incluindo o erro no cálculo de yz é assumida como sendo linear e invariante no tempo, sendo dada por:
onde representa o valor estimado para o vetor de estados parcial z.
20
OBSERVADOR DE ORDEM REDUZIDA
Para evitar ter que usar o termo y(k+1), estimase a seguinte variável: Desta maneira, obtém-se o observador de ordem reduzida:
onde:
21
OBSERVADOR DE ORDEM REDUZIDA
Diagrama de blocos do observador de ordem reduzida:
22
OBSERVADOR DE ORDEM REDUZIDA
A dinâmica do observador de ordem reduzida depende da matriz Ao, cujos autovalores devem: 1) E Estar t d dentro t d do círculo; í l 2) Ser suficientemente rápidos, para rastrear os estados do sistema observado.
O projeto p oje o doo observador o se va o dee ordem o e reduzida e a depende basicamente da matriz L, já que a partir desta matriz todas as outras matrizes necessárias podem ser obtidas. 23
OBSERVADOR DE ORDEM REDUZIDA
Assim, o vetor de estados através de:
pode ser calculado
lembrando que:
24
OBSERVADOR DE ORDEM REDUZIDA
OBS.: 1) Fazendo , pode-se mostrar que os pólos de podem ser alocados arbitrariamente desde que o par seja controlável ou ou, na forma dual, que o par seja observável. 2) Pode-se demonstrar que para o par observável o par (A,C) observável, (A C) também deve ser observável.
ser
25
EXEMPLO
Para o sistema descrito nos exemplos anteriores, projetar um observador de ordem reduzida.
Solução:
Ver arquivo “10proj_observador_ordem_reduzida.m”
26
PROJETO DO REGULADOR: COMBINAÇÃO DA REALIMENTAÇÃO DE ESTADOS COM O ESTIMADOR DE ESTADOS
PLANTA
OBSERVADOR 27 REALIMENTAÇÃO DE ESTADOS
REALIMENTAÇÃO Ç DE ESTADOS DO OBSERVADOR
Caso o vetor C t de d estados t d não ã esteja t j di disponível í l para ser realimentado, pode-se utilizar os estados estimados gerando a seguinte ação de controle:
Substituindo em:
Obtém-se:
Reescrevendo na forma do erro de estimação
: 28
REALIMENTAÇÃO Ç DE ESTADOS DO OBSERVADOR
Lembrando que para um observador ordem completa é válida a relação:
A i tem-se que: Assim,
Polinômio característico:
29
PRINCÍPIO DA SEPARAÇÃO
Os autovalores do sistema em malha fechada do sistema i t podem d ser escolhidos lhid de d forma f completamente independente dos autovalores do observador. observador
Controlador e observador são projetados separadamente e utilizados em conjunto!
30
ESCOLHA DOS AUTOVALORES DO OBSERVADOR
A escolha lh dos d pólos ól d do observador b d não ã se b baseia i nas restrições para a ação de controle que existe na escolha dos pólos do controlador. Pólos do Controlador devem atender às especificações de desempenho desejadas. desejadas Pólos do Observador como uma regra empírica, devem ser de 3 a 10 vezes mais rápidos que os pólos do controlador.
Na prática, prática deve-se deve se tomar cuidado para não escolher pólos extremamente rápidos, pois assim o observador irá estimar os ruídos de medição, ao invés dos estados do sistema.
Evitar projetar um observador deadbeat!
31
EXEMPLO
Para o sistema descrito nos exemplos anteriores, fazer uma realimentação de estados usando um observador de ordem completa, completa de tal forma que: Pólos do sistema em MF: Estado inicial do sistema: x(0) = [1 1 1]T Estado inicial do observador: [[0 0 0]]T.
32
EXEMPLO
S l Solução:
% Sistema dicreto no espaço de estados A=[1 0.1 0;0 0.9995 0.0095;0 -0.0947 0.8954]; B=[1.622e-6 4.821e-4 9.468e-2]'; C=[1 0 0]; D=0; Ts=0.01; % período de amostragem n=max(size(A)); % ordem do sistema % Pólos desejados para o sistema em MF pdes_c=[0.6 0.4+j*0.33 0.4-j*0.33]; % Pólos desejados para o observador pdes_o=[0.1 0.1+j*0.1 0.1-j*0.1];
33
EXEMPLO % Matriz M t i de d ganhos h para realimentação li t ã de d estados t d K=place(A,B,pdes_c) K = 1.0e+003 * 1.9745
0.8974
0.0112
% Matriz de ganhos do observador L=place(A',C',pdes p p _o)' L = 2 5949 2.5949 21.6632 535.7182 34
EXEMPLO % Sistema Controlador + Observador AA=[A-B*K B*K;zeros(n) A-L*C]; BB=[B;zeros(n,1)]; CC=[C zeros(1,n)]; DD=0;
35
sys=ss(AA,BB,CC,DD,Ts) a = x1
x2
x3
x4
x5
x6
x1
0.9968
0.09854
-1.814e-005
0.003203
0.001456
1.814e-005
x2
-0.9519
0.5669
0.004107
0.9519
0.4326
0.005393
x3 3
-186.9 186 9
-85.06 85 06
-0.1637 0 1637
186 186.9 9
84 84.96 96
1 1.059 059
x4
0
0
0
-1.595
0.1
0
x5
0
0
0
-21.66
0.9995
0.0095
x6
0
0
0
-535.7
-0.0947
0.8954
b = u1 x1
1.622e-006
x2 2
0 0.0004821 0004821
x3
0.09468
x4
0
x5
0
x6
0
c = y1 1
x1
x2
x3
x4
x5
x6
1
0
0
0
0
0
d = u1 y1
0
Sampling time: 0.01 Discrete-time model.
36
EXEMPLO % Estado E t d i inicial i i l d do sistema i t x0=[1 1 1]'; % Estado inicial do observador x0o=[0 0 0]'; % Estado inicial total xx0=[x0;x0-x0o] % Estado e erro de estimação xx0 = 1 1 1 1 1 1
37
EXEMPLO
2
2
1
1
x1(k) e e1(k) x
Saída
Resposta livre ao estado inicial:
0 -1 1 -2
0
0.05 0.1 0.15 Tempo (s)
-1 1
10
4000
0
2000
-10 -20 -30
x2(k1) e2(k) 0
0.05 0.1 0.15 Tempo p ((s))
0.2
x1(k1) 1(k1) e1(k)
0
-2
0.2
x3(k k) e e3(k)
x2(k k) e e2(k)
0
0.05 0.1 0.15 Tempo (s)
0.2
x3(k1) e3(k)
0 -2000 -4000
0
0.05 0.1 0.15 Tempo p ((s))
0.2
38
EXEMPLO
R t Rastreamento t d da referência: f ê i
% Matriz de ganho de referência F=inv(C*inv(eye(max(size(A)))-(A-B*K))*B) i i i BBr=[B*F;zeros(n,1)] F = 1.9745e+003
BBr = 0.0032 0.95 9 0.9519 186.9473 0 0 0
39
% Sistema em malha fechada sysmf=ss(AA,BBr,CC,DD,Ts) a = x1
x2
x3
x4
x5
x6
x1
0.9968
0.09854
-1.814e-005
0.003203
0.001456
1.814e-005
x2
-0.9519 0.9519
0.5669
0.004107
0.9519
0.4326
0.005393
x3
-186.9
-85.06
-0.1637
186.9
84.96
1.059
x4
0
0
0
-1.595
0.1
0
x5
0
0
0
-21.66
0.9995
0.0095
x6
0
0
0
-535.7
-0.0947
0.8954
b = u1 x1
0.003 03 0.003203
x2
0.9519
x3
186.9
x4
0
x5
0
x6
0
c = y1
x1
x2
x3
x4
x5
x6
1
0
0
0
0
0
d = u1 y1
0
Sampling time: 0.01 Discrete-time model.
40
EXEMPLO Resposta ao degrau: Step Response
1 0.9 0.8 0.7 0.6 Amp plitude
0.5 0.4 0.3 02 0.2 0.1 0
0
0.05
0.1
0.15 Ti Time ((sec))
0.2
0.25
41
ASSUNTOS COMPLEMENTARES
1) Invariância dos zeros do sistema:
Uma limitação da realimentação de estados é a incapacidade desse tipo de controle em modificar os zeros do sistema em malha aberta, o que pode afetar significativamente a resposta do sistema em malha f h d (Cf fechada (Cf. Fadali, F d li capítulo í l 9, seção 9.4, p.353). )
2) Al Alocação ã de d pólos ól usando d ffunção ã de d transferência: Envolve a resolução de uma equação diofantina; Método bastante utilizado para projetar controlador a partir de modelos paramétricos de sistemas reais.
(Cf. Fadali, capítulo 9, seção 9.7, p.370).
42