Controle de Processos Professor: Argimiro Facilitador: Perez O que é o Controle Preditivo Multivariável Odloak [1] 2 O que é o Controle Preditivo Multivariável Odloak [1] 3 O que é o Controle Preditivo Multivariável split-range gás não condensado carga PC CA líquido condensado TriSolutions [2] 4 O que é o Controle Preditivo Multivariável u2max S u2min u1min u1max u1 5 Controlada vazão FI Manipulada (Abertura) retirada produto TriSolutions [2] 6 Setpoint FC FC Controlada vazão FI Manipulada abertura retirada produto TriSolutions [2] 7 Controlada temperatura TI manipulada Setpoint FC FC FI retirada produto TriSolutions [2] 8 Controlada temperatura TI TC FC manipulada Setpoint FC FI retirada produto TriSolutions [2] 9 manipulada Setpoint TC TI TC FC FI controlada retirada produto TriSolutions [2] 10 CPM Controlada Pfe e vazão produto manipulada Setpoint TC Faixas de controle TI TC FC FI TriSolutions [2] retirada produto 11 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 12 Conceitos Básicos de Otimização 13 Otimização Problema de otimização Elementos importantes na Otimização: • Função Objetivo • Variáveis • Restrições • Graus de Liberdade 14 Otimização 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 15 Otimização 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 16 Otimização 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 17 Otimização 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. 18 Otimização O Problema de Otimização Min f(y,u,x) sujeito a: h(y,u,x) = 0 g(y,u,x) < 0 onde: y: variáveis discretas x: variáveis contínuas u: variáveis de decisão 19 Otimização Resolução de um Problema de Otimização Para 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) 20 Otimização 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) 21 Otimização 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) 22 Otimização 3. Programação Quadrática (QP) É um caso especial da NLP onde a função objetivo é do tipo quadrática f x C X X AX T T Não há variáveis discretas (y=0) Quadrático 23 Otimização X T AX x1 x2 a11 a 21 a12 a22 x1 x x1 2 x2 a11 x1 a12 x1 x2 a21 x1 x2 a22 x2 2 a11 x1 a12 x2 a x a x 21 1 22 2 2 24 Otimização 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) 25 Otimização 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) 26 Controladores Preditivos • Histórico dos MPC’s: o MAC – Model Algorithmic Control – 1976 o DMC – Dynamic Matrix Control – Cutler, 1979 o LDMC – Linear Dynamic Matrix Control, 1983 - utilizado no SICON da Petrobras o QDMC – Quadratic Dynamic Matrix Control – Morshedt, 1985 27 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. 28 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. 29 Controladores Preditivos • O MPC é baseado em modelos lineares. • Representação do processo o Resposta ao impulso o Resposta ao degrau o 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. 30 Controladores Preditivos Tipos de processos e suas respostas ao pulso 31 32 Resposta ao FIR 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. u y h 1 h pulso unitário h h 1 2 3 4 3 t 4 2 1 1 2 3 4 t 33 Resposta ao FIR Para um dado instante i y k i hu i k Considerando um período de estabilização N N y k i hju k i j j 1 34 Resposta ao FIR Se considerarmos que a cada novo instante j, o MPC aplica um pulso de valor u(k+j) y k i h1u k i 1 h2u k i 2 h3u k i 3 hi u k Portanto, no instante i genérico i y k i hju k i j j 1 35 Resposta ao FIR Idéia do uso do FIR para sistemas integradores hn hn1 36 Controladores Preditivos • Para a obtenção do modelo incremental (a partir de Δu), ao invés do modelo posicional: N y k 1 hi uk 1i i 1 N y k 1 y k hi uk 1i N i 1 y k hi uk i i 1 onde: uk 1i uk 1i uk i 37 Resposta ao Degrau u S2=(h1+h2) u h2 u S1=h1u ykP' i k 38 Controladores Preditivos • Equação da Predição y S1u S2u kT u ykP' N k ykP N k 39 Controladores Preditivos • Equação da Predição para um horizonte de controle igual a 1 y h1u k y P k 1 k P' k 1 k ykP 2 h1u k 1 h2 u k ykP' 2 k k ykP 2 h1 h2 u k ykP' 2 k k ykP 2 S2 u k ykP' 2 k k 40 Controladores Preditivos ykP3 h1u k 2 h2 u k 1 h3u k ykP' 3 k k ykP3 h1 h2 h3 u k ykP' 3 S3u k ykP' 3 k k k • Generalizando para o instante N ykP N S N u k ykP' N k k 41 Controladores Preditivos • Equação da Predição para um horizonte de controle igual a 2 y S1u S2u kT u(k+1) u(k) ykP' N k ykP N k 42 Controladores Preditivos • Equação da Predição para um horizonte de controle igual a m ykP1 S1u k ykP' 1 k k y P k 2 S2 u k S1u k 1 y k P' k 2 k ykP3 S3u k S2 u k 1 S1u k 2 ykP' 3 k k 43 Controladores Preditivos • Equação da Predição para um horizonte de controle igual a m ykPm Sm u k Sm1u k 1 k S2 u k m 2 S1u k m 1 ykP' m k ykPm1 Sm1u k Sm u k 1 k P' +S2 u k m 1 S1u k m yk m k 44 Controladores Preditivos • Equação da Predição ykP1 S1 P yk 2 S2 P yk N k S N 0 S1 S N 1 u k ykP' 1 u k 1 P ' yk 2 P' S N m1 u k m 1 yk N 0 0 Matriz Dinamica y Su y P P ' y P N 1 y P ' N 1 S N m u m 1 45 Função Objetivo min J e e e 2 1 2 2 2 3 e 2 np onde ei: erro entre setpoint e predição no instante k+i min J e e T e np 1 46 47 DMC Caso SISO ykP1 h1u k h2u k 1 h3u k 2 k ykP' 1 yP yP yP' k 1 k k 1 k k 1 k y h u k h u k 1 h u k 2 1 2 3 k 1 k P 48 k DMC Caso SISO N N y h u k 1 i (1) y h u k i (2) i i k k 1 k k 1 i 1 i 1 P P N N y y h u k 1 i h u k i i i k 1 k k k 1 i 1 i 1 P P N y y h u k 1 i u k i i k 1 k k k 1 i 1 P P N y y h u k 1 i (3) i k 1 k k k 1 i 1 P P 49 DMC Caso SISO Para um instante j qualquer N y y h u k j i (4) i k j k k j 1 k i 1 P P y P y P h u k j 1 h u k j 2 2 k j k k j 1 k 1 hN u k j N 50 DMC Caso SISO Incluindo a realimentação yC y P yC y P k j k k j k k j 1 k k j 1 k yC yC y P y P k j k k j 1 k k j k k j 1 k N y y h u k j i (5) i k j k k j 1 k i 1 C C 51 Predição do DMC Caso SISO N y y h u k 1 i i k 1 k k k i 1 C C y C y h u k h u k 1 h u k 2 1 2 3 k k 1 k N y y h u k h u k 1 i 1 i k k 1 k i 2 C 1 y C y S u k (6) 1 1 k k 1 k 52 Predição do DMC Caso SISO N y y h u k 2 i i k 2 k k 1 k i 1 C C yC yC h u k 1 h u k h u k 1 h u k 2 2 3 4 k 2 k k 1 k 1 desconhecido desconhecido conhecido conhecido N y y h u k 1 h u k h u k 2 i 2 i k 2 k k 1 k 1 i 3 C C 2 53 Predição do DMC Caso SISO y C y S u k h u k 1 h u k 1 1 1 2 2 k k 2 k y y h u k 1 S h u k 1 1 2 1 2 k k 2 k C y C y S u k S u k 1 2 1 1 2 k k 2 k (7) 54 Predição do DMC Caso SISO N y y h u k 3 i i k 3 k k 2 k i 1 C C yC yC h u k 2 h u k 1 h u k h u k 1 2 3 4 k 3 k k 2 k 1 desconhecido desconhecido desconhecido conhecido N y y h u k 2 h u k 1 h u k h u k 3 i 2 3 i k 3 k k 2 k 1 i4 C C 3 55 Predição do DMC Caso SISO y C y S u k 1 S u k h u k 2 h u k 1 h u k 1 2 1 2 1 2 3 3 k k 3 k y C y S u k S u k 1 S u k 2 3 2 1 1 2 3 k k 3 k (8) 56 Predição do DMC Caso SISO j Pj n n 1 y C y S u k P 1 1 k k 1 k y C y S u k S u k 1 P 2 1 2 k k 2 k y C y S u k S u k 1 S u k 2 P 3 2 1 3 k k 3 k y C y S u k S u k 1 S u k 2 j j 1 j 2 k k j k S1u k j 1 Pj 57 Predição do DMC Caso SISO ykC1 S1 C yk 2 S 2 ykC3 S3 yC S np 1 k np 1 C yk np S np 0 0 0 S1 0 0 S2 S1 0 S np 2 S np 1 Snp 3 Snp 2 S1 S2 0 u k y k P1 0 u k 1 y k P2 0 u k 2 y k P3 (9) 0 u k np 2 y P np 1 k S1 u k np 1 k y k Pnp y Su y k P C 58 Predição do DMC Caso SISO ykC1 S1 C S y k 2 2 ykC3 S3 SP SP y y C y Snp 1 k np 1 C y k np Snp y y S1 SP S y y 2 SP y y S3 SP C y y Snp 1 k np 1 SP C y yk np Snp SP C k 1 C k 2 C k 3 0 0 0 S1 0 0 S2 S1 0 Snp 2 Snp 1 S np 3 Snp 2 S1 S2 0 0 0 S1 S2 0 S1 0 0 Snp 2 Snp 1 S np 3 Snp 2 S1 S2 0 u k y k P1 0 u k 1 y k P2 0 u k 2 y k P3 0 u k np 2 y k Pnp 1 S1 u k np 1 k y k Pnp 0 u k 0 u k 1 0 u k 2 0 u k np 2 S1 u k np 1 k y SP y k P1 SP y y k P2 SP y y k P3 SP y y k Pnp 1 SP y y k Pnp 59 Predição do DMC Caso SISO ek 1 S1 S e k 2 2 ek 3 S3 e Snp 1 k np 1 ek np Snp 0 S1 S2 0 0 S1 0 0 0 Snp 2 Snp 1 Snp 3 Snp 2 S1 S2 0 u k ek P1 0 u k 1 ek P2 0 u k 2 ek P3 0 u k np 2 ek Pnp 1 S1 u k np 1 ek Pnp k e Su ek P e Su e Definindo ' e ek P ' (10) 60 Predição do DMC Caso SISO ek 1 S1 S e k 2 2 ek 3 S3 e Snp 1 k np 1 ek np Snp 0 S1 S2 0 0 S1 0 0 0 Snp 2 Snp 1 Snp 3 Snp 2 Snp m1 Snp m 2 e ' np 1 e np 1 S np m u k ek P1 e P u k 1 2 k u k 2 ek P3 0 u k m 2 ek Pnp 1 S np m1 u k m 1 ek Pnp k 0 0 0 u m 1 61 Função Objetivo J e T e e Su e J Su e J Su e ' T ' T Su e ' T (10) Su e u S e ' ' T 'T 'T Su e 'T ' J u S S u u S e e S u e e T T T T ' 62 ' Função Objetivo J T T ' 'T 2 S S u S e e S 0 0 u 2S Su 2S e T T ' u S S T 1 T S e ' (11) u m 1 e ' np 1 S np m 63 Função Objetivo Modificada J e e u R u (12) T T R1 0 R 0 R2 0 u S S R T 0 0 Rm 1 T S e ' (13) 64 Fluxograma DMC k Leitura da planta yk e'=ySP- yk - P k=k+1 Cálculo das ações passadas j Pj n n 1 n N h u k n i i n 1 i u S S R T 1 T S e y Su y k P ' Cálculo das ações de controle Predição C 65 DMC Caso MIMO O Problema MIMO MIMO (nu X ny) . . . . . . y y1 T u u1 T y2 yny u2 unu T T 66 DMC Caso MIMO N y h u k i (2) i k k 1 i 1 P N nu y h j ,l ,i ul k i j , k k 1 i 1 l 1 P 67 DMC Caso MIMO Para a variável controlada j = 1 y P h u k 1 h u k 1 h u k 1 1,2,1 2 1, nu ,1 nu 1,k k 1 1,1,1 1 h1,1,2u1 k 2 h1,nu ,2unu k 2 h1,1, N u1 k N h1,2, N u2 k N h1,nu , N unu k N Para cada variável controlada j de 1 a ny ny nu H i h j ,l ,i j 1 l 1 68 DMC Caso MIMO • Definindo h11,i h 21,i Hi hny1,i H ny nu i h12,i h22,i hny 2,i h1nu ,i h2 nu ,i hnynu ,i 69 DMC Caso MIMO N nu y h j ,l ,i ul k i j , k k 1 i 1 l 1 P N y H u k i i k k 1 i 1 P 70 DMC Caso MIMO A predição para o instante k+1 N y H u k 1 i i k 1 k i 1 P N y H u k i i k k 1 i 1 P N N N y P y P H u k 1 i H u k i H u k 1 i i i i k 1 k k k 1 i 1 i 1 i 1 71 DMC Caso MIMO Generalizando a predição para o instante k+j N y y H i u k j i k j k k k j 1 i 1 P P 72 DMC Caso MIMO Corrigindo a predição yC y P yC y P k j k k j k k j 1 k k j 1 k yC yC y P y P k j k k j 1 k k j k k j 1 k N y y H u k j i i k j k k j 1 k i 1 C C 73 DMC Caso MIMO Predição j=1 y k 1 k C y k k C N H i u k 1 i i 1 Valor Atual lido da Planta 74 DMC Caso MIMO Predição j=1 yC y H 1 k k 1 k u k H 2 u k 1 H 3u k 2 Valor desconhecido Passado N y y H u k H u k 1 i 1 i k k 1 k i 2 C 1 yC y S u k 1 1 k k 1 k P 1 75 DMC Caso MIMO Predição j=2 N y y H u k 2 i i k 2 k k 1 k i 1 C C N y y S u k H u k 2 i 1 1 i k k 2 k i 1 C y C y S u k H u k 1 H u k H u k 1 1 1 1 2 3 k k 2 k y C y H u k 1 H H u k H u k 1 1 1 2 1 3 k k 2 k 76 DMC Caso MIMO Predição j=2 y C y H u k 1 H H u k H u k 1 1 1 2 1 3 k k 2 k N y y S u k 1 S u k H u k 2 i 1 2 1 i k k 2 k i 3 C 2 y y S u k 1 S u k 1 2 1 2 k k 2 k C P2 77 DMC Caso MIMO Predição j=3 N y y H u k 3 i i k 3 k k 2 k i 1 C C N y y S u k 1 S u k H u k 3 i 1 2 1 2 i k k 3 k i 1 C yC y S u k 1 S u k H u k 2 H u k 1 H u k 1 2 1 2 1 2 3 k k 3 k H 4 u k 1 78 DMC Caso MIMO Predição j=3 y C y S u k 2 S u k 1 S u k H u k 1 1 2 3 1 2 4 k k 3 k N y C y S u k 2 S u k 1 S u k H u k 3 i 1 2 3 1 2 i k k 3 k i 4 3 y C y S u k 2 S u k 1 S u k 1 2 3 1 2 3 k k 3 k P3 79 DMC Caso MIMO Predição um instante j genérico y C y S u k j 1 S u k j 2 S u k j 3 1 2 3 k k j k Si u k j i S j u k 1 2 3 j Pj 80 DMC Caso MIMO • Montando a predição em modelo de matriz yC k 1 S1 C S y k 2 2 C S y k 3 3 C S np y k np 0nynu 0nynu S1 0nynu S2 S1 Snp 1 S np 2 y S u yk P C y P 0nynu u k k 1 0nynu u k 1 y P2 k 0nynu u k 2 y P3 k u k m 1 P y np S np m 1 k i Pi n n n 1 N H u k n j j n 1 l 81 DMC Caso MIMO • Cada matriz Sk S 2 H1 H 2 k Sk H l l 1 h11,l h 21,l Hl hny1,l h12,l h22,l hny 2,l h1nu ,l h2 nu ,l hnynu ,l 82 DMC Caso MIMO • Subtraindo o set point para gera o vetor de erros y SP y y SP S u yk P C e S u ek P e' e S u e ' 83 DMC Caso MIMO • Função Objetivo J Su e Su e u ' T ' T R u 'T 'T J u S Su u S e e Su e e u R u T T T T ' ' T J T T ' 'T 2 S S u S e e S 2 R u 0 u u S S R T 1 T S e ' 84 DMC Caso MIMO • Vetor de soluções , , u k u k 1 u u k j u k m 1 u k j u1,k j u 2, k j , j 0,1 unu ,k j m 1 85 DMC Caso MIMO • Matriz R , Rk 0nunu R 0nunu 0 nunu 0nunu 0nunu R k 1 0nunu 0nunu Rk j 0nunu 0nunu 0nunu 0nunu 0nunu R k m 1 Rk j r1 0 0 , j 0,1 rnu k j m 1 86 DMC Caso MIMO • Derivando e igualando a zero a função objetivo J e W W e u R u T T T J 0 u u S W W S R T T 1 T T S W We ' 87 DMC Caso MIMO • Função Objetivo Modificada J e W W e u R u T W k 1 0nyny W 0nyny 0nyny 0nyny W k 2 T 0nyny 0nyny k j 0nyny W 0nyny 0nyny T 0nyny 0nyny 0nyny k np W W k j W1 0 0 W 2 0 0 0 0 , j 1, 2 Wny 88 np QDMC e S u e ' J e W W e u R u T J u T S W T T T T 'T W S R u e W W S u 'T u S W W e e W W e T T T ' T T ' 89 QDMC J u T S W T J u T T 'T 'T W S R u 2e W W S u e W W e S W T T T 'T T W S R u 2 e W W S u H T C Tf 90 ' QDMC • Problema QDMC J u H u 2C u T T f H S W WS R T T s.a u max u u max 'T C e W W S T f T u min u u max y min y y max C 91 QDMC • Problema QP 1 T T min x H x C f x 2 s.a. Ax b 0 92 DMC por realinhamento Leitura da planta yk Início yP= yk y k 1 y k S u k d k 1 C P P C y M y k 1 Cálculo das ações de controle min J u H u 2C Tf u T u u k y y k Su k P P k k 1 Leitura da planta yk P dk 1 y k 1 y k 1 S1u k k e' y sp y p cTf e' W TWS T H S TW TWS R 93 DMC por realinhamento y S u yk P C i P i n n 1 n N H u k n j j n 1 j 94 DMC por realinhamento yC k 1 S1 C S y k 2 2 C S y k 3 3 C S np y k np 0nynu 0nynu S1 0nynu S2 S1 S np 1 S np 2 y P1 0nynu u k k 0nynu u k 1 y P2 k 0nynu u k 2 y P 3 k u k m 1 y P S np m 1 np k 95 DMC por realinhamento • Cuttler propôs o realinhamento yP yP k 1 k 1 k 2 k • Inserindo as ações de entrada y P y P S u k 2 k 1 k 1 k 2 k 96 DMC por realinhamento • A predição em k+1 para um instante genérico j y P y P S u k j 1 k j k 1 k j 1 k 97 DMC por realinhamento • Predição até o horizonte np yP 0nyny k 1 0 P nyny y k 2 P 0nyny y k 3 0nyny P 0 y k np k 1 nyny I nyny 0nyny 0nyny I nyny 0nyny 0nyny 0nyny 0nyny 0nyny 0nyny 0nyny 0nyny 0nyny 0nyny 0nyny 0nyny 0 nyny 0nyny 0nyny 0nyny M yP 0nyny k 1 0nyny P y k 2 0nyny P y k 3 I nyny P I nyny y k np k I nyny 0nyny 0nyny 0nyny I nyny 0nyny 0nyny 0nyny 0nyny 0nyny 0nyny 0nyny 0nyny 0nyny 0nyny M 0nyny S 1 0nyny S2 0nyny S 3 u k I nyny S I nyny np S y k 1 M y k M Su k P P M np.ny np.ny S np.ny nu 98 DMC por realinhamento • Predição para o instante np yP yP yP k np k 1 k np 1 k 1 k np k • Correção da Predição P dk 1 y k 1 y k 1 S1u k k 99 DMC por realinhamento yC 0nyny k 1 0 C nyny y k 2 C 0nyny y k 3 0nyny C 0 y k np k 1 nyny I nyny 0nyny 0nyny 0nyny I nyny 0nyny 0nyny 0nyny 0nyny 0nyny 0nyny 0nyny 0nyny 0nyny 0nyny M P 0nyny y k 1 S 1 d k 1 0nyny P y k 2 S 2 d k 1 0nyny P y S 3 u k d k 1 k 3 I nyny P S d k 1 I nyny y np k np k 100 LDMC • Função Objetivo do LDMC J u T 'T S W W S R u 2S W W e u e W W e' T T T T ' T J T T T T ' 2 S W W S R u 2 S W W e u S W T T W S R u S W W e T T ' 101 LDMC • Função Objetivo do LDMC S W T T W S R u S W W e 1 T 1 T ' nu .m T 102 LDMC • Função Objetivo do LDMC m.nu min i u i 1 i 0 xi 0 zi i i 0 zi 0 xi i i xi zi 103 LDMC • Problema LDMC m.nu min i xi zi u sujeito a i 1 xi zi S W W S R u S W W e' T T T T u max u u max u min u u max xi 0; zi 0; 104 LDMC • Se não tivermos restrições ativas xi zi S W W S R u S W W e' 0 T T T T S W W S R u S W W e T T T u S W W S R T T 1 T ' T T S W We ' K DMC u K DMC e ' 105 LDMC u K DMC e K11 u k K u k 1 21 u k m 1 K m1 u k K11 K12 K12 K 22 Km2 ' K1np ' e k 1 K 2 np e' k 2 e' k np K mnp ' K1N e k 1 106 MPC em Malha Fechada • Equação de Predição do DMC com matriz de realinhamento y k 1 M y k M Su k d k 1 C P x k 1 Ax k Bu k y k C x k C I ny 0ny 0ny 107 MPC em Malha Fechada y planta k 1 C y k Su k y prediçao k 1 C y k S u k y k y k 1 S S 1 S 2 P y k N y k 2 S N T k T 108 MPC em Malha Fechada y planta k 1 C y k Su k y prediçao k 1 C y k S u k P d k 1 C y k S u k C y k S u k P 109 MPC em Malha Fechada d k 1 C y k S u k C y k S u k P y k 1 M y k M Su k d k 1 C P y k 1 M y k M Su k K F C y k Su k C y k S u k C P P 110 MPC em Malha Fechada KF I ny y k y k 1 P P I ny P y k 2 I ny T T yk N k P 111 MPC em Malha Fechada • Predição do modelo no controlador y k 1 M y k M Su k K F C y k Su k C y k S u k C P P y k 1 M y k M Su k K F C y k K F CSu k K F C y k K F CSu k C P P y k 1 M KF C y k M S K F CS K F CS u k K F C y k C P y k 1 M K F C y k M S K F C S S u k K F C y k C P 112 MPC em Malha Fechada • Predição para a planta y k 1 M y k M Su k K F C y k Su k C y k S u k C P P y k 1 M y k M Su k P 113 MPC em Malha Fechada • Sistema Controlador e Processo P yC M K F C K F C y M S K F C S S u k y y 0 M k MS k 1 x k 1 Ax k Bu k y k C x k 114 MPC em Malha Fechada • Subtraindo do set point P y SP y C y SP M K F C K F C y M S K F C S S u k y SP y y SP 0 M y MS k 1 k P y SP y C M K F C K F C y SP M K F C K F C y M S K F C S S u k y SP y 0 M y SP 0 M y M S k 1 k 115 MPC em Malha Fechada e' M K F C K F C e' M S K F C S S u k 0 M e' k e' k 1 MS u K DMC e' e M K F C K F C e ' 0 M e' k e k 1 ' ' M S K C S S K DMC e' F ' K e MS DMC k 116 MPC em Malha Fechada • Autovalores de A definem a estabilidade da malha fechada M K C M S K C S S K e F F DMC e' k 1 M S K DMC ' x k 1 K F C e' ' M e k xk * A 117 MPC em duas camadas • Autovalores de A definem a estabilidade da malha fechada Camada de Otimização (LP ou QP) yS P uir v yS uk- S 1 MPC (DMC, QDMC, LDMC) 118 MPC em duas camadas • Predição do MPC yC k 1 S1 C S y k 2 2 C S y k 3 3 C S np y k np 0nynu 0nynu S1 0nynu S2 S1 S np 1 S np 2 y k np S np C S np 1 S np 2 y P1 0nynu u k k 0nynu u k 1 y P2 k 0nynu u k 2 y P 3 k u k m 1 y P S np m 1 np k u k u k 1 S np m 1 u k 2 y k P np u k m 1 P y k np 119 MPC em duas camadas np→∞ C y k S S 1 S 2 S S N C y k S N SN SN u k u k 1 P S m1 u k 2 y k u k m 1 y k y k N P P u k u k 1 P S N u k 2 y k N u k m 1 120 MPC em duas camadas C y k S N SN u k u k 1 P S N u k 2 y k N u k m 1 SN m 1 y k S N u k i y k N C P i 0 121 MPC em duas camadas m 1 y k S N u k i y k N C P i 0 u k u k 1 m 1 u k i u k u k 1 u k m 1 u k m 1 u k 1 i 0 y k S N u k m 1 u k 1 y k N C P 122 MPC em duas camadas y k y k N S N u k m 1 u k 1 C P y S N u 123 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. 124 MPC em duas camadas y k y k N S N u k m 1 u k 1 C P y SS y k N S N u SS u k 1 C P 125 MPC em duas camadas C y SS : predição para o novo estado estacionário obtido de uma função objetivo econômica P ykN : situação no futuro N caso nenhuma ação de controle seja tomada SN : ganho estático do processo u k 1 : valor atual das manipuladas u SS : valor desejado para as variáveis manipuladas, u irv 126 MPC em duas camadas u1 u2 pTy y SS pTu u SS 127 MPC em duas camadas • Programação Linear na camada superior min p y y SS pu u SS C T C T ySS ,uSS C s. a. y SS y k N S N u SS u k 1 C P u min u SS u max SP y SS y u SS u irv y min y SS y max C C C 128 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. y SS y k N S N u SS u k 1 C P • 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: C u SS y SS y k N P SN u k 1 129 MPC em duas camadas • Para resolver este problema, a função objetivo do MPC pode ser alterada: J e W W e u k m1 u irv R u u k m1 u irv u R u T T T T 130 QDMC em duas camadas • Função objetivo do QDMC em duas camadas uk m1 I nu u k m1 uirv T I nu u k u k 1 u I u u I nu k 1 k 1 u k m 1 Ru u k m1 u irv I u u k 1 u irv T Ru I u u k 1 u irv 131 QDMC em duas camadas u k m1 uirv Ru u k m1 u irv I u u k 1 u irv Iu u T k 1 u irv T u I Ru u k 1 u T I u u k 1 u irv T T T Ru I u u k 1 u irv Ru I u u k 1 u irv u I R u I u u k 1 R u I u u irv R u I u T k 1 T T T T T Ru u k 1 u irv Ru u k 1 u I R u u irv u k 1 R u u irv u irv R u u irv T T T T Ru I u u k 1 u irv u I R u I u 2 u k 1 u irv R u I u T T T u k 1 u irv Ru u k 1 u irv T 132 QDMC em duas camadas • Função objetivo do QDMC com a inclusão de uirv J u H u 2C u T I u u k 1 u irv T T f Ru I u u k 1 u irv u I R u I u 2 u k 1 u irv R u I u T T T u k 1 u irv Ru u k 1 u irv T J u T H I Ru I u 2 CTf u k 1 uirv Ru I u T T 133 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). 134 Controle de saídas por faixa y ymax ymin t 135 Controle de saídas por faixa • Função objetivo do MPC por faixa np T m1 T J y k j y k j W W y k j y k j u k m1 u irv Ru u k m1 u irv u k j R u k j j 1 j 0 C b y min T C b yk j y P P i ,k j y P i ,k j y y y max max i min i T Wi,k j 0 b i ,k j y b i ,k j y y y max i min i 136 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. 137 MPC com ações não igualmente espaçadas MPC não igualmente espaçado 138 MPC com ações não igualmente espaçadas • Exemplo para m=3. u k , u k n1 , u k n2 yC k 1 S1 C y k 2 S2 C y S k n1 1 n1 1 C y k n 2 S n1 2 1 C Sn 1 y k n2 1 2 C S y n2 2 k n2 2 C S np y k np 0nynu 0nynu S1 S2 S n2 n1 S n2 n1 1 S np n1 0nynu 0nynu y P1 0nynu k u k y k P2 0nynu u k n1 y k P3 u k n 2 S1 y k Pnp S2 Snp n2 139 MPC com ações não igualmente espaçadas • Exemplo para m=3. u k , u k n1 , u k n2 yC k 1 S1 C y k 2 S2 C y S k n1 1 n1 1 C y k n 2 S n1 2 1 C Sn 1 y k n2 1 2 C S y n2 2 k n2 2 C S np y k np 0nynu 0nynu S1 S2 S n2 n1 S n2 n1 1 S np n1 0nynu 0nynu y P1 0nynu k u k y k P2 0nynu u k n1 y k P3 u k n 2 S1 y k Pnp S2 Snp n2 n2 2n1 140 Sistema Integrador com Espaço de Estados y k 1 y k y k y k 1 S 1u k quanto y aumentou no periodo atual e no periodo anterior y k 1 2 y k y k 1 S 1u k y k y k 1 0 0 x k x k y k 1 y k 2 141 Sistema Integrador com Espaço de Estados y k 1 y k y k 1 x k 1 2 1 0 y k S 1 1 0 0 y k 1 0 u k 0 1 0 y k 2 0 k k 1 A x k B x k 1 Ax k Bu k 142 Sistema Integrador com Espaço de Estados • Colocando a correção da leitura da planta y k 1 calculo x k 1 y k y planta k K F y k 1 y planta k 1 P y planta k y k Predicao feita no instante k-1 143 MPC com Modelo em Espaço de Estados • Equação de predição para o instante 1 x k 1 Ax k Bu k y k Cx k • Equação de predição para o instante 2 x k 2 Ax k 1 Bu k 1 x k 2 A Ax k Bu k Bu k 1 144 MPC com Modelo em Espaço de Estados • Equação de predição para o instante 2 x k 2 A x k ABu k Bu k 1 2 y k 2 Cx k 2 2 y k 2 C A x k ABu k Bu k 1 y k 2 C A x k C ABu k CBu k 1 2 145 MPC com Modelo em Espaço de Estados • Equação de predição para o instante 3 y k 3 C x k 3 onde x k 3 Ax k 2 Bu k 2 x k 2 A x k ABu k Bu k 1 2 2 x k 3 A A x k ABu k Bu k 1 Bu k 2 x k 3 A x k A Bu k ABu k 1 Bu k 2 3 2 3 2 y k 3 C A x k A Bu k ABu k 1 Bu k 2 y k 3 C A x k C A Bu k C ABu k 1 C Bu k 2 3 2 146 MPC com Modelo em Espaço de Estados • Equação de predição para o instante np np np 1 np 2 np 3 y k np C A x k C A Bu k C A Bu k 1 C A Bu k 2 np m CA Bu k m 1 y k 1 C A 0 0 CB C AB 2 CB 0 C A y k 2 y k 3 C A3 x k C A2 B C AB CB np np 1 np 2 np 3 C A B C A B C A B y k np C A u 0 np m CA B 0 0 147 MPC com Modelo em Espaço de Estados • Um modelo pode ser escrito no domínio i nb discreto z i b z i Y z i i na1 U z a z i i 0 Y z 1 a1 z 1 a2 z 2 Y z a1z 1Y z a2 z 2Y z i ana z na b1 z 1 b2 z 2 bnb z nb U z ana z naY z b1z 1U z b2 z 2U z bnb z nbU z 148 MPC com Modelo em Espaço de Estados • Transformando em equações de diferenças Y z a1z 1Y z a2 z 2Y z y k a1 y k 1 a2 y k 2 ana z naY z b1z 1U z b2 z 2U z ana y k na bu 1 k 1 b2u k 2 na nb i 1 i 1 bnb z nbU z bnbu k nb y k Ai y k i Bi u k i 149 MPC com Modelo em Espaço de Estados • Estado não mínimo x k y k y k 1 y k na 1 u k 1 u k nb 1 T • Predição para um instante genérico k y k A1 y k 1 A2 y k 2 Ana y k na B1u k 1 B 2 u k 2 B nb u k nb 150 MPC com Modelo em Espaço de Estados • As leituras do passado podem ser obtidas a partir das informações disponíveis da planta y k A1 y k 1 I y k 2 0 y k na 1 0 0 u k 1 0 u k 2 0 u k nb 1 k A2 A3 Ana 1 Ana B2 B nb 2 B nb 1 0 0 0 0 0 0 0 I 0 0 0 0 0 0 0 0 I 0 0 0 0 0 0 0 0 0 0 0 0 0 I 0 0 0 0 0 0 0 0 0 0 I B nb y k 1 B1 0 y k 2 0 0 0 y k 3 0 y k na 0 u k 1 0 u k 2 I 0 0 u k 3 0 0 u k nb k 1 x k Ax k 1 Bu k 1 151 MPC com Modelo em Espaço de Estados a1 y (k ) y (k 1) Iny 0ny y (k 2) y (k na 1) 0ny u (k 1) 0 nuny u ( k 2) 0nuny u (k nb 2) 0nuny u (k nb 1) 0 nuny a2 0ny Iny ana 1 0ny 0ny ana 0ny 0ny 0ny Iny 0ny 0nuny 0nuny 0nuny 0nuny 0nuny 0nuny 0nynu 0nu Inu 0nuny 0nuny 0nuny 0nuny 0nuny 0nuny 0nu 0nu x k y(k ) y(k 1) b2 0nynu 0nynu bnb 2 bnb 1 bnb y (k 1) b1 0nynu 0nynu 0nynu y (k 2) 0nynu 0 0nynu 0nynu 0nynu nynu y (k na 1) 0nynu 0nynu 0nynu y (k na ) 0 ny nu u (k 1) 0nu 0nu 0nu u (k 2) I nu 0nu 0nu 0nu 0nu u (k nb 2) Inu 0nu 0nu u (k nb 1) 0nu 0nu Inu 0nu u (k nb) 0nu y(k na 1) u(k 1) u(k 2) u(k nb 2) u(k nb 1) T 152 MPC com Modelo em Espaço de Estados na forma incremental y k 1 a1 y k a2 y k 1 a3 y k 2 ... ana y k na 1 b1u k b2u k 1 b3u k 2 ... bnbu k nb 1 y k a y k 1 a y k 2 a y k 3 ... a y k na 2 3 na 1 b1u k 1 b2u k 2 b3u k 3 ... bnbu k nb y k 1 y k I ny a1 y k 1 a2 a1 y k 2 a3 a2 ... y k na 1 ana ana 1 ana y k na b1u k b2 u k 1 b3u k 2 ... bnb u k nb 1 153 MPC com Modelo em Espaço de Estados na forma incremental a I 1 ny a2 a1 a3 a2 a4 a3 0ny 0ny 0ny Iny y k 1 Iny 0ny 0ny 0ny y k 0ny 0ny Iny 0ny y k 1 ... ... ... ... 0ny 0ny 0ny 0ny y k na 1 0nuny 0nuny 0nuny 0nuny u k 0nuny 0nuny 0nuny 0nuny 0 0 0 0 nuny nuny nuny u k nb 2 nuny 0 0 0 0 nuny nuny nuny nuny ... ... ... ... 0 0 0 0 nuny nuny nuny nuny ... ana ana 1 ... 0ny ... 0ny ... 0ny ... ... Iny 0nuny 0nuny 0nuny 0nuny ... ... 0nuny ana 0ny 0ny 0ny ... 0ny 0nuny 0nuny 0nuny 0nuny ... 0nuny b2 b3 0nynu 0nynu 0nynu ... 0nynu 0nu Inu 0nu 0nu ... 0nu 0nynu 0nynu 0nynu ... 0nynu 0nu 0nu Inu 0nu ... 0nu b4 ... ... ... ... ... 0nynu 0nynu 0nynu ... 0nynu 0nynu 0nu 0nu 0nu 0nu 0nu 0nu Inu 0nu ... ... 0nu Inu bnb 0nynu 0nynu 0nynu ... 0nynu 0nu 0nu 0nu 0nu ... 0nu b1 y k 0nynu y k 1 0nynu 0nynu y k na 1 ... 0 y k na nynu u k u k 1 Inu 0nu 0 u k nb 2 nu 0nu u k nb 1 ... 0nu 154 MPC com Modelo em Espaço de Estados na forma incremental y k 1 C A 0 0 CB C AB 2 CB 0 C A y k 2 y k 3 C A3 x k C A2 B C AB CB np np 1 np 2 np 3 C A B C A B C A B y k np C A 0 u 0 np m CA B 0 155 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; 156 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 157 comprometida; 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? 158 Controladores Nominalmente Estáveis • Introdução de restrições que garantam que o estado final do sistema seja nulo. x k 1 Ax k Bu k y k C x k x k np 0 159 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 160 MPC de Horizonte Infinito x k 1 Ax k Bu k y k C x k C é a matriz identidade, ou, em outras palavras, o estado é medido x e u representam variáveis incrementais Portanto, para um sistema estável, ,o que traz, como consequência, desde que não hajam perturbações desconhecidas, ou simplesmente, u k m 0 161 Função Objetivo do MPC de Horizonte Infinito min u k ,u k 1, u k m 1 m1 J k x k j Qx k j u T j 1 T k j Ru k j j 0 m1 x k j Qx k j x k j Qx k j x k j Qx k j T j 1 T j 1 T j m x k j Qx k j x k m j Qx k m j j m T j 0 T 162 Função Objetivo do MPC de Horizonte Infinito x k j Qx k j x k m j Qx k m j T j m T j 0 x k 1 Ax k Bu k x k m 1 Ax k m Bu k m Ax k m x k m 2 Ax k m 1 Bu k m 1 Ax k m 1 A x k m 2 x k m j A x k m j 163 Função Objetivo do MPC de Horizonte Infinito x T j m k j Qx k j xT k m j Qx k m j j 0 j j x k j Qx k j A x k m QA x k m j m j 0 T T x k j Qx k j x k m j m T j 0 T A j QA j x k m T 164 Função Objetivo do MPC de Horizonte Infinito j x k j Qx k j x k m A QA x k m j m j 0 T T j T j T j x k j Qx k j x k m A QA x k m j m j 0 T T j T j P A QA j 0 165 Função Objetivo do MPC de Horizonte Infinito j T j P A Q A j 0 T j T j 2 T 2 3 T 3 P A Q A Q A Q A A Q A A Q A j 0 T A Q A Δ 2 T 3 T 4 T A PA A QA A QA A QA A QA T T 1 T A PA P A T 2 QA1 Q 3 4 1 T A QA1 A P A P Q T 166 Formulação do MPC de Horizonte Infinito m 1 min u k ,u k 1, u k m1 m 1 J k x k j Qx k j x k m Px k m u sujeito a T T j 1 k j Ru k j j 0 umin u k j umax , u k j 0 T j 0,1,2 m 1 jm 167