Upload
others
View
1
Download
0
Embed Size (px)
Citation preview
• I N T R O D U Ç Ã O
• R A S T R E A M E N T O D E S I N A I S C O N S T A N T E S
• exemplo• R A S T R E A M E N T O D E S I N A I S V A R I A N T E S N O
T E M P O
• exemplo• C A S O G E R A L : R A S T R E A M E N T O D E S I N A I S
V A R I A N T E S N O T E M P O E D I S T Ú R B I O .
Seguidores1
Introdução2
Até aqui estudamos o problema do Regulador, cujoobjetivo é levar o Estado para zero: x(tf)0. Osreguladores são capazes de rejeitar distúrbio muitobem, mas em geral, são ruins para seguir trajetóriasou sinais de referência na entrada. Para adicionaresta característica ao controlador é preciso modificara lei de controle. Os Seguidores de Referência sãotambém conhecidos como Rastreadores ouTraqueadores (“tracking”). Iniciaremos com osRastreadores de Sinais Constantes (tipo degrau).
Rastreadores de Sinais Constantes3
Até aqui:
Vamos introduzir no modelo a informação sobre osinal de referência xr(t) ou a trajetória descrita notempo que desejamos seguir (rastrear). A maneiramais direta para isso seria adicionar termosproporcionais a xr(t) na equação do controlador.Podemos tentar usar o erro de rastreamento
e=(x-xr) para gerar a ação de controle:
u = - K(x-xr)
xBKAx
Cx y
KxuBuxAx
Rastreadores de Sinais Constantes4
A equação de malha fechada ficaria:
Com uma escolha adequada dos autovalores de F podemoslevar o erro de rastreamento para zero. No entanto, quandoxr é um sinal constante, como um degrau, o sistemacontrolado apresenta erro em regime permanente.
r
BKxx
F
BKAx
t
r =1
Rastreadores de Sinais Constantes - SISO5
Para que não ocorra erro em Regime Permanente(RP) vamos calcular o Estado no RP (xRP) e a acão decontrole (uRP) que garanta que o erro na variávelobservada (y) seja nulo e vamos forçar o estado x e aação de controle a assumirem estes valores. Para issoa nova lei de controle será:
u = uRP - K(x-xRP) (3)
para evitar eRP para chegar a trajetória em RP
obs: 1) u = - Kx + KxRP + uRP
regulador chegar a trajetória sem erro
2) quando eRP =0 x = xRP e u = uRP
6
Rastreadores de Sinais Constantes - SISO
(6) :referência de
a trajetórià chegado tenhasistema o RP em queimpor
(5)
(4)
:RP aochegar sistema o Quando
r
RPRP
RPRP
xy
Vamos
uy
u
uy
u RP
DxC
BxA0
DCx
BxAx
0x
uRPxRP
xr
7
Também é razoável admitir que o Estado em RP (xRP) e a
ação de controle (uRP) ) sejam proporcionais à trajetória dereferência (xr), formalmente:
Rastreadores de Sinais Constantes - SISO
1
:é )0( trivialnão soluçãoCuja
:(5) e (4) em (8) e (7) (6),
(8)
(7)
u
u
r
rurr
rur
ruRP
rRP
x
xxx
xx
Pondo
xu
x
DNCN
BNAN0
DNCN
BNAN0
N
Nx
x
x
x
x
x
8
Ou na forma matricial:
Tendo Nx e Nu, de (7) e (8) temos xRP e uRP e usando(3) calculamos a nova lei de controle, que garante eRP
nulo para sinais de referência constantes.
(3) u = uRP - K(x-xRP) = - Kx + KxRP + uRP
u = - Kx + (KNx + Nu) xr = - Kx + N xr
Rastreadores de Sinais Constantes - SISO
.inversívelfor se
11
1
Λ
0
DC
BA
N
N0
N
N
DC
BA
Λ
xx
uu
rxu
uu
NKx
BxAxregulador pré-alimentação
9
Rastreadores de Sinais Constantes - MIMO
:é )( trivialnão soluçãoCuja
ux
ux
r
rurxr
rurx
ruRP
rxRP
DNCN I
BNAN0
0x
xDNxCN x
xBNxAN0
xNu
xNx
.inversívelfor seΛ
I
0
DC
BA
N
N
I
0
N
N
DC
BA1
u
x
u
x
Λ
Esquema de controle para este seguidor:10
K
Nu
Nx
xr
Reguladorpré-alimentação
Esquema de controle para este seguidor:11
K
Nxr
Reguladorpré-alimentação
Seguidor de degrau unitário12
A=[0 1;-1 0]; eig(A) B=[0 1]'; CT=ctrb(A,B); rank(CT) C=[1 0]; D=0; A1=[A B;C D]; A2=inv(A1); No=[0 0 1]'; Nxu=A2*No; % Regulador: p1=p2*=-1+j v=[-1+j -1-j]; K=place(A,B,v); F=A-B*K; eig(F) Nx=Nxu(1:2); Nu=Nxu(3); urp=Nu+K*Nx; B1=[0 urp]'; step(F,B1,C,D) hold on C1=[0 1]; step(F,B1,C1,D)
+-j
2
1
0
1 Nx
Nu
Seguidor de degrau unitário13
B=[0 1]’C=[1 0]
Sistema massa/mola
Seguidor de degrau unitário14
B=[1 0]'C=[0 1]
Sistema hipotético
Seguidor com referência variante15
x(t)
xr(t)
Seguidor com referência variante16
BuAexAAe
BuxAxeAe
xex
BuxAAxe
xxe
xxe
xAx
BuAxx
rr
rrr
r
rr
r
r
rrr
:(3)
(3) :
)2(
)1(
De
Seja
Vamos admitir por facilidade quex e xr
tenham a mesmadimensão.
Seguidor com referência variante17
Notação matricial:
u será calculado adiante.
uBxAx
u0
B
x
e
A0
AAA
x
e
rr
r
r
Seguidor com referência variante e distúrbio
18
r
w
r2
rr2wr
rrwr
rrw
r
r
r
rrr
www
w
x
xAABuBAee
xAuBxBAxAee
xAuBxBxeAe
xAuBxBAxe
xxe
xex
xxe
xAx
xAx
uBxBAxx
1
1
21
21
21
(5)
(4) :
)3(
)2(
)1(
Seja
sistema
referência
distúrbio
Seguidor com referência variante e distúrbio
xxC C Cy
uB
x
e
A
FA
x
e
x
x
A
A
x
x
xAx
xAx
FxuBAee
x
xAABuBAee
rwe
2
ex0ex
r
w
r
w
r
w
rrr
www
2
r
w
r2
BxΛx
xAx
xF
exex 0
][
00
)7( 0
0
)3(
)2(
)6(
1
ex
ex
Seguidor com referência variante e distúrbio
20
wx
Ar
Cw
Aw
A
B2
xw
B1
rx
e eu
A-Arxr
Ce
Cr
Sensor dedistúrbio
Sensor deerros de rastreamento
Sensor dereferência(guiagem)
y y
Cálculo de u21
taçãopré-alimenregulador
)(
oantecipaçã
tação-men
reali-
:
ex
ex
ex
Seja
xKBFeKBAe
FxxK KeBAee
xKxK Ke u
xK Ke u
FxuBAee
ex22
exex2
wwrr
exex
2
Seguidor com referência variante e distúrbio
22
xr eK
Kr
Kw
xw
x
y
PLANTA
pré-alimentação
CC
realimentação
Cálculo de u
23
Em RP: e =0 e queremos e(t) 0
e(t) não pode ser anulado já que e = f (xex)
exex22
exex22
ex222
)xKB(FKBAe
)xKB(FeKBA
0xKBFeKBAFxuBAee
1
exex
O ideal seria escolher K e Kex para manter o erro em zero, masisso em geral não é possível. Temos que nos contentar com objetivos mais modestos e fazer uma combinação linear de e(t)ser anulada:
exx0z
C
0eCz
de tementeindependen
singular matriz
Cálculo de u24
inversa pseudo
temportanto e esquerda à inversa-pseudo é seja
111
inversívelfor
11
1
1
T
T
T
T
se
ou
onde
W
IWW
FWK
F
W
KBACBKBACK
KBKBACFKBAC
0)KB(FKBACeC
)xKB(FKBAe
ex
222ex
ex222
ex22
exex22
Observações : 1)
25
se j > m, mais incógnitas do que equações: sistema sobredeterminado => não há solução; (sistema sub-atuado)
se j < m, mais equações do que incógnitas : sistema subdeterminado => há múltiplas solução; (sistema sobre-atuado)
se j = m, solução única (sistema quadrado)
anular a erro de medidas
controle de entradas
)(
)(
1
)()(
)1()1(
j
m
jxn
nxmnxnjxn
nxjx
22 BKBAC
C
eCz
Inversibilidade de:
Poderíamos pensar que a existência desta inversadepende de K ou seja da malha fechada, mas não éverdade. A existência desta inversa depende apenas damalha aberta. A inversa não depende de K, porquê arealimentação não altera os zeros de um sistema. Casoescalar, por simplicidade:
26
Observações : 2)
22 BKBAC1
)(
)(
)(
)(
11
1
sN
sD
sD
sN
22
22
BKBAC
BKBAC
Se fosse possível, variaríamosK e alteraríamos N(s), e por-Tanto os zeros do sistema!
27
Podemos mostrar que
possui inversa se e somente se: 22 BKBAC
1
contínua) (corrente nula frequência :0s:obs
lim
:por asubstituídser pode 0
: inversívelfor se Ainda,
0
0s
1
2
1
2
1
2
1
2
BAC0BAIC
BAIC
A
KBAIC
s
s
independeabertamalhas
UBA)I(CZeCz
UBA)I(EuBAee
2
1
2
1
2
s
ss
Laplace
Laplace )(
Seja o erro em malha aberta, sem distúrbio externo:
Exemplo28
F
W
KBACBKBACK
x
x
A
A
x
x
xK xxKxK Ke u
x
x
x
F
AABuBAee
xxe
xAx
xAx
uBxBAxx
222ex
r
w
r
w
r
w
exexrexex
ex
r
w
r2
r
rrr
www
w
exexxAx
0
T
Seja
111
1
21
0
0
)(
(4) :
)3(
)2(
)1(
Exemplo29
)(
2212
2212
2212
21
ex0ex
exex
exex
x
r
w
exexrw
ex0ex
exexrw
xAx
xKBKBBxKBAx
xKBx
xKBBxKBAx
xKBKxBxBxKBAx
xAx
xK xxKBxBAxx
ex
Exemplo30
tet
ttt
A
ex0
A
ex
ex
xx
xAx
x
x
x
A
A0
KBKBBKBA
x
x
xy
)(
)()()(
01
2212
Seguidor com referência variante e distúrbio
31
% Seguidor de sinal variante no tempoA=[0 1;-1 0]display('polos de sem controle')eig(A)B1=[0 1]'B2=[0 1]'CT=ctrb(A,B2);display('posto da matriz de controlabilidade')rank(CT)C=[1 0]D=0Aw=[0 1; -100 0 ]Ar= [0 1; -1 0]C1=[1 0] C
Seguidor com referência variante e distúrbio
32
v=[-1+j -1-j];display('ganho de realimentaçao')K=place(A,B2,v)F=A-B2*K;F1=inv(F);F2=[ B1 (A-Ar)];Ke=inv(C1*F1*B2)*C1*F1*F2;Ax=zeros(2);Ao=[Aw Ax;Ax Ar];Ay=[B1 B2*K]-B2*Ke;
Ay=[Ay [ 0 0]'];AT=[(A-B2*K) Ay ; [0 0;0 0; 0 0;0 0] Ao];
xTo=[1 0 1 0 1 0]';sys=ss(AT,xTo,AT,xTo);[y,T]=step(sys,30);plot(T,y(:,1))
Kex
A
Seguidor com referência variante e distúrbio
33