Controle de Processos p2

Fazer download em pdf ou txt
Fazer download em pdf ou txt
Você está na página 1de 68

Controle de Processos - Parte 2 - Prof.

Eduardo Nunes Gonçalves 1

5 Relação Entre as Várias Formas de Repre-


sentação de Sistemas

Equações Equações
Diferenciais de Estado

Função de Diagrama
Transferência de Simulação

5.1 Representação no espaço de estados


Estado do Sistema. O estado do sistema no instante t0 é o me-
nor conjunto de variáveis x1(t), x2(t), . . . , xn(t), denominadas
variáveis de estado, tal que o conhecimento destas variáveis em
t = t0 juntamente com o conhecimento da entrada u(t), para
t ≥ t0, determina completamente o comportamento do sistema
para t ≥ t0.
Nota: as variáveis de estado podem ter significado fı́sico, associ-
adas aos elementos que armazenam energia, ou matemático.
Sistemas fı́sicos podem ser representados por modelos no espaço
de estados na forma:
dx(t)
= f (x(t), u(t), t), y(t) = g(x(t), u(t), t)
dt
No caso de sistemas lineares invariantes no tempo (SLIT) a represen-
tação pode ser na forma:
dx(t)
= Ax(t) + Bu(t) : Equação de estado
dt
y(t) = Cx(t) + Du(t) : Equação de saı́da
sendo x ∈ Rn o vetor de variáveis de estado, u ∈ Rp o vetor de
variáveis de entradas e y ∈ Rq o vetor de variáveis de saı́da.
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 2

Exemplo. Circuito RLC


R L i
+ - + -

+ +
u C y=vc
- -

As variáveis de estado associadas com os elementos que armazenam


energia são: x(t) = [i(t) vc(t)]T . As equações de estado são:
d 1 1
i(t) = [u(t) − vr (t) − vc(t)] = [u(t) − Ri(t) − vc(t)]
dt L L
d 1
vc(t) = i(t)
dt C
A representação do espaço de estados é
   R 1
   1 
d i(t) − L −L i(t)
= 1 + L u(t)
dt vc(t) C 0 vc(t) 0
  i(t)
y(t) = 0 1
vc(t)
Exemplo. Controle de posição do Motor CC Controlador por
Armadura:
Ra La
ia
i f =cte

+
+
ea eb J
-
- ωm f
θm

Variáveis de estado associadas com os elementos que armazenam


energia: x(t) = [ia(t) ωm (t)]T .
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 3

No caso de controle de posição, x(t) = [ia (t) ωm (t) θm (t)]T . Para


linearizar o sistema (eliminar produto de variáveis) é considerado que
o transitório do circuito de campo é muito rápido de tal modo que
if (t) é considerada constante:
eb (t) = k1if (t)ωm(t) ≈ kbωm (t), Tm (t) = k2if (t)ia(t) ≈ kiia (t)
dia (t) 1
= [−Raia (t) − Kb ωm (t) + ea(t)]
dt La
dωm (t) 1
= [Kiia(t) − f ωm (t) − TL (t)]
dt J
dθm (t)
ω(t) =
dt
sendo TL(t) uma carga aplicada ao eixo do motor.
Considerando y(t) = θm (t):
   Ra Kb
   1 
ia(t) − La − La 0 ia(t) La 0  
d  e (t)
ωm (t)  = KJi − Jf 0   ωm (t)  +  0 − J1  a
 
dt Td (t)
θm (t) 0 1 0 θm (t) 0 0
 
  ia(t)
y(t) = 0 0 1  ωm (t) 
θm (t)
Para controle de velocidade, y(t) = ωm (t):
  " Ra Kb
#   1  
d ia (t) − − La ia(t) La 0 ea(t)
= KLi a +
dt ωm (t) J − Jf ωm (t) 0 − J1 Td (t)
 
  ia(t)
y(t) = 0 1
ωm (t)
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 4

Exemplo. Controle de nı́vel:


Q u +q u (t)

H1+h1(t)
H2+h2(t)
k1
A1 A2
Q1+q (t) Q d +q d (t)
1

As variáveis de estado associadas com os elementos que armazenam


energia são: x(t) = [h1(t) h2(t)]T . A taxa de variação do volume é
igual a diferença entre a vazão total de entrada, qi , e a vazão total de
saı́da, qo :
dh(t)
A = qi(t) − qo(t)
dt
A vazão entre os dois tanques pode ser aproximada por uma relação
linear em torno de um ponto de operação:
p
q1(t) = k h1(t) − h2(t) ≈ k1[h1(t) − h2(t)]
As equações de estado são:
dh1(t) 1 dh2(t) 1
= [qu(t) − q1(t)], = [q1(t) − qd (t)]
dt A1 dt A2
A representação do espaço de estados é
  " #  " 1 # 
k1 k1
d h1(t) − A1 A1 h1(t) 0 qu (t)
= k1 k1 + A1 1
dt h2(t) A2  − A2 h2(t) 0 − A2 qd (t)

  h1(t)
y(t) = 0 1
h2(t)
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 5

5.2 Matriz de transferência


SLIT contı́nuos no tempo podem ser descritos pela representação
no espaço de estados:
dx(t)
= Ax(t) + Bu(t) : Equação de estado
dt
y(t) = Cx(t) + Du(t) : Equação de saı́da
sendo x(t) ∈ Rn, u(t) ∈ Rp e y(t) ∈ Rq . Aplicando a transformada
de Laplace na equação de estado:
sX(s) − x(0) = AX(s) + BU (s) ⇒ (sI − A)X(s) = x(0) + BU (s)
⇒ X(s) = (sI − A)−1 [x(0) + BU (s)]
Considerando x(0) = 0 e substituindo na transformada de Laplace
da equação de saı́da resulta na matriz de transferência:
Y (s) = C(sI − A)−1 BU (s) + DU (s) = [C(sI − A)−1B + D]U (s)
como Y (s) = G(s)U (s), a matriz de transferência é dada por:
 
G11(s) . . . G1p(s)
G(s) = C(sI − A)−1 B + D =  ... ... ... 
Gq1(s) . . . Gqp(s)
sendo
Yi(s)
Gi,j (s) =
Uj (s)
Pólos de G(s) = autovalores de A:
Cadj(sI − A)B + D|sI − A| N (s)
G(s) = C(sI−A)−1B+D = =
|sI − A| Q(s)
As raı́zes de Q(s) = |sI − A| = 0 são os pólos de G(s)
As raı́zes de Q(λ) = |λI − A| = 0 são os autovalores de A
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 6

Uma representação no espaço de estado de uma função de trans-


ferência G(s) é denominada uma realização de G(s), podendo ser
representado na forma compacta por:
 
A B
G(s) ,
C D
Nota: Existem diferentes possibilidades de realização de uma fun-
ção de transferência.

Exemplo 3.2 (modificado). Considere o modelo no espaço de


estado:    
0 1 1 1
ẋ(t) = x(t) + u(t)
 −2 −3  0 −2

0 −2 0 2
y(t) = x(t) + u(t)
1 0 0 0
A matriz de transferência é dada por:
 −1  
s −1 1 s+3 1
(sI − A)−1 = = 2
2 s+3 s + 3s + 2 −2 s
  
1 0 −2 s + 3 1
C(sI − A)−1 = 2
s + 3s + 2 1 0 −2 s
1 4 −2s
=
(s + 1)(s + 2) s + 3 1
  
1 4 −2s 1 1
C(sI − A)−1 B =
(s + 1)(s + 2)  s + 3 1 0 −2
1 4 4(s + 1)
=
(s + 1)(s + 2) s + 3 s + 1
 
4 4
−1
 (s + 1)(s + 2) s + 2 + 2 
G(s) = C(sI − A) B + D =   s+3 1


(s + 1)(s + 2) s+2
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 7

Exemplo Ponte T.
v c2
- +
C2
R R
i1 i2
+ +
+
vi (t) C1 v c1 v o (t)
-
- -

Definindo x = [vc1 vc2]T , as equações de estado são


dvc1 1 dvc2 1
= (i1 − i2), = i2
dt C1 dt C2
A saı́da é dada por
y = vo = vi + vc2
As correntes são dadas por:
vi − vc1 vc1 − vo vc1 − vc2 − vi
i1 = , i2 = =
R R R
substituindo nas equações de estado:
dvc1 [vi − vc1] − [vc1 − vc2 − vi ] 2vi − 2vc1 + vc2
= =
dt RC1 RC1
dvc2 vc1 − vc2 − vi
=
dt RC2
colocando na forma matricial:
  " 2 1
#  " 2 #
d vc1 − RC1 RC1 vc1 RC1
= 1 1 + 1 vi
dt vc2 RC2 − RC2 v c2 − RC2
 
  vc1
y= 0 1 + [1]vi
vc2
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 8

" #−1 " #


2 1 1 1
s + RC 1 s
− RC + RC
(sI − A)−1 = 1
1 1
1 2 = 1
2 RC1
− RC2 ∆s + RC2 s + RC 1 RC2
  
2 1 1
∆= s+ s+ − 2
RC1 RC2 R C1 C2
 
2 1 1
∆ = s2 + + s+ 2
RC1 RC2 R C1 C2
1h 1 2
i
C(sI − A) = RC2 s + RC1
 ∆  
1 2 1 2 1 1
C(sI − A)B = − s + = − s
∆ R2C1C2 RC2 RC1 ∆ RC2
1
1 1 ∆ − RC s
G(s) = C(sI − A)−1 B + D = − s+1= 2
∆ RC2 ∆
2
s2 + RC 1
s + R2 C1 C
G(s) =   1 2
2 1 1
s2 + RC 1
+ RC 2
s + R 2C C
1 2

