• Nenhum resultado encontrado

OTIMIZAÇÃO DE CONTROLADORES USANDO HARDWARE COMPUTACIONAL NA CONFIGURAÇÃO MESTRE-ESCRAVO (I) Alexandre Rodrigues Mesquita Karl Heinz Kienitz IC

N/A
N/A
Protected

Academic year: 2021

Share "OTIMIZAÇÃO DE CONTROLADORES USANDO HARDWARE COMPUTACIONAL NA CONFIGURAÇÃO MESTRE-ESCRAVO (I) Alexandre Rodrigues Mesquita Karl Heinz Kienitz IC"

Copied!
6
0
0

Texto

(1)

OTIMIZAÇÃO DE CONTROLADORES USANDO HARDWARE

COMPUTACIONAL NA CONFIGURAÇÃO MESTRE-ESCRAVO (I)

Alexandre Rodrigues Mesquita

Karl Heinz Kienitz

IC

Resumo: Este trabalho avaliou o potencial e a flexibilidade de estratégias de otimização num hardware computacional na configuração mestre-escravo empregado no controle digital de sistemas dinâmicos. Para tal, foram desenvolvidas estratégias de otimização paramétrica, baseadas em algoritmos numéricos, para controladores de um sistema de levitação magnética usando o hardware mestre-escravo e as ferramentas xPC Target, Real-Time Workshop e Simulink do software Matlab.

Abstract: This work has evaluated the potential and flexibility of optimization techniques for

digital controllers running on a computational hardware with a host-target prototyping

environment. Having this purpose, derivative-free parametric optimization techniques have

been applied to the controller for a magnetic levitation system employing Matlab´s xPC

Target, Real-Time Workshop and Simulink tools and the host-target environment.

1. INTRODUÇÃO

O controle digital de sistemas dinâmicos tornou-se algo comum. Para aplicações nas quais controladores demandam um volume de cálculo grande é importante dispor de hardware e software adequado. Tradicionalmente um kernel de tempo real e placas com DSPs e conversores A/D e D/A têm sido usados no PC para rodar software que implementa controladores complexos. A desvantagem desta solução é seu custo. Uma alternativa é o uso de dois PCs na configuração mestre-escravo. O PC escravo (sem periféricos) é mais barato que uma placa de DSP de alta performance e fornece recursos computacionais comparáveis. O PC escravo executa tarefas de controle e o PC mestre pode ser usado para outras tarefas. Em especial é interessante utilizá-lo para otimizar os procedimentos adotados no PC escravo, informando a este em tempo de execução as alterações paramétricas indicadas para uma melhoria do desempenho.

O objetivo do projeto foi avaliar o potencial e a flexibilidade de estratégias de otimização implementadas no PC mestre que utilizam dados colhidos pelo PC escravo. Determinou-se para isso desenvolver estratégias de otimização de controladores para o kit “levitador magnético” (MAGLEV - fabricado pela Feedback Instruments Ltd.) usando hardware mestre-escravo e a ferramenta xPC Target (The MathWorks Inc.). A otimização foi do tipo paramétrica, baseada em algoritmos numéricos que não usam gradientes.

2. O HARDWARE MESTRE-ESCRAVO

O Real-time Workshop, utilizando um compilador Watcom C/C++ em “background”, gera códigos otimizados, portáteis e padronizados a partir dos modelos do Simulink, esses códigos são carregados ao PC escravo, o qual executa um kernel de tempo real de 32 bit extremamente compacto. Esse sistema é introduzido no escravo através de um disco flexível gerado no PC mestre. A comunicação entre os dois PCs realiza-se via interface serial. Visto que o PC escravo é dedicado a executar o código gerado, não possuindo periféricos e dispondo de muita memória, o xPC Target alcança performance e estabilidade aumentadas. Para estabelecer comunicação com o mundo físico o PC escravo dispõe de conversores A/D e D/A, que são interpretados como blocos de entrada e saída no ambiente Simulink. Assim, ele poderá ser usado no controle de sistemas dinâmicos. A figura 1 esquematiza a configuração mestre-escravo utilizada.

(2)

Figura 1 - Esquema da configuração do hardware mestre-escravo 3. O SISTEMA DE LEVITAÇÃO MAGNÉTICA

O sistema cujo controle se pretendeu otimizar neste trabalho é o kit “levitador magnético”. Da perspectiva da engenharia de controle, um sistema de levitação magnética é um sistema complexo visto que ele apresenta não-linearidades e é naturalmente instável.

O sistema de levitação magnética MAGLEV, produzido pela Feedback Instruments Ltd., consiste num equipamento simples e compacto. Na figura 2 está representado esquematicamente o funcionamento do levitador magnético utilizado.

