Curso de Especialização em Automação Industrial Grupo de Controle Automação e Robótica GCAR/UFRGS Controle Preditivo Baseado em Modelo (MPC) - Dynamic Matrix Control (DMC) Prof. Dr. João Manoel Gomes da Silva Jr. Introdução • Cutler and Ramaker de Shell Oil Co. (1980) • Largamente aceito e aplicado na Indústria Petroquímica • Mais que um algoritmo pacote (algoritmo DMC,otimização estática e dinâmica, identificação) Predição • Modelo de resposta ao salto: y(t) gi u (t i ) i 1 • Predição: yˆ (t k | t) giu(t k i) nˆ (t k|t) i 1 giu(t k i) i 1 g u(t k i) nˆ(t k|t) i i k 1 Predição • Perturbações constantes: nˆ (t k | t ) n(t | t ) ym yˆ (t | t ) k yˆ(t k|t) g i u(t k i) i 1 k g u(t k i) y (t) i i k 1 giu(t i) giu(t k i) f(t k) i 1 i 1 m Resposta livre • f(t+k) é a resposta livre do sistema (parte da resposta que não depende das ações de controle futuras f(t k) ym(t) ( g k i g i )u (t i ) i 1 • Se o processo é assintoticamente estável: g k i g i 0, i N N f (t k ) ym (t ) ( g k i g i )u (t i ) i 1 Predições • Considerando um horizonte de predição p e um horizonte de controle m tem-se: yˆ (t 1 | t ) yˆ (t 2 | t ) g1u (t ) f (t 1) g 2 u (t ) g1u (t 1) f (t 1) yˆ (t p | t ) p g u (t p i) f (t p) i i p m 1 Matriz Dinâmica G g1 g2 gm 0 g1 g m 1 gp g p 1 u (t ) f (t 1) u (t 1) f (t 2) f u u (t m 1) f (t p ) g p m 1 0 0 g1 yˆ Gu f Perturbações Mensuráveis • Considerando-se a reposta devido a perturbação mensurável, podemos formar uma matriz D similar a matriz G, tem-se assim: yˆ Dd fd f f u Dd fd fn fu = resposta livre devido ao controle fd = resposta livre devido a perturbações mensuráveis fn= resposta livre a perturbações não mensuráveis Seqüência de Controle Ótima p m J [ yˆ (t j | t ) w(t j )] [u (t j 1 | t )]2 2 j 1 j 1 yˆ (t 1 | t ) w(t 1) yˆ (t 2 | t ) w(t 2) e yˆ (t p | t ) w(t p) J eeT λuu T Seqüência de Controle Ótima • Caso sem restrições solução analítica J eeT λuu T J (Gu f w )T (Gu f w ) u Tu min J u J 0 u J 0 2(G TGu G T (f w) u) 0 u u (G TG λI) 1 G T (w f) Seqüência de Controle Ótima • Caso com restrições problema de programação qudrática (QP) min (Gu f w )T (Gu f w ) u Tu u sob Ru u Controle Aplicado • Pela filosofia de horizonte deslizante, apenas o primeiro incremento da seqüência ótima de controle é utilizado: u(t ) u(t 1) u(t | t ) u(t 1) u(1) • No instante seguinte, o vetor f é atualizado e todo o processo de obtenção da seqüência de variações de controle é repetido. Extensão ao Caso Multivariável • Sistema multivariável com nu entradas e ny saídas : G11 ( s ) G12 ( s ) G (s) G (s) 21 22 G(s) G ( s ) G ( s ) ny 2 ny1 G1nu ( s ) G2 nu ( s ) Gnynu ( s ) Extensão ao Caso Multivariável yˆ [ y1 (t 1 | t ), , y1 (t p1 | t ),, yny (t 1 | t ), , yny (t pny | t )]T u [u1 (t 1 | t ),, u1 (t m1 1),, unu (t ),, unu (t mnu 1)]T f [ f1 (t 1 | t ),, f1 (t p1 | t ), , f ny (t 1 | t ),, f ny (t pny | t )]T G11 G12 G G22 21 G G ny1 Gny 2 G1nu G2 nu Gnynu • Gij contem os coeficientes da resposta ao salto da i-ésima saída, correspondente j-ésima entrada. Exemplo Resposta para escalação: 30 y(t) giΔu(t i) i 1 • Resposta ao salto: 0.2713z 3 Equivale a resposta ao salto de G ( z ) 1 0.8351z 1 Para p=10, m=5 0 0 0 0 0 0 0.271 0 0 0.498 0.271 0 0.687 0.498 0.271 G 0.845 0.687 0.498 0.977 0.845 0.687 1.087 0.977 0.845 1.179 1.087 0.977 1.256 1.179 1.087 Seqüência de Controle 0 0 0 0 0 0.271 0.498 0.687 0.845 0.977 0 0 0 0 0 0.271 0.498 0.687 0.845 0 u K(w f) K 0 0 0.1465 0.1836 0.1640 0.1224 0.0780 0.0410 0.0101 0.0157 Respostas Temporais Caso com perturbação •Medida de perturbação: temperatura de entrada da água. Modelo experimental: y(t) 30 d i Δu(t i) i 1 A matriz D se constrói da mesma forma que G. Resposta a perturbação