R2C1C2s2 + 2RC2s + 1
G(s) = 2
R C1C2s2 + (2RC2 + RC1) s + 1
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 9

5.3 Diagramas de simulação


Diagramas de simulação podem ser utilizados para obter realiza-
ções no espaço de estados de funções de transferência. Diagramas
de simulação utilizam apenas 3 elementos para representar sistemas:
somador, multiplicador (ganho) e integrador.
Considere a equação diferencial:
dny(t) dn−1y(t) dy(t)
+ a n−1 + . . . + a 1 + a0y(t) = b0u(t)
dtn dtn−1 dt
n
Usando blocos integradores pode-se obter y(t) a partir de d dty(t)n :

(n) (n-1) oo o
y(t) y(t) y(t) y(t) y(t)
ooo

dn y(t)
A entrada do integrador à esquerda, dtn ,
pode ser obtida expli-
citando este termo na equação diferencial:
dny(t) dy(t) dn−1 y(t)
= −a0y(t) − a1 − . . . − an−1 + b0u(t)
dtn dt dtn−1
(n) (n-1) oo o
u(t) + y(t) y(t) y(t) y(t) y(t)
b0 ooo
o x 3(t)
x n (t) x 2(t) x1(t)
+ + x n (t) o o o
xn-1(t) x2(t) x1(t)
ooo -an-1

o
o
o

-a0

Representações no espaço de estados podem ser obtidas definindo


as saı́das de cada bloco integrador como variáveis de estado xi(t) (a
entrada do integrador será dxdti (t) ). Definindo as variáveis de estado
como mostrado na figura resulta:
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 10

      
x1 0 1 0 ... 0 x1 0
 x   0 0 1 0  x   0 
2  2
d  ..
 
  .. .
.. ... ...   ..
 
  ..


 . = .  .  + . u
dt       
 xn−1   0 0 0 ... 1   xn−1   0 
xn −a0 −a1 −a2 . . . −an−1 xn b0
 
x1
 x 
 2 
  .. 
y = 1 0 0... 0  . 
 
 xn−1 
xn

Exemplo. Circuito RLC


R L i
+ - + -

+ +
u C y=vc
- -

R
Para y(t) = vc(t) = 1
C
i(t)dt ⇒ i(t) = C dvdtc(t) , então
di(t)
Ri(t) + L + vc(t) = ea(t) ⇒ LC ÿ(t) + RC ẏ(t) + y(t) = u(t)
dt
1
Y (s) 1 LC
= = 1
U (s) LCs2 + RCs + 1 s2 + RL s + LC
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 11

Explicitando a derivada de mais alta ordem


R 1 1
ÿ(t) = − ẏ(t) − y(t) + u(t)
L LC LC
Definindo x1(t) = y(t) e x2(t) = ẏ(t), a representação do espaço de
estados é
      
d x1(t) 0 1 x1(t) 0
= 1 R + 1 u(t)
dt x2(t) − LC − L x2(t) LC
  x1(t)
y(t) = 1 0
x2(t)
5.4 Forma canônica de variáveis de fase ou forma canô-
nica controlável
Equação diferencial de alta ordem ou F.T ⇒ Espaço de Estados
dn y(t) dn−1 y(t) dy(t)
Caso 1: + a n−1 + . . . + a 1 + a0y(t) = u(t)
dtn dtn−1 dt
Y (s) 1
G(s) = = n
U (S) s + an−1sn−1 + . . . + a1s + a0

As variáveis de estado podem ser definidas como:


dx1(t)
x1(t) , y(t) ⇒ = x2(t)
dt
dy(t) dx2(t)
x2(t) , ⇒ = x3(t)
... dt ... dt ...
dn−1y(t) dxn(t) dn y(t)
xn (t) , ⇒ =
dtn−1 dt dtn
dxn(t) dny(t) dy(t) dn−1 y(t)
= = −a0y(t) − a1 − . . . − an−1 + u(t)
dt dtn dt dtn−1
= −a0x1(t) − a1x2(t) − . . . − an−1xn(t) + u(t)
Que corresponde a seguinte realização no espaço de estados:
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 12

      
x1 0 1 0 ... 0 x1 0
 x   0 0 1 0  x  0
2  2
d  ..
 
  .. .
.. ... ...   ..
  
  .. 
 . = .  .  +  . u
dt       
 xn−1   0 0 0 ... 1   xn−1  0
xn −a0 −a1 −a2 . . . an−1 xn 1
 
x1
 x 
 2 
  .. 
y = 1 0 0... 0  . 
 
 xn−1 
xn
Exemplo. Considere o modelo:
1
ÿ(t) + 6ẏ(t) + 8y(t) = u(t) ⇔ G(s) =
s2 + 6s + 8
Uma realização para a função de transferência é dada por:
   
0 1 0
ẋ(t) = x(t) + u(t)
 −8 −6 1
y(t) = 1 0 x(t)
oo o
u(t) + y(t) y(t) y(t)
o
x2(t) x 2(t) x1(t)
+ + o
x1(t)
-6

-8
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 13

Caso 2:

dn y(t) dn−1 y(t) dy(t)


+ a n−1 + . . . + a 1 + a0y(t) =
dtn dtn−1 dt
dmu(t) dm−1u(t) du(t)
cm + cm−1 + . . . + c1 + c0 u(t), m ≤ n
dtm dtm−1 dt
Y (s) cm sm + cm−1 sm−1 + . . . + c1 s + c0
G(s) = = n
U (S) s + an−1sn−1 + . . . + a1s + a0
Definindo:

Y (s) = (cm sm + cm−1 sm−1 + . . . + c1s + c0)X1(s)

a equação diferencial pode ser re-escrita como:


dnx1(t) dn−1x1(t) dx1(t)
+ a n−1 + . . . + a 1 + a0x1(t) = u(t)
dtn dtn−1 dt
que é igual ao caso 1:
dx1(t) dx2(t) dxn−1 (t)
= x2(t), = x3(t), . . . , = xn(t)
dt dt dt
dxn(t)
= −a0x1(t) − a1x2(t) − . . . − an−1xn (t) + u(t)
dt
O que muda é a relação entre y(t) e x1(t):
dmx1(t) dm−1x1(t) dx1(t)
y(t) = cm + cm−1 + . . . c1 + c0x1(t)
dtm dtm−1 dt
Caso m < n
y(t) = cmxm−1 (t) + cm−1 xm−2(t) + . . . + c1 x2(t) + c0x1(t)

Que corresponde a seguinte equação de saı́da:


 
 x
 .1
y = c0 c1 . . . cm 0 . . . 0  .. 
xn
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 14

Exemplo. Considere o modelo:


2s + 6
ÿ(t) + 6ẏ(t) + 8y(t) = 2u̇(t) + 6u(t) ⇔ G(s) =
s2 + 6s + 8
Para cancelar a derivada de u(t), defini-se:
y(t) = 2ẋ1(t) + 6x1(t) ⇔ Y (s) = (2s + 6)X1(s)
Substituindo Y (s) na equação do modelo:
(s2 + 6s + 8)Y (s) = (2s + 6)U (s)
⇒ (s2 + 6s + 8)(2s + 6)X1(s) = (2s + 6)U (s)
⇒ (s2 + 6s + 8)X1(s) = U (s)
Uma realização para a função de transferência
   
0 1 0
ẋ(t) = x(t) + u(t)
 −8 −6 1
y(t) = 6 2 x(t)

u(t) + x 2(t) + y(t)


o
6
o x1(t) +
+ + x2(t) x1(t)

-6

-8
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 15

Caso m = n
dxn(t)
y(t) = cn + cn−1 xn(t) + cn−2 xn−1 (t) + . . . + c1 x2(t) + c0x1(t)
dt
= cn [−a0x1(t) − a1x2(t) − . . . − an−1xn (t) + u(t)]
+c0 x1(t) + c1x2(t) + . . . + cn−2 xn−1(t) + cn−1 xn(t)
= (c0 − cn a0)x1(t) + (c1 − cn a1)x2(t) + . . .
+(cn−1 − cn an−1)xn(t) + cn u(t)

Que corresponde a seguinte equação de saı́da:


 
x 1
 ′ ′  .
y = c0 c1 . . . cn−1  ..  + cnu(t)

xn
sendo c′k = ck − cn ak .
Y (s) c′n−1 sn−1 + . . . + c′1s + c′0
G(s) = = cn + n
U (S) s + an−1sn−1 + . . . + a1s + a0

c'n-1
o
o
o
o
x n (t)
o +
u(t) x n (t) x1(t) x1(t) y(t)
ooo c'0
+ + x2(t) + +
+ +

ooo -an-1

o
o
o

-a1

-a0

cn
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 16

Exemplo. Considere o modelo:


ÿ(t) + 6ẏ(t) + 8y(t) = 2ü(t) + 16u̇(t) + 30u(t)
2s2 + 16s + 30 4s + 14
⇔ G(s) = 2 =2+ 2
s + 6s + 8 s + 6s + 8
Para cancelar as derivadas de u(t), defini-se:
y(t) = 2ẍ1(t) + 16ẋ1(t) + 30x1(t) ⇔ Y (s) = (2s2 + 16s + 30)X1(s)
A saı́da em termos de variáveis de estado é
ẍ1(t) = −6ẋ1(t) − 8x1(t) + u(t) = −6x2(t) − 8x1(t) + u(t)
y(t) = 2[−6x2(t) − 8x1(t) + u(t)] + 16x2(t) + 30x1(t)
= 4x2(t) + 14x1(t) + 2u(t)
Uma realização para a função de transferência
   