Figura 2 – Representação esquemática do levitador magnético

Figura 3 – Diagrama de blocos para o sistema de levitação magnética controlado

A figura 3 mostra o diagrama de blocos da planta controlada pelo hardware mestre-escravo. O modelo utilizado para o sistema de levitação magnética é um modelo linearizado [6], cuja função de transferência entre a variação da tensão na saída do fotossensor (∆Y) e a variação da tensão de controle (∆U) tem a forma apresentada na figura 3, sendo os seus parâmetros de difícil determinação devido à sua variação com o ponto de operação e com as condições de magnetização da esfera.

(3)

Como não é estável por si só, o sistema requer um controlador apropriado. Como controlador foi implementado um compensador em avanço de fase com a lei de controle mostrada na figura 3, sugerida pelo manual do kit “levitador magnético” [9]. A otimização realizou-se usando uma lei de controle da forma mencionada, na qual as constantes foram transformadas em parâmetros de otimização.

Figura 4 – Hardware em configuração mestre-escravo controlando o levitador magnético O gráfico 1 ilustra o uso de instrumentos virtuais na monitoração de variáveis. Nele se observa a forma de onda da posição da esfera medida em V (volts) pelo sensor. As formas anteriores a t=5s correspondem à colocação da esfera no levitador e a tensão de saturação de 2V indica que a esfera não se encontra ao alcance do sensor. Os tempos de execução de tarefa do controlador (tempo que o PC escravo leva para efetuar os cálculos) tiveram valor máximo de 0,14ms e valor médio de 0,12ms.

0 5 10 15 -2 -1.5 -1 -0.5 0 0.5 1 1.5 2 V se ns or(V ) Sobressinal relativo: 16,2% Tempo de subida: 131ms Amplitude pico-a-pico das oscilações: 170mV Freqüência: 2,3Hz

Vsensor(V)

tempo(s) tempo(s)

Gráfico 1 – Forma de onda da resposta a degrau (aplicado em tempo=9s) do sistema controlado

Um dos problemas para o controle é a variação temporal da magnetização do sistema. Outro problema de relevância é a oscilação, devido à não-linearidade do sistema, que a esfera apresenta ao levitar (observe-se o gráfico 1). Constatou-se que um controle apropriado pode reduzir essa oscilação. 4. OTIMIZAÇÃO DO CONTROLADOR

Para realizar a otimização do controlador em tempo de execução dispôs-se de um programa principal em formato de M-file. Este inicia o controle do levitador magnético através da execução em tempo real pelo escravo de um modelo Simulink que implementa a lei de controle escolhida.

A figura 5 exibe a janela do editor de modelos do SIMULINK onde está implementado o controlador utilizado nos experimentos. A lei de controle foi realizada de forma não usual, estando os

(4)

parâmetros de otimização na forma de ganhos para que o xPC Target permitisse a modificação dos mesmos em tempo de execução. Eles são zero, pólo e ganho na lei de controle, a qual, simplificada, é:

( )

pólo s zero s ganhoAC s C − − =

No programa principal é acionado um procedimento de minimização, que, por sua vez, aciona a rotina que calcula a função de desempenho, testando novos valores para os parâmetros de otimização. Tal rotina modifica em tempo de execução os valores dos parâmetros no controlador e calcula a função de desempenho desejada com base num conjunto de amostras que caracterizam a resposta a degrau do sistema controlado.

Figura 5 – ScreenCapture do diagrama de blocos montado no SIMULINK para a otimização do controlador Os procedimentos numéricos de otimização foram implementados em linguagem Matlab. Três desses métodos são tradicionalmente tratados pela literatura especializada: o de Rosenbrock, o de Powell e o dos poliedros flexíveis [1]. Os dois primeiros utilizando a busca unidimensional de Davis-Swann-Campey [2]. Criou-se ainda uma adaptação da técnica de recozimento simulado para o método de Rosenbrock [2]. Outro método foi o algoritmo cúbico (caso de constante de Lipschitz desconhecida) [3], que foi desenvolvido como experimentação despretensiosa.

4.1 A Função de Desempenho

Tomando sobressinal relativo (ovs), tempo de subida (ts) e amplitude pico-a-pico da oscilação (pp) como independentes entre si, escolheu-se uma função semelhante à norma de um vetor para medir o desempenho do controle realizado. Desse modo a minimização da função implica minimizar cada um desses parâmetros. A contribuição de cada componente foi elaborada dividindo-se o valor do parâmetro por uma média desejada estipulada com base em experimentos anteriores [4] e atribuindo-lhe determinado peso. Assim, testaram-se funções de desempenho da forma:

