Post on 07-Apr-2016
4
O que é o Controle Preditivo Multivariável
PC
carga
split-range
líquido condensado
gás nãocondensado
CA
TriSolutions [2]
6
FI
Controladavazão
Manipulada(Abertura)
retiradaproduto
TriSolutions [2]
7
FI
Setpoint FC
retiradaproduto
FC
Controladavazão
Manipuladaabertura
TriSolutions [2]
8
FI
Controladatemperatura
manipulada Setpoint FC
retiradaproduto
FC
TI
TriSolutions [2]
9
FI
retiradaproduto
FC
TI TC manipulada Setpoint FC
Controladatemperatura
TriSolutions [2]
10
FI
controlada
retiradaproduto
FC
TI TC
manipulada Setpoint TC
TriSolutions [2]
11
FI
retiradaproduto
FC
TI TC
manipulada Setpoint TC
ControladaPfe e vazão produtoCPM
Faixasde controle
TriSolutions [2]
12
OBJETIVOS
• Conceitos Básicos de Controle Preditivo• Fases de Implantação
– Elaboração do Projeto conceitual– Identificação de Processos– Ajustes dos modelos– Implantação– Sintonia
14
Problema de otimização
Elementos importantes na Otimização:• Função Objetivo• Variáveis• Restrições• Graus de Liberdade
Otimização
15
Função Objetivo
• Indicador quantitativo da solução• É um escalar• Funções econômicas (lucros,custos)• Critérios de desempenho
somatório dos erros ao quadrado
Otimização
16
Variáveis
• Dimensões de equipamentos• Condições de operação• Saídas para o controle regulatório (u)• As variáveis podem ser:
•Variáveis Independentes ou de decisão ou de otimização•Variáveis Dependentes
Otimização
17
Restrições
• Relação entre variáveis• Podem ser inequações ou equações
• Balanços geram equações• Limites de Operação geram inequações
Otimização
18
Graus de Liberdade
• Número de variáveis – Número de equações • Em uma simulação, o grau de liberdade é zero• Em um problema de otimização, o grau de liberdade deve ser maior que zero.
Otimização
19
O Problema de OtimizaçãoMin f(y,u,x)sujeito a:
h(y,u,x) = 0g(y,u,x) < 0onde:y: variáveis discretasx: variáveis contínuasu: variáveis de decisão
Otimização
20
Resolução de um Problema de OtimizaçãoPara resolver o problema de otimização:1. Programação Linear (LP)2. Programação Não Linear (NLP)3. Programação Quadrática (QP)4. Programação Mista Inteira Linear (MILP)5. Programação Mista Inteira Não Linear
(MINLP)
Otimização
21
1. Programação Linear (LP)
Todas funções são lineares → f, g e h são lineares
Não há variáveis discretas (y=0)
Otimização
22
2. Programação Não Linear (NLP)
Pelo menos uma função é não linear → f, g e/ou h não linear
Não há variáveis discretas (y=0)
Otimização
23
3. Programação Quadrática (QP)
É um caso especial da NLP onde a função objetivo é do tipo quadrática
Não há variáveis discretas (y=0)
Otimização
AXXXCxf TT
Quadrático
24
Otimização
2
222212121122
111
222121
21211121
2
1
2221
121121
xaxxaxxaxa
xaxaxaxa
xxxx
aaaa
xx
AXX T
25
4. Programação Mista Inteira Linear (MILP)
Todas funções são lineares → f, g e h são lineares
Há variáveis discretas (y≠0)
Otimização
26
5. Programação Mista Inteira Não Linear (NMILP)
Pelo menos uma função não é linear → f, g e/ou h não lineares
Há variáveis discretas (y≠0)
Otimização
27
Controladores Preditivos• Histórico dos MPC’s:
o MAC – Model Algorithmic Control – 1976o DMC – Dynamic Matrix Control – Cutler,
1979o LDMC – Linear Dynamic Matrix Control,
1983 - utilizado no SICON da Petrobraso QDMC – Quadratic Dynamic Matrix
Control – Morshedt, 1985
28
Algoritmo de Um MPC 1 - Através de um modelo implementado no controlador,
o MPC é capaz de realizar a predição do comportamento da saída do processo, levando em consideração as entradas de controle atuais e futuras.
2 - Esta predição deve ser corrigida, a cada intervalo de instante, por uma leitura da planta. Um MPC opera, tipicamente, com intervalos de tempo na faixa de um minuto.
3 - Em cada iteração, o controlador calcula uma sequência de ações de controle que minimiza a função do erro das saídas previstas até um horizonte definido como horizonte de predição. O tamanho desta sequência é definido como horizonte de controle.
29
Algoritmo de Um MPC
4 - Após resolver o problema de otimização descrito no item 3, o controlador implementa na planta apenas a primeira ação de controle dentre a sequência de ações calculadas que vão do intervalo de instante atual até o intervalo correspondente ao horizonte de controle m ajustado no controlador.
5 - O controlador aguarda o próximo intervalo de tempo para retornar ao item 1.
30
Controladores Preditivos• O MPC é baseado em modelos lineares.
• Representação do processoo Resposta ao impulsoo Resposta ao degrauo Através de funções de transferência
Contínua Y(s)/u(s) = GP(s)=Q(s)/P(s) Discreta Y(z)/u(z) = HGP(z)=Q(z)/P(z)
o Através de variáveis de estado (equações em espaço de estados) x(k+1)=Ax(k) + Bu(k) y(k) = Cx(k) + Du(k) → um sistema normalmente não
responde imediatamente a entrada. Portanto, em um sistema real, D = 0.
33
Resposta ao FIR
u y
1 2 3 41 2 3 4
1 pulso unitário
h1
h2
h3
h4
t t
Modelo obtido a partir da resposta ao impulso (FIR: Finitive Impulse Response)Não tem sentido se falar em impulso em um sistema digital. Apenas em pulso
unitário.hi : Valor da saída no instante i após a aplicação do pulso – coeficientes da
resposta ao impulso.
34
Resposta ao FIR
Considerando um período de estabilização N
1
N
jj
y k i h u k i j
iy k i hu k
Para um dado instante i
35
Resposta ao FIRSe considerarmos que a cada novo instante j, o MPC aplica um
pulso de valor u(k+j)
1 2 31 2 3
i
y k i h u k i h u k i h u k i
hu k
1
i
jj
y k i h u k i j
Portanto, no instante i genérico
37
Controladores Preditivos• Para a obtenção do modelo incremental (a partir de Δu), ao
invés do modelo posicional:
onde: u u uk i k i k i 1 1
y h uk ii
N
k i
11
1
y y h uk k ii
N
k i
11
1
y h uk ii
N
k i
1
39
Controladores Preditivos• Equação da Predição
'Pk N k
y Pk N k
y u
S1u S2u
y
kT
40
Controladores Preditivos• Equação da Predição para um horizonte de controle igual a 1
'1 1 1
P Pk kk k
y h u k y
'2 1 2 21P P
k kk ky h u k h u k y
'2 1 2 2
P Pk kk k
y h h u k y
'2 2 2
P Pk kk k
y S u k y
41
Controladores Preditivos
'3 1 2 3 32 1P P
k kk ky h u k h u k h u k y
'P Pk N N k Nk k
y S u k y
' '3 1 2 3 3 3 3
P P Pk k kk k k
y h h h u k y S u k y
• Generalizando para o instante N
42
Controladores Preditivos
• Equação da Predição para um horizonte de controle igual a 2
'Pk N k
y Pk N k
y u(k)
S1u S2u
y
kT
u(k+1)
43
Controladores Preditivos• Equação da Predição para um horizonte de controle igual a m
'1 1 1
P Pk kk k
y S u k y
'2 2 1 21P P
k kk ky S u k S u k y
'3 3 2 1 31 2P P
k kk ky S u k S u k S u k y
44
Controladores Preditivos• Equação da Predição para um horizonte de controle igual a m
1
'2 1
1
2 1
Pk m m mk
Pk m k
y S u k S u k
S u k m S u k m y
1 1
'2 1
1
+ 1
Pk m m mk
Pk m k
y S u k S u k
S u k m S u k m y
45
Controladores Preditivos• Equação da Predição
'11 1
'2 12 2
'1 1
Matriz Dinamica
0 010
1
P Pk kP Pk k
P PN N N mk N k Nk
u kSy yu kS Sy y
u k mS S Sy y
'P Py S u y 1Py N ' 1Py N 1u m
S N m
46
Função Objetivo
2 2 2 21 2 3min npJ e e e e
ondeei: erro entre setpoint e predição no instante
k+i
min TJ e e 1e np
48
DMC Caso SISO
'1 1 2 3 11 2P P
k kk ky h u k h u k h u k y
'1 11
P P Pk kk k kk
y y y
1 2 31 1 2P
kk
y h u k h u k h u k
49
DMC Caso SISO
11
1 (1)NP
ikk i
y hu k i
1 1
(2)NP
ikk i
y hu k i
11 1 1
1N NP P
i ik kk k i i
y y hu k i hu k i
11 1
1NP P
ik kk k i
y y h u k i u k i
11 1
1 (3)NP P
ik kk k i
y y h u k i
50
DMC Caso SISO
1 21 1 2
P P
k j k jk k
N
y y h u k j h u k j
h u k j N
11
(4)NP P
ik j k jk k i
y y h u k j i
Para um instante j qualquer
51
DMC Caso SISOIncluindo a realimentação
11
(5)NC C
ik j k jk k i
y y h u k j i
1 1
C C P P
k j k j k j k jk k k k
y y y y
1 1
C P C P
k j k j k j k jk k k k
y y y y
52
Predição do DMC Caso SISO
11
1NC C
ik kk k i
y y h u k i
1 2 31 1 2
C
k kk
y y h u k h u k h u k
1
112
1NC
ik kk i
y y h u k h u k i
1 11 (6)C
k kk
y y S u k
53
Predição do DMC Caso SISO
2 11
2NC C
ik kk k i
y y h u k i
1 2 3 42 1
desconhecido desconhecido conhecido conhecido
1 1 2C C
k kk k
y y h u k h u k h u k h u k
2
1 22 13
1 2NC C
ik kk k i
y y h u k h u k h u k i
54
Predição do DMC Caso SISO 1 1 1 2 22 1
C
k kk
y y S u k h u k h u k
1 1 2 1 22 1C
k kk
y y h u k S h u k
2 1 1 22 1 (7)C
k kk
y y S u k S u k
55
Predição do DMC Caso SISO
3 21
3NC C
ik kk k i
y y h u k i
1 2 3 43 2
desconhecido desconhecido desconhecido conhecido
2 1 1C C
k kk k
y y h u k h u k h u k h u k
3
1 2 33 24
2 1 3NC C
ik kk k i
y y h u k h u k h u k h u k i
56
Predição do DMC Caso SISO
1 2 1 2 1 2 3 33 1 2 1C
k kk
y y S u k S u k h u k h u k h u k
3 2 1 1 2 33 1 2 (8)C
k kk
y y S u k S u k S u k
57
Predição do DMC Caso SISO
1
j
j nn
P
1 11
C
k kk
y y S u k P
2 1 22 1C
k kk
y y S u k S u k P
3 2 1 33 1 2C
k kk
y y S u k S u k S u k P
1 2 11 2 1C
j j j jk j kk
y y S u k S u k S u k S u k j P
58
Predição do DMC Caso SISO
1
11
22 12
3 2 13
1 2 3 11
1 2 2 1
0 0 0 00 0 0 1
0 0 2
0 21
C kkC
kkCk
Cnp np npk np
Cnp np npk np k
y PS u kyy PS S u ky
S S S u ky
S S S S u k npyS S S S S u k npy
3
1
(9)k
npk
npk
y P
y P
y P
Ck
y S u y P
59
Predição do DMC Caso SISO
11
2 12
3 2 13
1 2 3 11
1 2 2 1
0 0 0 00 0 0 1
0 0 2
0 21
C kkCkCkSP SP
Cnp np npk np
Cnp np npk np k
yS u kyS S u kyS S S u ky
y y
S S S S u k npyS S S S S u k npy
1
2
3
1
k
k
npk
npk
P
y P
y P
y P
y P
11
2 12
3 2 13
1 2 3 11
1 2 2 1
0 0 0 00 0 0 1
0 0 2
0 21
SP Ck
SP Ck
SP Ck
SP Cnp np npk np
SP Cnp np npk np
S u ky yS S u ky yS S S u ky y
S S S S u k npy yS S S S S u k npy y
1
2
3
1
SPk
SPk
SPk
SPnpk
SPk npk
y y P
y y P
y y P
y y P
y y P
60
Predição do DMC Caso SISO
1 11
2 1 22
3 2 13
1 2 3 11
1 2 2 1
0 0 0 00 0 0 1
0 0 2
0 21
kk
kk
kk
np np npk np
np np npk np k
S e Pu keS S e Pu keS S S e Pu ke
S S S S u k npeS S S S S u k npe
3
1k np
k np
e Pe P
ke S u e P 'ke e P
' (10)e S u e
Definindo
61
Predição do DMC Caso SISO
11
2 12
3 2 13
1 2 3 11
1 2 2 1
0 0 0 00 0 0 1
0 0 2
0 21
k
k
k
np np np np mk np
np np np np m np mk np k
S eu keS S u keS S S u ke
S S S S u k meS S S S S u k me
1
2
3
1
k
k
k
k np
k np
Pe Pe P
e Pe P
1e np
1u m
' 1e np
S np m
62
Função Objetivo
' 'TJ S u e S u e
' ' ' 'T TT TJ S u e S u e u S e S u e
' ' ' 'T TT T T TJ u S S u u S e e S u e e
' (10)e S u e TJ e e
63
Função Objetivo
' '2 0 0TT TJ S S u S e e S
u
'2 2T TS S u S e 1 ' (11)T Tu S S S e
1u m
' 1e np
S np m
64
Função Objetivo Modificada
(12)T TJ e e u R u
1
2
00 0
0 0 m
RR
R
R
1 ' (13)T Tu S S R S e
65
k
Leitura da planta yk
e'=ySP- yk - Pk=k+1
Cálculo das ações de controle
Predição
Cálculo das ações passadas
Fluxograma DMC
1 'T Tu S S R S e
Ck
y S u y P 1
N
n ii n
h u k n i
1
j
j nn
P
66
O Problema MIMO
MIMO (nu X ny)
.
.
....
DMC Caso MIMO
1 2
TTnyy y y y
1 2TT
nuu u u u
67
DMC Caso MIMO
1 1
(2)NP
ikk i
y hu k i
, ,,1 1 1
N nuP
j l i lj kk i l
y h u k i
68
Para a variável controlada j = 1
DMC Caso MIMO
1,1,1 1 1,2,1 2 1, ,11,1
1,1,2 1 1, ,2
1,1, 1 1,2, 2 1, ,
1 1 1
2 2
P
nu nukk
nu nu
N N nu N nu
y h u k h u k h u k
h u k h u k
h u k N h u k N h u k N
, ,1 1
ny nu
j l iij l
H h
Para cada variável controlada j de 1 a ny
69
• Definindo
DMC Caso MIMO
11, 12, 1 ,
21, 22, 2 ,
1, 2, ,
i i nu i
i i nu ii
ny i ny i nynu i
h h hh h h
H
h h h
iH ny nu
70
DMC Caso MIMO
1 1
NP
ikk i
y H u k i
, ,,1 1 1
N nuP
j l i lj kk i l
y h u k i
71
A predição para o instante k+1
DMC Caso MIMO
1
1
1NP
ikk i
y H u k i
1
1 1 1 1
1 1N N NP P
i i ik kk k i i i
y y H u k i H u k i H u k i
1 1
NP
ikk i
y H u k i
72
Generalizando a predição para o instante k+j
DMC Caso MIMO
1 1
NP P
ik j kk k j i
y y H u k j i
73
Corrigindo a predição
DMC Caso MIMO
1 1
C P C P
k j k j k j k jk k k k
y y y y
1 1
C C P P
k j k j k j k jk k k k
y y y y
1
1
NC C
ik j k jk k i
y y H u k j i
74
Predição j=1
DMC Caso MIMO
1
1
Valor Atual lido da Planta
1NC C
ik kk k i
y y H u k i
75
Predição j=1
DMC Caso MIMO
1 2 31Valor desconhecido Passado
1 2C
k kk
y y H u k H u k H u k
1
112
1NC
ik kk i
y y H u k H u k i
1
1 11
C
k kk P
y y S u k
76
Predição j=2
DMC Caso MIMO
2 1
1
2NC C
ik kk k i
y y H u k i
1 121
2NC
ik kk i
y y S u k H u k i
1 1 1 2 321 1
C
k kk
y y S u k H u k H u k H u k
1 1 2 1 321 1
C
k kk
y y H u k H H u k H u k
77
Predição j=2
DMC Caso MIMO
1 1 2 1 321 1
C
k kk
y y H u k H H u k H u k
2
1 2 123
1 2NC
ik kk i
y y S u k S u k H u k i
2
1 2 1 221
C
k kk
P
y y S u k S u k
78
Predição j=3
DMC Caso MIMO
3 2
1
3NC C
ik kk k i
y y H u k i
1 2 1 231
1 3NC
ik kk i
y y S u k S u k H u k i
1 2 1 2 1 2 33
4
1 2 1
1
C
k kk
y y S u k S u k H u k H u k H u k
H u k
79
Predição j=3
DMC Caso MIMO
1 2 3 1 2 432 1 1
C
k kk
y y S u k S u k S u k H u k
3
1 2 3 1 234
2 1 3NC
ik kk i
y y S u k S u k S u k H u k i
3
1 2 3 1 2 332 1
C
k kk
P
y y S u k S u k S u k
80
Predição um instante j genérico
DMC Caso MIMO
1 2 3
1 2 3
1 2 3
j
C
k j kk
i j j
P
y y S u k j S u k j S u k j
S u k j i S u k
81
• Montando a predição em modelo de matriz
DMC Caso MIMO
11
2 12
3 2 13
1 2 1
0 0 0
0 0 10 2
1
C
ny nu ny nu ny nuk kC
ny nu ny nuk kC
ny nukk
C np np np np mkk np
y S yu k
S Sy yu kS S S u k yy
u k mS S S S yy
1
2
3
np
P
P
P
P
Cky S u y P
1
i
i nn
P
1
N
n lj n
H u k n j
82
DMC Caso MIMO• Cada matriz kS
2 1 2S H H 1
k
k ll
S H
11, 12, 1 ,
21, 22, 2 ,
1, 2, ,
l l nu l
l l nu ll
ny l ny l nynu l
h h hh h h
H
h h h
83
DMC Caso MIMO• Subtraindo o set point para gera o vetor de erros
CSP SPky y y S u y P
'
k
e
e S u e P
'e S u e
84
DMC Caso MIMO• Função Objetivo
' 'T TJ S u e S u e u R u
' ' ' 'T TT T T T TJ u S S u u S e e S u e e u R u
' '2 2 0TT TJ S S u S e e S R u
u
1 'T Tu S S R S e
85
DMC Caso MIMO• Vetor de soluções
,
1
1
k
k
k j
k m
uu
uu
u
1,
2,
,
, 0,1 1
k j
k jk j
nu k j
uu
u j m
u
,
86
DMC Caso MIMO• Matriz R
1
1
0 0 0
0 0 0
0 0 0
0 0 0
nu nu nu nu nu nuk
nu nu nu nu nu nuk
nu nu nu nu nu nuk j
nu nu nu nu nu nu k m
R
R
RR
R
1 0, 0,1 1
0k j
nu k j
rR j m
r
,
87
DMC Caso MIMO• Derivando e igualando a zero a função objetivo
T T TJ e W W e u R u
1 'T T T Tu S W W S R S W We
0Ju
88
DMC Caso MIMO• Função Objetivo Modificada
T T TJ e W W e u R u
1
2
0 0 0
0 0 0
0 0 0
0 0 0
kny ny ny ny ny ny
kny ny ny ny ny ny
k jny ny ny ny ny ny
k npny ny ny ny ny ny
W
W
WW
W
1
2
0 00 0
, 1,2
0 0
k j
ny
WW
W j np
W
89
QDMC
T T TJ e W W e u R u
'e S u e
'
' ' '
TT T T T
TT T T T
J u S W W S R u e W W S u
u S W We e W We
90
QDMC
' ' '2T TT T T T TJ u S W W S R u e W W S u e W We
'2Tf
TT T T T
CH
J u S W W S R u e W W S u
91
QDMC• Problema QDMC
2T TfJ u H u C u
max maxu u u
min maxu u u
min max
Cy y y
T TH S W W S R
'T TTfC e W W S
s.a
93
DMC por realinhamentoInício
Leitura da planta yk
yP= yk
Cálculo das ações de controle
Leitura da planta yk
1
1
1C P
k k
P C
k
y y S u k d k
y M y
min 2T Tfu
J u H u C u
1
P P
k
u k
y y S u k
k k
1 111
P
k kkk
d y y S u k
'
'
sp p
TT Tf
T T
e y y
c e W WS
H S W WS R
95
DMC por realinhamento
11 1
2 1 22
3 2 1 33
1 2 1
0 0 0
0 0 10 2
1
C
ny nu ny nu ny nuk kC
ny nu ny nuk k
Cny nu
kk
C np np np np mk
k np
y S y Pu k
S Sy y Pu kS S S u k y Py
u k mS S S S y Py
np
96
DMC por realinhamento
1 2
1
P P
k kk k
y y
• Cuttler propôs o realinhamento
• Inserindo as ações de entrada
21 21
P P
k kk k
y y S u k
97
DMC por realinhamento• A predição em k+1 para um instante genérico j
111
P P
jk j k jk k
y y S u k
98
DMC por realinhamento• Predição até o horizonte np
1
2
3
1
0 0 0 00 0 0 00 0 0 0 0
0 0 0 00 0 0 0
P
ny ny ny ny ny ny ny ny ny nyk
Pny ny ny ny ny ny ny ny ny ny
kny ny ny ny ny ny ny ny ny nyP
k
ny ny ny ny ny ny ny ny ny nyP
ny ny ny ny ny ny nyk np k
y IIy
y
I
y
1
2
3
0 0 0 00 0 0 00 0 0
P
k
P
k
P
k
Pny ny ny
k np kM
ny ny ny ny ny ny ny ny ny ny
ny ny ny ny ny ny ny ny ny ny
ny ny ny ny ny
y
y
y
I y
II
1
2
3
0 0
0 0 0 00 0 0 0
ny ny ny ny ny
ny ny ny ny ny ny ny ny ny ny
npny ny ny ny ny ny ny ny ny nySM
S
S
S u k
ISI
1
P P
k ky M y M S u k
. .M np ny np ny
.S np ny nu
99
DMC por realinhamento• Predição para o instante np
1
1 1
P P P
k np k np k npk k k
y y y
• Correção da Predição
1 11 1
P
k k kk
d y y S u k
100
DMC por realinhamento
1
2
3
1
0 0 0 00 0 0 00 0 0 0 0
0 0 0 00 0 0 0
C
ny ny ny ny ny ny ny ny ny nyk
Cny ny ny ny ny ny ny ny ny ny
kny ny ny ny ny ny ny ny ny nyC
k
ny ny ny ny ny ny ny ny ny nyC
ny ny ny ny ny ny nyk np k
y IIy
y
I
y
11 1
2 2 1
133
1
P
kkP
k kP
kk
kP npny ny nyk np k
M
y S dy S d
S u k dy
dSI y
101
LDMC• Função Objetivo do LDMC
' ' '2TT T T T T TJ u S W W S R u S W W e u e W We
'2 2T T T TJ S W W S R u S W W eu
'T T T TS W W S R u S W W e
103
LDMC• Função Objetivo do LDMC
.
1
minm nu
iu i
0 0i i i ix z
0 0i i i iz x
i i ix z
104
LDMC• Problema LDMC
.
1
minm nu
i i iu i
x z
'T T T Ti ix z S W W S R u S W W e
max maxu u u
min maxu u u
0; 0;i ix z
sujeito a
105
LDMC• Se não tivermos restrições ativas
' 0T T T Ti ix z S W W S R u S W W e
'T T T TS W W S R u S W W e
1 '
DMC
T T T T
K
u S W W S R S W W e
'DMCu K e
106
LDMC'
DMCu K e
11 12 1 '
'21 22 2
'
1 2
11 2
1
np
np
m m mnp
K K Ku k e k
K K Ku k e k
u k m e k npK K K
'11 12 1 1Nu k K K K e k
107
MPC em Malha Fechada• Equação de Predição do DMC com matriz de
realinhamento
1
1C P
k ky M y M S u k d k
1x k Ax k Bu k
y k Cx k
0 0ny ny nyC I
108
MPC em Malha Fechada
1
1
planta k
P
prediçao k
y k C y S u k
y k C y S u k
1 2
T
k k k k N ky y y y
1 2
T
NS S S S
109
MPC em Malha Fechada
1P
k kd k C y S u k C y S u k
1
1
planta k
P
prediçao k
y k C y S u k
y k C y S u k
110
MPC em Malha Fechada
1
1C P
k ky M y M S u k d k
1P
k kd k C y S u k C y S u k
1
C P P
Fk k k ky M y M S u k K C y S u k C y S u k
111
MPC em Malha FechadaT
F ny ny nyK I I I
1 2
TP P P P
k k k k Nk
y y y y
112
1
C P
F F F Fk k ky M K C y M S K CS K CS u k K C y
MPC em Malha Fechada
1
C P P
Fk k k ky M y M S u k K C y S u k C y S u k
1
C P P
F F F Fk k k ky M y M S u k K C y K CS u k K C y K CS u k
1
C P
F F Fk k ky M K C y M S K C S S u k K C y
• Predição do modelo no controlador
113
MPC em Malha Fechada
1
C P P
Fk k k ky M y M S u k K C y S u k C y S u k
• Predição para a planta
1
P
k ky M y M S u k
114
MPC em Malha Fechada• Sistema Controlador e Processo
10
PCFF F
k k
M S K C S SM K C K C yyu k
M yy M S
1x k Ax k B u k
y k Cx k
115
MPC em Malha Fechada• Subtraindo do set point
10
PCSP SPFF F
SP SP
k k
M S K C S Sy y M K C K C yyu k
My y yy M S
10 0
PCSP SPFF F F F
SP SP
k k
M S K C S Sy yM K C K C M K C K C yyu k
M My y yy M S
116
MPC em Malha Fechada
' '
' '1
0
FF F
k k
M S K C S Se eM K C K Cu k
Me e M S
'
DMCu K e
'' '
' ' '1
0
DMCFF F
DMCk kk
K eM S K C S Se eM K C K C
Me e K eM S
117
MPC em Malha Fechada• Autovalores de A definem a estabilidade da malha
fechada
*
' '
' '1
1
F F DMC F
k kDMCx kx k
A
M K C M S K C S S K K Ce e
e eM SK M
118
MPC em duas camadas• Autovalores de A definem a estabilidade da malha
fechada
Camada de Otimização (LP ou QP)
MPC (DMC, QDMC, LDMC)
ySP uirv
ySS
uk-1
119
MPC em duas camadas• Predição do MPC
11 1
2 1 22
3 2 1 33
1 2 1
0 0 0
0 0 10 2
1
C
ny nu ny nu ny nuk kC
ny nu ny nuk k
Cny nu
kk
C np np np np mk
k np
y S y Pu k
S Sy y Pu kS S S u k y Py
u k mS S S S y Py
np
1 2 1
12
1
C
npnp np np np mk np k
u ku k
y S S S S u k y P
u k m
P
k npy
120
MPC em duas camadasnp→∞
1 2 1
12
1
C P
mk k
u ku k
y S S S S u k y
u k m
NS S
P P
k k Ny y
12
1
C P
N N N Nk k N
u ku k
y S S S S u k y
u k m
121
MPC em duas camadas
12
1
C P
N N N Nk k N
u ku k
y S S S S u k y
u k m
1
0
mC P
Nk k Ni
y S u k i y
122
MPC em duas camadas
1
0
mC P
Nk k Ni
y S u k i y
1
0
1 1 1 1m
i
u k i u k u k u k m u k m u k
1 1C P
Nk k Ny S u k m u k y
1u k u k
124
MPC em duas camadas• A camada interna do MPC está preocupada com a dinâmica para se atingir o setpoint definido pela camada externa, tendo como índice o
somatório quadrático dos erros durante o horizonte de predição do controlador.• A camada externa de otimização está preocupada em definir esse setpoint, também chamado de target, observando, normalmente,
aspectos econômicos. Dentro desta camada de otimização tem-se apenas a informação do ganho estático, visto que a dinâmica não é relevante para esta camada, enquanto que na camada do MPC a informação completa do processo, dinâmica e estática, é importante.
125
MPC em duas camadas
1 1C P
Nk k Ny y S u k m u k
1
C PSS kNSS k N
y y S u u
126
MPC em duas camadasC
SSy
P
k Ny
NS
1ku
SSu irvu
: predição para o novo estado estacionário obtido de uma função objetivo econômica
: situação no futuro N caso nenhuma ação de controle seja tomada
: ganho estático do processo
: valor atual das manipuladas
: valor desejado para as variáveis manipuladas,
128
MPC em duas camadas• Programação Linear na camada superior
,minCSS SS
T C TSSy SS uy u
p y p u
1
C PSS kNSS k N
y y S u u
min maxSSu u u
min max
C C C
SSy y y
s. a. C
SSy
SPy
SSu irvu
129
MPC em duas camadas• Se o modelo fosse exatamente o real, ao definir a controlada, fica definida a manipulada e vice-versa. Como isso não ocorre, não conseguimos satisfazer o par controlada-
manipuladas desejado.
• Ex: Se o ganho estático do modelo for maior que o real, tem-se, para um dado yss, um valor menor de u1 que poderia ser retirado:
1
C PSS kNSS k N
y y S u u
1
C P
SS k NSS k
N
y yu u
S
130
MPC em duas camadas• Para resolver este problema, a função objetivo do MPC
pode ser alterada:
1 1TT T T
k m irv k m irvuJ e W W e u u R u u u R u
131
QDMC em duas camadas• Função objetivo do QDMC em duas camadas
1 11
1
1
k kk m nu nu nu
u ku k
u I I I u I u u
u k m
1 1 1 1
TTk m irv k m irv k irv k irvu u
u u R u u I u u u R I u u u
132
QDMC em duas camadas 1 1 1 1
TTk m irv k m irv k irv k irvu u
u u R u u I u u u R I u u u
1 1 1
1 1 1 1 1
T TT T Tk irv k irv k irvu u u u
T TT T T T T Tk k k irv k irv k irv irv irvu u u u u u
I u u u R I u u u u I R I u u R I u u R I u
u I R u u R u u R u u I R u u R u u R u
1 1 1
1 1
2T T TT
k irv k irv k irvu u u
Tk irv k irvu
I u u u R I u u u u I R I u u u R I u
u u R u u
133
QDMC em duas camadas• Função objetivo do QDMC com a inclusão de uirv
2T TfJ u H u C u
1 1 1
1 1
2T T TT
k irv k irv k irvu u u
Tk irv k irvu
I u u u R I u u u u I R I u u u R I u
u u R u u
12T TT T
k irvfu uJ u H I R I u C u u R I u
134
Controle de saídas por faixa• Nos processos a serem controlados, a maioria das saídas não tem um setpoint bem definido e sim uma faixa onde a saída, variável
controlada, tem que ser mantida. • Essa faixa é conhecida como restrição leve ou, do inglês, “soft constraints”. • Desta forma, permite-se um grau de liberdade para as controladas, o que “relaxa” o problema de otimização. Estas variáveis só passam a
ser efetivamente controladas pelas manipuladas disponíveis quando uma das restrições for atingida (ymax, ymin).
136
Controle de saídas por faixa• Função objetivo do MPC por faixa
1
1 11 0
np mT TC b T C b Tk m irv k m irv k j k juk j k j k j k j
j j
J y y W W y y u u R u u u R u
min maxP
k jy y y
max,Pi k j iy y max
,bi k j iy y
, 0i k jW
min,Pi k j iy y
min,bi k j iy y
137
MPC com ações não igualmente espaçadas• Para processos com período de estabilização N muito grande, o horizonte de controle m tende ao
valor unitário, pois tudo se passa como, apesar de ter ocorrido várias ações de controle, esta ação fosse única. Se a ação de controle fosse executada em tempos maiores, mais espaçados, teríamos uma ação mais eficaz do controlador.
139
MPC com ações não igualmente espaçadas
• Exemplo para m=3. 1 2, ,u k u k n u k n
11
11
2 2 1
2
2 2 1
2
1
1 1
2 2
1 11
2 22
1 11
2 1 2
2
0 0
0 0
0
0
C
k ny nu ny nuC
k ny nu ny nu
C
n ny nuk n
Cn ny nu
k n
Cn n n
k n
C n n n
k n
np np n npC
k np
y S
y S
S Sy
S Sy
S S SyS S S
y
S S Sy
2
1
2
1 3
2
k
k
k
npk
n
y P
y Pu ku k n y Pu k n
y P
140
MPC com ações não igualmente espaçadas
• Exemplo para m=3. 1 2, ,u k u k n u k n
11
11
2 2 1
2
2 2 1
2
1
1 1
2 2
1 11
2 22
1 11
2 1 2
2
0 0
0 0
0
0
C
k ny nu ny nuC
k ny nu ny nu
C
n ny nuk n
Cn ny nu
k n
Cn n n
k n
C n n n
k n
np np n npC
k np
y S
y S
S Sy
S Sy
S S SyS S S
y
S S Sy
2
1
2
1 3
2
k
k
k
npk
n
y P
y Pu ku k n y Pu k n
y P
2 12n n
141
Sistema Integrador com Espaço de Estados
1
quanto y aumentou no periodoatual e no periodo anterior
1 1y k y k y k y k S u k
11 2 1y k y k y k S u k
12
y kx k y k
y k
1 0 0y k x k
142
Sistema Integrador com Espaço de Estados
1
1
1
1 2 1 01 0 0 1 00 1 0 01 2
k kA Bx k x k
Sy k y k
y k y k u k
y k y k
1x k Ax k B u k
143
Sistema Integrador com Espaço de Estados
• Colocando a correção da leitura da planta
Predicao feita no instante k-1
11
1 1
Pplanta F planta
planta
y k calculox k y k y k K y k y k
y k y k
144
MPC com Modelo em Espaço de Estados
• Equação de predição para o instante 1
1x k Ax k B u k
• Equação de predição para o instante 2
2 1 1x k Ax k B u k
y k Cx k
2 1x k A Ax k B u k B u k
145
MPC com Modelo em Espaço de Estados
• Equação de predição para o instante 2
22 1x k A x k AB u k B u k
2 2y k Cx k
22 1y k C A x k AB u k B u k
22 1y k CA x k CAB u k CB u k
146
MPC com Modelo em Espaço de Estados
• Equação de predição para o instante 3
2
2
3 2
3 2
3 2
3 3
onde 3 2 2
2 1
3 1 2
3 1 2
3 1 2
3 1 2
y k Cx k
x k Ax k B u k
x k A x k AB u k B u k
x k A A x k AB u k B u k B u k
x k A x k A B u k AB u k B u k
y k C A x k A B u k AB u k B u k
y k CA x k CA B u k CAB u k CB u k
147
MPC com Modelo em Espaço de Estados
• Equação de predição para o instante np
1 2 31 2
1
np np np np
np m
y k np CA x k CA B u k CA B u k CA B u k
CA B u k m
2
23
1 2 3
1 0 0 00 02
03
np np np np mnp
CAy k CBCAB CBCAy kCA B CAB CBx k uCAy k
CA B CA B CA B CA By k np CA
148
MPC com Modelo em Espaço de Estados
• Um modelo pode ser escrito no domínio discreto z
1
0
i nbi
ii
i nai
ii
b zY zU z a z
1 2 1 21 2 1 21 na nb
na nbY z a z a z a z b z b z b z U z
1 2 1 21 2 1 2
na nbna nbY z a z Y z a z Y z a z Y z b z U z b z U z b z U z
149
MPC com Modelo em Espaço de Estados
• Transformando em equações de diferenças
1 2 1 21 2 1 2
na nbna nbY z a z Y z a z Y z a z Y z b z U z b z U z b z U z
1 2 1 21 2 1 2na nby k a y k a y k a y k na bu k b u k b u k nb
1 1
na nb
i ii i
y k A y k i B u k i
150
MPC com Modelo em Espaço de Estados
• Estado não mínimo
1 1 1 1T
x k y k y k y k na u k u k nb
1 2 1 21 2 1 2
na nby k A y k A y k A y k na B u k B u k B u k nb
• Predição para um instante genérico k
151
MPC com Modelo em Espaço de Estados
• As leituras do passado podem ser obtidas a partir das informações disponíveis da planta
1 2 3 1 2 2 1
1 0 0 0 0 0 0 0 02 0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 010 0 0 0 0 0 0 0 010 0 0 0 0 0 0 02
0 0 0 0 0 0 0 01
na na nb nb nb
k
y k A A A A A B B B By k Iy k I
Iy k na
u kIu k
Iu k nb
1
1
1
2 03 0
10
203
0k
y k By k
y k
u ky k naIu k
u k
u k nb
1 1x k Ax k Bu k
152
1 2 1 2 2 1( )0 0 0 0 0 0 0( 1)
0 0 0 0 0 0 0( 2)
( 1)( 1)( 2)
( 2)( 1)
na na nb nb nb
ny ny ny ny ny nu ny nu ny nu ny nu
ny ny ny ny ny nu ny nu ny nu ny nu
a a a a b b b by kIy k
Iy k
y k nau ku k
u k nbu k nb
0 0 0 0 0 0 00 0 0 0 0 0 0 00 0 0 0 0 0 0
0 0 0 0 0 0 00 0 0 0 0 0
ny ny ny ny ny nu ny nu ny nu ny nu
nu ny nu ny nu ny nu ny nu nu nu nu
nu ny nu ny nu ny nu ny nu nu nu nu
nu ny nu ny nu ny nu ny nu nu nu nu
nu ny nu ny nu ny nu ny nu nu
I
I
II
1( 1)0( 2)0
( 1)( ) 0 ( 1)( 2)
0( 2)( 1) 0
( ) 00
ny nu
ny nu
ny nu
nu
nu
nu
nunu nu
by ky k
y k nay k na u ku k I
u k nbu k nbu k nb
( ) ( 1) ( 1) ( 1) ( 2) ( 2) ( 1) Tx k y k y k y k na u k u k u k nb u k nb
MPC com Modelo em Espaço de Estados
153
MPC com Modelo em Espaço de Estados na forma incremental
1 2 3
1 2 3
1 2 3
1 2 3
1 1 2 ... 1
1 2 ... 1
1 2 3 ...
1 2 3 ...
na
nb
na
nb
y k a y k a y k a y k a y k na
b u k b u k b u k b u k nb
y k a y k a y k a y k a y k na
b u k b u k b u k b u k nb
1 2 1 3 2
1
1 2 3
1 1 2 ...
1
1 2 ... 1
ny
na na na
nb
y k y k I a y k a a y k a a
y k na a a a y k na
b u k b u k b u k b u k nb
154
MPC com Modelo em Espaço de Estados na forma incremental
1 2 1 3 2 4 3 1 2 3 4... ...0 0 0 ... 0 0 0 0 0 ... 0
10 0 0 ... 0 0 0 0 0 ... 0
1
1
2
ny na na na nb
ny ny ny ny ny ny ny nu ny nu ny nu ny nu
ny ny ny ny ny ny ny nu ny nu ny nu n
a I a a a a a a a a a b b b bI
y kI
y ky k
y k nau k
u k nb
0 0 0 ... 0 0 0 0 0 ... 0... ... ... ... ... ... ... ... ... ... ... ...
0 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0 00 0
y nu
ny ny ny ny ny ny ny nu ny nu ny nu ny nu
ny ny ny ny ny ny ny nu ny nu ny nu ny nu ny nu
nu ny nu ny nu ny nu ny nu ny nu ny nu nu nu nu nu
nu ny nu n
I
I
0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 00 0 0 0 0 0 0 0 0 0
... ... ... ... ... ... ... ... ... ... ... ...0 0 0 0
y nu ny nu ny nu ny nu ny nu nu nu nu nu
nu ny nu ny nu ny nu ny nu ny nu ny nu nu nu nu nu
nu ny nu ny nu ny nu ny nu ny nu ny nu nu nu nu nu
nu ny nu ny nu ny
II
I
10010
...10
100
2 01 ...
00 0 0 0 0 0
ny nu
ny nu
ny nu
ny nu
nu
nu
nu
nu
nunu ny nu ny nu ny nu nu nu nu nu
b
y ky k
y k nay k na
Iu k
u k nbu k nb
I
u k
155
MPC com Modelo em Espaço de Estados na forma incremental
2
23
1 2 3
1 0 0 00 02
03
np np np np mnp
CAy k CBCAB CBCAy kCA B CAB CBx k uCAy k
CA B CA B CA B CA By k np CA
156
Melhorias no MPC• Redução dos parâmetros de sintonia• Robustez quanto a estabilidade
– o modelo real da planta não coincidir com o modelo previsto no controlador, que é considerado o caso nominal;– quando uma saída do processo se tornar ativa ou inativa no controle de faixas;– quando uma entrada do processo comutar da condição de restrição para a condição de não restrição, ou vice-versa;
157
Melhorias no MPC• Portanto, a robustez quanto à estabilidade deve ser analisada em 3 condições distintas
– Chaveamento das variáveis controladas da situação ativa para a situação inativa, ou da condição inativa para a condição ativa– Chaveamento das entradas da situação disponível para a situação indisponível ou da situação indisponível para a situação disponível– Incerteza de modelo – um controlador sintonizado para a condição nominal é robusto para variações em torno de 20% do modelo esperado pelo
controlador. Além disso, a estabilidade pode ficar comprometida;
158
Controladores Nominalmente Estáveis
• A literatura fornece diversos controladores nominalmente estáveis, mas, devido a incertezas de modelo ou restrições nas entradas de processo, tornam-se instáveis;
• Como a estabilidade de um controlador pode ser garantida para o caso nominal?
159
Controladores Nominalmente Estáveis
• Introdução de restrições que garantam que o estado final do sistema seja nulo.
1x k Ax k Bu k
y k Cx k
0x k np
160
Controladores Nominalmente Estáveis
• Introdução de restrições que levem o estado final a um conjunto de estados onde existe um controlador estável.
A
MPC DMC sem restrições
161
MPC de Horizonte Infinito
1x k Ax k Bu k
y k Cx k
C é a matriz identidade, ou, em outras palavras, o estado é medido
x e u representam variáveis incrementaisPortanto, para um sistema estável, ,o que traz, como consequência, desde que não hajam perturbações desconhecidas, ou simplesmente,
0u k m
162
Função Objetivo do MPC de Horizonte Infinito
1
, 1 , 1 1 0
minm
T Tku k u k u k m j j
J x k j Qx k j u k j Ru k j
1
1 1
mT T T
j j j m
x k j Qx k j x k j Qx k j x k j Qx k j
0
T T
j m j
x k j Qx k j x k m j Qx k m j
163
Função Objetivo do MPC de Horizonte Infinito
0
T T
j m j
x k j Qx k j x k m j Qx k m j
1x k Ax k Bu k
2
1
2 1 1 1
j
x k m Ax k m Bu k m Ax k m
x k m Ax k m Bu k m Ax k m A x k m
x k m j A x k m
164
Função Objetivo do MPC de Horizonte Infinito
0
T T
j m j
x k j Qx k j x k m j Qx k m j
0
TT j j
j m j
x k j Qx k j A x k m QA x k m
0
TTT j j
j m j
x k j Qx k j x k m A QA x k m
165
Função Objetivo do MPC de Horizonte Infinito
0
TTT j j
j m j
x k j Qx k j x k m A QA x k m
0
TT T j j
j m j
x k j Qx k j x k m A QA x k m
0
Tj j
j
P A QA
166
Função Objetivo do MPC de Horizonte Infinito
0
Tj j
j
P A QA
2 2 3 3
0
T T T TTj j
j
P A QA Q A QA A QA A QA A QA
2 2 3 3 4 4 1 1T T T TT TA PA A QA A QA A QA A QA A QA
Δ
1 1TTA PA P A QA Q TA PA P Q
167
Formulação do MPC de Horizonte Infinito
1 1
, 1 , 1 1 0
minm m
T T Tku k u k u k m
j j
J x k j Qx k j x k m Px k m u k j Ru k j
min max , 0,1,2 1u u k j u j m
0 u k j j m
sujeito a