0 1 0
ẋ(t) = x(t) + u(t)
 −8 −6
 1
y(t) = 14 4 x(t) + [2]u(t)

x 2(t) + +
u(t) + y(t)
o
14
o x1(t) +
+ + x2(t) x1(t)

-6

-8
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 17

5.5 Forma canônica de Jordan

Considere um sistema monovariável com todos pólos reais e distin-


tos, cuja F.T. pode ser decomposta em frações parciais:
cn sn + cn−1 sn−1 + . . . + c1 s + c0 f1 fn
G(s) = = cn + +. . .+
sn + an−1sn−1 + a1s + a0 s − λ1 s − λn

1 1
Y (s) = G(s)U (s) = f1 U (s) + . . . + fn U (s) +cn U (s)
s −
| {z1λ } s −
| {z λ n }
Z1 (s) Zn (s)

Definindo a variáveis de estado canônicas como:


1
Zi (s) , U (s) ⇒ (s − λi )Zi(s) = U (s)
s − λi
żi(t) − λizi (t) = u(t) ⇒ żi(t) = λizi (t) + u(t)
A realização da função de transferência na forma canônica de jor-
dan (ou forma desacoplada ou forma normal) é
      
z1(t) λ1 0 . . . 0 z1(t) 1
. 
 z2(t)   0 λ2 . . . ..   z2(t)   1 
d      
 . = .   .  +  .  u(t)
dt  ..   .. . . . . . . 0   ..   .. 
zn (t) 0 . . . 0 λn zn (t) 1

 
z1 (t)
y(t) = f1 f2 . . . fn  ...  + cn u(t)
 

zn(t)
Na realização na forma canônica,
 
eλ 1 t 0
dz(t) ...
= An z(t) ⇒ z(t) = Φn(t)z(0), Φn(t) = eAn t =  
dt
0 eλ n t
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 18

o
u(t) z 1 (t) z 1 (t)
f1
+
+

-λ1 o
o +
o
y(t)
o
o + +
o
o
z n (t) z n (t)
fn
+
+

-λn

cn

Exemplo. Considere o modelo:


ÿ(t) + 6ẏ(t) + 8y(t) = 2ü(t) + 16u̇(t) + 30u(t)
2s2 + 16s + 30 4s + 14
⇔ G(s) = = 2 +
s2 + 6s + 8 s2 + 6s + 8
f1 f2
= 2+ +
s+2 s+4
sendo
4s + 14 4s + 14
f1 = = 3, f2 = =1
s + 4 s=−2 s + 2 s=−4
Uma realização para a função de transferência
   
−2 0 1
ẋ(t) = x(t) + u(t)
 0 −4
 1
y(t) = 3 1 x(t) + [2]u(t)
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 19

o +
u(t) x1(t) x1(t) y(t)
3
+ +
+ +

-2

o
x2(t) x 2(t)
1
+
+

-4

5.6 Transformação de similaridade

Seja x(t) e x(t) dois conjuntos diferentes de variáveis de estado de


um mesmo sistema. Se x(t) e x(t) podem ser relacionados por

x(t) = T x(t) ou x(t) = T −1x(t)


onde a matriz T ∈ Rn×n , não singular, é denominada matriz de
transformação, então:
ẋ(t) = Ax(t) + Bu(t) ⇒ T ẋ(t) = AT x(t) + Bu(t)
⇒ ẋ(t) = T −1AT x(t) + T −1 Bu(t) = Ax(t) + Bu(t)
y(t) = Cx(t) + Du(t) = CT x(t) + Du(t) = Cx(t) + Du(t)
sendo
A = T −1AT, B = T −1B, C = CT
   
A B T −1 AT T −1B
G(s) = =
C D CT D
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 20

Exemplo. Circuito RLC


   R 1
   1 
d i(t) − L −L i(t)
= 1 + L u(t)
dt vc(t) C
0 vc(t) 0
 
  i(t)
y(t) = 0 1
vc(t)
Deseja-se obter as equações em função de x(t) = [vc(t) vR (t)]T :
x(t) = T x(t), x(t) = T −1x(t)
   1       
i(t) 0 R vc(t) vc(t) 0 1 i(t)
= , =
vc(t) 1 0 vR (t) vR (t) R 0 vc(t)
   1 
0 1 − RL − L1 0 R
A = T −1 AT = 1
R 0 C
0 1 0
" #   
1
C 0 0 R1 0 RC1
A= 2 =
− RL − RL 1 0 − RL − RL
  1
  
0 1 0
B = T −1B = L = R
R 0 0 L

 
 0 1   
C = CT = 0 1 R = 1 0
1 0
   1
   
d vc(t) 0 RC vc(t) 0
= + u(t)
dt vR (t) − RL − RL vR (t) R
L
 
  vc(t)
y(t) = 1 0
vr (t)

dvR (t) di(t) R


=R = [u(t) − vR (t) − vc(t)]
dt dt L
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 21

5.7 Diagonalização da matriz A

Se os autovalores forem todos distintos, então existe uma matriz


T , denominada matriz modal, tal que
 
λ1 0
A = T −1 AT = An =  ... 
0 λn
Reescrevendo
   
AT =T An ⇒ A v1 v2 . . . vn = v1 v2 . . . vn An
⇒ Av1 Av2 . . . Avn = λ1v1 λ2v2 . . . λnvn
Cada coluna da matriz modal é igual a um autovetor da matriz A:
 
T = v1 v2 . . . vn sendo Avi = λi vi e vi α adj(λiI − A)

Nota: Na forma canônica de variáveis de fase


 
1 1 ... 1
 λ λ2 ... λn 
   1 
 2 
T = v 1 v 2 . . . v n =  λ1 λ22 ... λ2n 
 .. ... ... 
 . 
λn−1
1 λn−1
2 . . . λn−1
n

Nota: A matriz de transição de estados Φ(t)


d
x(t) = Ax(t) ⇒ x(t) = Φ(t)x(0), Φ(t) = eAt
dt
pode ser calculada a partir da matriz modal
 λt 
e1 0
Φ(t) = T ΦnT −1, Φn = eAnt =  ... 
0 eλ n t
Exemplo. Considere o sistema
   
2 −2 2
ẋ(t) = x(t) + u(t)
 12 −8 3
y(t) = 5 −2 x(t) + [2]u(t)
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 22

Os autovalores da matriz A são:



λ−2 2
|λi − A| =
−12 λ + 8
= λ2 + 6λ + 8 = (λ + 2)(λ + 4) = 0
Os autovetores da matriz A são
 
λi + 8 −2
vi α adj(λi − A) =
12 λi − 2
 
6 −2
λ1 = −2 ⇒ v1 α
12 −4
 
4 −2
λ2 = −4 ⇒ v1 α
12 −6
Adotando
   
  1 1 3 −1
T = v1 v2 = , T −1 =
2 3 −2 1
O sistema transformado é dado por:
   
−2 0 3
ẋ(t) = x(t) + u(t)
 0 −4 −1
y(t) = 1 −1 x(t) + [2]u(t)
3 × 1 (−1) × (−1) 3 1
G(s) = 2 + + =2+ +
s+2 s+4 s+2 s+4

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 Gonçalves 23

6 Propriedades de Sistemas Representados no Espaço


de Estados

Além da propriedade de estabilidade serão consideradas mais


duas propriedades de sistemas representados no espaço de estados.

Controlabilidade ⇒ existência da solução do problema de con-


trole.
r(t) u(t) o x(t) y(t)
x(t)=Ax(t)+Bu(t) C
+
_

Observabilidade ⇒ possibilidade de estimar as variáveis de es-


tado que não podem ser medidas.
r(t) u(t) o x(t) y(t)
x(t)=Ax(t)+Bu(t) C
+
_

Estimador

^
x(t)
K

Controlabilidade + Observabilidade ⇒ condições para equi-


valência completa entre funções de transferência e representação no
espaço de estados.
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 24

6.1 Estabilidade segundo Lyapunov

Definição: O sistema dinâmico contı́nuo ẋ(t) = Ax(t) é dito


ser estável se somente se todos os autovalores de A, λi(A), estão no
semi-plano esquerdo aberto, isto é, Re{λi(A)} < 0, ∀i. A matriz A
com essa propriedade é chamada de estável ou Hurwitz.

Em 1892 o matemático russo Alexander Mikhailovitch Lyapunov


introduziu a teoria de estabilidade para sistemas lineares e não-lineares.
Segundo Lyapunov, pode-se checar a estabilidade de um sistema en-
contrando uma função V (x), chamada função de Lyapunov, que para
sistemas invariantes no tempo deve satisfazer
V (x) > 0, V (0) = 0
dV ∂V dx
V̇ (x) = = ≤0
dt ∂x dt
Exemplo (Ogata):
Sistema não-linear descrito no espaço de estados:
dx1(t)
= x2(t) − x1(t)[x21(t) + x22(t)]
dt
dx2(t)
= −x1(t) − x2(t)[x21(t) + x22(t)]
dt
Função candidata de Lyapunov:
V (x) = x21(t) + x22(t)
A derivada da Função de Lyapunov é
dV (x)
dt
= 2x1(t) dxdt1(t) + 2x2(t) dxdt2(t)
= 2x1(t){x2(t) − x1(t)[x21(t) + x22(t)]}
+2x2(t){−x1(t) − x2(t)[x21(t) + x22(t)]}
= −2[x21(t) + x22(t)][x21(t) + x22(t)] = −2[x21(t) + x22(t)]2 ≤ 0
Portanto o sistema é assintoticamente estável.
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 25

