Model Predictive Control
Controle Preditiv Preditivo o
Introdução ao Controle Preditivo Wu Hong Kwong
Raphael de Medeiros Souto Maior Baltar
Laboratório de Instrumentação Eletrônica e Controle Departamento de Engenharia Elétrica
Universidade Federal de Campina Grande
LIEC - DEE - UFCG
c Rap Raphae haell Bal Baltar tar 10/ 10/12/ 12/201 20133
1
Controle Preditiv Preditivo o
Model Predictive Control
Introdução Diferentemente do controle feedback clásico PID, em que o controlador atua sobre os erros para calcular as ações de controle, o controle baseado em modelo (MBC, Model Based Control ) é uma técnica de controle em que há a utilização direta de um modelo de processos para calcular essas ações.
LIEC - DEE - UFCG
c Rap Raphae haell Bal Baltar tar 10/ 10/12/ 12/201 20133
2
Controle Preditiv Preditivo o
Vantagens É uma estratégia de controle geral para processos MIMO com restrições de desigualdade nas variáveis de entrada e saída Pode acomodar facilmente comportamentos dinâmicos pouco comuns ou difíceis, tais como tempo morto grande e resposta inversa O MPC pode ser integrado com estratégias de otimização on-line para otimizar a performance da planta A estratégia pode ser facilmente atualizada em linha para compensar mudanças nas condições do processo, restrições ou critério de performance
LIEC - DEE - UFCG
Model Predictive Control
Desvantagens A estratégia MPC é bastante diferente das convencionais e, assim, inicialmente não é familiar aos operadores da planta. Elevado esforço computacional requerido para resolver os cálculos MPC, necessitando resolver um problema LP ou QP a cada instante de amostragem O desenvolvimento do modelo dinâmico a partir dos dados da planta consome muito tempo Os modelos, por serem empíricos, só são válidos na faixa de condições que foram consideradas durante os testes
c Rap Raphae haell Bal Baltar tar 10/ 10/12/ 12/201 20133
3
Model Predictive Control
Controle Preditivo
Modelo Dinâmico Um aspecto-chave do MPC é o fato de ser usado um modelo dinâmico para prever o comportamento futuro do processo, isto é, os valores futuros das saídas controladas. No modelo de convolução discreto os coeficiêntes podem ser obtidos experimentalmente da resposta ao degrau sem assumir uma estrutura para o modelo. O modelo empírico pode ser • Modelo Linear - função de transferência, resposta ao degrau ou modelo no espaço de estados
linear ou linearizado • Modelo não linear - redes neurais ou modelo no espaço de estado não-linear
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
4
Model Predictive Control
Controle Preditivo
Modelo de resposta ao degrau
Uma propriedade fundamental para esta modelagem é o princípio da superposição que implica que a resposta a qualquer combinação linear de sequências de entradas é simplesmente uma combinação linear de sequências de saídas, ou seja, u = α1 u(1) + α2 u(2) + ... → y = α1 y(1) + α2 y(2) + ...
Então desenvolvemos o modelo de convolução, que pode ser interpretado como a soma de uma série de variações-degrau como mostrado a seguir N
yˆk =
∑ ai∆uk −i
i=1
Onde yˆk é o valor predito da saída, ∆uk = uk − uk −1 e a1, a2, ..., a N são os coeficientes da resposta ao degrau. Além disso, ∆ uk −1 = 0 , se k − i < 0 e ∆ u0 = u0.
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
5
Model Predictive Control
Controle Preditivo
Modelo de resposta ao impulso
Os coeficiêntes da resposta ao impulso unitário do processo, h 1, h2, ..., h N são expressos por hk = ak − ak −1,
k = 1 , 2, ..., N
e
h0 = 0
e o modelo de convolução discreto, usando os coeficientes da resposta ao impulso, é: N
yˆk =
∑ hiuk −i
i=1
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
6
Controle Preditivo
Model Predictive Control
Controle por Matriz dinâmica (DMC) Estratégia de Implementação - Horizonte Móvel
O controle preditivo, tal como o DMC, envolve uma sequência de operações 1. A cada instante de amostragem um modelo de convolução discreto é usado para predizer as trajetórias das saídas do processo sobre um intervalo de tempo futuro finito, dado em termos de R intervalos de amostragem (parâmetro de projeto chamado horizonte de otimização ). 2. Uma Sequência de L movimentos de controle é determinada tal que uma função objetivo seja minimizada. Porém devido a distúrbios e erros de modelagem o comportamento predito irá diferir do comportamento real, de modo que os movimentos de controle determinados podem não ser apropriados em seu todo. 3. Portanto, tipicamente apenas o primeiro movimento calculado das entradas do processo é implementado de fato, após o que, todo o procedimento é repitido no próximo instante de amostragem, começando em 1, quando uma nova medida é tomada. Esta corresponde à estratégia do enfoque de horizonte móvel.
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
7
Model Predictive Control
Controle Preditivo
Controlador DMC
Para processos SISO, o DMC utiliza o seguinte modelo de convolução discreto para predizer a saída no próximo instante de amostragem k + 1 ou predição passo simples: N
yˆk +1 =
∑ hiuk + −i 1
i=1
Note que para predizer a saída, é preciso fornecer o valor da entrada presente uk e os valores passados. Os parâmetros do modelo hi são os coeficiêntes da resposta ao impulso unitário. Outra maneira equivalente de representar a saída predita yˆk +1 é usar a forma recursiva do modelo expressa em termos de variações incrementais. N
yˆk +1 = yˆk + ∑ hi∆uk +1−i
Onde
∆uk = u k − uk −1
i=1
Em seguida estendemos o modelo de convolução para R instantes futuros N
yˆk + j = yˆk + j−1 + ∑ hi∆uk + j−i i=1
Para j = 1 , 2, ..., R, em que R < N . LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
8
Model Predictive Control
Controle Preditivo
A informação realimentada y k permite que a predição seja corrigida recursivamente. yck + j = yˆk + j + ( yck + j−1 − yˆk + j−1)
para j = 1, 2, ..., R e yck = yk . Isto equivale a admitir que o erro de predição intrinseco à equação anterior corresponde ao erro observado no instante atual, isto é, yk − yˆk , e que o mesmo vale para qualquer valor de j. Substituindo a saída estimada na equação anterior obtemos N
yck + j
=
+ ∑ hi∆uk + j−i
yck + j−1
i=1
A equação acima pode ser escrita na forma de vetor-matriz para os R instantes futuros. Assim,
yck +1 yck +2
..
yck + R−1 yck + R
LIEC - DEE - UFCG
=
a1 a2 a R−1 a R
0
...
0
0
a1
...
0
0
a R−2 a R−1
..
... ...
a1 a2
0
a1
∆uk ∆uk +1
..
∆uk + R−2 ∆uk + R−1
+
yk + P1 yk + P2
..
yk + P R−1 yk + P R
c Raphael Baltar 10/12/2013
9
Model Predictive Control
Controle Preditivo
i
em que os ai são os coeficientes da resposta ao degrau definidos por a i = ∑ h j . e j =1
i
Pi =
∑ S m
i = 1, 2, ..., R
m=1 N
S m =
∑
hi∆uk +m−i
m = 1 , 2, ..., R
i=m+1
Os valores desejados para a variável controlada yd k + j ( j = 1, 2, ..., R) podem ser especificados por uma trajetória de referência ( O próprio set point ou uma aproximação suave para este): para j = 1 , 2, ..., R e 0 ≤ α < 1.
j j yd k + j = α yk + (1 − α )r k
O parâmetro α determina o quão rapidamente a trajetória atinge o set point r k . em forma matricial
LIEC - DEE - UFCG
yd k +1 yd k +2
..
yd k + R−1 yd k + R
=
1
1
α yk + (1 − α )r k α2 yk + (1 − α2)r k
..
α R−1 yk + (1 − α R−1)r k α R yk + (1 − α R )r k
c Raphael Baltar 10/12/2013
10
Model Predictive Control
Controle Preditivo
Subtraindo a equação do valor desejado para a saída do valor predito em malha fechada, tem-se: ˆ = − A′∆u + E ˆ′ E
Onde A′ é a matriz dos coeficientes da resposta ao degrau, ∆u é o vetor R-dimensional das variações na entrada. Os demais vetores são definidos por:
ˆ = E
yd k +1 yd k +2
yck +1 yck +2
− −
..
c yd k + R−1 − yk + R−1 c yd k + R − yk + R
ˆ′ = E
1
(1 − α ) E k − P1 (1 − α2) E k − P2
..
(1 − α R−1) E k − P R−1 (1 − α R ) E k − P R
Onde E k = r k − yk . Note que E ˆ e E ˆ ′ são vetores de erros preditos. E ˆ ′ é uma predição em malha aberta uma vez que é calculado com base nas ações de controle passadas e representa o desvio predito da saída em relação à trajetória desejada. Ele não inclui as ações de controle corrente e futuras ( ∆ uk + j , para j ≥ 0). Por outro lado, E ˆ é referido como uma predição em malha fechada uma vez que é baseado em ações de controle corrente e futuras.
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
11
Model Predictive Control
Controle Preditivo
Se for exigido que a saída predita seja igual à saída desejada, o que corresponde ao projeto protótipo mínimo, então E ˆ = 0 e 0 =
ˆ′ − A′∆u + E
consequentemente, ˆ′ ∆u = ( A′)−1 E
A estratégia DMC consiste em obter um sistema sobredeterminado, reduzindo arbitrariamente a dimensão do vetor ∆u de R para L, admitindo que ∆uk + j = 0 para j ≥ L. Assim, apenas L ações futuras de controle são calculadas e a equação passa a ser
yck +1 yck +2
...
yck + R−1 yck + R
=
a1 a2 a R−1 a R
0
...
0
a1
...
0
a R−2 a R−1
...
... ...
a R− L a R− L+1
∆uk ∆uk +1
...
∆uk + L−2 ∆uk + L−1
+
yk + P1 yk + P2
...
yk + P R−1 yk + P R
Agora a equação do erro é dada por E ˆ = − A∆u + E ˆ ′ , em que A é a matriz dinâmica de dimensão RxL, definida como as L primeiras colunas de A′.
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
12
Model Predictive Control
Controle Preditivo
O sistema sobredeterminado não tem uma solução exata. É possível, entretanto, obter a melhor solução no sentido dos mínimos quadrados, minimizando o índice de performance: ˆ T QT Q E ˆ + ∆uT R∆u J (∆u) = E
Onde Q é uma matriz de ponderação definida positiva com dimensão RxR. Q irá permitir a introdução de penalidades nos erros preditos e R é uma matriz de ponderação LxL que irá penalizar os movimentos da variável manipulada. A solução ótima é ˆ ′ = K C E ˆ′ ∆u = ( AT QT QA + R)−1 AT QT Q E
em que K C é a matriz de ganhos feedback LxR. Para sistemas lineares, em que a matriz A é constante e a matriz K C precisa ser calculada apenas uma vez. Normalmente aplica-se apenas a primeira ação de controle ∆ uk . Ao utilizar o horizonte móvel, apenas a primeira fila da matriz K C , contendo R elementos, é usada na equação. Denotando a primeira fila de K C como K clT , tem-se: ˆ′ ∆uk = K clT E
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
13
Model Predictive Control
Controle Preditivo
Exercício 1 Considere o sistema com função de transferência dada por: G(s) =
y¯(s) u¯(s)
=
e−5s 5s + 1
Calcular a matriz de ganhos feedback do controlador DMC e avaliar a resposta dinâmica à malha fechada para uma variação degrau unitário no valor desejado, assumindo que o modelo seja perfeito, usando os parâmetros de projeto T = 2 , 5 , N = 22, R = 11 , L = 4
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
14
Model Predictive Control
Controle Preditivo
Algoritmo de controle para sistemas multivariáveis
Estendendo os resultados desenvolvidos para sistemas MIMO, usando o princípio da superposição. Para um sistema com M entradas e M saídas, o modelo de convolução torna-se: N
yˆ1,k +1 =
N
∑h
11,i
∑h
21,i
i=1 N
yˆ2,k +1 =
u1,k +1−i + ... + ∑ h1 M ,iu M ,k +1−i i=1 N
i=1
u1,k +1−i + ... + ∑ h2 M ,iu M ,k +1−i
..
N
yˆ M ,k +1 =
N
∑ h M
1,i
i=1
i=1
u1,k +1−i + ... + ∑ h MM ,iu M ,k +1−i i=1
que representam os valores preditos de y1, ... y M para o instante de amostragem k + 1. O horizonte do modelo N é selecionado como o maior horizonte de resposta entre os M 2 modelos.
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
15
Model Predictive Control
Controle Preditivo
Estendendo o modelo de convolução para R instantes futuros, tem-se: N
N
yˆ1,k + j = yˆ1,k + j−1 + ∑ h11,i∆u1,k + j−i + ... + ∑ h1 M ,i∆u M ,k + j−i i=1 N
i=1 N
yˆ2,k + j = yˆ2,k + j−1 + ∑ h21,i∆u1,k + j−i + ... + ∑ h2 M ,i∆u M ,k + j−i i=1
...
N
i=1
N
yˆ M ,k + j = yˆ M ,k + j−1 + ∑ h M 1,i∆u1,k + j−i + ... + ∑ h MM ,i∆u M ,k + j−i i=1
i=1
para j = 1, 2, ..., R. A seguir corrige-se o valor predito com base no valor atual, ou seja, para j = 1 , 2, ..., R : yc1,k + j = yˆ1,k + j + ( yc1,k + j−1 − yˆ1,k + j−1) yc2,k + j = yˆ2,k + j + ( yc2,k + j−1 − yˆ2,k + j−1)
..
c c y M = yˆ M ,k + j + ( y M − yˆ M ,k + j−1) ,k + j ,k + j −1
LIEC - DEE - UFCG
onde
yc1,k = y1,k yc2,k = y2,k
..
c y M = y M ,k ,k
c Raphael Baltar 10/12/2013
16
Model Predictive Control
Controle Preditivo
Substituindo a saída estimada na equação anterior obtemos o modelo corrigido: N
N
y1,k + j = yˆ1,k + j−1 + ∑ h11,i∆u1,k +1−i + ... + ∑ h1 M ,i∆u M ,k +1−i c
c
i=1 N
i=1 N
yc2,k + j = yˆc2,k + j−1 + ∑ h21,i∆u1,k +1−i + ... + ∑ h2 M ,i∆u M ,k +1−i i=1
i=1
..
N c y M ,k + j
=
N
+ ∑ h M 1,i∆u1,k +1−i + ... + ∑ h MM ,i∆u M ,k +1−i
c yˆ M ,k + j −1
i=1
i=1
A equação pode ser escrita na forma vetor-matriz para os R instantes futuros. Assim,
c
y1 yc2
..
c y M −1 c y M
=
LIEC - DEE - UFCG
A′
A′
12
A′21
A′22
11
′ A M −11 ′ A M 1
′ A M −12 ′ A M 2
...
A′
A′
...
A′2 M −1
A′2 M
..
... ...
1 M −1
′ A M −1 M −1 ′ A MM −1
1 M
′ A M −1 M ′ A MM
∆u 1 ∆u 2
..
∆u M −1 ∆u M
+
y1,k F + P1 y2,k F + P2
..
y M −1,k F + P M −1 y M ,k F + P M
c Raphael Baltar 10/12/2013
17
Model Predictive Control
Controle Preditivo
Em que cada partição é triangular:
A′
ij
=
ai j,1 ai j,2
0
...
0
0
a i j ,1
...
0
0
ai j, R−1 ai j, R
ai j, R−2 ai j, R−1
...
ai j,1 ai j,2
0
..
...
ai j,1
m
Sendo a i j,m = ∑ hi j,1 e os demais elementos dados por l =1
ycn = [ ycn,k +1 ycn,k +2
... y cn,k + R]T
n = 1 , 2, ..., M
∆un = [δun,k δun,k +1
... δ un,k + L−1 ]
n = 1 , 2, ..., M
F = [1 1 ... 1]T Pn = [Pn,1 Pn,2 ... PnT , R]
n = 1 , 2, ..., M
j
Pn, j =
∑ S n m
m=1 N
S n,m =
j = 1 , 2, ..., R
,
M
∑ ∑ hnl i∆ul k +m−i ,
,
m = 1 , 2, ..., R
i=m+1 l =1
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
18
Model Predictive Control
Controle Preditivo
A trajetória desejada é expressa por j
j
j
j
yˆd = α1 y1,k + (1 − α1)r 1,k 1,k + j yˆd = α2 y2,k + (1 − α2)r 2,k 2,k + j
..
j
j
d yˆ M = α M y M ,k + (1 − α M )r M ,k ,k + j
em que αn são constantes entre 0 e 1. Na forma matricial, tem-se:
d
y1 yd 2
..
d y M −1 d y M
=
c1 y1,k + (F − c1)r 1,k c2 y2,k + (F − c2)r 2,k
..
c M −1 y M −1,k + (F − c M −1)r M −1,k c M y M ,k + (F − c M )r M ,k
em que cn = [α1n α2n ... α Rn]. Subtraindo o valor desejado do predito teremos: ˆ = − A′∆u + E ˆ′ E
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
19
Model Predictive Control
Controle Preditivo
Os vetores são definidos por:
ˆ = E
d
c
y1 − y1 yd − yc2 2
..
d c y M −1 − y M −1 d c y M − y M
ˆ′ = E
(F − c1) E 1,k − P1 (F − c2) E 2,k − P2
..
(F − c M −1) E M −1,k − P M −1 (F − c M ) E M ,k − P M
em que: E 1,k = r 1,k − y1,k E 2,k = r 2,k − y2,k
..
E M ,k = r M ,k − y M ,k
Aplicando a estratégia DMC de maneira análoca ao caso SISO, chega-se a ˆ = − A∆u + E ˆ′ E
Onde, E ˆ e E ˆ ′ são vetores de dimensão MR e ∆ u é um vetor de dimensão ML. Assim,
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
20
Model Predictive Control
Controle Preditivo
ˆ = [ E ˆ 1,k +1 ... E ˆ 1,k + R ... E ˆ M ,k +1 ... E ˆ M ,k + R ]T E T ˆ ′ = [ E ˆ′ ˆ′ ˆ′ ˆ′ E ... E ... E 1,k +1 1,k + R M ,k +1 ... E M ,k + R]
∆u = [ ∆u1,k +1 ... ∆ u1,k + R
... ∆ u M ,k +1 ...∆u M ,k + R ]T
No caso em que há M entradas e M saídas, a matriz dinâmica A tem a seguinte estrutura:
A =
A11 A21
A12 A22
...
A M −11 A M 1
A M −12 A M 2
...
...
..
...
A1 M −1 A2 M −1
A1 M A2 M
A M −1 M −1 A MM −1
A M −1 M A MM
Em que cada partição é
Ai j =
ai j,1 ai j,2
0
...
0
a i j ,1
...
0
ai j, R−1 ai j, R
ai j, R−2 ai j, R−1
...
ai j, R− L ai j, R− L+1
..
...
Note que cada A i j é RxL; portanto, A é MRxML. LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
21
Model Predictive Control
Controle Preditivo
A lei de controle preditivo tem a mesma forma que o sistema SISO, ou seja: Utilizando o índice de performance: ˆ T QT Q E ˆ + ∆uT R∆u J (∆u) = E
E a solução ótima será: ˆ ′ = K C E ˆ′ ∆u = ( AT QT QA + R)−1 AT QT Q E
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
22
Controle Preditivo
Model Predictive Control
Exercício 2 A coluna de destilação da figura abaixo é usada para separar uma mistura de 60% molar de benzeno e 40% molar de tolueno, em destilado com 95% molar de benzeno e 5% molar de tolueno, e produto de fundo com 5% molar de benzeno e 95% molar de tolueno.
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
23
Model Predictive Control
Controle Preditivo
A taxa de alimentação é de 1.000 lb/h e entra no sétimo prato a partir do topo. A coluna tem 13 pratos, um refervedor parcial, um condensador total e eficiência de Murphree de 70%. A composição do destilado, medido como %molar de tolueno, e a composição do fundo, medido como %molar de benzeno, são controladas manipulando a vazão de refluxo e a carga térmica ao refervedor. O controlador de pressão mantém a pressão constante, e os dois controladores de nível mantêm os balanços materiais no topo e no fundo, manipulando as duas vazões de produtos. Para determinar os ganhos estacionários foram realizados testes na coluna que apresentaram o seguinte quadro:
Os ganhos de malha aberta foram calculados da seguinte maneira: K Dw R =
K DQ =
LIEC - DEE - UFCG
4, 43 − 5, 69 132, 59 − 131, 29 5, 87 − 4, 34 30, 23 − 29, 97
= −0, 97 %molar/klb/h
= 5 , 88 %molar/Mbtu/h
c Raphael Baltar 10/12/2013
24
Model Predictive Control
Controle Preditivo
K Bw R =
K BQ =
5, 84 − 4, 25 132, 59 − 131, 29 4, 05 − 6, 06
30, 23 − 29, 97
= 1 , 22 %molar/klb/h
= −7, 73 %molar/Mbtu/h
em que: D = composição do destilado, B = composição do destilado, w R = composição do destilado, Q = composição do destilado. Assume-se que os analisadores sejam tão lentos que a composição atinja o estado estacionário entre amostragens. Assume-se também que os analisadores introduzem um tempo morto de um intervalo de amostragem em cada medidor de composição. Com isso, as funções de transferência da coluna são: y D = −0, 97 z−2w R ( z) + 5, 88 z−2Q( z) x B( z) = 1 , 22 z−2w R( z) − 7, 73 z−2Q( z)
em que: y D = % molar de tolueno no destilado; x B = % molar de benzeno no produto do fundo Nesse caso, necessita-se de apenas dois termos no vetor da resposta ( N = 2 ). Adota-se então, R = 2 e L = 1 .
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
25
Model Predictive Control
Controle Preditivo
Os coeficiêntes das respostas ao degrau são expressos à seguir: a1,1 =
a2,1 =
0
−0, 97 0 1, 22
a1,2 =
a1,2 =
0 5, 88 0
−7, 73
Para R = 2 e L = 1 , as matrizes dinâmicas são: A1,1 =
A2,1 =
0
−0, 97 0 1, 22
A1,2 =
A1,2 =
0 5, 88 0
−7, 73
A matriz dinâmica é então expressa por:
A =
LIEC - DEE - UFCG
A1,1 A2,1
A1,2 A2,2
=
0
0
−0, 97
5, 88
0
0
1, 22
−7, 73
c Raphael Baltar 10/12/2013
26
Model Predictive Control
Controle Preditivo
Adotando as matrizes de ponderação como: Q = I
R =
f 1
0
0
f 2
A matriz de ganhos feedback é calculada por: K c = ( AT QT QA + R)−1 AT QT Q
Para o caso de f 1 = f 2 = 0 , ou seja sem supressão de movimentos, então: K c =
0 0
−23, 8 −3, 76
0 0
−18, 1 −2, 99
Estes ganhos são considerados altos. Com parâmetros de supressão de movimento f 1 = 0, 1 e f 2 = 0 , 1, a matriz de ganhos fica: K c =
0 0
−2, 35 −0, 314
0 0
−1, 77 −0, 365
A matriz de ganhos é multiplicada pelo vetor de erros preditos, o que resulta em: ˆ′ ∆u = ( AT QT QA + R)−1 AT QT QE ′ = K c E
∆w R = −2, 35 E y − 1, 77 E x LIEC - DEE - UFCG
∆Q = −0, 314 E y − 0, 365 E x c Raphael Baltar 10/12/2013
27
Controle Preditivo
Model Predictive Control
Tratamento de restrições do processo Um aspecto chave de muitos problemas de controle é a presença de restrições em ambas as variáveis: controlada e manipulada. Basicamente existem três tipos de restrições de processo: 1. Restrições nas variáveis manipuladas 2. Restrições nas taxas de variação das variáveis manipuladas 3. Restrições nas variáveis de saída No controlador DMC, os parâmetros de sintonia podem ser ajustados para satisfazer as restrições nas variáveis manipuladas. Especificamente, o fator de ponderação f e o horizonte de controle L têm maiores efeitos no esforço de controle. Entretanto a seleção iterativa dos parâmetros de sintonia deve ser feita no procedimento de projeto, até que as restrições sejam satisfeitas; o que vem a ser um procedimento insatisfatório.
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
28
Model Predictive Control
Controle Preditivo
Inclusão de restrições no DMC
As restrições são classificadas em fixas e variáveis no tempo. • Fixas: são restrições sempre ativas ( as variáveis devem obedecê-las sempre) • Restrições variáveis: dependendo das medidas feitas na planta ou de outras condições, elas
podem ser ativadas ou não. Assim, tornam-se parte do modelo do sistema de controle apenas quando são ativadas. Em todos os outros instantes elas são invisíveis ao modelo de controle. Um método mais direto de satisfazer as restrições nos valores correntes e futuros das variáveis manipuladas e controladas é modificar a equação ˆ = − A∆u + E ˆ′ E
Adicionando explicitamente as restrições ativas na equação.
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
29
Model Predictive Control
Controle Preditivo
Restrição na variável manipulada i
• Restrição ativa no limite máximo ui ≤ ui,max
A fim de obter respostas mais suaves, para cada intervalo de tempo futuro k + j − 1, o valor da variável manipulada tem de satisfazer: ui,k + j−1 ≤ ui,max
Daí pode-se acrescentar equações do tipo:
E i j = ui,max − T OL − ui,k + j−1 j
E i j = ui,max − T OL − ui,k −1 − ∑ ∆ui,k +l −1 l =1
j
E i j = ui,max − ∑ ∆ui,k +l −1 − T OL − ui,k −1 l =1
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
30
Model Predictive Control
Controle Preditivo
Em que TOL é uma tolerância para não se trabalhar no limite u i,max. Para cada j, acrescenta-se mais uma linha na equação E ˆ = − A∆u + E ˆ ′. Na matriz A , essa linha é do tipo: [−1 − 1 ... − 1
0 0 ... 0]
j
No vetor E ˆ ′ acrescenta-se o elemento:
ui,max − T OL − ui,k −1
• Restrição ativa no limite mínimo ui ≥ ui,min
O procedimento é análogo ao caso anterior, porem a equação a ser acrescentada é: E i j = ui,k + j−1 − ui,min + T OL
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
31
Model Predictive Control
Controle Preditivo
Restrição na variável controlada i
• Restrição ativa no limite máximo yi ≤ yi,max
Impõe-se que : r i,k = yi,max
• Restrição ativa no limite mínimo yi ≥ yi,min
Impõe-se que : r i,k = yi,min
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
32
Model Predictive Control
Controle Preditivo
Solução do problema com restrições Podemos representar as equações do modelo que incluem as restrições fixas da seguinte forma: ˆ = − A∆u + E ˆ′ E
e as que incluem apenas as restrições ativas no momento como: ′
ˆ ∗ = − A∗∆u + E ˆ∗ E
ˆ E ˆ∗ E
=
A A∗
∆u +
ˆ′ E ′ ˆ∗ E
A solução do problema de mínimos quadrados associada a esse conjunto de equações fica: ˆ′ ∆u∗ = ( AT A)−1 AT E ′
ˆ ∗ − A∗∆u∗) ∆u = ∆u∗ + PA∗T ( A∗PA∗T + I )−1( E
Em que, P = ( AT A)−1
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
33
Model Predictive Control
Controle Preditivo
Controlador LDMC O LDMC(Linear Dynamic Matrix Control)(Morshedi et al., 1985) possui propriedades adicionais às do DMC que o tornam bastante apropriado para aplicações em linha. Neste controlador o critério de ótimização não é o de mínimos quadrados, mas sim a soma dos valores absolutos dos resíduos, que é transformada para se enquadrar no problema geral de programação linear. • O algoritmo LDMC
O desenvolvimento do algoritmo parte da formulação do DMC, diferindo apenas na definição da função objetivo e no tratamento das restrições. Não há distinção entre o caso mono e multivariáveis, pois o tratamento é idêntico. Considerando novamente a equação do erro: ˆ = − A∆u + E ˆ′ E
Impondo-se que o valor previsto seja igual ao calculado, então: ˆ′ A∆u = E
Também podemos incorporar o fator de supressão de movimentos. Para tal, pré-multiplicamos a equação acima por AT , fornecendo: ˆ′ AT A∆u = AT E
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
34
Model Predictive Control
Controle Preditivo
Pode-se adicionar um parâmetro positivo f aos elementos da diagonal de AT A para restringir o tamanho de ∆ u. ˆ′ ( AT A + f I )∆u = AT E
Se o problema for multivariável escolhe-se um parâmetro f i para cada variável manipulada. Portanto, de forma geral: ˆ′ ( AT A + R)∆u = AT E
em que,
R =
f 1 I
0
...
0
0
f 2 I
...
0
0
0
..
0
0
f 3 I
Definindo-se um vetor resíduo: ˆ′ ρ = ( AT A + R)∆u − AT E
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
35
Model Predictive Control
Controle Preditivo
Frisa-se que o número de equações é maior que o número de incógnitas. Resolvendo o sistema em alguma norma matemática, será gerado um vetor de ações futuras de controle que levará o sistema ao valor desejado de modo ótimo. O LDMC resolve o seguinte problema de otimização: min φ = w|ρ| ∆u
Sujeito a um conjunto de restrições lineares. O resíduo ρ e a matriz w , de pesos adotados, são espressos por:
ρ=
ρk ρk +1
...
ρk + L−2 ρk + L−1
w =
0
...
0
0
0
w2
...
0
0
0
0
...
w L−1
0
0
0
...
0
w L
w1
...
O problema não pode ser resolvido diretamente por programação linear, define-se: ρ = x − z
LIEC - DEE - UFCG
com xi, zi ≥ 0
c Raphael Baltar 10/12/2013
36
Model Predictive Control
Controle Preditivo
Se ρ k +i é positivo, então ρk +i = xk +i e z k +i = 0; caso contrário, ρk +i = − zk +i e x k +i = 0. O problema de otimização pode ser recolocado. min φ = w( x + z)
∆u, x, z
sujeito a ρ = x − z e outras restrições lineares.
LIEC - DEE - UFCG
c Raphael Baltar 10/12/2013
37
Model Predictive Control
Controle Preditivo
Controlador QDMC O QDMC (do ingles Quadratic Dynamic Matrix Control)(Garcia & Morshed, 1986), usa as mesmas equações de predição do DMC, ou seja: ˆ = − A∆u + E ˆ′ E
porém, a função objetivo é quadrática: 1
1
2
2
ˆ T QT Q E ˆ + ∆uT R∆u J (∆u) = E
Substituindo o valor do erro de malha fechada na equação do custo teremos:
J (∆u) = J (∆u) =
1 2
1
2
T ˆ′
− A∆u + E
ˆ′
T
Q Q − A∆u + E
1
+ ∆uT R∆u 2
1
ˆ ′T QT QA∆u + E ˆ ′T QT Q E ˆ ′T ∆uT AT QT QA + R ∆u − E 2
Como o ultimo termo não depende de ∆u, este pode ser removido da função objetivo. O problema do controlador pode ser escrito como: min J (∆u) = ∆u
LIEC - DEE - UFCG
1 2
ˆ ′T QT QA∆u ∆uT AT QT QA + R ∆u − E
c Raphael Baltar 10/12/2013
38