Você está na página 1de 5

Controle de velocidade de motor DC

Controlador PWM para motor


Emerson Castelo Engenharia Eltrica CESB / IESB Braslia, Brasil emersomcastelo@gmail.com Luciano Franklin Engenharia Eltrica CESB / IESB Braslia, Brasil luclfs@gmail.com Weuller Marcos Engenharia da Computao CESB / IESB Braslia, Brasil weullermarcos@hotmail.com

Resumo
Este trabalho tem por objetivo apresentar um sistema de controle de velocidade para um motor DC atravs do Simulink, utilizando microcontrolador compatvel com o Simulink/Matlab para adquirir e controlar os dados (Atmega 328 disponvel na plataforma Arduino), embasado nos conceitos de controladores PID e modulao por largura de pulso (PWM). Palavras Chave: Simulink, Matlab, Arduino, PWM, Motor DC. objetivo final, que ser um sistema adequado para funcionamento de um controlador PWM de motor DC.

2. Materiais
A. PLATAFORMA ARDUINO O Arduino modelo Uno com microcontrolador ATMega 328, apresenta as seguintes caractersticas: 13 portas digitais que podem ser usadas como entrada e sada de dados, destas 6 so utilizadas para PWM; 5 portas para entrada de sinal analgico; 1 pino de sada 5 volts; 1 pino de 3,3 volts; Alimentao e comunicao via USB; Entrada para fonte DC de 9 a 12 volts. B. MATLAB / SIMULINK MATLAB uma linguagem de alta performance para computao tcnica, integrando computao, visualizao e programao em um ambiente intuitivo onde problemas e solues so expressos em notaes matemticas padronizadas. SIMULINK um software para modelagem, simulao e anlise de sistemas dinmicos. Ele permite ao usurio modelar um sistema e atribuir diversas entradas para saber qual ser o comportamento do sistema e sua sada, tornando-o um software de ampla utilidade acadmica.

Abstract
This work has for subject show a speed control system to a DC motor through the Simulink, using microcontroller compatible with the Simulink/Matlab for get and controls the data (Atmega 328 available on the Arduino platform), taking as base the PID controller concept and pulse width modulation (PWM). Keywords: Simulink, Matlab, Arduino, PWM, DC Motor.

1. Introduo
Os sistemas de malha aberta com motores DC apresentam uma limitao quanto ao desempenho. No sistema malha aberta, geralmente encontrada uma defasagem quanto entrada devido a mquina eltrica rotativa DC. Os controladores PID apresentam uma soluo para esse problema, formado por trs aes de controles P (controle de proporcionalidade), I (controle integrativo) e D (controle derivativo). Ao longo deste trabalho sero apresentados todos os dispositivos e componentes a serem aplicados e alcanar o

C. SENSOR FOTOELTRICO TIPO BARREIRA ou FORQUILHA O sensor Fotoeltrico Tipo Barreira compostos por um transmissor infravermelho e um receptor. O feixe emitido pelo led transmissor mantm a tenso de sada do receptor em baixa, pois sua resistncia ser alta. Quando ocorre a quebra do feixe infravermelho essa resistncia alterada, assim como a tenso na sada. A figura 1 mostra um modelo de sensor fotoeltrico:

E. DRIVE DE POTNCIA O Drive de Potncia o circuito usado para funcionamento da Mquina Eltrica Rotativa composto de: 1 transistor de potncia TIP41C; 1 diodo comum 4007; 1 fonte DC 9V; 1 resistor 220 ohms. A figura 3 mostra o esquemtico do Drive de Potncia.

Figura 1 - Sensor Tipo Barreira ou Forquilha

D. MQUINA ELTRICA ROTATIVA DC Uma Mquina eltrica rotativa DC um atuador comum em sistemas de controle, popularmente conhecido como motor de corrente contnua ou motor DC, um dispositivo que transforma energia eltrica em energia mecnica. O circuito eltrico da armadura e do diagrama de corpo livre do rotor mostrado na Figura 2.

Figura 3 - Esquemtico circuito de Potncia

3. Descrio de Funcionamento do Projeto


A. PLATAFORMA EXPERIMENTAL, DIAGRAMA DE BLOCOS e DIAGRAMA SIMULINK A Plataforma Experimental mostrada na figura 4 so identificados os drives e dispositivos necessrios para implementao do projeto.

Figura 2 - Armadura e diagrama do motor DC

A partir da figura 2, podemos escrever as seguintes equaes com base na lei de Newton combinada com lei de Kirchhoff:

Utilizando transformada de Laplace, as equaes acima podem ser expressas em termos de s. J eliminando I(s) onde a velocidade de sada e V a tenso de entrada.

Figura 4 - Plataforma Experimental

1 - Computador 2 - Plataforma Arduino Uno 3 - Drive de Potncia 4 - Mquina Eltrica Rotativa 5 - Encoder 6 - Sensor Fotoeltrico Tipo Barreira 7 - Drive Sensor Fotoeltrico 8 - Contador de pulsos

O sistema da figura 5 representa um Diagrama de blocos Malha Aberta por no possuir um atuador controlador denomina-se malha aberta.

Figura 6 - Diagrama de Blocos Simulink

Figura 5 - Diagrama de blocos Malha Aberta

B. ARDUINO UNO ATMEGA 328