Definições:
Matriz definida positiva P = P T ≻ 0 ⇒ xT P x > 0 ∀ x 6= 0 ⇔
λi(P ) > 0 ∀ i
Matriz semi-definida positiva P = P T  0 ⇒ xT P x ≥ 0 ∀ x 6=
0 ⇔ λi(P ) ≥ 0 ∀ i
Matriz definida negativa P = P T ≺ 0 ⇒ xT P x < 0 ∀ x 6= 0 ⇔
λi(P ) < 0 ∀ i
Matriz semi-definida negativa P = P T  0 ⇒ xT P x ≤ 0 ∀ x 6=
0 ⇔ λi(P ) ≤ 0 ∀ i

Para o sistema ẋ(t) = Ax(t), a função de Lyapunov poder ser a


função quadrática V (x) = xT (t)P x(t), P = P T ≻ 0, que atende as
primeiras duas condições. A terceira condição resulta em
V̇ (x) = ẋT P x + xT P ẋ = xT AT P x + xT P Ax
= xT (AT P + P A)x < 0
Teorema: O SLIT contı́nuo, ẋ(t) = Ax(t), é assintoticamente
estável se somente se existe uma matriz simétrica definida positiva
P = P T ≻ 0, tal que
AT P + P A ≺ 0
Equivalentemente, O SLIT contı́nuo, ẋ(t) = Ax(t), é assintoti-
camente estável se somente se existem matrizes simétricas definidas
positivas P = P T ≻ 0 e Q = QT ≻ 0 que atendem à equação
algébrica se Lyapunov:
AT P + P A = −Q

Teorema: O SLIT contı́nuo, ẋ(t) = Ax(t), y(t) = Cx(t), é


assintoticamente estável se somente se o par (A, C) é observável e
a equação algébrica de Lyapunov possui uma única solução definida
positiva
AT P + P A = −Q, P = P T > 0, Q = CT C ≥ 0
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 26

Equivalentemente, o sistema ẋ(t) = Ax(t) é estável se existe X =


X T ≻ 0, X = P −1, tal que XAT + AX ≺ 0.

P −1(AT P + P A)P −1  0 ⇒ P −1AT + AP −1  0

MATLAB: X = lyap(A,Q) resolve a equação de Lyapunov: AX+


XAT + Q = 0.

Exemplo: Considere o sistema ẋ(t) = Ax(t), y(t) = Cx(t),


 
0 1 0  
A=  0 0 1 , C= 1 0 0

−1 −2 −3
O palpite incial para Q é Q = I.
No MATLAB, X=lyap(A,eye(3)) resulta:
 
5 −0,5 −1,5
X =  −0,5 1,5 −0,5  , λi (X) = {0,19; 1,78; 5,53}
−1,5 −0,5 1
⇒ X ≻ 0 ⇒ sistema assintoticamente estável.

Para Q = C T C, no MATLAB, P=lyap(A’,C’*C) resulta:


 
1,9 1,8 0,5
P =  1,8 2,8 0,9  , λi(P ) = {0,002; 0,54; 4,5}
0,5 0,9 0,3
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 27

6.2 Controlabilidade
Definição: O sistema dinâmico ẋ(t) = Ax(t) + Bu(t) ou o par
(A, B) é controlável (todos os estados são controláveis) 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 solução da equação
de estado satisfaça x(t1) = x1. Caso contrário, o sistema ou o par
(A, B) é dito ser não controlável.
⇒ u(t) deve influenciar cada variável de estado na equação:
X(s) = (sI − A)−1 x(0) + (sI − A)−1BU (S)
= Φ(s)x(0) + Φ(s)BU (s)
Z t
⇒ x(t) = Φ(t)x(0) + Φ(τ )Bu(t − τ )dτ
0

Existem várias formas de verificar se o sistema é de estado contro-


lável.
1. O par (A, B) é controlável se somente se a matriz de controla-
bilidade:
 
Mc , B AB A2B . . . An−1 B ∈ Rn×np
possui posto n (posto de linha completo). Sendo n o número de
variáveis de estados.
Nota: se o sistema possuir uma entrada, posto Mc = n ⇔ |Mc| 6= 0.
Se o sistema possui múltiplas entradas, posto Mc = n ⇔ |McMcT | 6=
0

MATLAB:
≫ Mc=ctrb(A,B)
≫ G=ss(A,B,C,D)
≫ Mc=ctrb(G)
≫ rank(Mc)
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 28

Exemplo. Considere o circuito:


i c1 i c2
+ R R
u
- + +
C y=vc1 C y=vc2
- -

O modelo no espaço de estados é dada por:


   1
   1

d vc1(t) − RC 0 vc1(t) RC
= 1 + 1 u(t)
dt vc2(t) 0 − RC vc2(t) RC
A matriz de controlabilidade é
 1

 
RC − R21C 2
Mc = B AB = 1
RC − R21C 2
Como |Mc| = 0 o par (A, B) é não controlável.

2. Uma entrada u(t) que resulta em x(t1) = x1 é dada por:


T (t −t)
u(t) = −B T eA 1 Wc(t1)−1(eAt1 x0 − x1)
sendo Z t
T
Wc(t) , eAτ BB T eA τ dτ
0
Desse modo o sistema é controlável se somente se a matriz Wc(t)
possui posto completo (é definida positiva) para qualquer t > 0.
Para sistemas estáveis, é necessário analisar apenas P , Wc(∞),
isto é, o par (A, B) é controlável se somente se o gramiano de con-
trolabilidade Z ∞
T
P , eAτ BB T eA τ dτ
0
é definido positivo (P ≻ 0) e desta forma possui posto completo n.
P pode ser obtido da solução da equação de Lyapunov:
AP + P AT = −BB T
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 29

MATLAB:
≫ P=lyap(A,B*B’)
≫ P = gram(G,’c’)
≫ eig(P) % controlável se λi(P ) > 0, ∀i

3. Seja qi∗A = λiqi∗. O sistema é de estado controlável se somente


se B ∗qi 6= 0, ∀i.
B ∗qi = 0 ⇒ modo natural eλi t não controlável.

MATLAB:
≫ [Q,P] = eig(A’)
≫ Q = conj(Q)
≫ B’*Q

Exemplo: Considere um SLIT representado por:


 
−2 −2 1
s+2 1
G(s) =  0 −4 1  = =
(s + 2)(s + 4) s + 4
1 0 0
1. A matriz de controlabilidade possui duas linhas (ou colunas)
dependentes
 
  1 −4
Mc = B AB = , |Mc| = 0 ⇒ posto Mc = 1 < 2
1 −4
2. O gramiano de controlabilidade é singular (|P | = 0)
 
0,125 0,125
P =
0,125 0,125
3. Os autovalores de A são λ1 = −2 e λ2 = −4 e os corresponden-
tes autovetores esquerdos são q1 = [0,707 − 0,707]T e q2 = [0 1]T ,
tal que,
B ∗q1 = 0 (e−2t não controlável)
B ∗q2 = 1 6= 0 (e−4t controlável)
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 30

6.3 Observabilidade

Definição: O sistema dinâmico ẋ(t) = Ax(t) + Bu(t), y(t) =


Cx(t) + Du(t) ou o par (A, C) é observável (todos os estados são
observáveis) se, para algum t1 > 0, o estado inicial x(0) = x0 puder
ser determinado a partir da história no tempo do sinal de entrada
u(t) e do sinal de saı́da y(t) no intervalo [0, t1]. Senão o par (A, C)
é dito ser não observável.

⇒ Cada variável de estado deve influenciar y(t) na equação:


Z t
y(t) = CΦ(t)x(0) + C Φ(τ )Bu(t − τ )dτ + Du(t)
0

1. O par (A, C) é observável se somente se a matriz de observabi-


lidade  
C
 
 CA 
Mo =  ...  ∈ Rqn×n
 
CAn−1
possui posto n (posto completo de coluna).
Nota: Se o sistema possuir uma saı́da, posto Mo = n ⇔ |Mo| 6= 0.
Se o sistema possui múltiplas saı́das, posto Mo = n ⇔ |MoT Mo| 6= 0
MATLAB:
≫ Mo=obsv(A,C)
≫ Mo=obsv(G)
≫ rank(Mo)
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 31

Exemplo. Considere o circuito:


i1 R1

u ic
iL L
i2
+ - +
u R2 C y=vc
-

O modelo no espaço de estados é dada por:


  " #   
R1 R1
d iL (t) −L 0 iL(t) L
= 1 + 1 u(t)
dt vc(t) 0 − R2 C vc(t) C
 
  iL(t)
y(t) = 0 1
vc(t)
A matriz de observabilidade é
   
C 0 1
Mo = =
CA 0 − R12C
Como |Mo| = 0 o par (A, C) é não observável.
Exemplo. Considere o sistema de controle de nı́vel:
Q u +q u (t)

H1+h1(t)
A1

Q1+q (t)
1

H2+h2(t)
A2

Q2+q (t)
2
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 32

O modelo no espaço de estados é dada por:


  " #   1 
k1
d h1(t) − A1 0 h1(t)
= k1 k2 + A1 qu (t)
dt h2(t) A2  − A2 h2(t) 0

  h1(t)
y(t) = 1 0
h2(t)
A matriz de observabilidade é
  " #
C 1 0
Mo = =
CA − Ak11 0

