Aula 95: Usando um Escudo para Motor DC L293D | Curso de Arduino Passo a Passo
Neste tutorial, exploraremos como controlar quatro motores DC usando o escudo de motor L293D com Arduino. Esta configuração é particularmente útil para aplicações de robótica, como a construção de um carro robô, onde o controle preciso do motor é essencial. Ao final desta lição, você terá um modelo funcional que pode operar múltiplos motores simultaneamente.

O escudo de motor L293D simplifica o processo de cabeamento e permite que você controle os motores com apenas algumas conexões. Você aprenderá a conectar o escudo ao Arduino, configurar o código e executar comandos de controle do motor de forma eficaz. Para uma explicação mais visual, você pode consultar o vídeo em timestamps específicos para detalhes de cabeamento e codificação (no vídeo em mm:ss).
Hardware Explicado
O componente principal deste projeto é o escudo de motor L293D, que é um driver de motor em ponte H quádruplo. Isso significa que ele pode controlar dois motores em ambas as direções, permitindo controle total sobre a rotação do motor. O escudo conecta-se diretamente ao Arduino, facilitando a gestão de energia e sinais de controle sem fiação desorganizada.
Cada chip L293D pode suportar até 600 mA de corrente por canal e opera em tensões que variam de 4,5V a 36V. Essa faixa o torna adequado para uma variedade de motores CC. Além disso, o shield possui um jumper que permite alimentar tanto os motores quanto o Arduino a partir de uma única fonte de alimentação externa.
Detalhes da Ficha Técnica
| Fabricante | Texas Instruments |
|---|---|
| Número da peça | L293D |
| Tensão lógica/IO | 5 V |
| Tensão de alimentação | 4,5 - 36 V |
| Corrente de saída (por canal) | 600 mA |
| Corrente de pico (por canal) | 1.2 A |
| Orientação sobre a frequência PWM | 1 kHz - 20 kHz |
| Limites de lógica de entrada | 2 V min (alto), 0,8 V max (baixo) |
| Queda de tensão / RDS(on)/ saturação | 1,5 V max |
| Limites térmicos | 150 °C |
| Pacote | 16-DIP |
| Notas / variantes | Configuração de Ponte H Dupla |
- Certifique-se de que os motores não excedam 600 mA para prevenir danos.
- Use dissipadores de calor adequados para aplicações de alta corrente.
- Conecte a fonte externa antes de ligar o Arduino.
- Verifique a colocação do jumper para alimentar o shield e o Arduino.
- Teste a direção do motor trocando as conexões, se necessário.
Instruções de Fiação

Comece conectando o escudo de motor L293D ao seu Arduino Uno ou Mega. Alinhe os pinos do escudo com os conectores do Arduino e pressione firmemente. Em seguida, conecte seus motores DC aos terminais identificados.M1,M2,M3, eM4no escudo. Cada motor requerirá dois terminais, então certifique-se de conectá-los corretamente para a direção correta de rotação.
Para a alimentação, conecte uma bateria externa ou uma fonte de alimentação aos terminais de entrada de energia do escudo, garantindo que a voltagem fique na faixa de 4,5V a 36V. Não se esqueça de conectar o jumper no escudo para permitir que a energia flua para o Arduino. Por fim, conecte o terra da fonte de alimentação ao pino de terra do Arduino para completar o circuito.
Instale a biblioteca necessária
clique no ícone da Biblioteca e procure por:Adafruit Motor Sheild Librarye clique em Instalar para instalá-lo.
Exemplos de Código e Passo a Passo
AF_DCMotor motor1(1);
AF_DCMotor motor2(2);
AF_DCMotor motor3(3);
AF_DCMotor motor4(4);No código, inicializamos quatro objetos de motor:motor1,motor2,motor3, emotor4. Cada motor é atribuído a um número de canal correspondente às conexões de terminais do escudo do motor. Isso nos permite controlar cada motor individualmente.
void setup() {
Serial.begin(9600); // set up Serial library at 9600 bps
Serial.println("Robojax L293D Example");
}Osetup()a função inicializa a comunicação serial, permitindo-nos enviar e receber mensagens do Arduino IDE. Isso é útil para depuração e monitoramento do processo de controle do motor.
motor1.setSpeed(speed(50)); //set speed for motor 1 at 50%
motor1.run(FORWARD); //send motor 1 to Forward rotationPara controlar os motores, ajustamos a velocidade usando osetSpeed()método, que recebe um valor entre 0 e 255. Orun()método então inicia o motor na direção especificada, comoFORWARDouBACKWARDA velocidade pode ser ajustada dinamicamente conforme necessário.
Demonstração / O que Esperar
Uma vez que tudo esteja conectado e o código esteja carregado, você deve ver os motores girarem de acordo com os comandos no código. Inicialmente, um motor será ligado, seguido pelos outros em sequência, cada um funcionando por uma duração definida. Se os motores não operarem como esperado, verifique sua fiação, certifique-se de que o jumper está conectado e verifique se a fonte de energia é adequada (no vídeo em mm:ss).
Timestamps de Vídeo
- 00:00 Introdução
- 03:00 Ficha técnica para L293D
- 03:56 Fiação explicada
- 07:21 Código e biblioteca
- 13:51 Demonstração controlando 4 motores
Coisas que você pode precisar
-
Amazonas
-
Amazonas
-
eBay
-
AliExpressCompre o escudo de motor L293D no AliExpresss.click.aliexpress.com
Recursos e referências
-
Externo
Arquivos📁
Nenhum arquivo disponível.