CURSO BÁSICO DE AUTOMAÇÃO E ROBÓTICA COM KIT ARDUINO – Exp. 11 – Página 1 de 3 EXPERIÊNCIA # 11 – Acionamento de Motor com ponte-H Objetivo: Aprender como utilizar o Arduino para controlar a velocidade e o sentido de rotação de um motor DC, através do uso de um CI (circuito integrado) contendo a topologia ponte H. Introdução: Em robótica e automação, muitas vezes é necessário controlar as rodas do robô (ou veículo) nos dois sentidos (horário e anti-horário). Isto permitirá a sua livre movimentação em todas as direções e sentidos (frente, ré, direita, esquerda, rotação no próprio eixo, etc.). Para implementar essa função é necessário utilizar um circuito eletrônico conhecido como ponte-H, que consiste em diversos transistores polarizados como chaves eletrônicas (modos saturação e corte) e dispostos de tal forma que podem conduzir (em inglês drive) a corrente elétrica através do motor DC, em ambos os sentidos (do pólo positivo para o negativo, ou vice-versa). Por isso, esses circuitos são conhecidos como drivers de corrente bidirecionais. Existem diversos circuitos integrados que contém a ponte H. Os mais conhecidos são os CIs das famílias L293 e L298. Neste experimento utilizaremos o L298N (vide Figuras 11.1 e 11.2) devido à sua capacidade de conduzir correntes altas (até 4 A), tornando a sua aplicação robusta para alimentar motores DC. Figura 11.1 – Apresentação do CI L298 para implementar ponte H (Fonte: datasheet do componente). Figura 11.2 – Diagrama elétrico para usar o L298 em motor DC (Fonte: datasheet do componente). CURSO BÁSICO DE AUTOMAÇÃO E ROBÓTICA COM KIT ARDUINO – Exp. 11 – Página 2 de 3 Material Necessário: - 01 motor DC 3 a 6V; - 01 fonte DC de 3-6V que forneça no mínimo 200mA; -01 CI L298N; - 01 Placa Arduino UNO REV 03; - 01 cabo USB para ligar a placa Arduino a um computador; - fios (jumpers) diversos; - Protoboard de 840 furos. Procedimentos Experimentais: 1)Monte o circuito mostrado na Figura 11.3. Figura 11.3 – Circuito utilizado na experiência do “Acionamento de Motor com Ponte-H” (cortesia: http://fritzing.org). 2) Na interface de programação de Sketches do Arduino, insira e compile o programa 11.1 com a placa conectada ao seu computador através da porta USB. CURSO BÁSICO DE AUTOMAÇÃO E ROBÓTICA COM KIT ARDUINO – Exp. 11 – Página 3 de 3 //Exp_11: Acionamento de motor DC com Ponte-H void setup() { Serial.begin(9600); pinMode(13,OUTPUT); //define port 13 do Arduino como saida digital (pino EnB do L298N) } void stop_motor() //função para cessar a rotação do motor { digitalWrite(13,LOW); // Desabilita motor através do port 13 analogWrite(9,0); //inicializa port 9 com valor 0V (pino In3 do L298N) analogWrite(11,0); //inicializa port 11 com valor 0V (pino In4 do L298N) delay(1000); //aguarda 2 segundos } void loop() { stop_motor(); digitalWrite(13,HIGH); //Habilita motor através do port 13 for (int x = 0; x<= 255; x++) //acelera o motor em um sentido { analogWrite(9,x); delay(10); } delay(1000); //aguarda 1 segundo stop_motor(); digitalWrite(13,HIGH); //Habilita motor através do port 13 for (int x = 0; x<= 255; x++) //acelera o motor no sentido contrário { analogWrite(11,x); delay(10); } } Programa 11.1 – Código em linguagem C utilizado na experiência de “Acionamento de Motor com Ponte-H”. As linhas iniciadas por “//” não são lidas pelo compilador, e por isso são utilizadas como comentários. Para o Diário de Bordo: 1) Descreva o funcionamento do circuito. 2) Modifique o programa 11.1 através da implementação de uma função em linguagem “C” para definir a velocidade de rotação e sentido do motor.