2 2 2 1

111

20

139

30

12

50





+





+





=

ovs

%

pp

mV

ts

ms

f

A definição desses parâmetros não seguiu o molde convencional devido ao fato de haver uma oscilação relativamente grande na posição de regime da esfera, como ilustra o gráfico 1.

Deve-se ressaltar que o tempo de cálculo da função é alto, pois é analisada a resposta a meio período da onda quadrada injetada na planta (figura 5), e tal período deve ser grande (≈10s) para que a esfera possa se estabilizar entre a aplicação de um e outro degrau.

(5)

Como os métodos de minimização usados não impõem restrições à procura em determinada região do espaço, é possível ter-se que avaliar a função de desempenho em pontos de instabilidade. Quando esta ocorre, há saturação na tensão do sensor, permitindo que o software identifique o fato e atribua valor infinito à função.

Porém, é nada prático aceitar que durante a otimização o sistema possa ser levado à instabilidade. Isso requereria alguém para recolocar a esfera cada vez que ela caísse ou se chocasse contra o eletroímã (o que ocorreu inúmeras vezes, visto que não se pôde aplicar a solução aqui elucidada). Concebeu-se, portanto, uma maneira de aumentar a automação do processo: a previsão de instabilidade com base em um modelo do sistema e uma condição inicial antes de se testar o ponto desejado. No caso de previsão afirmativa de instabilidade, o ponto não é testado e a função de desempenho recebe valor infinito. Um modelamento matemático do mesmo aparelho fora feito por Cavalheiro [5]. No entanto, nem seu modelo não-linear nem uma linearização do mesmo se mostraram efetivos na predição de instabilidade. Abandonou-se tal procedimento.

Outra solução seria alterar os algoritmos de otimização de modo que dessem passos pequenos o suficiente para não se aproximarem de pontos de instabilidade. Entretanto, essa solução causaria um grande aumento no tempo de otimização. Tolerando-se a instabilidade, optou-se por não adotá-la. 4.2. Experimentos de Otimização com o Controlador do Levitador Magnético

Mesmo tendo todos os métodos realizados conseguido a minimização de uma função teste, no campo experimental foram bem sucedidos apenas os métodos de Rosenbrock, Rosenbrock com recozimento simulado e de Powell. Quanto ao método dos poliedros flexíveis, não obstante as inúmeras combinações testadas para seus parâmetros, as buscas convergiram sempre para o centro do poliedro inicial, levando a um resultado insatisfatório. O mesmo se deu com a busca do MATLAB Optimization Toolbox, o que se justifica pelo uso de um algoritmo de busca semelhante ao do método dos poliedros flexíveis. Tal comportamento desses métodos perante funções quadráticas é conhecido na teoria.

Não se conseguindo um mecanismo que pudesse prever a instabilidade do sistema, tornou-se inviável o uso do algoritmo cúbico. A instabilidade seria freqüente, pois esse algoritmo não executa uma busca descendente, mas sim amostra a função de desempenho num cubo do espaço.

f

1ótima

Número de execuções de f1

Gráfico 2 – Desempenho ótimo do sistema dado o número de execuções de f1 pelo método de Rosenbrock

De modo geral, a otimização pôde ser considerada satisfatória, tendo na segunda e na terceira iterações atingido valores muito abaixo daqueles relativos aos pontos iniciais de procura. Não se pôde falar em mínimo global, visto que os métodos não o garantem. A partir de certa iteração, os valores mínimos começam a oscilar devido à mudança das condições de magnetização da esfera, ocasionada em parte pelo próprio processo de otimização, quando se promovem mudanças bruscas na lei de controle ou o sistema é levado à instabilidade pelo teste de um controlador inadequado. Tal fato é ilustrado no gráfico 2. Qualitativamente, os três métodos utilizados se assemelharam bastante. A análise quantitativa é difícil dada a variação temporal do sistema, o que muda os minimizadores.

(6)

4.3. Métodos para Acelerar o Procedimento de Otimização

Há duas maneiras de acelerar o procedimento de otimização: pelo algoritmo de otimização ou pela função de desempenho. A primeira não esteve no foco deste trabalho. Portanto investigou-se como acelerar a otimização através da diminuição do tempo de cálculo da função de desempenho.

Dois modos de fazê-lo relacionam-se com armazenamento na memória de valores medidos daquela função ou interpolação da mesma quando se puder garantir certa acurácia. Mas tais procedimentos não se aplicam para um sistema variante no tempo. Ainda assim, um estudo (não realizado por escassez de tempo) da variação temporal da função de desempenho poderia ensejar o uso de um critério para se decidir aceitar ou não um valor medido no passado.

