8º CONGRESSO IBEROAMERICANO DE ENGENHARIA MECANICA Cusco, 23 a 25 de Outubro de 2007 SISTEMA DIGITAL DE CONTROLE DE UMA MESA DE POSICIONAMENTO D.I. Lasmar*, G.A. Rossi*, A.A.T. Maia*, J.M. Galvez* *Universidade Federal de Minas Gerais, Departamento de Engenharia Mecânica. Av. Antônio Carlos, 6627, CEP 31.270-901- Belo Horizonte Minas Gerais *e-mail: jmgalvez@ufmg.br RESUMO O controle de posição e a monitoração de itens de segurança das máquinas CNC são de grande importância para o aumento da produtividade e da qualidade do produto, além de minimizar falhas humanas e proteger a máquina e o operador de danos físicos. Este trabalho tem como objetivo automatizar o sistema de posicionamento de uma mesa utilizando um microcontrolador. O sistema é composto basicamente por uma mesa posicionadora constituída por guias de deslizamento, fuso de esferas recirculantes e um carro de deslocamento; um motor elétrico, que aciona o fuso de esferas e consequentemente a mesa; um encoder ótico e um microcontrolador, como elemento de monitoração e controle. A lei de controle implementada no microcontrolador teve seus parâmetros ajustados e os ensaios de posicionamento apresentaram um erro de posicionamento e repetitividade abaixo de 3 micrometros. A interface homem-máquina foi desenvolvida de forma que o usuário possa alterar os ajustes do controlador facilmente. O uso do microcontrolador possibilitará a obtenção de um sistema digital de controle de baixo custo e pretende-se utilizar o sistema desenvolvido como um kit didático, que será utilizado em laboratórios de ensino na área de mecatrônica do Curso de Engenharia Mecânica da Universidade Federal de Minas Gerais. PALAVRAS CHAVE: Sistema de posicionamento, Microcontroladores, Automação e Controle. Código 917
INTRODUÇÃO O sistema de posicionamento é um componente muito presente em máquinas operatrizes freqüentemente encontradas na indústria, como, por exemplo, esteiras rolantes e máquinas CNC. O controle de posição presente nestas máquinas e a monitoração de itens de segurança são de grande importância para o aumento da produção e da qualidade do produto, além de minimizarem falhas humanas e proteger a máquina e o operador de danos físicos. Este trabalho tem como principal objetivo automatizar um sistema de posicionamento, composto basicamente por: (i) o elemento a ser controlado, ou seja, um sistema de posicionamento constituído de guias de deslizamento, fuso de esferas recirculantes e um carro de deslocamento; (ii) um motor elétrico de corrente contínua, como atuador; (iii) um encoder incremental óptico, como sensor; (iv) e um microcontrolador PIC18f452 [1], como elemento de controle, aquisição, processamento de sinais. O sistema de posicionamento opera da seguinte forma : inicialmente, a posição desejada do carro é informada pelo operador através de um teclado (interface homem-máquina), e esta informação é então transmitida para o microcontrolador. Simultaneamente, a posição da mesa, medida pelo encoder, também é transmitida para o microcontrolador. Com estes dados, um algoritmo implementado no microcontrolador calcula o erro entre o valor desejado e a valor medido de posição, e baseando-se nas equações de controle, o microcontolador calcula o sinal de comando que será enviado para acionar o motor elétrico (atuador) e desta forma controlar o desempenho do sistema de posicionamento. Finalmente, uma análise experimental do desempenho do algoritmo de controle tipo Proporcional-Integral-Derivativo PID [2] é apresentada. O resultado deste desenvolvimento será utilizado na área de ensino em Engenharia Mecânica na Universidade Federal de Minas Gerais, na ênfase de Mecatrônica, pois este projeto integra os conhecimentos adquiridos nas áreas de projeto mecânico, eletrônica, programação, automação e controle. Por isso, houve uma preocupação em desenvolver todas as etapas envolvidas, de forma clara e didática. O SISTEMA DE POSICIONAMENTO A Fig. 1 apresenta os componentes principais do sistema posicionador. Fig. 1: Componentes do Sistema Posicionador
O desenvolvimento da automação da mesa posicionadora foi dividida em duas etapas. Na primeira etapa será projetado e fabricado o hardware da placa controladora que, além de ser a unidade de controle e processamento, fará a conversão e interligação dos sinais das chaves fim de curso, motor, encoder e computador. A placa controladora irá conter um display de 2 linhas com 16 caracteres cada e um teclado de 12 teclas, que servirão como interface homemmáquina, bem como uma saída serial para carga de programas diretamente do computador e também para possibilitar a transmissão de dados referentes à posição da mesa. A placa controladora ainda possui um relógio, utilizado para cálculo de velocidade e também da ação de controle integral e derivada; filtros que atenuam ruídos na alimentação e em sinais medidos, e por fim, o microcontrolador que processa e controla as funções do sistema. Na segunda etapa será desenvolvido, para o microcontrolador, o software de automação e controle da mesa posicionadora, utilizandose um copilador C. A Fig. 2 mostra um esquema da mesa posicionadora juntamente com o encoder, o motor elétrico e as chaves fim de curso. A mesa posicionadora é constituída por um fuso, duas guias de deslizamento e um carro de posicionamento. A função das guias é de manter o deslocamento somente em uma direção durante o processo de rotação do fuso, além de sustentar a mesa e uma eventual carga que ela esteja transportando. O acoplamento entre o fuso e o motor é feito através do par de polias, sendo que, o motor, ao fazer a polia inferior girar, aciona a polia superior e consequentemente a mesa posicionadora. O eixo do fuso está alinhado com o eixo do encoder de modo que ambos possuam o mesmo deslocamento angular. Cada volta completa do fuso, que são equivalentes a 360 pulsos do encoder, faz com que a mesa desloque-se 5mm (passo do fuso). As duas chaves fim de curso estão localizadas próximas ao suporte do fuso, no fim de curso direito e esquerdo. Quando a mesa toca uma das chaves, é enviada para o microcontrolador a informação de que a mesa atingiu o fim de curso e, portanto o movimento tem que cessar. Fig. 2: Montagem Mecânica do Sistema Posicionador A PLACA DE CONTROLE O desenvolvimento da placa de controle foi sub-dividido em diversas partes, conforme Fig. 3, que apresenta também, de forma bem resumida, a função de cada parte. O circuito de proteção-regulagem da alimentação é importante para que o sistema possua uma alimentação de qualidade. O microcontrolador recebe informações de três circuitos: o circuito de conexão do encoder, o circuito das chaves de fim de curso, e do circuito temporizador (relógio-timer). O microcontrolador envia as informações, processadas segundo um algoritmo, para o circuito de controle direcional e de velocidade, e para a saída serial. A interface homem-máquina, que possufigure 1i teclado e display, tem como função permitir a configuração e monitoramento do sistema, mesmo que este não esteja conectado ao computador [3].
Fig. 3: Partes que Compõem a Placa de Controle O circuito de controle de direção e velocidade se baseia na técnica PWM juntamente com uma ponte H. A Fig. 4 apresenta um esquema básico deste circuito. O transistor HQ11 recebe um sinal retangular com período fixo e quanto maior o tempo que este sinal permanecer nível alto, maior será a tensão média fornecida pelo circuito para a ponte H e conseqüentemente para o motor. O controle de direção do motor é realizado através da ponte H. Quando os transistores HQ51 e HQ31 são simultaneamente acionados, a corrente elétrica passa pelo motor no sentido, conforme figura abaixo, indicado pelas setas verdes, fazendo-o girar em um sentido. Quando os transistores HQ21 e HQ41 são simultaneamente acionados, a corrente elétrica passa pelo motor em sentido contrário, indicado pelas setas vermelhas, fazendo o motor também girar em sentido oposto.
Fig. 4 : Circuito Direcional e de Velocidade A Fig. 5 apresenta um esquema da montagem completa, onde podem ser identificados os principais componentes da mesa. A placa controladora recebe informações do encoder, chaves fim de curso e teclado e, processa as informações baseado num algoritmo de automação e controle, que por sua vez, comanda o motor elétrico. Fig. 5: Sistema de Posicionamento Automatizado O ALGORITMO DE CONTROLE O programa para controle de posição foi escrito em linguagem C. Algumas bibliotecas fornecidas juntamente com o compilador PCW3.19 foram utilizadas [4]. Na Fig. 6 é apresentado o fluxograma do software, dividido em vários blocos, onde o funcionamento dos principais blocos encontra-se descrito a seguir:
Configurar microcontrolador: é necessário pois, cada modelo possui características próprias. Neste caso especifico, além de informar o número de entradas e saídas também utilizou-se os periféricos de comunicação serial e I2C. Inicializar bibliotecas externas: permite utilizar sub-rotinas fornecidas pelo fabricante do microcontrolador MICROSHIP,2007). As sub-rotinas utilizadas foram as LCD.C (que prepara as informações para serem impressas no display LCD), KBD.C (que verifica qual dos botões do teclado foram pressionados) e MATH.H (que permite realizar operações como cálculo de valor absoluto, raiz quadrada, logaritmo, entre outros). Referenciar a mesa: faz com que a mesa seja deslocada até sua posição inicial, junto à chave fim de curso. Esta operação é necessária porque o encoder incremental utilizado na montagem permite somente medir o deslocamento relativo entre uma posição e outra. Recolher informação sobre posição desejada: o usuário informa para qual posição a mesa deve se deslocar. Calcular erro: Cálculo efetuado a partir da Eq. (1) : Erro = ( Posição _ Desejada Posição _ Atual) *100 /( Erro _ Máximo) (1) Calcular integral e derivada: O cálculo da integral foi realizado conforme Eq. 2, onde o termo Tempo é definido pelo usuário (a resolução do relógio permite calcular deltas de até centésimos de segundo, neste trabalho chegou-se a conclusão que 1 décimo de segundo seria suficiente) e o erro anterior será o erro da ultima verificação. O cálculo da derivada foi efetuado conforme Eq. 3, onde o delta posição representa a variação da posição no intervalo de tempo definido pelo usuário. Erro Tempo * ( Erro _ Anterior + Erro _ atual) / 2 (2) Erro / T posicao / Tempo (3) Calcular saída do controlador: O cálculo da saída do controlador foi realizado conforme Eq. 4 possuindo um valor máximo de 1023 (valor máximo do pwm, fazendo o motor ficar ligado todo tempo). Utilizou-se o módulo da equação pois, a informação do erro maior ou menor a zero será processada no bloco Posição desejada maior que posição atual?. Este recurso foi necessário pois, o periférico PWM do microcontrolador não é capaz de realizar a inversão do sentido da corrente elétrica (conseqüentemente a inversão de rotação do motor). As constantes Kp, Ti e Td são escolhidas pelo usuário dependendo das características de controle desejada [2]. Saida = K *[ Erro + ( Erro/ Ti) + Td *( Erro/ T )] (4) Sentido de deslocamento da mesa: Dependendo do sinal no interior do módulo da equação de saída, a ponte H pode ser ativada de maneira a fazer com que o motor gire no sentido horário ou anti-horário. Mesa na posição desejada: O software permanece em um loop infinito até que a posição desejada seja igual à posição atual. Dependendo da velocidade que a mesa chega à posição desejada, a inércia do sistema faz com que ela ultrapasse a posição correta. Para evitar que o software saia do loop infinito quando a mesa passa sem parar pela posição desejada, este bloco verifica por pelo menos 2 segundos se a mesma continua na posição correta.
Fig. 6: Fluxograma de Funcionamento do Software ENSAIOS EM MALHA ABERTA Foram realizados ensaios em malha aberta no intuito de se obter informações sobre o comportamento do sistema. Nestes ensaios, foram aplicados degraus de tensão nos terminais e foram registrados a curva de velocidade. As Figs. 7 e 8 apresentam as curvas de resposta de velocidade e posição obtidas quando uma tensão tipo degrau é aplicada aos terminais do motor. Fig. 7 : Resposta de Velocidade para 30%, 60% e 90% de Potência Aplicada. Fig. 8 : Resposta de Posição para 30%, 60% e 90% de Potência Aplicada.
ENSAIOS DE POSICIONAMENTO EM MALHA FECHADA Nos ensaios apresentados a seguir, foram aplicados degraus de deslocamento e o desempenho do sistema foi registrado. Nas Figs. 9, 10 e 11 são mostradas as curvas de resposta de posição quando o controlador é do tipo PI. PD e P para potências de entrada de 30%, 50% e 90% do valor nominal. Fig. 9: Ajuste do Controlador Tipo PI para Kp = 10 Ti = 20, 100 e 500 Fig. 10: Ajuste do Controlador Tipo PD para Kp = 10 Td = 0.1, 0.5, 1.0 e 5.0
Fig. 11: Ajuste do Controlador Tipo P para Kp = 10. COMENTÁRIOS FINAIS Este artigo apresentou um sistema de posicionamento de uma mesa utilizando um microcontrolador. O uso do microcontrolador possibilitou a implementação de um sistema de controle de baixo custo e elevado desempenho. O sistema é composto basicamente por uma mesa posicionadora constituída por guias de deslizamento, fuso de esferas recirculantes e um carro de deslocamento; um motor elétrico, que aciona o fuso de esferas e consequentemente a mesa; um encoder ótico e um microcontrolador, como elemento de monitoração e controle. A lei de controle foi implementada no microcontrolador e teve seus parâmetros ajustados de forma a obter erros de posicionamento e repetitividade menor do que 3 micrometros. A interface desenvolvida permite a alteração dos parâmetros do controlador de forma simples e eficiente. Resultados experimentais foram apresentados para ilustrar o ajuste dos parâmetros do controlador. REFERÊNCIAS BIBLIOGRÁFICAS 1. Data Sheet, PIC18FXX2 Microchip, 2002. 2. K. Ogata,. Engenharia de Controle Moderno, 4.Ed., Pearson, São Paulo, 2003. 3. D. Lasmar. Utilização do Microcontrolador PIC18f452 para Automação de uma Mesa Posicionadora, Monografia de Fim de Curso, Engenharia Mecânica, Universidade Federal de minas Gerais, Belo Horizonte, Brasil, 2007. 4. F.R.Chavarette, Sistema de Controle e Realimentação, UNICAMP, Campinas, Brasil, 2006.