Módulo Driver de Motor DC L298N explicado

Relacionados

Neste post vamos aprender sobre o módulo de driver de motor DC de ponte H dupla L298N que pode ser usado para acionar motores DC escovados e motores de passo com microcontroladores e ICs.

Visão geral

Placas de circuito modulares são o melhor salvador de tempo para projetistas de eletrônicos que também reduzem os erros de prototipagem. Isso é preferido principalmente por programadores que escrevem código para microcontroladores, passam a maior parte do tempo digitando códigos na frente do computador e têm menos tempo para soldar os componentes eletrônicos discretos.

É por isso que podemos encontrar toneladas e toneladas de diferentes circuitos modulares feitos apenas para placas Arduino, é fácil de interface e tem vantagem de menos erros de hardware ao projetar nosso protótipo.

Ilustração do módulo L298N:

ILUSTRAÇÃO DO MÓDULO L298N:

O módulo é construído em torno do IC L298N; é comumente disponível em sites de comércio eletrônico.

Usamos drivers de motor CC porque os CIs e microcontroladores não são capazes de fornecer corrente não superior a 100 miliamperes em geral. Os microcontroladores são inteligentes, mas não fortes; este módulo adicionará alguns músculos ao Arduino, ICs e outros microcontroladores para acionar motores DC de alta potência.

Pode controlar 2 motores DC simultaneamente até 2 amperes cada ou um motor de passo. Podemos controlar a velocidade usando PWM e também o sentido de rotação dos motores.

Este módulo é ideal para a construção de robôs e projetos de movimentação de terra, como carros de brinquedo.

Vamos ver os detalhes técnicos do módulo L298N.

DETALHES TÉCNICOS DO MÓDULO L298N.

Descrição do pino:

· No lado esquerdo estão as portas OUT1 e OUT2, que servem para conectar o motor DC. Da mesma forma, OUT3 e OUT4 para outro motor CC.

· ENA e ENB são pinos de habilitação, conectando ENA em alta ou +5V; habilita as portas OUT1 e OUT2. Se você conectar o pino ENA em baixo ou terra, ele desabilita a OUT1 e a OUT2. Da mesma forma, para ENB e OUT3 e OUT4.

· IN1 a IN4 são os pinos de entrada que serão conectados ao Arduino. Se você inserir IN1 +Ve e IN2 –Ve do microcontrolador ou manualmente, a OUT1 fica alta e a OUT2 fica baixa, assim podemos acionar o motor.

· Se você inserir IN3 alto, OUT4 fica alto e se você inserir IN4 baixo, OUT3 fica baixo, agora podemos acionar outro motor.

· Caso queira inverter o sentido de rotação do motor basta inverter a polaridade IN1 e IN2, da mesma forma para IN3 e IN4.

· Aplicando o sinal PWM para ENA e ENB você pode controlar a velocidade dos motores em duas portas de saída diferentes.

· A placa pode aceitar de 7 a 12V nominalmente. Você pode inserir energia no terminal +12V e aterrar em 0V.

· O terminal +5V é OUTPUT, que pode ser usado para alimentar o Arduino ou qualquer outro módulo, se necessário.

Jumpers:

Existem três pinos de jumper; você pode rolar para cima ver a imagem ilustrada.

Todos os jumpers serão conectados inicialmente; remova ou mantenha o jumper dependendo de sua necessidade.

Jumper 1 (ver imagem ilustrada):

· Se o seu motor precisar de mais de 12V de alimentação, você deve desconectar o jumper 1 e aplicar a tensão desejada (máximo de 35V) no terminal de 12v. Traga outra fonte de 5V e entrada no terminal +5V. Sim, você deve inserir 5V se precisar aplicar mais de 12V (quando o jumper 1 é removido).

· A entrada de 5V é para o funcionamento adequado do IC, pois a remoção do jumper desabilitará o regulador de 5V embutido e protegerá de uma tensão de entrada mais alta do terminal de 12v.

· O terminal +5V atua como saída se sua alimentação estiver entre 7 a 12V e atua como entrada se você aplicar mais de 12V e o jumper for removido.

· A maioria dos projetos precisa apenas de tensão do motor abaixo de 12V, portanto, mantenha o jumper como está e use o terminal +5V como saída.