Como |Mo| = 0 o par (A, C) é não observável.


2. O par (A, C) é observável se a matriz
Z t
T
Wo , eA τ C T CeAτ dτ
0

é difinida positiva para todo t > 0. Para sistemas estáveis, o par


(A, C) é observável se somente se o gramiano de observabilidade
Z ∞
T
Q, eA τ C T CeAτ dτ
0

possui posto n (ser definido positivo).


O gramiano de observabilidade, Q, pode ser obtido como a solução
da equação de Lyapunov
AT Q + QA = −C T C

MATLAB:
≫ Q=lyap(A’,C’C)
≫ Q = gram(G,’o’)
≫ eig(Q) % observável se λi(Q) > 0, ∀i

3. Seja Avi = λi vi. O sistema é observável se somente se Cvi 6=


0, ∀i.
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 33

MATLAB:
≫ [V,An]=eig(A)
≫ C*V

Exemplo: Considere o sistema,


 
0 1 0 0
  s−2
 0 0 1 0
G(s) =  =
 24 2 −5 1  (s + 4)(s + 3)(s − 2)
−2 1 0 0
1. Analisando a matriz de observablidade verifica-se que o sistema
não é observável:
 
−2 1 0
Mo =  0 −2 1  , |Mo| = 0 ⇒ posto Mo < 3
24 2 −7
2. Gramiano de observabilidade (sistema é instável):
 
1,45 −0,56 −0,08
Q =  −0,56 0,22 0,03  , λi(Q) = {0; 0,0053; 1,67}
−0,08 0,03 0,006
3. Testando cada modo natural, com λi(A) = {−4; −3; +2},
 
−0,06 −0,10 −0,22
C[v1 v2 v3] = C  0,24 0,31 −0,44  = [0,36 0,52 0]
−0,97 −0,94 −0,87
⇒ v3 ⇔ e2t não observável.
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 34

6.4 Controlabilidade e observabilidade na forma canô-


nica de Jordan
      
z1(t) λ1 0 ...0 z1 (t) b1
d    ... ...    
 z2(t)   0 λ2   z2 (t)   b2 
 . = . ... ...   ..  +  ..  u(t)
dt  ..   .. 0  .   . 
zn (t) 0 ... 0 λn zn(t) bn

 
z1 (t)
y(t) = c1 c2 . . . cn  ...  + Du(t)
 

zn(t)
• Se não existir nenhuma linha totalmente nula em Bn, então todas
as variáveis de estado são afetadas por u(t) ⇒ sistema controlá-
vel.
• Se não existir nenhuma coluna totalmente nula em Cn, então
todas as variáveis de estado afetam pelo menos uma das saı́das
⇒ sistema observável.
• linha bi = 0 ⇒ eλi t é não controlável
• coluna ci = 0 ⇒ eλi t é não observável

6.5 Relação entre controlabilidade, observabilidade e


funções de transferência

Teorema: Se ocorrer cancelamento de pólo com zero em


G(s)=Y(s)/U(s), então o sistema será ou não controlável ou não ob-
servável de acordo com a escolha das variáveis de estado. Se não
ocorrer cancelamento de pólo com zero então o sistema será contro-
lável e observável.
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 35

Sc

r(t) y(t)
Sco
+ +

So

Su

G(s) = Cco(sI − Aco)Bco + D

Exemplo. Considere o modelo no espaço de estados:


   
−2 0 1
ẋ(t) = x(t) + u(t)
 −1 −1
 1
y(t) = 0 1 x(t)
Os autovalores (polos) são:

λ+2 0
|λI − A| = = (λ + 2)(λ + 1) = 0
1 λ+1
A função de transferência pode ser calculada como:
 
1 s + 1 0
(sI − A)−1 =
(s + 1)(s + 2) −1 s + 2
1  
C(sI − A)−1 = −1 s + 2
(s + 1)(s + 2)
s+1 1
G(s) = C(sI − A)−1B = =
(s + 1)(s + 2) s + 2
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 36

O cancelamento de zero e polo significa que o modo natural e−t é ou


não controlável e/ou não observável. Verificando a controlabilidade:
 
1 −2
Mc = [B AB] = ⇒ |Mc| = 0
1 −2
⇒ sistema é não controlável.
Verificando a observabilidade:
   
C 0 1
Mo = = ⇒ |Mc| = 1 6= 0
CA −1 −1
⇒ sistema é totalmente observável. A matriz de similaridade que
transforma o sistema para forma canônica é composta pelos autove-
tores:  
λi + 1 0
vi α adj(λi − A) =
−1 λi + 2
   
−1 0 1
λ1 = −2 ⇒ v1 α adj(λ1 − A) = ⇒ v1 =
−1 0 1
   
0 0 0
λ1 = −1 ⇒ v2 α adj(λ2 − A) = ⇒ v2 =
−1 1 1
Para T = [v1 v2], o sistema na forma canônica é obtido como:
   
−2 0 1
ż(t) = z(t) + u(t)
 0 −1
 0
y(t) = 1 1 z(t)
Como os autovalores são reais e distintos, pode ser analisado cada
modo natural individualmente: e−2t é controlável e observável e e−t
não é controlável e é observável.
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 37

6.6 Realização Mı́nima

Definição: Uma realização no espaço de estados (A, B, C, D) de


G(s) é dita ser uma realização mı́nima de G(s) se A possui a menor
dimensão possı́vel (menor número de estados). A dimensão mı́nima
e denominada grau de McMillan de G(s).
Somente os modos naturais controláveis e observáveis contribuem
para o comportamento entrada-saı́da de u(t) para y(t). Uma reali-
zação no espaço de estados é minima se somente se o par (A, B) é
controlável e o par (A, C) é observável.
Um modo natural é escondido se ele é não controlável e/ou não
observável, não aparecendo na realização mı́nima. Pólos não con-
troláveis e/ou não observáveis são cancelados por zeros de G(s) =
C(sI − A)−1B + D.

MATLAB:
≫ Gm = minreal(G)

Exemplo: Considere o sistema,


 
0 1 0 0
  s−2
 0 0 1 0
G(s) =   =
 24 2 −5 1  (s + 4)(s + 3)(s − 2)
−2 1 0 0
A realização mı́nima é obtida como
 
−8,627 −3,3440 −0,3746
1
Gm(s) =  7,785 1,6270 0,3127  =
(s + 4)(s + 3)
−1,433 −1,717 0
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 38

6.6 Realização Balanceada

A realização mı́nima em que os gramianos de controlabilidade e


observabilidade são iguais e na forma de uma matriz diagonal
 
h1 0 . . . 0
 
 0 h2 0  p
Pb = Qb =  .. . . . ...  , hi = λi(P Q), i = 1, . . . , n
 . 
0 0 . . . hn
é conhecida como realização balanceada. Os valores h1 > h2 > . . . >
hn > 0, são conhecidos como valores singulares de Hankel. O valor
singular de Hankel hi é proporcional à influência da variável de estado
xi(t) na relação entre o vetor de entradas u(t) e o vetor de saı́das y(t).

MATLAB:
≫ [Gb,g] = balreal(Gm)
calcula a realização balanceada, Gb, a partir da realização mı́nima,
Gm, e retorna também o vetor de valores singulares de Hankel, g.

Exemplo: Considerando a realização mı́nima do exemplo anterior,


a realização balanceada e os graminanos são:
 
−1,012 2,437 0,3186
1
Gb(s) =  −2,437 −5,988 0,3186  =
(s + 4)(s + 3)
0,3186 −0,3186 0
 
0,0501 0
Pb = Qb =
0 0,0085

6.7 Redução de modelos


A partir da realização balanceada é possı́vel obter uma aproxima-
ção de ordem reduzida do sistema eliminado as variáveis de estado
associadas com os valores singulares de Hankel que são relativamente
pequenos.
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 39

Exemplo: Considere o sistema estável, controlável e observável com


a seguinte realização no espaço de estados:
 
−2 0 −0,5 0,5 1 5
 1 −2 0,5 −0,5 1 8 
 
 
 −10,5 3 −7 2 4,5 7 
G(s) =  
 −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
Através do comando balreal, são calculados os valores singula-
res de Hankel como: {5,6; 2,6; 0,2; 0,02; 0,001}. Relativamente, as
duas primeiras variáveis de estado da forma balanceada possuem peso
maior na relação entrada e saı́da 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,2)
≫ sysr = modred(sisb,[3 4 5])
ou
≫ sysr = balred(sis,2)
 
−0,9641 1,1782 −3,2770
G(s) ≈ Gr (s) =  −1,1782 −0,2135 −1,0586 
−3,2770 1,0586 0,5111
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 40

Step Response
10

8
a
2 ordem
7

6
a
Amplitude

5 ordem
5

0
0 2 4 6 8 10 12
Time (sec)

Bode Diagram
40

20
Magnitude (dB)

2a ordem
0

−20
5a ordem

−40
45

2a ordem
0
Phase (deg)

−45

5a ordem
−90
0.1 1 10 100 1000
Frequency (rad/sec)
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 41

7 Projeto de Sistemas de Controle no Espaço de Es-


tados

Configuração de um sistema de controle generalizado:


w z
P v
u

Sendo w o vetor de variáveis exógeneas (sinais de referência, dis-


túrbios e ruı́dos), z o vetor de variáveis controladas (sinais de erro,
variáveis manipuladas etc.), v o vetor de variáveis medidas (entradas
do controlador) e u o vetor de variáveis de controle ou manipuladas
(saı́das do controlador).
O objetivo de projeto é determinar o controlador K tal que o
sistema seja estável, apresente uma resposta transitória adequada e
o efeito das variáveis exógenas sobre as variáveis controladas seja
minimizado.
 T
