[apostila] controle moderno de processos
DESCRIPTION
Apostia de Controle de Processos para o curso de Engenharia ElétricaTRANSCRIPT
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 1
5 Relacao Entre as Varias Formas de Repre-sentacao de Sistemas
Equaes
Diferenciais
Diagrama
de Simulao
Equaes
de Estado
Funo de
Transferncia
5.1 Matriz de transferencia
SLIT contnuos no tempo podem ser descritos pela representacao
no espaco de estados:
dx(t)
dt= Ax(t) +Bu(t) : Equacao de estado
y(t) = Cx(t) +Du(t) : Equacao de sada
sendo x(t) Rn o vetor de estados, u(t) Rp o vetor de entradas e
y(t) Rq o vetor de sadas. As variaveis de estado, x1(t), x2(t), . . .,
xn(t), podem estar associadas com os elementos do sistema que ar-
mazenam energia ou podem ser variaveis com significado puramente
matematico.
Aplicando a transformada de Laplace nas duas equacoes e es-
crevendo a relacao entrada-sada resulta na matriz de transferencia:
G(s) = C(sI A)1B +D =
G11(s) . . . G1p(s)... . . . ...Gq1(s) . . . Gqp(s)
Como Y (s) = G(s)U(s), entao
Gi,j(s) =Yi(s)
Uj(s)
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 2
No caso de sistemas lineares,
Yi(s) = Gi1(s)U1(s)+Gi2(s)U2(s)+ . . .+Gip(s)Up(s), i = 1, . . . , q
Polos de G(s) = autovalores de A:
G(s) = C(sIA)1B+D =Cadj(sI A)B +D|sI A|
|sI A|=N(s)
Q(s)
As razes de Q(s) = |sI A| = 0 sao os polos de G(s)
As razes de Q(s) = |I A| = 0 sao os autovalores de A
Uma representacao no espaco de estado de uma funcao de trans-
ferencia G(s) e denominada uma realizacao de G(s), podendo ser
representado na forma compacta por:
G(s) ,
[A B
C D
]Nota: Existem diferentes possibilidades de realizacao de uma
funcao de transferencia.
5.2 Diagramas de simulacao
Diagramas de simulacao podem ser utilizados para obter realiza-
coes no espaco de estados de funcoes de transferencia. Diagramas
de simulacao utilizam apenas 3 elementos para representar sistemas:
somador, multiplicador (ganho) e integrador.
Considere a equacao diferencial:
dny(t)
dtn+ an1
dn1y(t)
dtn1+ . . . + a1
dy(t)
dt+ a0y(t) = b0u(t)
Usando blocos integradores pode-se obter y(t) a partir de dny(t)dtn
:
y(t)(n)
y(t)(n-1)
y(t)oo
y(t)o
y(t)o o o
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 3
A entrada do integrador a` esquerda, dny(t)dtn
, pode ser obtida expli-
citando este termo na equacao diferencial:
dny(t)
dtn= a0y(t) a1
dy(t)
dt . . . an1
dn1y(t)
dtn1+ b0u(t)
y(t)(n)
y(t)(n-1)
y(t)oo
y(t)o
y(t)o o o
u(t) +
o
o
o
-a
-a
b0
0
n-1o o o
+ +x (t)1x (t)n
o o
x (t)2
x (t)1x (t)n-1o
x (t)3
x (t)2
x (t)no
Representacoes no espaco de estados podem ser obtidas definindo
as sadas de cada bloco integrador como variaveis de estado xi(t) (a
entrada do integrador sera dxi(t)dt
). Definindo as variaveis de estado
como mostrado na figura resulta:
d
dt
x1x2...
xn1xn
=
0 1 0 . . . 0
0 0 1 0... ... . . . ...
0 0 0 . . . 1
a0 a1 a2 . . . an1
x1x2...
xn1xn
+
0
0...
0
b0
u
y =[1 0 0 . . . 0
]
x1x2...
xn1xn
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 4
5.3 Forma canonica de variaveis de fase ou forma canonica
controlavel
Equacao diferencial de alta ordem ou F.T Espaco de Estados
Caso 1:dny(t)
dtn+ an1
dn1y(t)
dtn1+ . . . + a1
dy(t)
dt+ a0y(t) = u(t)
G(s) =Y (s)
U(S)=
1
sn + an1sn1 + . . . + a1s + a0
As variaveis de estado podem ser definidas como:
x1(t) , y(t) dx1(t)
dt= x2(t)
x2(t) ,dy(t)
dt
dx2(t)
dt= x3(t)
... ... ...
xn(t) ,dn1y(t)
dtn1
dxn(t)
dt=
dny(t)
dtn
dxn(t)
dt=
dny(t)
dtn= a0y(t) a1
dy(t)
dt . . . an1
dn1y(t)
dtn1+ u(t)
= a0x1(t) a1x2(t) . . . an1xn(t) + u(t)
Que corresponde a seguinte realizacao no espaco de estados:
d
dt
x1x2...
xn1xn
=
0 1 0 . . . 0
0 0 1 0... ... . . . ...
0 0 0 . . . 1
a0 a1 a2 . . . an1
x1x2...
xn1xn
+
0
0...
0
1
u
y =[1 0 0 . . . 0
]
x1x2...
xn1xn
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 5
Caso 2:
dny(t)
dtn+ an1
dn1y(t)
dtn1+ . . . + a1
dy(t)
dt+ a0y(t) =
cmdmu(t)
dtm+ cm1
dm1u(t)
dtm1+ . . . + c1
du(t)
dt+ c0u(t), m n
G(s) =Y (s)
U(S)=cms
m + cm1sm1 + . . . + c1s + c0
sn + an1sn1 + . . . + a1s + a0
Definindo:
Y (s) = (cmsm + cm1s
m1 + . . . + c1s + c0)X1(s)
a equacao diferencial pode ser re-escrita como:
dnx1(t)
dtn+ an1
dn1x1(t)
dtn1+ . . . + a1
dx1(t)
dt+ a0x1(t) = u(t)
que e igual ao caso 1:
dx1(t)
dt= x2(t),
dx2(t)
dt= x3(t), . . . ,
dxn1(t)
dt= xn(t)
dxn(t)
dt= a0x1(t) a1x2(t) . . . an1xn(t) + u(t)
O que muda e a relacao entre y(t) e x1(t):
y(t) = cmdmx1(t)
dtm+ cm1
dm1x1(t)
dtm1+ . . . c1
dx1(t)
dt+ c0x1(t)
Caso m < n
y(t) = cmxm1(t) + cm1xm2(t) + . . . + c1x2(t) + c0x1(t)
Que corresponde a seguinte equacao de sada:
y =[c0 c1 . . . cm 0 . . . 0
] x1...xn
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 6
Caso m = n
y(t) = cndxn(t)
dt+ cn1xn(t) + cn2xn1(t) + . . . + c1x2(t) + c0x1(t)
= cn[a0x1(t) a1x2(t) . . . an1xn(t) + u(t)]
+c0x1(t) + c1x2(t) + . . . + cn2xn1(t) + cn1xn(t)
= (c0 cna0)x1(t) + (c1 cna1)x2(t) + . . .
+(cn1 cnan1)xn(t) + cnu(t)
Que corresponde a seguinte equacao de sada:
y =[c0 c
1 . . . c
n1
] x1...xn
+ cnu(t)
sendo ck = ck cnak.
G(s) =Y (s)
U(S)= cn +
cn1sn1 + . . . + c1s + c
0
sn + an1sn1 + . . . + a1s + a0
y(t)o o o
u(t)
+
-a
-a
c'n-1
0
n-1o o o
++
x (t)1x (t)nox (t)1
c'0
o
o
o
+
+
cn
+
x (t)no
x (t)2
o
o
o
-a1
+
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 7
5.4 Forma canonica de Jordan
Considere um sistema monovariavel com todos polos reais e distin-
tos, cuja F.T. pode ser decomposta em fracoes parciais:
G(s) =cns
n + cn1sn1 + . . . + c1s + c0
sn + an1sn1 + a1s + a0= cn+
f1
s 1+. . .+
fn
s n
Y (s) = G(s)U(s) = f11
s 1U(s)
Z1(s)
+ . . . + fn1
s nU(s)
Zn(s)
+cnU(s)
Definindo a variaveis de estado canonicas como:
Zi(s) ,1
s iU(s)
d
dtzi(t) = izi(t) + u(t)
A realizacao da funcao de transferencia na forma canonica de jor-
dan (ou forma desacoplada ou forma normal) e
d
dt
z1(t)
z2(t)...
zn(t)
=
1 0 . . . 0
0 2. . . ...
... . . . . . . 0
0 . . . 0 n
z1(t)
z2(t)...
zn(t)
+
1
1...
1
u(t)
y(t) =[f1 f2 . . . fn
] z1(t)...zn(t)
+ cnu(t)
Na realizacao na forma canonica,
dz(t)
dt= Anz(t) z(t) = n(t)z(0), n(t) = e
Ant =
e1t 0. . .
0 ent
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 8
y(t)
+
o
o
o
-n
+
z (t)n
+
+
fn
+
z (t)no
u(t)
+
-1
+
z (t)1f1
z (t)1o
cn
o
o
o
5.5 Transformacao de similaridade
Seja x(t) e x(t) dois conjuntos diferentes de variaveis de estado de
um mesmo sistema. Se x(t) e x(t) podem ser relacionados por
x(t) = Tx(t) ou x(t) = T1x(t)
onde a matriz T Rnn, nao singular, e denominada matriz de
transformacao, entao:
d
dtx = Ax +Bu x = Tx
d
dtx = Ax +Bu
y = Cx +Du y = Cx +Du
sendo
A = T1AT, B = T1B, C = CT
G(s) =
[A B
C D
]=
[T1AT T1B
CT D
]
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 9
5.6 Diagonalizacao da matriz A
Se os autovalores forem todos distintos, entao existe uma matriz
T , denominada matriz modal, tal que
A = T1AT = An =
1 0. . .
0 n
Cada coluna da matriz modal e igual a um autovetor da matriz A:
T =[v1 v2 . . . vn
]sendo Avi = ivi e vi adj(iI A)
Nota: Na forma canonica de variaveis de fase
T =[v1 v2 . . . vn
]=
1 1 . . . 1
1 2 . . . n21
22 . . .
2n
... ... ...
n11 n12 . . .
n1n
Nota: A matriz de transicao de estados (t)
d
dtx(t) = Ax(t) x(t) = (t)x(0), (t) = eAt
pode ser calculada a partir da matriz modal
(t) = TnT1, n = e
Ant =
e1t 0. . .
0 ent
MATLAB:
[T An]=eig(A)
sis=ss(A,B,C,D)
sis_n = ss2ss(sis, inv(T))
sis_n = canon(sis)
G=tf(sis)
sis=ss(G)
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 10
6 Propriedades de Sistemas Representados no Espaco
de Estados
Alem da propriedade de estabilidade serao consideradas mais
duas propriedades de sistemas representados no espaco de estados.
Controlabilidade existencia da solucao do problema de con-
trole.
ou(t) x(t)x(t)=Ax(t)+Bu(t) C
+
y(t)
K
r(t)
_
Observabilidade possibilidade de estimar as variaveis de es-
tado que nao podem ser medidas.
ou(t) x(t)x(t)=Ax(t)+Bu(t) C
+
y(t)
K
r(t)
_
Estimador
x(t)^
Controlabilidade + Observabilidade condicoes para equi-
valencia completa entre funcoes de transferencia e representacao no
espaco de estados.
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 11
6.1 Estabilidade segundo Lyapunov
Definicao: O sistema dinamico contnuo x(t) = Ax(t) e dito
ser estavel se somente se todos os autovalores de A, i(A), estao no
semi-plano esquerdo aberto, isto e, Re{i(A)} < 0, i. A matriz A
com essa propriedade e chamada de estavel ou Hurwitz.
Em 1892 o matematico russo Alexander Mikhailovitch Lyapunov
introduziu a teoria de estabilidade para sistemas lineares e nao-lineares.
Segundo Lyapunov, pode-se checar a estabilidade de um sistema en-
contrando uma funcao V (x), chamada funcao de Lyapunov, que para
sistemas invariantes no tempo deve satisfazer
V (x) > 0, V (0) = 0
V (x) =dV
dt=V
x
dx
dt 0
Para o sistema x(t) = Ax(t), a funcao de Lyapunov poder ser a
funcao quadratica V (x) = xT (t)Px(t), P = P T 0, que atende as
primeiras duas condicoes. A terceira condicao resulta em
V (x) = xTPx + xTPx = xTATPx + xTPAx
= xT (ATP + PA)x < 0
Teorema: O SLIT contnuo, x(t) = Ax(t), e assintoticamente
estavel se somente se existe uma matriz simetrica definida positiva
P = P T 0, tal que
ATP + PA 0
Equivalentemente, O SLIT contnuo, x(t) = Ax(t), e assintoti-
camente estavel se somente se existem matrizes simetricas definidas
positivas P = P T 0 e Q = QT 0 que atendem a` equacao
algebrica se Lyapunov:
ATP + PA = Q
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 12
Teorema: O SLIT contnuo, x(t) = Ax(t), y(t) = Cx(t), e
assintoticamente estavel se somente se o par (A,C) e observavel e
a equacao algebrica de Lyapunov possui uma unica solucao definida
positiva
ATP + PA = Q, P = P T > 0, Q = CTC 0
Equivalentemente, o sistema x(t) = Ax(t) e estavel se existe X =
XT 0, X = P1, tal que XAT + AX 0.
MATLAB: X = lyap(A,Q) resolve a equacao de Lyapunov: AX+
XAT +Q = 0.
Exemplo: Considere o sistema x(t) = Ax(t), y(t) = Cx(t),
A =
0 1 00 0 11 2 3
, C = [ 1 0 0 ]
O palpite incial para Q e Q = I .
No MATLAB, X=lyap(A,eye(3)) resulta:
X =
5 0,5 1,50,5 1,5 0,51,5 0,5 1
, i(X) = {0,19; 1,78; 5,53}
X 0 sistema assintoticamente estavel.
Para Q = CTC, no MATLAB, P=lyap(A,C*C) resulta:
P =
1,9 1,8 0,51,8 2,8 0,90,5 0,9 0,3
, i(P ) = {0,002; 0,54; 4,5}
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 13
6.2 Controlabilidade
Definicao: O sistema dinamico x(t) = Ax(t) + Bu(t) ou o par
(A,B) e controlavel (todos os estados sao controlaveis) se, para qual-
quer estado inicial x(0) = x0, qualquer tempo t1 > 0 e qualquer
estado final x1, existe uma entrada u(t) tal que a solucao da equacao
de estado satisfaca x(t1) = x1. Caso contrario, o sistema ou o par
(A,B) e dito ser nao controlavel.
u(t) deve influenciar cada variavel de estado na equacao:
X(s) = (sI A)1x(0) + (sI A)1BU(S)
= (s)x(0) + (s)BU(s)
x(t) = (t)x(t) +
t0
( )Bu(t )d
Existem varias formas de verificar se o sistema e de estado con-
trolavel.
1. O par (A,B) e controlavel se somente se a matriz de controla-
bilidade:
C ,[B AB A2B . . . An1B
] Rnnp
possui posto n (posto de linha completo). Sendo n o numero de
variaveis de estados.
Nota: se o sistema possuir uma entrada, posto C = n |C| 6= 0.
Se o sistema possui multiplas entradas, posto C = n |CCT | 6= 0
MATLAB:
C=ctrb(A,B)
sis=ss(A,B,C,D)
C=ctrb(G)
rank(C)
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 14
2. Uma entrada u(t) que resulta em x(t1) = x1 e dada por:
u(t) = BTeAT (t1t)Wc(t1)
1(eAt1x0 x1)
sendo
Wc(t) ,
t0
eABBTeAT d
Desse modo o sistema e controlavel se somente se a matriz Wc(t)
possui posto completo (e definida positiva) para qualquer t > 0.
Para sistemas estaveis, e necessario analisar apenas P , Wc(),
isto e, o par (A,B) e controlavel se somente se o gramiano de con-
trolabilidade
P ,
0
eABBTeAT d
e definido positivo (P 0) e desta forma possui posto completo n.
P pode ser obtido da solucao da equacao de Lyapunov:
AP + PAT = BBT
MATLAB:
P=lyap(A,B*B)
P = gram(G,c)
eig(P) % controlavel se i(P ) > 0, i
3. Seja qiA = iqi . O sistema e de estado controlavel se somente
se Bqi 6= 0, i.
Bqi = 0 modo natural eit nao controlavel.
MATLAB:
[Q,P] = eig(A)
Q = conj(Q)
B*Q
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 15
Exemplo: Considere um SLIT representado por:
G(s) =
2 2 10 4 1
1 0 0
= s + 2
(s + 2)(s + 4)=
1
s + 4
1. A matriz de controlabilidade possui duas linhas (ou colunas)
dependentes
C =[B AB
]=
[1 4
1 4
], |C| = 0 posto C = 1 < 2
2. O gramiano de controlabilidade e singular (|P | = 0)
P =
[0,125 0,125
0,125 0,125
]3. Os autovalores de A sao 1 = 2 e 2 = 4 e os correspon-
dentes autovetores esquerdos sao q1 = [0,707 0,707]T e q2 = [0 1]
T ,
tal que,
Bq1 = 0 (e2t nao controlavel)
Bq2 = 1 6= 0 (e4t controlavel)
6.3 Observabilidade
Definicao: O sistema dinamico x(t) = Ax(t) + Bu(t), y(t) =
Cx(t) + Du(t) ou o par (A,C) e observavel (todos os estados sao
observaveis) se, para algum t1 > 0, o estado inicial x(0) = x0 puder
ser determinado a partir da historia no tempo do sinal de entrada
u(t) e do sinal de sada y(t) no intervalo [0, t1]. Senao o par (A,C)
e dito ser nao observavel.
Cada variavel de estado deve influenciar y(t) na equacao:
y(t) = C(t)x(0) + C
t0
( )Bu(t )d +Du(t)
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 16
1. O par (A,C) e observavel se somente se a matriz de observabi-
lidade
O =
C
CA...
CAn1
Rqnn
possui posto n (posto completo de coluna).
Nota: Se o sistema possuir uma sada, posto O = n |O| 6= 0. Se
o sistema possui multiplas sadas, posto O = n |OTO| 6= 0
MATLAB:
O=obsv(A,C)
O=obsv(sis)
rank(O)
2. O par (A,C) e observavel se a matriz
Wo ,
t0
eAT CTCeAd
e difinida positiva para todo t > 0. Para sistemas estaveis, o par
(A,C) e observavel se somente se o gramiano de observabilidade
Q ,
0
eAT CTCeAd
possui posto n (ser definido positivo).
O gramiano de observabilidade, Q, pode ser obtido como a solucao
da equacao de Lyapunov
ATQ +QA = CTC
MATLAB:
Q=lyap(A,CC)
Q = gram(G,o)
eig(O) % observavel se i(Q) > 0, i
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 17
3. Seja Avi = ivi. O sistema e observavel se somente se Cvi 6=
0, i.
MATLAB:
[V,An]=eig(A)
C*V
Exemplo: Considere o sistema,
G(s) =
0 1 0 0
0 0 1 0
24 2 5 1
2 1 0 0
= s 2(s + 4)(s + 3)(s 2)
1. Analisando a matriz de observablidade verifica-se que o sistema
nao e observavel:
O =
2 1 00 2 1
24 2 7
, |O| = 0 posto O < 3
2. Gramiano de observabilidade:
Q =
1,45 0,56 0,080,56 0,22 0,030,08 0,03 0,006
, i(Q) = {0; 0,0053; 1,67}
3. Testando cada modo natural, com i(A) = {4; 3; +2},
C[v1 v2 v3] = C
0,06 0,10 0,220,24 0,31 0,440,97 0,94 0,87
= [0,36 0,52 0]
v3 e2t nao observavel.
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 18
6.4 Controlabilidade e observabilidade na forma canonica
de Jordan
d
dt
z1(t)
z2(t)...
zn(t)
=
1 0 . . . 0
0 2. . . ...
... . . . . . . 0
0 . . . 0 n
z1(t)
z2(t)...
zn(t)
+
b1b2...
bn
u(t)
y(t) =[c1 c2 . . . cn
] z1(t)...zn(t)
+Du(t)
Se nao existir nenhuma linha totalmente nula em Bn, entao to-
das as variaveis de estado sao afetadas por u(t) sistema con-
trolavel.
Se nao existir nenhuma coluna totalmente nula em Cn, entao
todas as variaveis de estado afetam pelo menos uma das sadas
sistema observavel.
linha bi = 0 eit e nao controlavel
coluna ci = 0 eit e nao observavel
6.5 Relacao entre controlabilidade, observabilidade e
funcoes de transferencia
Teorema: Se ocorrer cancelamento de polo com zero em
G(s)=Y(s)/U(s), entao o sistema sera ou nao controlavel ou nao ob-
servavel de acordo com a escolha das variaveis de estado. Se nao ocor-
rer cancelamento de polo com zero entao o sistema sera controlavel e
observavel.
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 19
S+
y(t)r(t)co
Sc
So
+
Su
G(s) = Cco(sI Aco)Bco +D
6.6 Realizacao Mnima
Definicao: Uma realizacao no espaco de estados (A,B,C,D) de
G(s) e dita ser uma realizacao mnima de G(s) se A possui a menor
dimensao possvel (menor numero de estados). A dimensao mnima
e denominada grau de McMillan de G(s).
Somente os modos naturais controlaveis e observaveis contribuem
para o comportamento entrada-sada de u(t) para y(t). Uma reali-
zacao no espaco de estados e minima se somente se o par (A,B) e
controlavel e o par (A,C) e observavel.
Um modo natural e escondido se ele e nao controlavel e/ou nao
observavel, nao aparecendo na realizacao mnima. Polos nao con-
trolaveis e/ou nao observaveis sao cancelados por zeros de G(s) =
C(sI A)1B +D.
MATLAB:
Gm = minreal(G)
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 20
Exemplo: Considere o sistema,
G(s) =
0 1 0 0
0 0 1 0
24 2 5 1
2 1 0 0
= s 2(s + 4)(s + 3)(s 2)
A realizacao mnima e obtida como
Gm(s) =
8,627 3,3440 0,37467,785 1,6270 0,31271,433 1,717 0
= 1
(s + 4)(s + 3)
6.6 Realizacao Balanceada
A realizacao mnima em que os gramianos de controlabilidade e
observabilidade sao iguais e na forma de uma matriz diagonal
Pb = Qb =
h1 0 . . . 0
0 h2 0... . . . ...
0 0 . . . hn
, hi = i(PQ), i = 1, . . . , n
e conhecida como realizacao balanceada. Os valores h1 > h2 > . . . >
hn > 0, sao conhecidos como valores singulares de Hankel. O valor
singular de Hankel hi e proporcional a` influencia da variavel de estado
xi(t) na relacao entre o vetor de entradas u(t) e o vetor de sadas y(t).
MATLAB:
[Gb,g] = balreal(Gm)
calcula a realizacao balanceada, Gb, a partir da realizacao mnima,
Gm, e retorna tambem o vetor de valores singulares de Hankel, g.
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 21
Exemplo: Considerando a realizacao mnima do exemplo anterior,
a realizacao balanceada e os graminanos sao:
Gb(s) =
1,012 2,437 0,31862,437 5,988 0,3186
0,3186 0,3186 0
= 1
(s + 4)(s + 3)
Pb = Qb =
[0,0501 0
0 0,0085
]
6.7 Reducao de modelos
A partir da realizacao balanceada e possvel obter uma aproxi-
macao de ordem reduzida do sistema eliminado as variaveis de estado
associadas com os valores singulares de Hankel que sao relativamente
pequenos.
Exemplo: Considere o sistema estavel, controlavel e observavel com
a seguintes realizacao no espaco de estados:
G(s) =
2 0 0,5 0,5 1 5
1 2 0,5 0,5 1 8
10,5 3 7 2 4,5 7
11,5 3 6,5 1,5 5,5 11
1,5 0 0,5 0,5 0,5 9
2 0 2 1 0 0
Atraves do comando balreal, sao calculados os valores singu-
lares de Hankel como: {5,6; 2,6; 0,2; 0,02; 0,001}. Relativamente,
as duas primeiras variaveis de estado da forma balanceada possuem
peso maior na relacao entrada e sada e o sistema de 5a ordem pode ser
aproximado por um de 2a ordem usando os comandos do MATLAB:
sis = ss(A,B,C,D)
sisb = balreal(sis)
sysr = modred(sisb,[3 4 5])
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 22
G(s) Gr(s) =
0,9641 1,1782 3,27701,1782 0,2135 1,05863,2770 1,0586 0,5111
0 2 4 6 8 10 120
1
2
3
4
5
6
7
8
9
10Step Response
Time (sec)
Ampl
itude
2a ordem
5a ordem
0.1 1 10 100 1000 90
45
0
45
Phas
e (de
g)
40
20
0
20
40
Mag
nitu
de (d
B)
Bode Diagram
Frequency (rad/sec)
2a ordem
2a ordem
5a ordem
5a ordem
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 23
7 Projeto de Sistemas de Controle no Espaco de Es-
tados
Configuracao de um sistema de controle generalizado:
v
z
u
w
P
K
Sendo w o vetor de variaveis exogeneas (sinais de referencia, dis-
turbios e rudos), z o vetor de variaveis controladas (sinais de erro,
variaveis manipuladas etc.), v o vetor de variaveis medidas (entradas
do controlador) e u o vetor de variaveis de controle ou manipuladas
(sadas do controlador).
O objetivo de projeto e determinar o controlador K tal que o
sistema seja estavel, apresente uma resposta transitoria adequada e
o efeito das variaveis exogenas sobre as variaveis controladas seja
minimizado.
Quando v(t) = x(t) =[x1 . . . xn
]T, ou seja, todas as variaveis
de estado sao medidas (ou estimadas) para serem utilizadas como
entradas para o controlador, e K =[k1 . . . kn
]e um vetor de
ganhos, tem-se o controle por realimentacao de estados.
Se v(t) 6= x(t) o controle pode ser controle por realimentacao
estatica de sada, para K =[k1 . . . kq
], ou controle por realimen-
tacao dinamica de sada se
K(s) = Ck(sI Ak)1Bk +Dk =
[Ak BkCk Dk
]
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 24
7.1 Forma Canonica Controlavel
Considere um sistema linear, monovariavel, invariante no tempo,
expresso em termos de variaveis de estado gerais:
G(s) =Y (s)
U(S)=
[A B
C D
]= cn +
cn1sn1 + . . . + c1s + c
0
sn + an1sn1 + . . . + a1s + a0
Se o sistema e totalmente controlavel, entao existe uma matriz
T , x(t) = Txc(t), que transforma o sistema para forma canonica
controlavel:
dxc(t)
dt=
0 1 0 . . . 0
0 0 1 0... ... . . . ...
0 0 0 . . . 1
a0 a1 a2 . . . an1
xc(t) +
0
0...
0
1
u(t)
y =[c0 c
1 . . . c
n1
]xc(t) + cnu(t)
A matriz T pode ser calculada por um dos tres modos abaixo:
1) T = McM1cc =
[B AB . . . An1B
]
a1 . . . an1 1... 1 0
an1 1...
1 0 . . . 0
2) T1 =
q1q1A...
q1An1
sendo q1 = [ 0 . . . 0 1 ]M1c
3) T =[q1 q2 . . . qn
]sendo qn = B, qni = Aqni+1 + aniqn,
i = 1, . . . , n 1.
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 25
7.2 Controle por Posicionamento de Polos Atraves de
Realimentacao de Estados
+ -
u(t)
D
+
+
x(t)=Ax(t)+Bu(t)
K
r(t) y(t)C
x(t)o
Se o sistema for totalmente controlavel, atraves da acao de controle
u(t) = r(t)Kx(t)
onde K = [k1 k2 . . . kn] e um vetor de ganhos, e possvel
posicionar os autovalores (polos) do sistema em malha-fechada em
qualquer posicao desejada:
dx(t)
dt= Ax(t) +B[r(t)Kx(t)] = (ABK)
Af
x(t) +Br(t)
y(t) = Cx(t) +D[r(t)Kx(t)] = (C DK) Cf
x(t) +Dr(t)
Teorema: Se o par [A, B] e controlavel, entao atraves da reali-
mentacao de estado u(t) = r(t)Kx(t) os autovalores de
Af = ABK podem ser escolhidos de acordo com K.
Procedimento de projeto do controlador:
1. Q() = |I A| = n + an1n1 + . . . + a1 + a0
2. Qf() = (1) . . . (n) = n+ an1
n1+ . . .+ a1+ a0
3. Kc =[a0 a0 a1 a1 . . . an1 an1
]
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 26
4. q1 =[0 . . . 0 1
]M1c
T1 =
q1q1A...
q1An1
5. K = KcT1
Este procedimento pode ser substitudo por uma unica equacao,
denominada formula de Ackerman:
K = [0 . . . 0 1]M1c Qf(A)
MATLAB:
>> K = place(A,B,p)
onde p e um vetor com os polos desejados para o sistema em malha-
fechada.
Exemplo: Controle de velocidade de um motor CC, controlado por
armadura, por posicionamento de polos atraves de realimentacao de
estado. Considere o modelo linear invariante no tempo:
d
dt
[ia(t)
m(t)
]=
[Ra
LaKb
LaKiJ
BJ
] [ia(t)
m(t)
]+
[1La
0
]ea(t)
y(t) =[0 1
] [ ia(t)m(t)
]+ [0]ea(t)
Os parametros do motor sao: Ra = 1 , La = 50mH, J = 0,1Kgm,
B = 0,01Nms/rad e Ki = Kb = 0,5Vs/rad:
d
dt
[ia(t)
m(t)
]=
[20 10
5 0,1
] [ia(t)
m(t)
]+
[20
0
]ea(t)
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 27
Deseja-se Qf() = s2 + 2ns +
2n, = 0,707 e n = 10
K =[0,3 0,486
].
0 0.5 1 1.5 2 2.5 3 3.5 40
20
40
60
80
100
120
tempo (s)
m
(t)
r(t)
ea(t)
Tl(t)=4,1Nm
e() 0
7.3 Realimentacao de Estado com Acao Integral
Para eliminar o erro de regime estacionario, deve-se introduzir uma
acao integral no sistema acrescentando (fisicamente) a seguinte var-
iavel de estado no sistema:
dz(t)
dt= e(t) = r(t) y(t) = r(t) Cx(t)Du(t)
Com esta variavel adicional o sistema passa a ser:
d
dt
[x(t)
z(t)
]=
[A 0
C 0
] [x(t)
z(t)
]+
[B
D
]u(t) +
[0
1
]r(t)
= Ax(t) +Bu(t) +Bfr(t)
y(t) =[C 0
] [ x(t)z(t)
]+Du(t) = Cx(t) +Du(t)
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 28
Adotando a acao de controle:
u(t) = Kx(t) = [K ki
] [ x(t)z(t)
]= Kx(t) ki
t0
e( )d
e introduzido a acao integral na lei de controle. O sistema de malha
fechada resultante e:
dx(t)
dt= (ABK)
Af
x(t) +Bfr(t)
y(t) = (C DK)x(t)
Se o par (A,B) e controlavel, e possvel calcular K de modo que
o sistema em malha-fechada seja estavel, entao
limt
dz(t)
dt= 0 r(t) = y(t) para t
Exemplo: Controle de velocidade de um motor CC com acao inte-
gral:
d
dt
iam
z
=
20 10 05 0,1 0
0 1 0
iam
z
+
200
0
ea +
001
r
y =[0 1 0
] iamz
+ [0]ea + [0]r
Deseja-se Qf() = (s+ a)(s2 + 2ns+
2n), a = 20, = 0,707 e
n = 10
K =[0,7 3,286 20
].
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 29
0 0.5 1 1.5 2 2.5 3 3.5 40
20
40
60
80
100
120
tempo (s)
e() = 0
Tl(t)=4,1Nm
ea(t)
r(t)
m(t)
7.4 Forma Canonica Observavel
Considere um sistema linear, monovariavel, invariante no tempo,
expresso em termos de variaveis de estado gerais:
G(s) =Y (s)
U(S)=
[A B
C D
]= cn +
cn1sn1 + . . . + c1s + c
0
sn + an1sn1 + . . . + a1s + a0
Se o sistema e totalmente observavel, entao existe uma matriz T
que transforma o sistema para forma canonica observavel: x(t) =
Txo(t):
dxo(t)
dt=
0 0 . . . 0 a01 0 . . . 0 a10 1 ... a2... . . . 0 ...
0 . . . 0 1 an1
x0(t) +
c0c1c2...
cn1
u(t)
y(t) =[0 0 . . . 0 1
]+ [cn]u(t)
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 30
A matriz T pode ser calculada por um dos tres modos abaixo:
1) T1 = M1oo Mo =
a1 . . . an1 1... 1 0
an1 1...
1 0 . . . 0
C
CA...
CAn1
2) T =[q1 Aq1 . . . A
n1q1]sendo q1 = M
1o
0...
0
1
3) T1 =
q1q2...
qn
sendo qn = C e qn1 = qn1+1A + an1qn,
i = 1, 2, . . . , n 1
7.5 Estimadores de Estado
Diagrama de blocos do estimador de estado com operacao em
malha-aberta:
x
Estimador
Sistema
o
B+
+
u
A
Cx y
xo
B+
+
A
x^^
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 31
Diagrama de blocos do estimador de estado assintotico:
x
Estimador
Sistema
o
B+
+
u
A
Cx y
xo
B+
+
A
x^^
L
C
+
+
-
A equacao dinamica do estimador assintotico e
dx(t)
dt= (A LC)x(t) +Bu(t) + Ly(t)
O erro de estimacao definido como e(t) , x(t) x(t) possui a
seguinte equacao dinamica
de(t)
dt= (A LC)e(t)
Teorema: Se o par (A,C) e totalmente observavel, entao pode-
se determinar L tal que o estimador possua quaisquer autovalores
desejados.
Se todos os autovalores de (ALC) possuem parter real negativa,
entao
limt
e(t) = 0
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 32
Procedimento de projeto do estimador:
1. Q() = |I A| = n + an1n1 + . . . + a1 + a0
2. Qo() = ( 1) . . . ( n) = n + bn1
n1 + . . .+ b1+ b0
3. Lo =
b0 a0b1 a1
...
bn1 an1
4. q1 = M1o
0...1
T =[q1 Aq1 . . . A
n1q1]
5. L = TLo
MATLAB:
>> L = place(A,C,p)
onde p e um vetor com os polos desejados para o estimador.
7.6 Realimentacao de Estados atraves de Observadores
O estimador de estado calcula em tempo real x(t) a partir dos
sinais de entrada e sada do sistema, u(t) e y(t) e o vetor de estado
estimado x(t) e usado na realimentacao:
+ -
u(t)
K
r(t)y(t)
x(t)
Estimador
Planta
^
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 33
Considerando a acao de controle u(t) = r(t)Kx(t), as equacoes
do sistema em malha-fechada com realimentacao de estado baseada
em estimador de estado sao:
d
dt
[x(t)
dx(t)
]=
[A BK
LC ABK LC
] [x(t)
x(t)
]+
[B
B
]r(t)
y(t) =[C DK
] [ x(t)x(t)
]+Dr(t)
7.7 Regulador Linear Quadratico - LQR
O controlador linear quadratico, baseado na lei de realimentacao de
estado u(t) = Kx(t), e aquele que minimiza o funcional quadratico:
J(u) =
0
[xT (t)Qx(t) + uT (t)Ru(t) + 2xT (t)Nu(t)
]dt
sujeito a` dinamica do sistema:
dx(t)
dt= Ax(t) +Bu(t)
O ganho do controlador que minimiza o funcional e dado por
K = R1(BTS +NT )
sendo S = ST 0 a solucao da equacao de Ricatti:
ATS + SA (SB +N)R1(BTS +NT ) +Q = 0
O problema possui solucao se
par (A,B) e controlavel,
R 0,
QNR1NT 0.
-
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Goncalves 34
MATLAB:
>> K = lqr(A,B,Q,R,N)
onde se N for omitido, a matriz e considerada nula por padrao.
Exemplo: Controle de velocidade de um motor CC com acao inte-
gral:
Q =
1 0 00 1 00 0 1000
, R = 1 K = [ 1,09 4,73 31,62 ]
0 0.5 1 1.5 2 2.5 3 3.5 40
20
40
60
80
100
120
tempo (s)
e() = 0
Tl(t)=4,1Nm
ea(t)
r(t)
m
(t)