Outra opção seria diminuir o período da onda quadrada usada para perturbar o sistema. Mas, diminuído esse período, o sistema não teria tempo para estabilização. Portanto, essa opção funcionaria apenas para sistemas físicos mais rápidos. Para esses casos, acredita-se que surgirá outra limitação, a qual residirá no tempo de transmissão das amostras do escravo para o mestre, a exemplo do que ocorreu neste mesmo trabalho nos primeiros testes do procedimento de otimização: o tempo de execução da função de desempenho era de 20s, o dobro daquele conseguido posteriormente, o que se devia ao fato de que a transmissão de dados do escravo para o mestre durava quase 10s. O problema foi resolvido diminuindo-se o número de amostras. Acredita-se que para sistemas mais rápidos a diminuição do número de amostras poderá prejudicar a exatidão da função de desempenho. De forma que uma solução possível seria migrar da comunicação via interface serial para a comunicação via interface de rede, o que diminuiria o tempo de transmissão.

5. Conclusão

Neste trabalho, o uso de técnicas de otimização de controladores atingiu o desenvolvimento de um controlador que, objetivando o desempenho ótimo, pode ajustar-se às condições de magnetização à medida que estas mudam com o tempo. Foram propostas e desenvolvidas algumas técnicas que tornariam mais rápido e automatizado o processo de otimização em se tratando de sistemas mais simples que o testado (sistemas invariantes no tempo e bem modelados).

As principais dificuldades apresentaram-se na incompatibilidade do hardware disponível com o software utilizado quando se tentou realizar comunicação via interface de rede entre os PCs; e em impedir sem grandes esforços que o sistema de levitação magnética fosse levado à instabilidade durante o processo de otimização. Tolerou-se tal problema devido ao grande aumento no tempo de otimização que a sua correção traria. Desafios que permanecem estão em conseguir evitar tal instabilidade e em diminuir o tempo de otimização. Como prosseguimento a este trabalho seria interessante adaptar a estrutura aqui construída a outros sistemas físicos.

AGRADECIMENTOS

Ao Prof. Dr. Karl Heinz Kienitz, orientador desta iniciação científica; aos membros da Coordenação Local do PIBIC e ao CNPq.

REFERÊNCIAS BIBLIOGRÁFICAS

[1] Himmelblau, D.M. Applied Nonlinear Programming. Nova Iorque: McGraw Hill, 1972.

[2] Nascimento JR. & Yoneyama. Inteligência Artificial em Controle e Automação. São Paulo: Editora Edgard Blücher Ltda, 2000.

[3] Galperin, E. A. The Alpha Algorithm and the Application of the Cubic Algorithm in Case of Unknown Lipchitz Constant. Computers Math. Applic. 1993, Vol. 25, No. 10/11, pp. 71.

[4] Mesquita, A.R. Controle de Sistemas Dinâmicos Usando Hardware Computacional na Configuração Mestre-Escravo. Bolsa de Iniciação Científica, PIBIC, 2002.

[5] Cavalheiro, A.R. Uma Ferramenta Computacional para Projeto de Sistemas de Controle. Trabalho de Graduação, Divisão de Engenharia Eletrônica, ITA, 1995.

Referências

Documentos relacionados

Fechando a lista de âncoras está a Zara, que no Pátio Batel inclui ainda a Zara Home, com acessórios de cama, mesa e banho.... Camila Klein, Swarovski

Outro objetivo do trabalho é o de estudar a capacidade e nível de serviço da rodovia, também pelo HCM 2010, utilizando a demanda de tráfego da pesquisa realizada projetada para

Dando continuidade ao que estabelece o artigo já citado, o 2º artigo faz menção ao Manual de Boas Práticas de Atenção ao Parto e o Nascimento da

(NOME COMPLETO), nacionalidade, estado civil, profissão, portador(a) da carteira de identidade RG n.º (número de RG), inscrito(a) no CPF sob n.º (número de CPF),

A clínica gestáltica tem o intuito de desenvolver um trabalho baseado na relação dialógica, que facilita o processo de autorregulação e ajustamento criativo para as pessoas.. Tais

10.1 - O candidato classificado, nas formas definidas pelo presente Edital, será chamado para admissão, ficando obrigado a declarar, no prazo de 48 (quarenta e oito) horas, se

A riqueza de espécies (16) foi menor do que tem sido mencionado para outras áreas de Caatinga preservada, nos estados de Alagoas e Pernambuco (Souza et al. 2007; ), mas supera

em efeitos superiores, contudo, considerando-se a realização do experimento apenas no Rio Grande do Sul e as particularidades de cada região produtiva, a extrapolação dos