Jumper 2 e Jumper 3 (ver imagem ilustrada):

· Se você remover esses dois jumpers, você deve inserir o sinal de habilitação e desabilitação do microcontrolador, a maioria dos usuários prefere remover os dois jumpers e aplicar o sinal do microcontrolador.

· Se você mantiver os dois jumpers a OUT1 a OUT4 estará sempre habilitada. Lembre-se do jumper ENA para OUT1 e OUT2. Jumper ENB para OUT3 e OUT4.

Agora vamos ver um circuito prático, como podemos fazer a interface de motores, Arduino e alimentar o módulo driver.

Esquema:

DIAGRAMA ESQUEMÁTICO DO MÓDULO L298N.

O circuito acima pode ser usado para carros de brinquedo, se você alterar o código adequadamente e adicionar um joystick.

Você só precisa alimentar o módulo L289N e o módulo alimentará o Arduino via terminal Vin.

O circuito acima irá girar os dois motores no sentido horário por 3 segundos e parar por 3 segundos. Depois disso, o motor girará no sentido anti-horário por 3 segundos e parará por 3 segundos. Isso demonstra a ponte H em ação.

Depois disso, ambos os motores começarão a girar lentamente no sentido anti-horário, ganhando velocidade gradativamente até o máximo e reduzindo gradativamente a velocidade para zero. Isso demonstra o controle de velocidade dos motores por PWM.

Programa:

//----------------Program developed by R.GIRISH--------------//
const int Enable_A = 9;
const int Enable_B = 10;
const int inputA1 = 2;
const int inputA2 = 3;
const int inputB1 = 4;
const int inputB2 = 5;
void setup()
{
pinMode(Enable_A, OUTPUT);
pinMode(Enable_B, OUTPUT);
pinMode(inputA1, OUTPUT);
pinMode(inputA2, OUTPUT);
pinMode(inputB1, OUTPUT);
pinMode(inputB2, OUTPUT);
}
void loop()
{
//----Enable output A and B------//
digitalWrite(Enable_A, HIGH);
digitalWrite(Enable_B, HIGH);
//----------Run motors-----------//
digitalWrite(inputA1, HIGH);
digitalWrite(inputA2, LOW);
digitalWrite(inputB1 , HIGH);
digitalWrite(inputB2, LOW);
delay(3000);
//-------Disable Motors----------//
digitalWrite(Enable_A, LOW);
digitalWrite(Enable_B, LOW);
delay(3000);
//-------Reverse Motors----------//
digitalWrite(Enable_A, HIGH);
digitalWrite(Enable_B, HIGH);
digitalWrite(inputA1, LOW);
digitalWrite(inputA2, HIGH);
digitalWrite(inputB1 , LOW);
digitalWrite(inputB2, HIGH);
delay(3000);
//-------Disable Motors----------//
digitalWrite(Enable_A, LOW);
digitalWrite(Enable_B, LOW);
delay(3000);
//----------Speed rise----------//
for(int i = 0; i < 256; i++)
{
analogWrite(Enable_A, i);
analogWrite(Enable_B, i);
delay(40);
}
//----------Speed fall----------//
for(int j = 256; j > 0; j--)
{
analogWrite(Enable_A, j);
analogWrite(Enable_B, j);
delay(40);
}
//-------Disable Motors----------//
digitalWrite(Enable_A, LOW);
digitalWrite(Enable_B, LOW);
delay(3000);
}
//----------------Program developed by R.GIRISH--------------//


Protótipo do autor:

PROTÓTIPO ARDUINO DE CIRCUITO DE DRIVER DE MOTOR USANDO O MÓDULO L298N.

Se você tiver alguma dúvida sobre este projeto de driver de motor L298N DC, sinta-se à vontade para expressar na seção de comentários, você pode receber uma resposta rápida.

Hashtags: #Módulo #Driver #Motor #L298N #explicado
 

FONTE


Nota: Este conteúdo foi traduzido do Inglês para português (auto)
Pode conter erros de tradução

Olá, se tiver algum erro de tradução (AUTO), falta de link para download etc…
Veja na FONTE até ser revisado o conteúdo.
Status (Ok Até agora)


Se tiver algum erro coloque nos comentários

Mas se gostou compartilhe!!!

Relacionados

Relacionados