O diagrama da figura 6 representa a comunicao e controle do Simulink sobre o Arduino. Neste so representados: O Bloco de Comunicao Serial responsvel por comunicar o Arduino com Simulink usando uma determinada porta, neste caso utilizaremos a porta COM9; Bloco Real Time que tem por funo ler em tempo real os dados captados no Arduino; O Bloco Analogic Reader responsvel por ler uma entrada analgica, neste projeto ler o Sensor Fotoeltrico e imprime no Scopo (grfico de escrita) a tenso obtida do sensor; Analogic Write porta onde escrito um sinal analgico da funo Gain Slider (Funo PWM).

Microcontrolador, foi utilizado para obteno de dados do Sensor Fotoeltrico Tipo Barreira e gerao de PWM. Ele tem por objetivo contar as rotaes do motor e processar a velocidade do mesmo em rotaes por minuto. Por meio do Simulink gerado um valor de quantizao que, por conseguinte, no Arduino gerado um pulso PWM equivalente ao valor passado pelo Simulink, isso determina o comportamento do motor.

Figura 7 - Plataforma Arduino Uno Atmega 328

C. COMUNICAO DO SIMULINK E MATLAB COM ARDUINO Para a comunicao do Simulink com Arduino necessrio instalao do software Matlab, aps essa instalao necessrio efetuar o download do pacote de suporte ao Arduino para Simulink - Simulink Support Package for Arduino, tambm conhecido como Arduino Target encontra-se disponvel no site, neste existem tutoriais que ensinam o passo a passo desta instalao que foi utilizado neste projeto. (http://www.mathworks.com/academia/arduin o-software/arduino-simulink.html#). [4]

D. COMANDO DO MOTOR
Figura 8 - Rotao do motor por acelerao

Por meio dos blocos de controle e comunicao do Simulink foi estabelecida no Arduino uma porta digital, o Simulink produz um valor entre 0 a 255 para mensurar o valor do PWM gerado no Arduino. O motor est conectado a uma porta digital ao ser configurado o PWM simula uma porta analgica enviando comandos do Arduino para o motor de acordo com o pulso PWM que varia de 0 a 5 volts. O valor enviado pelo Simulink diretamente proporcional a tenso fornecida pelo Arduino.

Analogamente, o Grfico da desacelerao na figura 9 demonstra a queda na velocidade do motor (figura A) e a diminuio da densidade de pulsos por intervalo de tempo (figura B) acima do nvel 100 at parar completamente. Onde pode ser observado no final de cada grfico.

E. INTERFACE DE COMANDO O Grfico da figura 8 representa o RPM, demonstra a evoluo da densidade de giros por intervalo de tempo mostrado na (figura A), pode-se observar que ao aumentar a acelerao (figura B) densidade de pulsos por intervalo de tempo acima do nvel 100 aumenta, (figura A) logo fcil ver que existe um controle de velocidade ainda que impreciso. Este um dos pontos a ser melhorado.

Figura 9 - Rotao do motor por desacelerao

F. ANLISE A PARTIR DO SENSOR FOTOELTRICO TIPO BARREIRA No projeto o sensor utilizado foi reaproveitado de mouses mini din PS2 conforme Figura 1. O sensor responsvel por indicar quando o encoder acoplado ao motor completa uma volta. Analisando a tenso no receptor o Arduino percebe se ocorreu ou no volta. A tenso no receptor mxima quando no h feixe de luz incidindo no mesmo, em contra posio, h uma queda de tenso. O circuito da figura 10 pode ser usado para implementao do sensor.

4.

CONCLUSO

O projeto encontra-se em construo, foi feita a parte de comunicao do Arduino com Simulink, instaladas bibliotecas ArduinoIO, controle de velocidade e medidor de velocidade (Tacmetro). Destes o controle de velocidade no obteve ainda um resultado satisfatrio. O controle de velocidade no est sendo preciso porque o circuito requer uma quantidade de corrente que no est sendo adquirida para funcionamento correto do motor, como conseqncia existe um conflito de comunicao. Sero efetuadas as correes ao longo do semestre com objetivo de chegar a um controle altamente preciso.

5.

REFERNCIAS

Figura 10 - Circuito Sensor Fotoeltrico

[1] FRANKLIN, G.F., POWELL, J.D., EMAMINAEINI, A. Feedback Control of Dynamic Systems 5a. ed.USA: Addison-Wesley Publishing Company, 2006. xviii, 910 p. : il. [2] RICHARD C. DORF AND ROBERT H. BISHOP. SISTEMAS DE CONTROLE MODERNOS (LTCLivros Tcnicos e Cientficos Editora), 11 edition, 2009. ISBN 978-85-216-1714-3. 1.2, 3.1 [3] NISE, N.S. Engenharia de Sistemas de Controle 3 a. Edio ed. So Paulo: LTC, 2002. 695 p. [4] Arthur Schuler Tutorial Arduino + Simulink <http://pt.scribd.com/doc/59318896/TutorialArduino-2b-Simulink> Acesso em 11 de Abril de 2013 s 16h30minh.

G. COMUNICAO DO SIMULINK E MATLAB COM ARDUINO O SIMULINK foi utilizado como ferramenta de manipulao por meio de blocos de controle e comunicao com o Arduino. Ele define os valores entre 0 e 255 que produzir uma equivalncia em PWM no Arduino e ser obtido um grfico de resposta do sistema e seus estados. Para isso foi necessrio instalao de um pacote de funcionalidades fornecido pelo site oficial do Matlab denominado matworks.

Você também pode gostar