Quando v(t) = x(t) = x1 . . . xn , ou seja, todas as variáveis
de estado são medidas (ou estimadas) para seremutilizadas como
entradas para o controlador, e K = k1 . . . kn é um vetor de
ganhos, tem-se o controle por realimentação de estados.
Se v(t) 6= x(t) o controle
 pode ser controle
 por realimentação está-
tica de saı́da, para K = k1 . . . kq , ou controle por realimentação
dinâmica de saı́da se
 
Ak Bk
K(s) = Ck (sI − Ak )−1Bk + Dk =
C k Dk
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 42

7.1 Forma Canônica Controlável

Considere um sistema linear, monovariável, invariante no tempo,


expresso em termos de variáveis de estado gerais:
 
Y (s) A B c′n−1 sn−1 + . . . + c′1s + c′0
G(s) = = = cn + n
U (S) C D s + an−1sn−1 + . . . + a1s + a0
Se o sistema é totalmente controlável, então existe uma matriz
T , x(t) = T xc(t), que transforma o sistema para forma canônica
controlável, Ac = T −1AT , Bc = T −1B e Cc = CT :
   
0 1 0 ... 0 0
 0 0 1 0    0
dxc(t)  ..  
.
.. . .. . .
..  xc(t) +  .. 
 
= .  u(t)
dt    
 0 0 0 ... 1  0
−a0 −a1 −a2 . . . −an−1 1

 
y = c′0 c′1 . . . c′n−1 xc(t) + cnu(t)

A matriz de controlabilidade do sistema na forma canônica con-


trolável é
Mcc = [Bc Ac Bc . . . An−1
c Bc ] = [T
−1
B T −1AT T −1B . . .]
= T −1[B AB . . . An−1 B] = T −1 Mc
⇒ T Mcc = Mc ⇒ T = McMcc−1
A matriz T pode ser calculada por um dos três modos:
 
a1 . . . an−1 1
.
 ..

−1
 n−1 1 0
1) T = McMcc = B AB . . . A B  ... 
 an−1 1 
1 0 ... 0
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 43

 
q1
 
 qA   −1
2) T −1 =  1..

 sendo q1 = 0 . . . 0 1 Mc
 . 
q1An−1
 
3) T = q1 q2 . . . qn sendo qn = B, qn−i = Aqn−i+1 + an−i qn ,
i = 1, . . . , n − 1.

Exemplo. Considere o modelo no espaço de estados:


   
−2 3 1
ẋ(t) = x(t) + u(t)
 0 −4  −1
y(t) = −2 −4 x(t)
 
1 −5
Mc = [B AB] = ⇒ |Mc| = −1 6= 0
−1 4
Como o sistema é totalmente controlável, existe matriz T que trans-
forma o sistema para forma canônica controlável.

λ + 2 −3
|λI − A| = = λ2 + 6λ + 8
0 λ+4
então
    
1 −5 6 1 1 1
T = McMcc−1 = =
−1 4 1 0 −2 −1
ou    
1 4 5 −4 −5
Mc−1 = =
−1 1 1 −1 −1 = q1
   
q1 −1 −1
T −1 = =
q1A 2 1
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 44

7.2 Controle por Posicionamento de Pólos Através de


Realimentação de Estados
D

r(t) u(t) o x(t) + y(t)


x(t)=Ax(t)+Bu(t) C
+ - +

Se o sistema for totalmente controlável, através da ação de controle


u(t) = r(t) − Kx(t)
onde K = [k1 k2 . . . kn] é um vetor de ganhos, é possı́vel
posicionar os autovalores (pólos) do sistema em malha-fechada em
qualquer posição desejada:
dx(t)
= Ax(t) + B[r(t) − Kx(t)] = (A − BK) x(t) + Br(t)
dt | {z }
Af

y(t) = Cx(t) + D[r(t) − Kx(t)] = (C − DK) x(t) + Dr(t)


| {z }
Cf

Teorema: se o par [A, B] é controlável, então através da reali-


mentação de estado u(t) = r(t) − Kx(t) os autovalores de
Af = A − BK podem ser escolhidos de acordo com K.

Obs.: os zeros de malha-fechada são iguais aos zeros de malha-


aberta.
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 45

Demonstração:
Se o sistema é totalmente controlável então existe x(t) = T xc(t)
tal que Ac = T −1 AT e Bc = T −1B:
   
0 1 0 ... 0 0
 0 0 1 0    0

dxc(t)  ..  
.
.. . . .
. . ..  xc(t) +  .. 
 
= .  u(t)
dt    
 0 0 0 ... 1  0
−a0 −a1 −a2 . . . an−1 1

Para u(t) = r(t) − Kx(t) = r(t) − KT xc(t) = r(t) − Kcxc(t), com


Kc = KT ⇔ K = KcT −1 , então Ac,f = Ac − BcKc:
   
0 1 0 ... 0 0
 0 0 1 
0  0 
 
 .. .
. . . .
.   .
.  
Ac,f =  . . . .  −  .  Kc,1 . . . Kc,n
   
 0 0 0 ... 1  0
−a0 −a1 −a2 . . . −an−1 1
 
0 1 0 ... 0
 0 0 1 0 
 

Ac,f =  .
.
. .
.
. . . . .
.
.


 
 0 0 0 ... 1 
−a0 − kc,1 −a1 − kc,2 −a2 −kc,3 . . . −an−1 − kc,n
Qf = |λI−Ac,f | = λn +(an−1+kc,n )λn−1+. . .+(a1+kc,2 )λ+(a0+kc,1)
sendo que Qf pode ser qualquer polinômio desejado uma vez que
cada coeficiente depende de um ganho do controlador:
ai + kc,i+1 = ai ⇒ kc,i+1 = ai − ai, i = 1, . . . , n
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 46

Procedimento de projeto
 do controlador: dados os auto-
valores (polos) desejados λ1, . . . , λn ,
1. Q(λ) = |λI − A| = λn + an−1λn−1 + . . . + a1λ + a0
2. Qf (λ) = (λ − λ1) . . . (λ − λn) = λn + an−1 λn−1 + . . . + a1λ + a0
 
3. Kc = a0 − a0 a1 − a1 . . . an−1 − an−1
 
4. q1 = 0 . . . 0 1 Mc−1
 
q1
 
−1  q1A 
T = ... 
 
q1An−1
5. K = KcT −1
Este procedimento pode ser substituı́do por uma única equação,
denominada fórmula de Ackerman:
K = [0 . . . 0 1]Mc−1Qf (A)
MATLAB:
>> K = place(A,B,p)
onde p é um vetor com os pólos desejados para o sistema em malha-
fechada.
Exemplo. Considere o modelo no espaço de estados:
   
−2 3 1
ẋ(t) = x(t) + u(t)
 0 −4  −1
y(t) = −2 −4 x(t)

λ + 2 −3
|λI − A| = = λ2 + 6λ + 8 = (λ + 2)(λ + 4) = 0
0 λ+4
Deseja-se que o sistema com realimentação de estados passe a ter os
autovalores (polos) {−5; −6}:
Qf (λ) = (λ + 5)(λ + 6) = λ2 + 11λ + 30
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 47

Kc = [30 − 8 11 − 6] = [22 5]
 
1 −5
Mc = [B AB] = ⇒ |Mc| = −1 6= 0
−1 4
   
1 4 5 −4 −5
Mc−1 = =
−1 1 1 −1 −1 = q1
   
q1 −1 −1
T −1 = =
q1A 2 1
K = KcT −1 = [−12 − 17]
Uma outra possibilidade de projeto é escrever o sistema em malha
fechada em função de K = [k1 k2]:
   
−2 3 1
Af = A − BK = − [k1 k2]
 0 −4 −1 
−2 − k1 3 − k2
=
k1 −4 + k2
 
λ + 2 + k1 −3 + k2
Qf (λ) = |λI − Af | =
−k1 λ + 4 − k2
= λ2 + (6 + k1 − k2)λ + 8 − 2k2 + 4k1 − k1k2 − 3k1 + k1k2
= λ2 + (6 + k1 − k2)λ + 8 + k1 − 2k2 = λ2 + 11λ + 30
Igualando os coeficiente de mesma potência e resolvendo o sistema de
equações lineares resultante obtém-se o ganho:
    
1 −1 k1 11 − 6
= ⇒ K = [−12 − 17]
1 −2 k2 30 − 8
Este tipo de projeto é interessante para sistemas reguladores cujo
objetivo é retornar o sistema para um ponto de equilı́brio (ou ponto
de operação) com r(t) = 0. Considere x(0) = [1 − 1]T .
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 48

Response to Initial Conditions


2
MA
MF

1.5

1
Amplitude

0.5

-0.5
0 0.5 1 1.5 2 2.5
Time (seconds)

Para sistemas de rastreamento, a saı́da se iguala ao sinal de re-


ferência tipo degrau se o ganho de regime estacionário for unitário,
Kss = 1. Para esse projeto:

Kss = C(sI − A) B + D s=0 = C(−A)−1B + D = 0,2
−1

Step Response
0.8
MA
MF
0.7

0.6

0.5
Amplitude

0.4

0.3

0.2

0.1

0
0 0.5 1 1.5 2 2.5 3
Time (seconds)
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 49

Exemplo. Considere o modelo no espaço de estados:


   
−2 0 1
ẋ(t) = x(t) + u(t)
 −1 −1
 1
