Anais do 13O Encontro de Iniciação Científica e PósGraduação do ITA – XIII ENCITA / 2007 Instituto Tecnológico de Aeronáutica, São José dos Campos, SP, Brasil, Outubro, 01 a 04, 2007. GERENCIAMENTO DE RESTRIÇÕES EM PROBLEMAS DE CONTROLE PREDITIVO COM INCERTEZAS DE MODELO E PERTURBAÇÕES EXÓGENAS Rubens Junqueira Magalhães Afonso Instituto Tecnológico de Aeronáutica, Divisão de Engenharia Eletrônica, 12228900, São José dos Campos SP Bolsista PIBICCNPq [email protected] Roberto Kawakami Harrop Galvão Instituto Tecnológico de Aeronáutica, Divisão de Engenharia Eletrônica, 12228900, São José dos Campos SP [email protected] Resumo. Este artigo investiga os benefícios de se usar uma política de relaxamento de restrições apropriada sobre a saída de um sistema controlado por um Controlador Preditivo via simulações no ambiente Matlab/Simulink. Dois sistemas foram utilizados para simulações: um duplo integrador e um levitador magnético com dinâmica mais complexa. Neste segundo sistema, considerase ainda o efeito do ruído de medida do sensor de posição, simulado através da introdução de um ruído gaussiano branco. O cálculo da ação de controle a ser tomada pelo Controlador Preditivo envolve a solução de um problema de programação quadrática. Este problema é resolvido com auxílio da função quadprog do pacote de otimização do programa Matlab que, na presença de inviabilidade, possui um tratamento padrão, ignorando algumas retrições e produzindo uma ação de controle fora dos limites especificados pelo operador, a qual, muitas vezes, não pode ser implementada. A solução produzida por esta função é, então, comparada com aquela fornecida por um controlador dotado de uma política de relaxamento das restrições sobre a saída. A política em questão baseiase na minimização de uma função de custo linear, na qual os relaxamentos sobre os limites superior e inferior são somados com pesos próprios definidos pelo operador. Constatouse que a política de relaxamento de restrições estudada traz a saída dos sistemas de volta à região viável suave e rapidamente, apresentando resultados mais favoráveis que os obtidos com a solução padrão fornecida pela função quadprog do Matlab. Palavras chave: controle preditivo, gerenciamento de inviabilidade, relaxamento de restrições, levitação magnética. 1. Introdução O Controle Preditivo baseado em Modelo (Model Predictive Control, MPC) tem se tornado uma estratégia atraente no controle de processos industriais. Isto se deve a uma série de fatores, como lidar facilmente com dinâmicas complexas, simplicidade de entendimento por parte dos operadores da planta, mas, principalmente, pelo fato de incluir naturalmente restrições sobre as variáveis, tanto as controladas como as manipuladas. Esta última propriedade permite que se restrinja a operação do sistema em regiões de maior interesse econômico e que sejam próximas dos limites físicos de operação. Caso o modelo adotado para a planta seja linear e as restrições envolvam limites superiores e inferiores para os estados e controles, a obtenção do controle a ser aplicado em um dado instante envolve a solução de um problema de Programação Quadrática, para o qual dispõese de algoritmos eficientes, como em Maciejowski (2002). Tal problema normalmente é reiterado a cada instante de amostragem, com base em informações adquiridas dos sensores, empregando uma estratégia de horizonte retrocedente. Há casos em que o problema de Programação Quadrática em questão não admite solução para o problema de otimização. Estes casos podem ocorrer, por exemplo, por perturbações exógenas, intervenção do operador, erros de modelamento, ou falhas na planta. Nesses casos, uma estratégia para trazer o controlador de volta à região viável fazse necessária. Diversas estratégias são possíveis, dentre elas o relaxamento de restrições. Este relaxamento pode ser realizado sobre as restrições atuantes nas variáveis de controle, a partir de uma tabela de priridades, que determina a ordem em que estas variáveis devem ser relaxadas. Ou podese relaxar os limites sobre as variávei de saída, através de técnicas que ignoram estes limites durante o tempo necessário para que se possa voltar ter uma solução viável (abordagem de tempo mínimo), ou através da minimização de uma função de custo linear que pesa os relaxamentos sobre os limites superiores e inferiores das variáveis de saída. Neste trabalho este último caso é considerado, e os resultados são comparados com aquelas obtidos pelo tratamento padrão da função quadprog do pacote de otimização do Matlab/Simulink. Nas próximas seções formulação matemática do controlador preditivo utilizado é apresentada, em seguida, discutemse mais a fundo algumas técnicas de relaxamento de restrições. A metodologia empregada neste estudo é apresentada na seção 4, incluindo o modelo do levitador magnético analisado e os cenários de simulação. Na seção 5, os resultados são apresentados por meio de gráficos e discutidos. Finalmente, na seção 6, temos as conslusões do trabalho. 2. Formulação do Controle Preditivo Anais do XIII ENCITA 2007, ITA, Outubro, 0104, 2007 , Os principais elementos do controlador preditivo discreto utilizado encontramse em Afonso e Galvão (2007). Um modelo da planta é introduzido no controlador, e usado para calcular as previsões para as N (horizonte de controle) saídas futuras com base no estado atual, medido pelos sensores no késimo instante de amostragem, e nas ações de controle empregadas. Com esta ação de controle otimizada, apenas o primeiro passo calculado é aplicado na planta, técnica esta denominada de horizonte retrocedente. O problema volta a ser tratado, então, no próximo passo. A formulação matemática do controlador também se encontra em Afonso e Galvão (2007). 3. Métodos de relaxamento de restrições Conforme mencionado, nem sempre é possível encontrar uma solução que respeite todas as restrições. Nestes casos, fazse necessária uma política de tratamento de inviabilidade, para que o controlador possa fornecer uma ação de controle que traga o sistema de volta para a região viável. Algumas dessas técnicas serão brevemente discutidas nesta seção. Inicialmente, classificamse as restrições em dois tipos principais, como encontramos em Alvarez e Prada (1997): i) Limites físicos: limites que jamais podem ser violados, determinados pelas características físicas dos sistemas. Por exemplo, uma válvula não pode ser aberta mais do que 100%; ii) Limites de operação: são restrições impostas pelo operador da planta. Estes limites são uma faixa em que se espera que as variáveis estejam. São mais restritivos do que os limites físicos. Os limites físicos não podem ser relaxados, pois dependem da natureza da planta, em contraposição aos limites de operação, os quais trabalham em uma faixa que pode ser variada, conforme seja necessário. Quanto às técnicas de relaxamento de restrições, Alvarez e Prada (1997) descrevem um procedimento que pode ser aplicado tanto às variáveis de controle como às variáveis de saída. A abordagem de relaxamento sobre as restrições no controle atuam mudando os limites sobre a amplitude do controle e sobre a sua taxa de variação, de acordo com uma tabela de prioridades. Já a abordagem de relaxamento sobre as restrições na saída da planta consistem de determinar um intervalo de tempo contido no horizonte de predição ou de mudar a amplitude permitida para esta variável, de acordo com o tamanho das violações previstas. Técnicas mais sofisticadas são descritas em Rawlings e Muske (1993) e em Scokaert e Rawlings (1999): a) Método de tempo mínimo (minimal time approach): algoritmo proposto por Rawlings e Muske (1993). Identificase o menor tempo a partir do qual a restrição pode voltar a ser respeitada. Durante este tempo a restrição é ignorada, e o limite volta a ser tratado na função de custo depois de atingida a região viável. A recuperação ocorre de maneira rápida, mas pode causar instabilidade em malha fechada e as violações transientes podem ser elevadas; b) Método da restrição maleável (softconstraint approach): neste método violações de restrições de estado (limites de operação, segundo a denominação supracitada) são permitidas, porém são penalizadas através da adição de termos na função de custo. Neste trabalho, são comparadas duas abordagens: o procedimento padrão da função quadprog do pacote de otimização do Matlab/Simulink, que relaxa restrições sobre o controle, e uma política de relaxamento sobre a variável de saída proposta em Dai (2001), que consiste da soma de vetores de relaxamento sobre os limites superiores e inferiores, obtidos através da minimização de uma função de custo, conforme mostra a Eq. (1): T J c = w LT s L + w H sH (1) Nessa equação s L e s H são os vetores de relaxamento das restrições inferiores e superiores, respectivamente, e T são os seus pesos definidos pelo usuário na função de custo. Neste projeto, os pesos foram definidos de w TL e w H modo que a sua soma fosse constante e igual a um, variando as proporções para penalizar mais uma das violações. 4. Metodologia 4.1. Modelo da planta do levitador magnético As simulações envolvendo o levitador magnético mencionado neste trabalho foram feitas com base no equipamento Feedback Magnetic Levitation System©. Assumese que o sensor infravermelho apresente comportamento linear na faixa de trabalho requerida, e o modelo linearizado e as equações descrevendo o sistema encontramse em Afonso e Galvão (2007). 4.2. Cenários de simulação Todas as simulações foram realizadas no ambiente Matlab 6.5/Simulink utilizando as equações diferenciais que descrevem as dinâmicas dos sistemas. Uma sfunction específica foi escrita no Matlab para implementar o controlador preditivo. Os problemas de Programação Quadrática foram resolvidos por meio da função quadprog do Matlab Optimization Toolbox. Anais do XIII ENCITA 2007, ITA, Outubro, 0104, 2007 , Para o sistema do integrador duplo, os horizontes de controle e de predição foram N=60 e M=10 (cada passo sendo de 0,100s),determinados a partir de diversas simulações e o peso do controle foi ρ = 1 , isto é, a diferença do valor atual e do valor de referência da saída e minimização das variações do sinal de controle têm o mesmo peso na função de custo do controlador . Quanto ao levitador magnético, os horizontes foram aqueles propostos em Fama et al (2005), N=20 e M=4 (passos de 0,05s), produzindo um bom compromisso entre a velocidade da resposta e o amortecimento. Ainda, o peso do controle foi ρ = 10 , também conforme recomendado em Fama et al (2005), para produzir boa rejeição de ruído de medida. As restrições sobre as saídas foram: ymax = 11 ymin = 9 para o duplo integrador e: ymax = 0,01V ymin = −0,01V para o levitador magnético. No caso do duplo integrador, a simulação foi realizada partindo de situação que viola as restrições sobre a saída. Já no caso do levitador magnético, dois cenários de simulação diferentes foram considerados. a) Partindo de um ponto inviável, sem ruído. Neste caso o sensor foi assumido ideal (sem ruído de medição) e as condições iniciais foram y = −0,1V e y& = 0 . A condição inicial viola as restrições, e o sistema parte de um ponto inviável. b) Partindo de um ponto viável, com ruído. As condições iniciais foram tomadas dentro da região viável ( y = 0 e y& = 0 ) e um ruído branco Gaussiano de média zero e variância 1,6 × 10−5 V foi adicionado à medida do sensor infravermelho. Ainda, como no levitador magnético real temse apenas um sensor de posição, a velocidade foi estimada a partir das medidas de posição através de um filtro com função de transferência 100 s s +100 . A fim de compensar o fato de que a função quadprog pode gerar ações de controle fora dos limites operacionais em situações de inviabilidade, um saturador de amplitude e um limitador de taxa de variação foram introduzidos na saída do controlador, para que o controle aplicado ao sistema estivesse de acordo com os limites físicos. 5. Resultados e discussão 5.1. Estudo do integrador duplo Foram realizadas simulações com o integrador duplo, e buscaramse as situações em que não houvesse resposta viável, para que se pudessem comparar os resultados obtidos na ausência e na presença da políticaa de relaxamento de restrições. O relaxamento foi realizado sobre a variável controlada. Ambos os sistemas, (com a política de relaxamento e sem) foram expostos às mesmas condições: yref =10 ymax ymin umax umin =11 =9 =2 =−2 y representa a variável controlada (saída) e u , a variável de controle. O peso ρ utilizado foi 1, o que significa que a diferença do valor atual e do valor de referência da saída e minimização das variações do sinal de controle têm o mesmo peso na função de custo do controlador. A Fig. 1 ilustra a performance do sistema com o tratamentos de inviabilidade proposto neste trabalho, comparada com a performance do sistema dotado apenas do tratamento padrão fornecido pelo pacote de otimização do Matlab/Simulink. Anais do XIII ENCITA 2007, ITA, Outubro, 0104, 2007 , Figura 1. Resultados obtidos para a saída do integrador duplo, com relaxamento sobre a variável controlada Nestas simulações, nas quais o horizonte de predição adotado foi de 60 passos e o de controle foi de 10 passos (cada passo foi de 0,100s), podese notar que mesmo com valores elevados para estes horizontes, a solução usual da função Quadprog do Matlab possui um desempenho muito aquém daquele obtido pela técnica de relaxamento simulada, comprovando um bom desempenho do controlador quando a abordagem proposta neste trabalho é aplicada nesta planta. Ainda, as técnica mostraram resultados expressivos, eliminando totalmente o sobressinal, as violações futuras e levando a variável a atingir o setpoint mais rapidamente. Para melhor comparar os desempenhos devese observar a variável de controle, a fim de verificar se alguma das abordagens produz controle muito exigente. Isto é feito na Fig. 2, abaixo: Figura 2. Gráfico da variável de controle do integrador duplo, com relaxamento sobre a variável controlada Anais do XIII ENCITA 2007, ITA, Outubro, 0104, 2007 , Notase que o desempenho do controle imposto pelo sistema com relaxamento da função de custo com pesos iguais é mais suave, sem as longas saturações observadas no controle gerado pela abordagem padrão do Quadprog do Matlab. Dessa forma, preserva o atuador, além de apresentar um desempenho ótimo no controle da variável de saída, apresentando um bom compromisso. 5.2. Estudo do levitador magnético Adicionalmente tratouse o problema de um levitador magnético, que apresenta uma natureza não linear e instável. Além disso, este sistema apresenta ruído nas medidas do sensor de posição (sensor infravermelho). No caso do levitador estudado, não há um sensor de velocidade, e esta é estimada a partir da derivada da posição, o que torna a presença de ruído ainda mais prejudicial às medidas, dificultando o controle, pois os valores não são fiéis, dificultando a predição. Este segundo sistema beneficiouse muito da aplicação do relaxamento de restrições, havendo casos nos quais a solução usual do quadprog oscila e diverge, que puderam ser trazidos de volta à região ótima com o relaxamento. Duas situações distintas foram simuladas: violando as restrições sobre a variável de saída inicialmente, porém sem ruído, similarmente à situação do duplo integrador, e partindo da região viável com ruído, cenário mais realista, e que simula o ruído na medidas do sensor infravermelho. 5.2.1. Violando as restrições inicialmente, sem ruído Primeiramente ilustrase o caso sem ruído mencionado. Nas Figs. 3 e 4 a seguir encontramse os gráficos das variáveis de saída e de controle, respectivamente, versus tempo: Figura 3. Gráfico da variável de saída do levitador magnético, com relaxamento sobre a mesma, partindo de situação inviável, sem ruído Neste caso, novamente a solução usual, com o tratamento padrão do pacote de otimização, é inferior, inclusive divergindo (deixando o objeto cair, pois a tensão no sensor aumenta indefinidamente). A solução com a técnica de relaxamento com pesos sobre os relaxamentos dos limites superiores e inferiores foi capaz de manter a planta funcoinando, sem deixar o objeto cair ou atingir a bobina do levitador (casos em que a solução diverge), além de conduzila à região viável de maneira suave, sem um elevado sobressinal e sem oscilações. Anais do XIII ENCITA 2007, ITA, Outubro, 0104, 2007 , Figura 4. Gráfico da variável do controle do levitador magnético, com relaxamento sobre a saída, partindo de situação inviável, sem ruído No gráfico do controle, confirmase o que foi visto na saída, sendo o controle muito conturbado na solução padrão . Mais ainda, grandes variações são ausentes no controle com os pesos sobre os relaxamentos. 5.2.2. Partindo da região viável, com ruído Finalmente, analisouse o caso do levitador magnético partindo de situação viável, porém com ruído, sintetizando estas simulações nas Fis. 5 e 6, que ilustram o comportamento da variável controlada e de controle, versus tempo. Anais do XIII ENCITA 2007, ITA, Outubro, 0104, 2007 , Figura 5. Comportamento da variável de saída do levitador magnético, com relaxamento sobre a mesma, partindo de situação viável, com ruído na medida do sensor Mais uma vez, observase a divergência da variável de saída no controle com o tratamento padrão fornecido pelo pacote de otimização do Matlab/Simulink. Conforme no caso anterior, o comportamento da política de relaxamento de restrições sobre a saída proposta é muito superior ao tratamento padrão. Figura 6. Comportamento da variável de controle do levitador magnético, com relaxamento sobre a saída, partindo de situação viável, com ruído na medida do sensor O controle mostra que o relaxamento das restrições evita a saturação do atuador, mas oscila o tempo todo, devido ao ruído. 6. Conclusões O estudo de uma política de relaxamento de restrições no Controle Preditivo baseado em Modelo (MPC) realizado permitiu concluir que esta melhora muito a performance do controlador, tanto no que se refere à manutenção da variável controlada dentro dos limites impostos pelo operador, como no comportamento da variável de controle, que é suavizado com o emprego destas técnicas, o que é desejável para expandir a vida útil dos atuadores. A técnica estudada neste trabalho apresentou o comportamento esperado, validando a proposta do estudo de melhorar o desempenho do controlador por meio de relaxamento das restrições sobre a variável de saída sempre que fosse detectada a inviabilidade. Em todos os cenários de simulação, o comportamento da solução forecida com tratamento de inviabilidade via relaxamento das restrições sobre a saída proposto foi muito superior àquele observado quando o tratamento padrão da função quadprog do pacote de otimização do Matlab/Simulink foi empregado.No caso do levitador magnético, inclusive, o comportamento catastrófico do controlador que deixava o objeto cair foi superado com elegância. 7. Agradecimentos Agradecimentos são prestados ao CNPq (Conselho Nacional de Desenvolvimento Científico e Tecnológico) e ao ITA (Instituto Tecnológico de Aeronáutica). 8. Referências Afonso, R.J.M., Galvão, R.K.H.,2007, “ Predictive control of a magnetic levitation system with infeasibility handling by relaxation of output constraints” , Proceedings of the 19th International Congress of Mechanical Engineering, Brasília, DF, (paper 0136). Alvarez, T. and Prada, C., 1997, “ Handling infeasibilities in predictive control” , Computers in Chemical Engineering, Anais do XIII ENCITA 2007, ITA, Outubro, 0104, 2007 , Vol. 21, pp. S577–S 582. Dai, L., 2001, “ A systematic method to handle unfeasibility in constrained predictive control” , Proceedings of the 2001 International Conferences on Infotech and Infonet, Vol. 4, Beijing, China, pp. 227 – 231. Fama, R.C., Lopes, R.V. Milhan, A.P. Galvão, R.K.H., Lastra B.A.D., 2005, “ Predictive control of a magnetic levitation system with explicit treatment of operational constraints” , Proceedings of the 18th International Congress of Mechanical Engineering, Ouro Preto, MG, (paper 0560). Maciejowski, J.M., 2002, “ Predictive Control with Constraints” , Prentice Hall. Harlow, England. Rawlings, J.B. and Muske, K.R., 1993, “ The stability of constrained receding horizon control” , IEEE Transactions on Automatic Control, Vol. 38, No. 10, pp. 1512–1516. Scokaert, P.O.M. and Rawlings, J.B., 1999, “ Feasibility issues in linear model predictive control” , AIChE Journal, Vol. 45, No. 8, pp. 1649–1659.