aula1 controle avançado – 2011-i
TRANSCRIPT
Controle Avançado – 2011-IProf. Marcos Cruz
Aula 1 – Realimentação de Estados Realimentação de estados x: as variáveis de
estado do sistema precisam estar disponíveis para serem utilizadas pelo controlador;
Realimentação de saídas y: um conjunto de variáveis de saída relacionadas a variáveis de estado devem estar disponíveis,
y = Cx+Du;
Aula 1 – Realimentação de Estados
Aula 1 – Realimentação de Estados
Planta:
Sistema Realimentado
Cxy
BuAxx
Cxy
BrÃxx
BrxBKAx
)(
Controle
Kxru
Aula 1 – Realimentação de Estados Os pólos em malha fechada serão os
autovalores de (A – BK) e podem ser posicionados arbitrariamente se e somente se o par (A,B) for controlável;
Obs: sI – (A – BK) = sI – A + BK
Exemplo
Exemplo - continuação
Vantagem da Forma Canônica Controlável A imposição de uma
dinâmica modificada para o sistema (em outro termos, reposicionamento dos pólos da malha fechada em relação aos pólos da malha aberta) é simplificado pela representação do sistema na forma controlável, porque pode se escolher uma lei de controle u(t) que altere todos coeficientes da matriz dinâmica;
Exemplo no MatLab
Os comandos ‘place’ e ‘acker’ retornam o vetor K, com os ganhos necessários para que os autovalores em malha fechada se posicionem onde especificado;
Exemplo – no MatLaB
>> f=place(A,B,[-2+3.464j,-2-3.464j])
f = 13.9993 1.0000
>> f=acker(A,B,[-2+3.464j,-2-3.464j])
f = 13.9993 1.0000
Exemplo – quando não é possível reposicionar um dos autovalores O autovalor +2 não
pode ser reposicionado porque o termo correspondente na matriz sI – (A-BK) não pode ser alterado por K1 nem por K2;
O termo ‘fixo’ é ‘s-2’;
Exemplo Anterior – identificando um modo não controlável >> [P,AV]=eig(A)
P = 1.0000 0.7071 0 0.7071
AV = 1 0 0 2
>> Pinv = inv(P) Pinv = 1.0000 -1.0000 0 1.4142
>> Bstar = Pinv*B Bstar = 1 0
Exemplo Anterior – identificando um modo não controlável O zero na matriz modal
B mostra que o modo associado ao estado r2 não é controlável;
Fórmula de Ackermann
Para sistemas com ordem maior que 2, a fórmula de Ackermann provê uma maneira mais simples de determinar os valores de K;
Q = [A AB …An-1B] matriz de controlabilidade; K = [0…1]Q-1d(A)
d(s): polinômio definido pela localização dos novos pólos;
Fórmula de Ackermann – voltando ao exemplo
Ackermann – Função p/ evoluir polinômio c/ argumento matriz quadrada >> P=[1 4 16]; >> A=[0 1;-2 -3]; >> Y=POLYVALM(P,A)
Y =
14 1 -2 11
1,4,16 coeficientes de
s2+4s+16; 3 coeficientes porque
grau máximo (no caso) é 2;
Atenção: POLYVAL ≠ POLYVALM;
Restrições Numéricas ao comando ‘acker’ Note: This algorithm uses Ackermann's
formula. This method is NOT numerically reliable and starts to break down rapidly for problems of order greater than 10, or for weakly controllable systems. A warning message is printed if the nonzero closed-loop poles are greater than 10% from the desired locations specified in P.
Realimentação de Estados – efeito sobre a observabilidade Realimentação de estados não modifica a
controlabilidade, mas pode afetar a observabilidade, criando ou destruindo esta;
A destruição da observabilidade está associada ao deslocamento de um pólo que, em função disso, cancela um zero;
Exemplo – efeito sobre observabilidade
O=OBSV(A,C)
O = 1 1 4 -1
>> rank(O) ans = 2
Exemplo – efeito sobre observabilidade Autovalores de A: 2.61
e 0.38 (instável); Projeto de
realimentação para posicionar os autovalores em -1 e -2;
O posicionamento em -1 deverá comprometer a observabilidade;
>> f=place(A,B,[-1,-2])
f = 6.0000 1.0000; Ã=(A-BK) Ã = [-3 -2;1 0];
Exemplo – efeito sobre observabilidade Autovalores de A: 2.61
e 0.38 (instável); Projeto de
realimentação para posicionar os autovalores em -1 e -2;
O posicionamento em -1 deverá comprometer a observabilidade;
>> Atil= [-3 -2;1 0]; >> C=[1 1]; >> O=OBSV(Atil,C) O =
1 1
-2 -2
>> rank(O) ans = 1
Exercício
A = (1 1;1 2) B = (1;0) Verificar estabilidade (instabilidade, no caso) Projetar ganho de realimentação de estados
que estabiliza o sistema; Se novos autovalores em -5 e -6, K = [14
57]; Verificar se a Observabilidade foi afetada;