y(t) = 0 1 x(t)
Os autovalores (polos) são:

λ+2 0
|λI − A| = = (λ + 2)(λ + 1) = 0
1 λ+1
A função de transferência é:
s+1 1
G(s) = C(sI − A)−1B = =
(s + 1)(s + 2) s + 2
Verificando a controlabilidade:
 
1 −2
Mc = [B AB] = ⇒ |Mc| = 0
1 −2
⇒ sistema é não controlável e não é possı́vel calcular K para que
A − BK possua quaisquer autovalores:
   
−2 0 1
Af = A − BK = − [k1 k2]
 −1 −1 1 
−2 − k1 −k2
=
−1 − k1 −1 − k2
 
λ + 2 + k1 k2
Qf (λ) = |λI − Af | =
1 + k1 λ + 1 + k2
= λ2 + (3 + k1 + k2)λ + 2 + k1 + k2
Igualando os coeficiente de mesma potência e resolvendo o sistema de
equações lineares resultante obtém-se o ganho:
    
1 1 k1 ᾱ1 − 3
=
1 1 k2 ᾱ0 − 2
⇒ não tem solução a menos que ᾱ1 − 3 = ᾱ0 − 2 ⇒ ᾱ1 − ᾱ0 = 1.
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 50

Exemplo. Controle de velocidade de um motor CC, controlado por


armadura, por posicionamento de pólos através de realimentação de
estado. Considere o modelo linear invariante no tempo:
  " #   1 
Ra Kb
d ia (t) − La − La ia(t)
= Ki B + La ea (t)
dt ωm (t) J
−J ωm (t) 0
 
  ia(t)
y(t) = 0 1 + [0]ea(t)
ωm (t)
Os parâmetros do motor são: Ra = 1Ω , La = 50mH, J = 0,1Kgm,
B = 0,01Nms/rad e Ki = Kb = 0,5Vs/rad:
      
d ia (t) −20 −10 ia(t) 20
= + ea (t)
dt ωm(t) 5 −0,1 ωm (t) 0

Deseja-se Qf (λ) = s2 + 2ζωn s + ωn2 , ζ = 0,707 e ωn = 10


 
⇒ K = −0,3 0,486 .

120

Tl(t)=4,1Nm

100 r(t)

ωm(t) e(∞) ≠ 0
80

60
e (t)
a

40

20

0
0 0.5 1 1.5 2 2.5 3 3.5 4
tempo (s)
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 51

7.3 Realimentação de Estado com Ação Integral


Para eliminar o erro de regime estacionário, deve-se introduzir uma
ação integral no sistema acrescentando (fisicamente) a seguinte variá-
vel de estado no sistema:
dz(t)
= e(t) = r(t) − y(t) = r(t) − Cx(t) − Du(t)
dt
Com esta variável adicional o sistema passa a ser:
        
d x(t) A 0 x(t) B 0
= + u(t) + r(t)
dt z(t) −C 0 z(t) −D 1

= Ax(t) + Bu(t) + Bf r(t)


 
  x(t)
y(t) = C 0 + Du(t) = Cx(t) + Du(t)
z(t)
Adotando a ação de controle:
  Z t
  x(t)
u(t) = −Kx(t) = − K ki = −Kx(t) − ki e(τ )dτ
z(t) 0

é introduzido a ação integral na lei de controle. O sistema de malha


fechada resultante é:
dx(t)
= (A − BK) x(t) + Bf r(t)
dt | {z }
Af

y(t) = (C − DK)x(t)

Se o par (A, B) é controlável, é possı́vel calcular K de modo que


o sistema em malha-fechada seja estável, então
dz(t)
lim = 0 ⇒ r(t) = y(t) para t → ∞
t→∞ dt
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 52

Exemplo: Controle de velocidade de um motor CC com ação inte-


gral:
        
ia −20 −10 0 ia 20 0
d 
ωm  =  5 −0,1 0   ωm  +  0  ea +  0  r
dt
z 0 −1 0 z 0 1
 
  i a
y = 0 1 0  ωm  + [0]ea + [0]r
z

o
ea(t) ia(t) ia(t)
20 k1
+ + +
+ +
+
-20
5
-10
-0,1
o
w m (t) w m (t)
k2
y(t)
o
r(t) - z(t) z(t)
ki
+

 
20 −400 7000
2
Mc = [B AB A B] =  0 100 −2010  , |Mc| = −200000 6= 0
0 0 −100
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 53

Deseja-se Qf (λ) = (s + a)(s2 + 2ζωn s + ωn2 ), a = 20, ζ = 0,707 e


ωn = 10
 
⇒ K = 0,7 3,286 −20 .
Controle RE+I
100

i
a
80 wm
z
r

60
x(t)

40

20

-20
0 0.5 1 1.5 2 2.5 3 3.5 4
Time (s)

120

Tl(t)=4,1Nm

100
r(t)

ω (t) e(∞) = 0
m
80

60

ea(t)

40

20

0
0 0.5 1 1.5 2 2.5 3 3.5 4
tempo (s)
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 54

7.4 Forma Canônica Observável


Considere um sistema linear, monovariável, invariante no tempo,
expresso em termos de variáveis de estado gerais:
 
Y (s) A B c′n−1 sn−1 + . . . + c′1s + c′0
G(s) = = = cn + n
U (S) C D s + an−1sn−1 + . . . + a1s + a0
Se o sistema é totalmente observável, então existe uma matriz T
que transforma o sistema para forma canônica observável: x(t) =
T xo(t):
   

0 0 . . . 0 −a0 c0
 1 0 . . . 0 −a   c′ 
 1   1 
dxo(t)  .
.. −a2  xo(t) + 
 
=0 1  c′2  u(t)
dt  .. ... 0 ...   .. 
.   . 
0 . . . 0 1 −an−1 c′n−1
 
y(t) = 0 0 . . . 0 1 xo(t) + [cn]u(t)
A matriz T pode ser calculada por um dos três modos abaixo:
  
a1 . . . an−1 1 C
 ..  
−1 −1  . 1 0   CA 
1) T = Moo Mo =  ...   ... 
 an−1 1  
n−1
1 0 ... 0 CA
 
0
   ... 
 
2) T = q1 Aq1 . . . An−1 q1 sendo q1 = Mo−1  
0
1
 
q1
 
q 
3) T =  ..2  sendo qn = C e qn−1 = qn−1+1A + an−1 qn,
−1
 . 
qn
i = 1, 2, . . . , n − 1
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 55

7.5 Estimadores de Estado


Diagrama de blocos do estimador de estado com operação em
malha-aberta:
o
u x x y
B C
+
+
A
Sistema

o
^x x^
B
+
+
A
Estimador

Diagrama de blocos do estimador de estado assintótico:


o
u x x y
B C
+
+
A
Sistema

+
L
o -
+ ^x x^
B C
+
+
A
Estimador
A equação dinâmica do estimador assintótico é
dx̂(t)
= (A − LC)x̂(t) + Bu(t) + Ly(t)
dt
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 56

A equação dinâmica do erro de estimação, e(t) , x(t) − x̂(t), é


˙
ė(t) = ẋ(t) − x̂(t)
= Ax(t) + Bu(t) − [(A − LC)x̂(t) + Bu(t) + Ly(t)]
= Ax(t) − (A − LC)x̂(t) − LCx(t)
= (A − LC)x(t) − (A − LC)x̂(t) = (A − LC)[x(t) − x̂(t)]
= (A − LC)e(t)
Teorema: Se o par (A, C) é totalmente observável, então pode-
se determinar L tal que o estimador possua quaisquer autovalores
desejados. Se todos os autovalores de (A − LC) possuem parter real
negativa, então
lim e(t) = 0
t→∞
Procedimento de projeto  do estimador: dados os autova-
lores desejados para A − LC, λ1, . . . , λn ,
1. Q(λ) = |λI − A| = λn + an−1λn−1 + . . . + a1λ + a0
2. Qo (λ) = (λ − λ1) . . . (λ − λn) = λn + bn−1 λn−1 + . . . + b1λ + b0
 
b0 − a0
 
 b1 − a1 
3. Lo =  ... 
 
bn−1 − an−1
 
0
−1  .. 
4. q1 = Mo .
1
 
T = q1 Aq1 . . . An−1 q1
5. L = T Lo
MATLAB:
>> L = place(A’,C’,p)’
onde p é um vetor com os autovalores desejados.
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 57

7.6 Realimentação de Estados através de Observadores


O estimador de estado calcula em tempo real x(t) a partir dos
sinais de entrada e saı́da do sistema, u(t) e y(t), e o vetor de estado
estimado x̂(t) é usado na realimentação:
u(t) y(t)
r(t) Planta
+ -

Estimador

^x(t)
K

Considerando a ação de controle u(t) = r(t) − K x̂(t), as equações


do sistema em malha-fechada com realimentação de estado baseada
em estimador de estado são:

      
d x(t) A −BK x(t) B
= + r(t)
dt x̂(t) LC A − BK − LC x̂(t) B
 
  x(t)
y(t) = C −DK + Dr(t)
x̂(t)
ou

      
d x(t) A − BK +BK x(t) B
= + r(t)
dt e(t) 0 A − LC e(t) 0
 
  x(t)
y(t) = C − DK DK + Dr(t)
e(t)
onde pode ser observado que os autovalores do controle por reali-
mentação de estados baseado em observador são os autovalores de
A − BK mais os autovalores de A − LC (Teorema da Separação).
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 58

Exemplo. Considere o modelo no espaço de estados:


   
−2 3 1
ẋ(t) = x(t) + u(t)
 0 −4  −1
y(t) = −2 −4 x(t)

λ + 2 −3
|λI − A| = = λ2 + 6λ + 8 = (λ + 2)(λ + 4) = 0
0 λ+4
Deseja-se que o sistema com realimentação de estados passe a ter os
autovalores (polos) {−5; −6} ⇒ K = [−12 − 17]. Considerando a
necessidade de utilizar um observador de estados para implementar
a realimentação de estados, adota-se
Qo = (λ + 25)(λ + 30) = λ2 + 55λ + 750
  
750 − 8 742
L0 = =
55 − 6 49
   
C −2 −4
Mo = = ⇒ |Mo| = −4 6= 0
CA 4 10
   
1 10 4 −1
Mo−1 = ⇒ q1 =
−4 −4 −2 1/2
 
  −1 7/2
T = q1 Aq1 =
1/2 −2
 
−570,5
L = T L0 =
273
ou    
−2 3 L1  
A − LC = − −2 −4
 0 −4 L2 
−2 + 2L1 3 + 4L1
=
2L2 −4 + 4L2

λ + 2 − 2L1 −3 − 4L1
Q0 = = λ2+(6−2L1−4L2)λ+8−8L1−14L2
−2L2 λ + 4 − 4L2
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 59

Para [x(0) x̂(0)]T = [0 0 − 0,20899 0,1]T . (Obs.: L1/L2 =


−2,0899)
0.1
x
1
x
2
0.05 xc
1
xc
2

-0.05
x

-0.1

-0.15

-0.2

-0.25
0 0.2 0.4 0.6 0.8 1 1.2
t

0.25
sem obs
com obs

0.2

0.15
y

0.1

0.05

0
0 0.2 0.4 0.6 0.8 1 1.2
t
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 60

Para [x(0) x̂(0)]T = [0 0 − 0,1 0,1]T


1
x
1
x2
0.5 xc
1
xc
2

-0.5
x

-1

-1.5

-2
0 0.2 0.4 0.6 0.8 1 1.2
t

0.3
sem obs
com obs
0.2

0.1

-0.1
y

-0.2

-0.3

-0.4

-0.5
0 0.2 0.4 0.6 0.8 1 1.2
t

dx(t)
Obs.: Para sistemas com pertubações, = Ax(t) + Bu(t) +
dt
Bdd(t), o erro não tende a zero:
de(t)
= (A − LC)e(t) + Bdd(t)
dt
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 61

Exemplo. Considerando o controle por realimentação de estados


baseado em observador de estados para o motor CC com um distúrbio
aplicado no instante 2s com duração de 0,5s, com x(0) = [0 0 0 50]T .
 
50
Q0 = (λ + 35)(λ + 40) ⇒ L =
54,9

90

real
80
estimado

70

60

50
ia

40

30

20

10

-10
0 0.5 1 1.5 2 2.5 3 3.5 4
Tempo

100

90

80 real
estimado

70

60
m

50
w

40

30

20

10

0
0 0.5 1 1.5 2 2.5 3 3.5 4
Tempo
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 62

Exemplo. Motor CC com ação integral e observador de estados,


com um distúrbio aplicado no instante 2s e x(0) = [0 0 0 50]T . Para
K = [K ki], com u(t) = K x̂(t)+kiz(t), o sistema em malha-fechada,
é dado por
      
x A −BK −Bki x 0 Bd  
d    r
x̂ = LC A − BK − LC −Bki  x̂ + 0 0 
dt d
z −C 0 0 z 1 0

100
real
estimação

50
ia

-50
0 1 2 3 4 5 6
Tempo

100
real
estimação
r
80

60
wm

40

20

-20
0 1 2 3 4 5 6
Tempo
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 63

7.7 Regulador Linear Quadrático - LQR

O regulador linear quadrático, baseado na lei de realimentação de


estado u(t) = −Kx(t), é aquele que minimiza o funcional quadrático:
Z ∞
 T T

J(u) = x (t)Qx(t) + u (t)Ru(t) dt
0

sujeito à dinâmica do sistema:


dx(t)
= Ax(t) + Bu(t)
dt
O ganho do controlador que minimiza o funcional é dado por

K = R−1 B T S
sendo S = S T ≻ 0 a solução da equação algébrica de Riccati:

AT S + SA − SBR−1 B T S + Q = 0
A solução da equação de Riccati é calculada a partir dos autove-
tores da matriz Hamiltoniana:
 
A −BR−1B T
H=
−Q −AT
O problema possui solução se
• par (A, B) é controlável,
• R ≻ 0,
• Q  0.
O controlador LQR garante margem de ganho Kg = ∞ e margem
de fase γ ≥ 60o.
Se for desejado ponderar as saı́das ao invés do estado, y T W y, W 
0, basta adotar Q = C T W C tal que xT Qx = xT C T W Cx = y T W y.
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 64

MATLAB:
>> K = lqr(A,B,Q,R)
ou
>> sis = ss(A,B,C,D)
>> K = lqr(sis,Q,R)
Exemplo: Controle de velocidade de um motor CC com ação inte-
gral:
 
1 0 0  
Q =  0 0 0  , R = 1 ⇒ K = 1,0754 4,6147 −31,6228
0 0 1000

λi(A − BK) = {−26,7534; −7,4274 ± 7,9394i}

120

Tl(t)=4,1Nm

100
r(t)

ωm(t) e(∞) = 0
80

60

ea(t)

40

20

0
0 0.5 1 1.5 2 2.5 3 3.5 4
tempo (s)
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 65

7.8 Controle H∞

A norma 2 de um sinal é dada por:


Z ∞
ke(tk22 = e2(t)dt
−∞
Quando a integral é finita, então e(t) ∈ l2. A norma H∞ de uma
função de transferência relaciona o máximo ganho entre as normas 2
do sinal de entrada e saı́da:
kz(t)k2
kTzw (s)k∞ = max
w(t)∈l2 kw(t)k2

Para sistemas SISO a norma H∞ do sistema é


kTzw (s)k∞ = max Tzw (jω)
ω
Uma forma de cálculo da norma H∞ é através de desigualdade
matricial linear (LMI):
min µ
X,µ
 
AX + XAT B XC T
s.a: X = X T ≻ 0,  BT −µI D T  ≺ 0
CX D −µI
sendo kTzw k∞ = µ.
Considerando a estrutura de controle generalizado, o controle H∞
por realimentação de estado u(t) = Kx(t) pode ser caracterizado
como
min µ
X,Z,µ

s.a: X = X T ≻ 0
 
AX + XAT + Bu Z + Z T BuT Bw XCzT + Z T Dzu
T

 BwT −µI T
Dzw ≺0
Cz X + Dzu Z Dzw −µI
sendo K = ZX −1 e kTzw k∞ = µ.
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 66

Exemplo: Controle de velocidade de um motor CC com ação inte-


gral. Seja w(t) = [r(t) Tl (t)]T e z(t) = x3(t) + wu ea(t):
        
ia −20 −10 0 ia 0 0   20
d  r
ωm  =  5 −0,1 0  ωm + 0 −10  + 0 ea
dt Tl
x3 0 −1 0 x3 1 0 0
 
  i a 
 
 r
z = 0 0 1  ωm  + 0 0 + [wu ]ea
Tl
x3

 
wu = 0,3 ⇒ K = −0,3583 −1,6358 8,3935 105 ⇒ kTzw k∞ = 0,77

 5

λi(A + Bu K) = −7,1653 × 10 ; −15,2454; −7,6836

Softwares gratuitos: YALMIP (parser ) e SDPT3 ou SeDuMi (sol-


ver ).
120

100

ωm
80

60

40 ea

20

0
0 0.5 1 1.5 2 2.5 3 3.5 4
Tempo (s)
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 67

Pode-se incluir LMIs a mais no problema para outros tipos de


restrição. Para restringir o autovalores de A + BuK dentro do disco
de raio r:  
−rX AX + Bu Z
≺0
XAT + Z T BuT −rX
 
r = 60 ⇒ K = −3,1306 −14,3093 70,1090 ⇒ kTzw k∞ = 0,81

λi(A + Bu K) = {−59,7531; −15,2801; −7,6787}

120

100

wm
80
m
e ,w

60
a

ea
40

20

0
0 0.5 1 1.5 2 2.5 3 3.5 4
Time (s)
Controle de Processos - Parte 2 - Prof. Eduardo Nunes Gonçalves 68

7.9 Relação entre norma H∞ e margens de estabilidade


Teorema (Han et al. (2018)). Considere um sistema com realimen-
tação unitária em que o erro de rastreamento é dado por
1
E(s) =
1 + C(s)G(s)
se
kE(s)k∞ < ρ
então a margem de fase, denotada por φ, será
 
1
φ > 2 sin−1 , ρ ≥ 0,5

e a margem de ganho, denotada por gm , está no intervalo:
 
 ρ ρ
 ρ + 1 ρ − 1 , para ρ > 1,
,


gm =  

 ρ

 , ∞ , para ρ ≤ 1.
ρ+1

ρ = 0,50 ⇒ φ = 180◦, 0,09(−9,54db) ≤ gm ≤ ∞


ρ = 0,75 ⇒ φ = 83,62◦, 0,43(−7,36db) ≤ gm ≤ ∞
ρ = 1,00 ⇒ φ = 60,00◦, 0,50(−6,02db) ≤ gm ≤ ∞
ρ = 2,00 ⇒ φ = 28,96◦, 0,67(−3,52db) ≤ gm ≤ 2,00(6,02dB)

Você também pode gostar