Motor DC com Driver Ponte H L298N

Motor DC com Driver Ponte H L298N

Controle até 2 motores DC ou 1 motor de passo com este módulo Ponte H L298N Arduino. Esse módulo é projetado para controlar cargas indutivas como relés, solenóides, motores DC e motores de passo, permitindo o controle não só do sentido de rotação do motor, como também da sua velocidade, utilizando os pinos PWM do Arduino:

Circuito Ponte H L298N

ESPECIFICAÇÕES PONTE H L298N:

  • Tensão de Operação: 4~35v
  • Chip: ST L298N (Datasheet)
  • Controle de 2 motores DC ou 1 motor de passo
  • Corrente de Operação máxima: 2A por canal ou 4A max
  • Tensão lógica: 5v
  • Corrente lógica: 0~36mA
  • Limites de Temperatura: -20 a +135°C
  • Potência Máxima: 25W
  • Dimensões: 43 x 43 x 27mm
  • Peso: 30g

Funcionamento Ponte H L298N:

Ponte H L298N - Pinagem

  • (Motor A) e (Motor B) se referem aos conectores para ligação de 2 motores DC ou 1 motor de passo
  • (Ativa MA) e (Ativa MB) – são os pinos responsáveis pelo controle PWM dos motores A e B. Se estiver com jumper, não haverá controle de velocidade, pois os pinos estarão ligados aos 5v. Esses pinos podem ser utilizados em conjunto com os pinos PWM do Arduino
  • (Ativa 5v) e (5v) – Este Driver Ponte H L298N possui um regulador de tensão integrado. Quando o driver está operando entre 6-35V, este regulador disponibiliza uma saída regulada de +5v no pino (5v) para um uso externo (com jumper), podendo alimentar por exemplo outro componente eletrônico. Portanto não alimente este pino (5v) com +5v do Arduino se estiver controlando um motor de 6-35v e jumper conectado, isto danificará a placa. O pino (5v) somente se tornará uma entrada caso esteja controlando um motor de 4-5,5v (sem jumper), assim poderá usar a saída +5v do Arduino.
  • (6-35v) e (GND) - Aqui será conectado a fonte de alimentação externa quando o driver estiver controlando um motor que opere entre 6-35v. Por exemplo se estiver usando um motor DC 12v, basta conectar a fonte externa de 12v neste pino e (GND).
  • (Entrada) - Este barramento é composto por IN1, IN2, IN3 e IN4. Sendo estes pinos responsáveis pela rotação do Motor A (IN1 e IN2) e Motor B (IN3 e IN4).

A tabela abaixo mostra a ordem de ativação do Motor A através dos pinos IN1 e IN2. O mesmo esquema pode ser aplicado aos pinos IN3 e IN4, que controlam o Motor B

Ponte H L298N - Tabela

Conectando Ponte H ao Arduino:

Vamos mostrar dois esquemas de ligação deste módulo ao Arduino Uno R3, que utilizarão o mesmo programa mostrado no final do post.

O primeiro circuito utiliza a alimentação do próprio Arduino, e deve ser feito sem o Jumper em (Ativa 5V). Utilizamos 2 motores DC 5V.

Circuito Ponte H - Alimentação Arduino

O segundo circuito utiliza alimentação externa e 2 motores DC de 12V. Nesse caso precisamos colocar o jumper em Ativa 5v:

Circuito Ponte H - Alimentação Externa

Programando Ponte H com Arduino:

Teste o seu módulo carregando o programa abaixo, que vai servir para os 2 circuitos que mostramos anteriormente. O programa gira o motor A no sentido horário, depois desliga esse motor e gira o motor B no mesmo sentido. Depois, repete esse procedimento no sentido anti-horário.

//Programa : Controle 2 motores DC usando Ponte H L298N
//Autor : FILIPEFLOP

//Definicoes pinos Arduino ligados a entrada da Ponte H
int IN1 = 4;
int IN2 = 5;
int IN3 = 6;
int IN4 = 7;
 
void setup()
{
  //Define os pinos como saida
 pinMode(IN1, OUTPUT);
 pinMode(IN2, OUTPUT);
 pinMode(IN3, OUTPUT);
 pinMode(IN4, OUTPUT);
}
 
void loop()
{
 //Gira o Motor A no sentido horario
 digitalWrite(IN1, HIGH);
 digitalWrite(IN2, LOW);
 delay(2000);
 //Para o motor A
 digitalWrite(IN1, HIGH);
 digitalWrite(IN2, HIGH);
 delay(500);
 //Gira o Motor B no sentido horario
 digitalWrite(IN3, HIGH);
 digitalWrite(IN4, LOW);
 delay(2000);
 //Para o motor B
 digitalWrite(IN3, HIGH);
 digitalWrite(IN4, HIGH);
 delay(500);

 //Gira o Motor A no sentido anti-horario
 digitalWrite(IN1, LOW);
 digitalWrite(IN2, HIGH);
 delay(2000);
 //Para o motor A
 digitalWrite(IN1, HIGH);
 digitalWrite(IN2, HIGH);
 delay(500);
 //Gira o Motor B no sentido anti-horario
 digitalWrite(IN3, LOW);
 digitalWrite(IN4, HIGH);
 delay(2000);
 //Para o motor B
 digitalWrite(IN3, HIGH);
 digitalWrite(IN4, HIGH);
 delay(500);
}

Gostou? Ajude-nos a melhorar o blog atribuindo uma nota a este tutorial (estrelas no final do artigo) e visite nossa loja FILIPEFLOP !

12
Motor DC com Driver Ponte H L298N
287 votos, 4.71 classificação média (94% pontuação)

Formado em Ciência da Computação pela Universidade de Mogi das Cruzes, atualmente responsável pelo departamento técnico da FILIPEFLOP.

Compartilhe este Post

227 Comentários

  1. Luiz Daniel - 25 de maio de 2017

    Olá,

    Comprei no ano passado com vocês um motor de passo Nema 17 e o Driver Motor Ponte H L298N para fazer o controle do mesmo. Estou montando uma máquina lançadora de bolas de tênis e o motor de passo é utilizado para girar o carrossel do alimentador das bolas. Estou tendo um problema um pouco estranho com essa solução, espero que vocês possam me ajudar:

    Primeiro testei o motor de passo com alimentação externa independente (separada da alimentação do Arduino e demais motores) de 6V/1A, o motor de passo funciona normalmente, mas fica um pouco fraco. Buscando ter mais torque no motor de passo, tentei alimentá-lo com uma fonte de notebook, de 18.5V e 3,5A. Mas ele fica fazendo um barulho, engasgando, parando… dando giros curtos, enfim não funciona adequadamente. Não há mudança nenhuma nas conexões e cabos do Arduino, apenas troca-se a fonte. Também estou tentando o motor de passo sem carga, apenas observando o giro do eixo, fora da máquina.

    Alguma idéia do que pode ser o problema? Desde já agradeço qualquer ajuda, pois a minha formação é Engenharia Mecânica ;-)

    (se quiserem posso enviar por e-mail a foto da montagem eletrônica e do código-fonte utilizado).

    Att.,

    • EDUARDO - 26 de maio de 2017

      Estou com esse problema também, estranho que no primeiro teste deu tudo certo, porém agora que finalmente imaginei que tivesse terminado meu projeto, o motor fica fraco num nível extremo. Comprei duas pontes, uma a mais, caso viesse a quebrar uma, troquei a ponte e continua do mesmo jeito.
      Caso descubra, por favor coloque aqui a solução.
      Farei o mesmo.

      • Luiz Daniel - 5 de junho de 2017

        Olá Eduardo,

        Pois e, o pessoal da FilipeFlop não nos respondeu ;-(. Eu andei procurando na internet e nesse link (https://tronixlabs.com.au/news/tutorial-l298n-dual-motor-controller-module-2a-and-arduino/) eles falam que deve-se retirar o jumper caso esteja alimentando o módulo L298N com uma voltagem de 12V ou superior. Mas quando eu retiro o jumper e alimento o módulo com uma fonte de notebook (18.5V e 3.5A), nada acontece. Então não sei mais o que fazer. Uma possibilidade, pelo que andei lendo, é que o motor de passo não aguente girar na velocidade que programei (myStepper.setSpeed(60)) com essa voltagem bem mais alta. Então vou fazer um teste com a velocidade bem baixa (com e sem o jumper na placa). Se vc decobrir algo me avise ok?

        • Eduardo Bernal - 5 de junho de 2017

          Então, cheguei a ver isto tambem, e realizei o mesmo teste.

          Consegui resolver meu problema de um forma bem simples, coloquei o GND em comum tanto no arduino como na ponte H, no caso, a saída do jack negativa, pus junto no GND da fonte que estava utilizando.

          Tenta aí e comenta se conseguiu.

  2. Adriano - 8 de maio de 2017

    Olá,

    Tenho um carrinho de controle remoto básico, da Candide. Ele queibou o circuito e vou aproveitar para mexer com arduino, vou substituir o circuito pelo arduino. Essa placa é suficiente?
    Tem algum exemplo de controle de velocidade com essa placa?

    Valeu

  3. Jean Carlos - 28 de abril de 2017

    Tenho duas duvidas. gostaria de saber se posso usar uma bateria externa de 3 volts, pq meu motores funcionam com 3 volts. A outra dúvida é quanto ao segundo diagrama de ligação, porque quando você utilizou a bateria externa você ligou o negativo da bateria no gnd do arduino? Obrigado.

  4. Ramon - 26 de abril de 2017

    Adilson, boa noite.
    Tenho um projeto que utilizará 2 motores de 12V e 2 de 5V. É possível neste caso utilizar as duas configurações na mesma placa Arduino uma para cada placa ponte H L298N conforme o diagrama ?
    Obrigado
    Ramon

    • Adilson Thomsen - 27 de abril de 2017

      Bom dia Ramon,

      É possível sim, pois as portas do Arduino serão utilizadas apenas para controle. A alimentação virá de uma fonte externa, certo?

      Abraço!

      Adilson – Equipe FILIPEFLOP

      • Ramon - 27 de abril de 2017

        Olá Adilson, agradeço seu rápido retorno.
        Vou utilizar duas fontes externas sim, 12 e 5V e tudo será controlado via Bluetooth com comando por celular.
        Toda a mecânica está pronta e falta apenas esta etapa da automação.
        Agora começam as dúvidas sobre interligações e programação.
        Voltarei a pedir sua ajuda mais adiante.

        Abraço
        Ramon

      • ozael - 30 de junho de 2017

        adilson

        fiz esta programacao. keria uma ajuda

        #include

        int static stepMotore = 100; //modifica step (passo) do motor
        int B = A2; // porta analogica do botao

        //un giro completo e’ composto da 360 gral,
        //un numero di step pari ai suoi “stepMotore diviso 2″
        int stepDaPercorrere = stepMotore/1;

        //controle portas de acionamento motor ponte H L298N
        int static IN1 = 11;
        int static IN2 = 10;
        int static IN3 = 9;
        int static IN4 = 8;

        Stepper mioMotore(stepMotore, IN1, IN2, IN3, IN4);

        void setup() {

        mioMotore.setSpeed(55); // velocidade

        pinMode(B, INPUT);

        }

        void loop() {

        int VB = digitalRead(B); // VB valor botão

        if (VB == 1){
        mioMotore.step(stepDaPercorrere);

        delay(100);

        mioMotore.step(-stepDaPercorrere);

        delay(100);

        mioMotore.step(stepDaPercorrere);

        mioMotore.step(0);

        } }

        preciso fazer ele virar conforme este video ,mas minha cabeça ta cozinhando e nao consigo axar uma forma dele fazer da forma q esta no video.. o maximo q consigo e fazer ele ir e voltar e ir denovo . mas keria uma forma dele nao rodar quando ligar o arduino pois pretendo montar um prototipo de uma makina de cigarros ,mas ai toda vez q ligo o arduino ele ja começa rodando .

        e com isso soltaria sempre um cigarro.

        https://www.youtube.com/watch?v=r6CSaNl5s-8

        poderiam me ajudar ?

  5. Luã da Silva Medeiros - 29 de março de 2017

    Bom dia ! Gostaria de saber se é possivel controlar a posiçao dele ? Preciso coloca-lo em 3 posiçoes diferentes no carro da impressora. Um abraço e um bom dia !

  6. Matheus Pohlmann Gonçalves - 23 de março de 2017

    Bom dia Equipe.

    Estou montando um projeto de um “rover” em casa com três rodas, utilizando 3 drivers ponte h com ci l298n(filipeflop) e 6 motores DC GM25-370(china), ligando-os em pares, em cada ponte H. Utilizo normalmente as quatro entradas IN do driver para polarizar os motores, mas pretendo controlar a velocidade com PWM nas portas ENB.

    Até aí tudo ok, porém eu já utilizei 10 portas PWM do atmega2560, só com servomotores, eu precisaria de mais 6 saidas PWM disponíveis para poder ligar essas pontes H, sendo que o arduino mega só possui 13 portas PWM. A duvida é a seguinte:

    -Qual o consumo dos pins ENB com PWM?
    -Eu poderia ligar UMA unica porta do arduino à DOIS ou MAIS pinos ENB? (Provavelmente não…)
    -Se sim, há chance de eu queimar as portas do atmega, ou o driver?

    Se precisar de foto do circuito que estou utilizando, posso disponibilizar facilmente. (Mas acredito que está tudo bem intuitivo.)

    Seria de ótima ajuda se obtivesse resposta com vocês.
    Após quatro anos do post, estou eu aqui…

  7. Fernando - 13 de março de 2017

    Prezado Adilson
    Obrigado pela explicação sobre a ponte H L298N. Gostaria de lhe fazer uma pergunta a mais, pois com seu conhecimento acredito que tenha um bom conselho.
    Qual bomba peristáltica (motor) você indicaria para eu conseguir um fluxo contínuo de 1ml/min. Veja que os motores de passo do tipo NEMA não possuem a cabeça da bomba peristáltica, assim dificultando a implementação.
    Tenho olhado esta bomba aqui: http://produto.mercadolivre.com.br/MLB-767756670-bomba-peristaltica-de-01ml-a-100mlminuto-pronta-entrega-_JM
    Não sei se ela é suficientemente boa para permitir uma fluxo contínuo de 1ml/mim. Por favor, você tem algum conhecimento sobre este assunto.
    Agradeço antecipadamente

  8. Fernando - 10 de março de 2017

    Oi Adilson
    Muito legal e explicativo.
    Desculpe a ignorância, mas só uma pergunta…porque usar uma ponte L298N para aplicar PWM no motor se eu tenho PWN direto na placa arduino. Há alguma vantagem usando a ponte L298N? Qual?
    Obrigado

    • Adilson Thomsen - 10 de março de 2017

      Boa tarde Fernando,

      Obrigado. Quando você usa uma ponte H, você pode controlar motores que exigem mais corrente. No caso dessa ponte, até 2A.

      Abraço!

      Adilson – Equipe FILIPEFLOP

  9. THIAGO - 27 de fevereiro de 2017

    Bom Dia!
    Gostaria de usar 2 motores 2,3 ah cada para fazer um seguidor solar alguem poderia me ajudar com os codigos?

    Tenho

    1 PÇ – Placa Uno R3 + cabo USB
    4 PÇ – Sensor de luz LDR
    40 – jumpers macho-macho e macho-fêmea
    1 – L298N
    2 – motor 2,3 ah

  10. Hae Yong Kim - 10 de fevereiro de 2017

    Caros:
    Fiz a montagem conforme a figura “motores DC 5V” e não funcionou. Pesquisando Google “l298n arduino module”, encontrei (por exemplo) o seguinte site :
    http://www.instructables.com/id/Control-DC-and-stepper-motors-with-L298N-Dual-Moto/
    Segundo esse site:
    1) A alimentação deve ser colocada sempre nos pinos nomeados aqui de 6-35V e GND, mesmo que a tensão seja 5V.
    2) É para manter o jumper 3 se a alimentação for menor que 12V.
    Resumindo, mantive jumper 3 no lugar e alimentei os pinos 6-35V (+) e GND (-) e os motores funcionaram corretamente. Aparentemente, o pino 5V não pode ser utilizado como entrada.
    Abs.

  11. Gegiame - 20 de janeiro de 2017

    Olá, não estou conseguido acionar a ponte h por um módulo bluetooth, sendo que já confirmei que o módulo está operando perfeitamente. Vc poderia dá uma sugestão?

  12. bora fazer o robô se movimentar? – A Jornada de Tchellita - 10 de janeiro de 2017

    […] você quer mais detalhes da especificação da ponte H aqui tem um post muito interessante, vale a pena a leitura. Como o enfoque desta série de posts é a […]

  13. Beta - 26 de dezembro de 2016

    is that fritzing? can get the L298n Part (.fzpz)?
    Thanks before

  14. luiz - 24 de novembro de 2016

    Qual software voce utiliza para fazer essa prototipação?

    tentei 123dCircuits mas nao achei esse drive

  15. Jorge - 1 de novembro de 2016

    Posso usar esse drive como amplificador de potência das portas PWM do Arduino para ligar uma fita de LED RGB?

  16. bernardo martins - 29 de outubro de 2016

    tenho um arduino uno r3
    gostaria de saber como faço para configurar 2 sensores ultrassonicos hc-sr04,para quando eles detectarem objetos eles acionarem dois motores vibra call(separadamente)
    seriam 2 sensores
    que acionariam 2 motores vibra call
    gostaria de ligar assim
    sensor 1 liga motor 1
    sensor 2 liga motor 2
    gostaria se possivel da sua ajuda
    e onde posso encontrar uma biblioteca com os codigos

  17. Teste motores DC – My Buddy Berry - 19 de outubro de 2016

    […] Para o robô estamos utilizando dois motores DC controlados por uma ponte H L298N. Assim para desenvolver o teste seguimos o tutorial do site do FILIPEFLOP nesse link. […]

  18. Eduardo castellani - 15 de outubro de 2016

    Olá, obrigado pelo tutorial e pela paciência em responder-nos.

    Eu estou tentando fazer um codigo, para uma bobinadora, e não consigo, ja olhei varios tutoriais e nada, peguei 3 codigos para tentar uni-los em 1 só, mas esta dando erro, Estou usando um motor DC, uma ponte H ( essa do tutorial ) e um sensor encoder, mais uma roda encoder de 33 pulsos.

    Peguei 3 codigos, sendo um contador, e tentei fazer o motor para numa determinada contagem, e coloquei junto com esse codigo, um do controle da ponte H e um para exibir na porta serial.

    Mas não funciona e dá erro, vejam abaixo, se alguém puder ajudar, agradeço.

    CODIGO:

    #include
    #include

    LiquidCrystal lcd(12,11,5,4,3,2);

    int ENABLE=3; //PINO ENABLE
    int IN1=8;

    int pinosensor = 2; // sensor óptico encoder Porta A2 ao Arduino
    int contador = 0; // Armazena o valor lido pelo sensor optico
    int pino_botao_reset = A0; // Pino ligado ao botao de reset
    int estadobotao = 0; // Armazena o estado do botao reset

    boolean contador_anterior = 0;
    boolean contador_actual = 0;

    void setup()
    {
    pinMode(IN1,OUTPUT); //SETA OS 2 PINOS COMO SAIDA
    pinMode(pinosensor, INPUT); // Define o pino do sensor optico como entrada
    pinMode(pino_botao_reset, INPUT); // Define o pino do botao reset como entrada
    pinMode(2,INPUT);

    {
    Serial.begin(9600);
    Serial.println(contador);

    }
    lcd.begin(16,2);
    lcd.print(“contador : 0″);
    }

    boolean debounce(boolean contador_anterior)
    {

    boolean contador_actual = digitalRead(2);
    if contador_anterior != contador_actual)
    {
    delay(10);
    contador_actual = digitalRead(2);
    }
    return contador_actual;
    }

    void loop()
    {

    int contador = digitalRead(2);

    actual = debounce(anterior);

    if ( anterior == 0 && actual == 1)
    {
    contador++;

    delay (100);
    Serial.println(contador);
    }

    contadoranterior = contadoractual;

    }

    estadobotao = digitalRead(pino_botao_reset); // Verifica se o botao reset foi pressionado

    if (estadobotao != 1)
    {
    // Zera o contador
    contador = 0;
    // Apaga o valor anterior
    lcd.setCursor(11,0);
    lcd.print(” “);
    // Mostra o valor zerado
    lcd.setCursor(11,0);
    lcd.print(contador);

    }

    // Le as informações do pino do sensor optico
    contador = digitalRead(pinosensor);

    // Verifica se o objeto foi detectado pelo sensor

    if (contador > 1)
    {
    // Incrementa o valor do contador
    contador = contador++;
    // Apaga o valor anterior
    lcd.setCursor(11,0);
    lcd.print(” “);
    // Mostra o valor do contador
    lcd.setCursor(11,0);
    lcd.print(contador);
    }

    int contador = analogRead(2);
    Serial.println(contador);

    // Loop caso o objeto pare sobre o sensor
    //while(digitalRead(pinosensor) != 1)

    // Le as informações do pino do sensor optico
    leitura = digitalRead(pinosensor);
    // Verifica se o objeto foi detectado pelo sensor

    // Incrementa o valor do contador
    contador = contador++;

    while (contador <700)
    {
    if (contador < 700)
    digitalWrite(IN1,HIGH); ROTACAO PARA FRENTE
    else
    digitalWrite(IN1, LOW);
    delay(100);
    }

    ERROS

    Build options changed, rebuilding all
    sketch_oct12b_programa_atual.ino: In function 'boolean debounce(boolean)':
    sketch_oct12b_programa_atual.ino:39:7: error: expected '(' before 'contador_anterior'
    sketch_oct12b_programa_atual.ino: In function 'void loop()':
    sketch_oct12b_programa_atual.ino:52:3: error: 'actual' was not declared in this scope
    sketch_oct12b_programa_atual.ino:52:21: error: 'anterior' was not declared in this scope
    sketch_oct12b_programa_atual.ino:63:5: error: 'contadoranterior' was not declared in this scope
    sketch_oct12b_programa_atual.ino:63:24: error: 'contadoractual' was not declared in this scope
    sketch_oct12b_programa_atual.ino: At global scope:
    sketch_oct12b_programa_atual.ino:69:3: error: 'estadobotao' does not name a type
    sketch_oct12b_programa_atual.ino:71:3: error: expected unqualified-id before 'if'
    sketch_oct12b_programa_atual.ino:85:6: error: 'contador' does not name a type
    sketch_oct12b_programa_atual.ino:89:3: error: expected unqualified-id before 'if'
    sketch_oct12b_programa_atual.ino:101:10: error: redefinition of 'int contador'
    sketch_oct12b_programa_atual.ino:10:5: error: 'int contador' previously defined here
    sketch_oct12b_programa_atual.ino:102:6: error: 'Serial' does not name a type
    sketch_oct12b_programa_atual.ino:109:3: error: 'leitura' does not name a type
    sketch_oct12b_programa_atual.ino:113:5: error: 'contador' does not name a type
    sketch_oct12b_programa_atual.ino:115:4: error: expected unqualified-id before 'while'

  19. Junior - 13 de outubro de 2016

    Boa noite, estou comprando este motor:

    http://produto.mercadolivre.com.br/MLB-791697704-motor-eletrico-300w-bosch-moto-scooter-skate-_JM

    Sabe me dizer se a ponte H com o Arduino é possível de controlar a velocidade deste motor pelo celular ? É para um trabalho da faculdade.

  20. Guilherme - 1 de outubro de 2016

    Uma dúvida: essa primeira configuração alimenta a ponte H diretamente com os 5v do arduino pra controlar os motores de 5v. isso não pode danificar o arduino????? A máxima corrente que ele pode fornecer é de 200mA. Ou a ponte H tem algum circuito interno que amplifica a corrente, ou outra coisa?
    Obrigado.

    Guilherme

  21. Leonardo - 14 de setembro de 2016

    Olá Adilson.

    Estou fazendo um carrinho com dois motores, e estou com dificuldades para controlar ambos ao mesmo tempo. Por exemplo, com o seguinte código no loop, eles não rodam.

    digitalWrite(IN1, HIGH);
    digitalWrite(IN2, LOW);
    digitalWrite(IN3, HIGH);
    digitalWrite(IN4, LOW);
    delay(2000);

    digitalWrite(IN1, HIGH);
    digitalWrite(IN2, HIGH);
    digitalWrite(IN3, HIGH);
    digitalWrite(IN4, HIGH);
    delay(500);

    digitalWrite(IN1, LOW);
    digitalWrite(IN2, HIGH);
    digitalWrite(IN3, LOW);
    digitalWrite(IN4, HIGH);
    delay(2000);

    digitalWrite(IN1, HIGH);
    digitalWrite(IN2, HIGH);
    digitalWrite(IN3, HIGH);
    digitalWrite(IN4, HIGH);
    delay(500);

    Sabe como posso resolver este problema?

    Obrigado,
    Leonardo

  22. Luciano - 13 de setembro de 2016

    Bom dia Adilson!
    Comprei um chassi e 2 motores com uma Ponte H L298N para montar um robozinho, mas veio uma Ponte H L298D.
    Estou um pouco confuso sobre como utiliza-la para controlar os motores do robô. Pode dar um help?
    Preciso controlar os sentidos de direção e velocidade. Também não localizei na placa o jumper 5v.

    Att.

  23. Carlos - 11 de setembro de 2016

    Olá, estou com uma duvida.
    Quero controlar um motor de 5v porem vou usar uma bateria de 12v como alimentação externa pois queria evitar alimentar com o arduino. Se eu manter o jumper 5v e o jumper do PWM como esta na segunda figura meu motor recebera 5v ou 12v? Como posso enviar para o meu motor apenas 5v com uma alimentação externa de 12v?

  24. Fabio - 10 de setembro de 2016

    Boa tarde!
    Primeiramente gostaria de agradecê-lo por compartilhar conhecimento com todos nós e também por auxiliar nas dúvidas.
    Em segundo lugar gostaria de saber se é possível manter uma proteção caso haja travamento do motor. Apenas com o driver e o firmware é possível realizar a desenergização dos motores em uma situação dessas?
    Obrigado desde já e desculpe qualquer imaturidade na pergunta, estou iniciando no meio da eletrônica.

  25. Anderson Andrade - 26 de agosto de 2016

    Boa Tarde,
    Gostaria de saber se tem como colocar algum sensor quando acionado uma vez ele faz o motor rodar no sentido horário em um determinado tempo, e quando acionado de novo ele faz a mesma coisa so que no sentido anti-horário. O mesmo esquema de portões elétricos, teria como? Sou péssimo em programação e preciso fazer isso para um trabalho da faculdade teria como me ajudar?

  26. Eduardo - 22 de agosto de 2016

    Prezado Adilson,

    comprei o módulo, segui o procedimento de ligação dos dois exemplos. Preciso trabalhar com a primeira configuração, onde insiro uma tensão de 5v no módulo para alimentar os motores. A configuração não funciona.

    Com a segunda configuração rodou tudo perfeito.

    Alguma sugestão?

    • Renato dos Santos - 31 de agosto de 2016

      Amigo, não tem nenhum segredo ao lado do motor A tem um conector com 3 borner, o do meio é o GND, da esquerda +12v e da direita + 5v. Pode ligar da porta 5v e GND do Arduino que vai funcionar beleza.
      Espero ter ajudado.

  27. Andre - 3 de agosto de 2016

    Olá, gostaria de controlar a velocidade de cada motor utilizando dois potenciômetros, um para cada motor. É possível?

  28. JOSILEI FELIX - 31 de julho de 2016

    Boa tarde! Felipe!!!

    Gostaria de acrescentar no segundo código o sensor Ultrassônico e o modulo bluetooth HC 5, estou reaproveitando uma carcaça de um carrinho, e estou querendo adaptar….Conforme outros posts…é possível controlar via celular através do Bluetooth, e deixá-lo autônomo, poderia me ajudar?

  29. Alikssp - 27 de julho de 2016

    Amigo, muito bom!! Poderia me tirar uma dúvida? Gostaria de usar 2 Canais do modulo Shield Motor para controlar um motor DC poderia me dizer como posso fazer isso?? Obrigado.

  30. Eduardo de oliveira castellani - 17 de julho de 2016

    Parabéns ADILSON THOMSEN, pela paciência em responder a tantos, é difícil achar pessoas assim.

    • Adilson Thomsen - 29 de julho de 2016

      Boa tarde Eduardo,

      Obrigado, nem sempre conseguimos responder à todos, pela quantidade de mensagens e dúvidas, mas fazemos o possível. :)

      Abraço!

      Adilson – Equipe FILIPEFLOP

      • Diogo - 28 de setembro de 2016

        Ola, boa tarde
        Estou a iniciar um projeto em que tenho que controlar 2 motores de passo (c2164 60045 + a1845206), mas estou com doficuldades em escolher o melhor modulo para os controlar.
        E possivel dar uma ajuda?
        Obrigado

  31. mirella - 7 de julho de 2016

    Olá.
    Comprei essa shield e seu site me ajudou bastante na hora da programação.
    Acabei criando uma biblioteca que basta jogar o movimento desejado (p frente, p trás, p direita, p esquerda) e o valor PWM.
    Caso queira disponibilizar aqui, me envia um e-mail que passo o arquivo!
    miremelo@gmail.com

    abs e obg!

  32. Luiz Henrique - 6 de julho de 2016

    Fiz as conexões, entretanto as velocidades dos dois motores (os motores são idênticos e de 6V – aqueles com caixa de redução amarela) são diferentes e o robô de move sempre em curva (no caso para a direita). Qual o possível problema? Pode me ajudar, por favor?

    • Vinicius - 28 de agosto de 2016

      Boa tarde, mesmo com o fato dos motores serem identicos, eles acabam possuindo caracteristicas diferentes, ou seja, mesmo mandando o mesmo valor pwm um pode ir mais rápido do que o outro. Sugiro que voce use um encoder ou tente no teste achar a velocidade para cada um

  33. Wilton - 6 de julho de 2016

    Adilson, como fica a ligação para um motor de 12V com 3A? Desde já, agradeço.

  34. William Moser - 6 de julho de 2016

    Olá, comprei uma ponte h e tentei testar não consegui, pois tenho apenas um motor, queria mandar comandos para ele virar anti-horário e horário, mas não consegui, o motor que tenho é 12V. Será que você poderia me ajudar?

  35. Pedro Paulo - 4 de julho de 2016

    Pessoal estou automatizando uma janela e quero que 1 botão feche a janela e o outro abra, escrevi o código da seguinte forma (segue abaixo), porem o quando o push button é pressionado motor não gira, o led acende.

    //Definicoes pinos Arduino ligados a entrada da Ponte H
    int IN1 = 4;
    int IN2 = 5;
    const int led = 13; //constante led refere-se ao pino digital 13.
    const int botao = 2; //constante botão refere-se ao pino digital 2.
    const int botao_1 = 3; //constante botão refere-se ao pino digital 3.
    //Variável que conterá os estados do botão (0 LOW, 1 HIGH).
    int estadoBotao = 0;
    int estadoBotao_1 = 0;
    void setup(){
    //Define os pinos como saida
    pinMode(IN1, OUTPUT);
    pinMode(IN2, OUTPUT);
    pinMode(led,OUTPUT); //Definindo pino digital 13 como de saída.
    //Define os pinos como entrada
    pinMode(botao,INPUT); //Definindo pino digital 2 como de entrada.
    pinMode(botao_1,INPUT);//Definindo pino digital 3 como de entrada.
    }
    void loop(){
    //Lendo o estado do pino , constante botao, e atribuindo
    //o resultado a variável estadoBotao.
    estadoBotao = digitalRead(botao);
    estadoBotao_1 = digitalRead(botao_1);
    //Gira o Motor A no sentido horario
    if (estadoBotao == HIGH){
    digitalWrite(led,HIGH); //Botão pressionado, acende o led.
    digitalWrite(IN1, HIGH);
    digitalWrite(IN2, LOW);
    }
    else{
    digitalWrite(led,LOW); //Botão não pressionado, apaga o led.
    digitalWrite(IN1, HIGH);
    digitalWrite(IN2, HIGH);
    }
    //Gira o Motor A no sentido anti-horario
    if (estadoBotao_1 == HIGH){
    digitalWrite(led,HIGH); //Botão pressionado, acende o led.
    digitalWrite(IN1, LOW);
    digitalWrite(IN2, HIGH);
    }
    else{
    //Para o motor A
    digitalWrite(led,LOW); //Botão não pressionado, apaga o led.
    digitalWrite(IN1, HIGH);
    digitalWrite(IN2, HIGH);
    }
    }

    • Roney L. - 4 de julho de 2016

      Mas os motores funcionam quando não têm os IF’s?
      Ao meu ver, a programação não tem erro.
      Se com uma programação teste, não funcionar, também, verifique as ligações e a alimentação. A alimentação tem que ser no mínimo, 6V e 200mah para cada motor.

  36. Marcelo Almeida - 30 de junho de 2016

    Ola,
    Montei esse mesmo esquema com o Arduíno, ponte H e 2 motores de vidro elétrico de 12v usando uma fonte externa de 12v também mas quando vou testar, a saída da ponte H para os motores só sai 4,8v. Teria algum sugestão para resolver isso ?
    abraços

  37. Thiago - 26 de junho de 2016

    Boa noite, então, fui testar aqui minha ponte H e algo curioso aconteceu. Quando liguei ela (usando alimentação do Arduino) sem o jumper Ativa 5V ela ligou, mas não funcionou. Porém quando liguei o jumper ela começou a funcionar. Sabe me dizer o que aconteceu ?

  38. Pão - 19 de junho de 2016

    Amigo, eu estou com a ponte H que comprei com vocês e ela funcionou aqui, só que diferente de outra que tive, esta não sei como controlar a velocidade do motor. Como faço isto?

    Outra coisa percebi que este modelo liga o GND da alimentação que recebe da bateria, no Arduino tmb, se não a roda fica lenta. Isto tem risco de danificar a ponte H?

    • Roney - 22 de junho de 2016

      Para controlar a velocidade, você terá de usar “analogWrite”, em vez de digitalWrite.
      Mas primeiro, tem que ligar todos os pinos (IN1, IN2, IN3, IN4) em portas PWM do arduino.
      Depois você faz essa substituição que falei antes e coloca um número de 0 a 255, em vez de HIGH.
      Ex: analogWrite(IN1, 150);

      Sobre o GND: Acreito que não danifique, mas tem que ser ligada, sempre. Não importa o que seja, se estiver sendo controlado por um arduino, tem que ligar no GND do arduino, também

  39. João Marcos - 6 de junho de 2016

    Olá,Bom dia!

    Gostaria de saber se a alimentação externa da ponte H poderia ser menos de 12v

    Aguardo resposta, Agradeço desde já a equipe FilipeFlop!

  40. Pão - 5 de junho de 2016

    Olá, estou alimentando minha ponte H com 13.5V, teria alguma forma de puxar energia dela para alimentar diretamente o arduino? Ou só fazendo uma derivação mesmo, no cabo que esta vindo 13.5v e colocando um regulador de tensão?

    • wik_denis - 15 de junho de 2016

      O Arduino já tem um regulador de tensão, portanto você pode utilizar 13,5 V para alimentá-lo, porém atente-se que deve ligar a alimentação ao pino Vin para não ter problemas.

  41. ozael - 4 de junho de 2016

    ola turma, quem poderia me dar um help, preciso montar com o arduino uma controle de inversao de motor DC e sua velocidade, igual neste projeto mas porem com final de curso para ambos os lados e um potenciometro de velocidade , por exemplo, eu clico num botao X ele gira para a Direita e quando acionar um botao P ele para e se novamente precionar o botao X ele gira para a Esquerda ate ser acionado novamente o botao P onde o P seria o botao de Final de Curso . caso tenha alguem que possa me dar essa ajuda ficaria grato, se for o caso de fazer um preço bom eu posso pagar tambem.

  42. ronaldo aparecido schroeder - 30 de maio de 2016

    boa tarde

    consigo usar essa ponte J num Arduino Pro Mini Atmega328p ?
    nesse mesmo arduino com a placa h posso colocar um shield de bluetooth ou wifi para fazer um mini controle remoto?

    • Roney - 5 de junho de 2016

      Sim, pode.
      Mas use alimentação externa para a ponte H, principalmente.
      O shield bluetooth ou módulo wifi, pode ser alimentado pelo arduino,só se for usar um ou outro, se for usar os dois, é bom usar alimentação externa para um dos dois, para não sobrecarregar o arduino.

  43. Cassio - 29 de maio de 2016

    Parabéns pelo post. Muito bem explicado. Onde conseguiu essa imagem legal da ponte H no fritzing? Você teria o link para download?

  44. guilherme - 26 de maio de 2016

    Quando executo o programa no arduino aparece esssa mensagem stray’\302′ in program

    Alguem pode me ajudar urgente

  45. jehfferson wesllym chepli - 24 de maio de 2016

    É possível utilizar um nema 23 10 kgf com esse driver?

  46. Adriano Carnovale - 18 de maio de 2016

    Olá, queria fazer uma placa controladora para uma porta automática, pelo que vi é quase o que eu preciso mas com algumas adaptações.

    Preciso que calcule o percurso da porta, e se ela estiver fechada faça abrir, se estiver aberta faça fechar.

    Será que pode me ajudar nesse projeto?

    Como faço pra comprar esses equipamentos e começar a incrementa-lo?

    Obrigado!

  47. Leonardo Baptistella - 5 de maio de 2016

    Por que o GND do arduino e ligado na bateria?

    • Everton - 16 de maio de 2016

      É necessário pela necessidade de ter o “terra” para servir de referencial entre os IN1 até o IN4 do seu L298N e o arduino.
      Sabendo que o GND será “0V”, quando vc colocar 5V , usando o comando digitalWrite(IN1, HIGH), você estará colocando os 5V em relação ao terra da bateria e também que é o mesmo terra da fonte.
      Outra coisa que notei no codigo, que existem algumas placas com L298N que tem dois pinos ENA (enable A) e ENB (enable B), neste caso para ao logica do codigo acima funcionar, terá que deixar o/os pino/os em nivel alto, pois enable quer dizer habilitar motor A ou B.
      Espero que tenho ajudado :)

  48. Luna - 24 de abril de 2016

    Estou montando um seguidor de linha com 02 sensores infravermelho. Tenho 04 motores DC (3-6v cada) e a ponte L298N. Posso ligar 02 motores de um lado em série no OUT1(fios positivos) e OUT2(fios negativos) e do outro lado 02 motores em série OUT4(positivos) e OUT3(negativos) ?

  49. Beatriz Fermiano - 20 de abril de 2016

    Boa noite!
    VOu fazer um carrinho na faculdade e vou controlar pela Ponte dois motores dc 12v. Gostaria de saber qual a alimentação correta para ele, só tenho baterias 9v, gostaria de saber se posso unir três baterias 9v, mandando pra ele 27v. Se a própria ponte faz a divisão das tensões para cada motor.
    Grata

  50. Thadeu Munhóz Cesário - 1 de abril de 2016

    Boa tarde,

    Consigo utilizar essa ponte H com outros microcontroladores ?

    Podem me recomendar algum motor com um torque e rpm alto ?

    Abracos

    • Roney L - 1 de abril de 2016

      1º Sim, você consegue. É só fazer a ligação correta.
      2º Essas duas qualidades são meio controversas, pois para ter maior velocidade, perdesse torque e para ter maior torque, perdesse velocidade.
      Para que você pretende usar esses motores?

  51. Fabricio Amadori - 19 de março de 2016

    Boa tarde,

    Fiz uma ligação com uma fonte externa bateria de 9V e 2 motores. Tudo esta funcionando perfeitamente, porem a velocidade do motor B quando baixo de 100 ele para de funcionar, enquanto o motor a esta ok até velocidade 0.

    Se alguém conseguir me ajudar agradeço.

  52. Ecio - 18 de março de 2016

    Olá Adilson, vez em quando visito seu blog, gostei desse comentário sobre Arduino principalmente sobre Ponte H L298N: tenho um Arduino e encomendei 5 placa dessa ponte , tá pra chegar, sou meio inexperiente ainda em Arduino, mas to aprendendo, valeu as dicas, Att.. Ecio

  53. Tiago Cahú - 8 de março de 2016

    Estou fazendo um braço robótico usando um motor DC de 12V no corpo e um servo na junta superior. Estou usando o Arduino + motoshield para acionamento dos motores, gostaria de saber se o motor DC que ficará na parte de baixo do braço trava o eixo para que ele sustente o restante do braço? obrigado

    • Roney L - 1 de abril de 2016

      Para montar um braço robótico é indicado o uso apenas de servos-motores. Nunca vi com motores DC.
      O servo tem muito mais torque e é mais fácil para comandar os movimentos.

    • Everton - 16 de maio de 2016

      Como Roney L disse, é dificil alguem querer fazer braco robotico com motor tradicional. Ja o servo motor é um motor com caixa de reducao e tambem um controlador de posicao.
      Se voce quiser fazer um braco robotico com motor tradicional DC, tera que ter tambem um caixa de reducao para motores e tambem um encoder para saber a posicao onde esta o braco… e tudo isto já tem dentro do servo motor. Boa sorte se quiser sevir utilizando motores simples em vez de servor motor.
      Já ia esquecendo, como este modulo, já para controlar tambem motor de passo :)
      Porem apenas um motor de passo por modulo :(

  54. luiz - 7 de março de 2016

    Boa noite, consigo controlar dois motores de vidro elétrico com essa placa?

  55. Roberto Alves - 2 de março de 2016

    Olá Boa Noite
    Esse drive alimenta um motor de passo, neste caso a corrente será de 4A?, como faço essa ligação ? (basta jampear as saidas),

    Roberto Alves

  56. Lincon - 14 de fevereiro de 2016

    Acho que tem uma informação errada nesse post. Diz que para controlar por PWM tem que tirar o jumper ao lado dos pinos de comando dos motores mas não é verdade aqueles pinos são para ativar o motor A e motor B, eu controlo por PWM mesmo com aqueles pinos.

  57. lucas - 28 de janeiro de 2016

    Boa tarde, estou controlando dois motores de vidro elétrico de 12v com essa ponte h, eles funcionam direitinho, porém depois de um certo intervalo de tempo o dissipador da ponte h esquenta, vc saberia me dizer qual seria o problema?

  58. Danilo Queiroz Barbosa - 6 de janeiro de 2016

    Mano, show seu artigo. Comprei esta shield e aqui obtive todas as informações de forma simples e concisa. Utilizei seu sketch para testar o funcionamento e deu certo de primeira. Parabéns

  59. Eliel de Paula - 22 de novembro de 2015

    Olá, estou fazendo um projeto para controlar dois servos motor MG995 e um motor DC mitsumi M28nN-1 R-14 7414,
    onde os servos irão fazer um movimento independente, onde os dois servos iniciarão na posicção 90 Graus, e depois o servo1 movimentara um braço de uma posição de 90 Graus a 140 Graus com movimento lento, e manter parado por 25 segundos e depois mudar para posição 80 Graus e manter parado por 25 segundos, e o servo2 quando o servo1 for para a posição 140 Graus o servo2 manterá na posição de 90 Graus aguardar 5 segundos e ir para o posição 80 Graus com movimento lento, e quando o servo1 for para a posição 80 Graus o servo2 manterá na posição 80 Graus aguardará 5 segundos e ir pra posição 110 Graus e depois fazer novamente os movimentos e parar e o motor DC movimentará uma base no sentido horário por 25 segundos movimento lento, e depois movimentar no sentido ant-horário por 25 segundos e depois parar, podes me ajudar com esse código, pois estou fazendo um braço robótico e queria fazer esses movimentos, se quiser ver a mecânica para entender melhor os movimentos posso enviar fotos por email ou whatsapp, se for possível fazer o circuito para o acionamento dos motores e quais componentes irei precisar para esse circuito, preciso muito urgente, desde já agradeço sua atenção, obrigado.

  60. Leonardo - 20 de novembro de 2015

    Camarada na primeira ligacao para funcionar corretamente o fio vermelho que sai dos 5v do arduino tem que ir na entrada de 12v e o jumper de 12v deve ficar no lugar , ai sim ambos motores irao funcionar alternadamente ok !!

  61. Ricardo - 31 de outubro de 2015

    Muito bacana este projeto, parabéns!

    Poderia me ajudar a esclarecer uma dúvida:
    Para controlar 2 motores de 24V 250W é necessário utilizar uma ponte H.
    Estava vendo alguns projetos pelo youtube que utilizam a placa Sabertooth 2×25.
    O problema é que esta placa é muito cara.
    Você teria ideia de uma outra ponte h mais barata para controlar estes 2 motores ou, é possível utilizar uma ponte H para cada motor?

    Desde já agradeço.

  62. Carlos Carvalhal - 22 de outubro de 2015

    Ola,
    Estou fazendo um projeto para acionar 2 motores por pushbuttons (dois para cada motor,um para cada sentido). No entanto os motores ficam bem fracos em um dos sentidos. Como posso resolver ?

    • WESLEY PATURI - 10 de novembro de 2015

      CARLOS VOCÊ CONSEGUIU ACIONAR OS MOTORES COM PUSHBUTTONS ? É QUE ESTOU FAZENDO UM TRABALHO PARA ACIONAR COM PUSHBUTTON E NÃO ESTOU CONSEGUINDO FAZER A FUUNCIONAR… TEM COMO VOCÊ ME ENVIAR A PROGRAMAÇÃO?

  63. Matheus - 15 de outubro de 2015

    Estou com uma duvida no texto…

    “(6-35v) e (GND) – Aqui será conectado a fonte de alimentação externa quando o driver estiver controlando um motor que opere entre 6-35v. Por exemplo se estiver usando um motor DC 12v, basta conectar a fonte externa de 12v neste pino e (GND).”

    Se eu colocar um motor que tem essas especificações ..
    – Tensão Nominal: 12,00 V;
    – Tensão Operacional: 6V ~ 18V;
    Eu posso colocar uma fonte externa de 14,8V ?

  64. rosielly silva - 15 de outubro de 2015

    bom felipe, fiz um protótipo do carrinho com a placa arduino controlado pelo celular,funcional legal,mais depois de 2 dias os motores MA e MB parou de funcionar, por onde veio no kit que do protótipo,dai eu desmontei um carrinho de controle remoto onde tinha os mesmos motores, tendo um motor para as rodas da frente e outro motor para as rodas de traz,obviamente o motor das rodas de traz tem mas tração que as da frente,e no motor de traz tinha 2 capacitores de 104 e 103 e no da frente tinha apenas um de 104,o carrinho funcionou mais o motor com os dois capacitores quando aciono o comando vive travando uma hora pega e outra não,funcionando apenas o moto de baixa tração quase parando,deixei os capacitores pois com o tempo o motor pode queimar,já troquei 3 vezes o mesmo motor mais continua com o mesmo problema,sendo que os motores funcionam normalmente ligados direto..
    oque vc acha que pode ser e como posso solucionar este problema?

  65. Édipo - 7 de outubro de 2015

    boa noite testei esse programa porem o motor não para

  66. Felipe - 5 de setembro de 2015

    Olá
    Comprei essa placa com a FlipeFlop
    O tutorial parece muito confuso
    Estou usando um motor 4.5V conectado a ponte e a ponte esta sendo alimentada pelo arduino e SEM o jumper
    (arduino 5v +5v Ponte // Arduino GND GND ponte)
    O motor simplesmente nao funciona, eu copiei o codigo e joguei no arduino e refiz as ligaçoes umas 3 vezes e o motor nao liga

    Apenas foi possivel ligar o motor DEIXANDO o jumper CONECTADO, o que parece ser errado de acordo com o tutorial, logo parei de testar pois o mesmo diz que pode danificar a placa

    O que estou fazendo de errado? O tutorial está correto? obrigado

    • FILIPEFLOP - 8 de setembro de 2015

      Bom dia Felipe,

      O post foi feito de acordo com os testes, e os circuitos foram esses mesmos… Você já tentou trocar de motor para ver se o problema não é algum tipo de sobrecarga ? Como estão os jumpers em Ativa MA e Ativa MB ?

      Abraço.

      Adilson – Equipe FILIPEFLOP

    • Roberto Rissi - 8 de setembro de 2015

      Alimentar a ponte H pela entrada +12v,e pela saída de 5V da ponte H alimentar o arduino pela entrada de 5V ,
      não retirei o jumper e o código da felipeflop funcionou perfeitamente,para acionar 2 motores que roda para no mesmo sentido ,no caso do carrinho é preciso inverter o sinal,usar um porta inversora CI 74HCT04N ,alimentar o CI sòmente com 5V,não conectar o GND,digital 13 vai na entrada da porta e a saida da porta vai na IN4,digital12vai na entrada e a saida vai na IN2,digital 8 vai na INA e digital11 vai na INB,para que os 2 motores girem p/ frente é preciso modificar o codigo.

    • Elisa Alves - 23 de setembro de 2015

      Felipe, estou com o mesmo problema. Comprei o kit chassi 2wd + ponte H novo, logo está funcionando. Fiz a 1ª ligação (sem o jumper) alimentando direto pelo arduino, colei a programação no sketch e nada aconteceu. O que estou fazendo de errado, alguém pode me ajudar?

  67. João Sidnei Martins Dos Santos - 2 de setembro de 2015

    Ola pessoal alguém pode me ajuda estou fazendo um kit para abrir e fecha porta de van o problema esta na caixa de redução tenho um motor de 2800 RPM e para ter mais torque tenho que reduzi para 180 a 200 RPM existe uma caixa de redução pronta o terei que fazer e como faço
    moro RS

  68. willian - 28 de agosto de 2015

    Boa tarde,

    fui testar meu L298N com o código que vcs postaram, mas não funcionou. coloco multímetro e vejo a tensão que sai do Arduíno está variando, mas na saída do L298N nas duas saídas sempre fica em zero. alguém sabe me dizer se meu L298N queimou??

  69. Andrei Aibel - 20 de agosto de 2015

    Boa noite,
    Funciona com PIC 4520?

    Abraço!

  70. Daniel - 18 de agosto de 2015

    Estou com um projeto bem simples, mas estou tendo um problema que não consigo resolver, já estou quase achando que o problema é na ponte..
    Tenho que acionar 02 motores em um sentido por 2 segundos, paro por 2 segundos e inverto a direção por mais 2 segundos.
    Enfim, quando faço a ligação os motores não seguem essa lógica. Mas se eu desligo o motor A (mantendo a ligação lógica com o arduino para comando dos dois motores) o motor B obedece corretamente a lógica. Desligando o motor B, o motor A também obedece a lógica correta. Concluindo que a programação está correta.

    Resumindo, desligando apenas 1 motor da ponte, o outro motor funciona na lógica correta, mas ao ligar os 2 motores na ponte a lógica fica louca.
    Alguém tem alguma sugestão?? Seria a ponte com defeito ??

  71. Rafael - 25 de julho de 2015

    Olá, possuo um controlador de motores igual a esse e gostaria de saber se a função de freio realmente funciona, porque quando coloco high em ambos os pinos digitais ele para apenas após continuar rodando um tempo devido à inércia. Por este motivo tive que usar um encoder de quadratura para parar o motor. Gostaria de saber se o freio (high em ambos os pinos) realmente trava o motor.

    • FILIPEFLOP - 27 de julho de 2015

      Boa tarde Rafael,

      Encontrei um post falando sobre isso. Tente a seguinte sequencia: ENA em LOW, IN1 em LOW e IN2 em LOW, casa você esteja usando o motor A, ou ENB em LOW, IN3 em LOW e IN4 em LOW caso você esteja usando o motor B. Isso deve parar instantaneamente o motor.

      Abraço

      Adilson – Equipe FILIPEFLOP

  72. Blener - 4 de junho de 2015

    Posso ligar o mesmo motor nas duas saídas? Preciso de mais corrente para o mesmo.

  73. Whine - 20 de maio de 2015

    Oi, bem a primeira opção é para motores DC de capacidade 5 V, certo? E a segunda é para motores DC de capacidade 12 V, correto? Pois bem, meus motores são de capacidade 7,5 V, posso usar o 2º circuito, mas com uma bateria de 7,5 V? Pois bem, ligando o motor direto a bateria funciona, mas usando o 1º circuito um dos motores funciona rápido e o segundo quase nem funciona isso pq eu coloquei o JUMPER se eu não colocasse ele taria parado. Qual seria a solução de meu problema?

  74. Cristiano Nakamura - 8 de maio de 2015

    Boa noite,
    Sou iniciante em Arduino e recentemente adquiri vários produtos de vocês.
    Estou montando um projeto de TCC utilizando o sensor de chuva para abertura e fechamento de janela com monitoramento via internet.
    Preciso utilizar 2 chaves fim de curso para desligamento dos motores tanto na abertura quando no fechamento da janela. Vocês possuem algum exemplo que eu possa montar? Vou utilizar o Driver Motor Ponte H L298N no projeto também.
    Muito obrigado.
    Cristiano.

  75. juliana - 8 de maio de 2015

    Boa tarde, alguem sabe me dizer se consigo controlar 4 servo-motores com essa l298? É um trabalho de faculdade, Uns me dizem q posso controlar os quatro e outros dizem q é só dois mesmo. Help help

    • Marco - 20 de maio de 2015

      Olá Juliana, para controlar servo-motores vc não precisa dessa placa. Pode ligar eles direto no Arduino conectando cada servo numa saida PWM do seu arduino e mais a alimentação de 5V. É aconselhável vc fazer uma pequena fonte externa para os servos.
      Essa ponte H é para 2 motores DC ou um motor de passo.

  76. Fernando - 7 de maio de 2015

    Bom Dia,

    Gostaria se saber se é possível acionar os dois motores DC de 6V no mesmo sentido simultaneamente.

  77. Renata Rúbia - 4 de maio de 2015

    Boa noite.
    Recentemente vim aqui perguntar sobre o controle de velocidade dos motores. Devidamente respondido e já funcionando!
    Agora gostaria de saber outra coisa..
    Minha ponte está ligada fisicamente à 2 baterias unidas e o controle de ligar e desligar é feito por 2 jumpers, será que consigo utilizar de um botão push button para ligar e desligar a ponte H? Sou novata e ainda não sei se há algum jeito de interromper a passagem de energia para a ponte :x
    Obrigada desde já.

  78. Arthur Silva - 12 de abril de 2015

    Fui utilizar a mesma Ponte H na Raspberry Pi juntamente com o Pi4J e somente consegui controlar os motores após alimentar a entrada de 6-35v com os 5v da Raspberry Pi e conctar a entrada de 5v na de 6-35v. Somente assim foi possível utilizar os motores e controlá-los.

    Caso alimentasse somentena entrada de 5v os motores não apresentavam resposta. Acredito que a adição dessa informação no artigo pode ajudar mais pessoas.

    Att,
    Arthur Silva

  79. Cleito de Castro - 31 de março de 2015

    Boa tarde, adorei o tutorial, tenho um modulo desse que serviu para meu projeto de conclusão de curso, e posso garantir que é um ótimo produto. Porém estou a um bom tempo procurando na neto essa biblioteca que vocês usaram no fritzing e não estou encontrando, será que podem me enviar por email? Ficarei muito feliz se puderem me ajudar.

  80. Renata Rúbia - 24 de março de 2015

    Ótima matéria, me esclareceu basante a cerca desse modelo, normalmente os encontrados são diferentes deste.
    Mas ainda tenho uma dúvida, eu consigo controlar a velocidade do giro do motor?
    Espero resposta. Abraços.

  81. Paulo - 24 de março de 2015

    Olá. No datasheet do L298 a tensão de trabalho pode ir a 46V mas na ponte a tensão vai até 35 V. Meu projeto tipo segway usa motores de 36 V com três baterias em série. Posso usar essa ponte considerando ainda que a tensão real da bateria é superior à 13 Volts o que em série chega perto dos 40 volts?

  82. Giovani - 20 de março de 2015

    Amigo, estou procurando o part para a ponte H L298N para o fritzing e não consigo encontrar nenhum que funcione. Você poderia falar aonde encontrou o que usou para fazer esses esquemáticos?

  83. Ricardo - 15 de março de 2015

    Bom dia

    Estou a montar algo parecido e preciso de fazer esquemas como esses aí desenhados, qual foi o programa que utilizaram?

    Obrigado
    Ricardo

  84. Leandro Kefas Silva - 12 de março de 2015

    Bom dia estou utilizando a placa para controlar 2 motoredutores de 6 V, mas estou tendo bastante dificuldade para controlar a velocidade em baixa rotação, acredito que devido a restrição mecânica gerada pelo redutor.
    Vcs já encontraram esse problema?
    Tem alguma sugestão??

    Parabéns pelo site.

    Grato

  85. DANILO MINGOTTE - 10 de março de 2015

    Qual a diferença da ponte L298N para a L298P ? Uq isso afeta em meu projeto ?
    Desde já, Obrigado

  86. jamir - 1 de março de 2015

    Boa noite gostaria de saber se vocês não tem um programa deste acionamento mais com o pic 16F628A, obrigado

  87. Lincoln garanhani - 5 de fevereiro de 2015

    Seria possível me passar um esquema deste com uma chave fim de curso com haste,,
    por favor…

  88. Roney - 26 de janeiro de 2015

    como eu faço para controlar a velocidade?

  89. Vitor Siqueira - 18 de janeiro de 2015

    Olá! Estou tentando controlar 4 motores DC (dois estão ligados no MOTOR-A juntamente e os outros dois no MOTOR-B da mesma forma.) para fazer um robô andar. Utilizei o código de vocês e adaptei para quando receber um dado, os motores se acionam.

    if (dado == 49){
    //FRENTE;
    delay(100);
    digitalWrite(IN1, LOW);
    digitalWrite(IN2, HIGH);
    digitalWrite(IN3, LOW);
    digitalWrite(IN4, HIGH);
    }

    if (dado == 50){
    //TRÁS
    delay(100);
    digitalWrite(IN1, HIGH);
    digitalWrite(IN2, LOW);
    digitalWrite(IN3, HIGH);
    digitalWrite(IN4, LOW);
    }…
    Porém, quando envio o dado 49, apenas o MOTOR-B é acionado (os dois em conjunto) e quando envio 50, apenas o MOTOR-A. Utilizei o primeiro esquema de vocês. Isto acontece porque o circuito precisa de mais tensão? Se eu conectar uma fonte externa, além dos 5v do arduino, ele irá funcionar?

  90. Daiton - 2 de janeiro de 2015

    Boa tarde pessoal,
    comprei o drive de ponte h. Fiz o ligamento do driver conforme o primeiro exemplo(usando como fonte de energia a saida da placa de arduino). Porém o meu nao funciona, ja verifiquei o exemplo e fonte e nao consegui ter sucesso.
    ja fiz os seguintes teste(sempre usando a fonte de energia a placa de arduino ):
    – com jumper ˜enable 5v˜: fiz a medicao com multimetro nos output A e B e constatei que com o jumper enable 5v nao é passada corrente para as saida output.
    – sem o jumper ˜enable 5v˜: fiz a medicao com multimetro nos output A e B e constaei que passa corrente de 3.7V +-.
    obs: na especificacao do motor dc que utilizo fala q ele é de 3 – 6 V.

    alguem pode me ajudar com uma direcao a seguir?

    • Anonimous - 26 de maio de 2015

      Oi Daiton, estou com o mesmo problema, você conseguiu solucionar? Comprei a ponte H e um motor de 3 a 6V com caixa redutora, ambos do filipeflop, fazendo essas conexões, com essa código, e não funciona :/

  91. Lincoln - 28 de dezembro de 2014

    Montei um sistema desse com um motor 12V,só tá faltando para-lo sempre no mesmo ponto , com uma chave fim de curso talvez ,mas não sei como montar esta chave no arduino ,teria como me ajudar?

  92. Marcelo - 25 de dezembro de 2014

    Aqui na ninha ponte h o primeiro exemplo só funcionou com o jumper no ativa 5v. Eu usei o proprio arduino como fonte de alimentação. E não usei o vcc pois tava usando o 5v do arduino. Queria saber se alguem tem algun exemplo de como usar um modulo bt com essa ponte para controlar motores dc.

  93. Juan Gonzalez - 13 de dezembro de 2014

    Obrigado, me ajudou bastante.

    Juan González
    Guadalajara (España)

  94. Felipe Adriano Custodio - 25 de novembro de 2014

    Com esta ponte H eu consigo controlar a velocidade de 2 motores sem utilizar o enable?
    Estou tentando copiar o Linusbot ( http://arduinobymyself.blogspot.com.br/2013/01/linusbot-robot-seguidor-de-linhas.html ) mas não entendo como ele está controlando a velocidade dos motores em utilizar o enable,mandando apenas um PWM direto nos pinos IN1, IN2, IN3 e IN4.

  95. JHON - 17 de novembro de 2014

    COMO FAÇO PRA USAR 2 MOTORES DC E UM MOTOR SERVO ?

  96. Marcelo - 17 de novembro de 2014

    Olá, vc tem o DRIVER PONTE H L298N para o fritzing? obrigado.

  97. Rafael - 5 de novembro de 2014

    Gostaria de saber se posso utilizar 2 motores 12v de vidro elétrico de carro nessa ponte?

  98. rafael - 29 de outubro de 2014

    então para fazer controle via pwm e so eu colocar a ligação do meu pwm no pino ativa MA isso assim consigo controlar a velocidade?

  99. Elton - 20 de outubro de 2014

    Olá amigos seria possível controlar a velocidade dos dois motores usando apenas um pino PWM.

  100. Yuri Almeida - 17 de outubro de 2014

    Olá, eu tenho uma pergunta…
    Eu poderia utilizar 4 motores em apenas um módulo desses ? (No caso dois em paralelo)
    Ou eu poderia usar dois módulos desse para controlar 4 motores?

    Abraço

  101. Calebe Rafael - 16 de outubro de 2014

    Olá, estou em dúvida numa questão sobre o motor shield. Acontece que a entrada de 6-35v queimou, sendo que o motor é de 6v e a bateria de 12v (usávamos o regulador de tensão) só que acabou queimando por outros motivos. Eu poderia ligar minha bateria de 12v na entrada de 5v? Ou se pode trocar a porta queimada no ponte H?

  102. Thiago Vieira - 19 de setembro de 2014

    Parabéns pela explicação minuciosa e esforço em passar seus conhecimentos para os estudantes da área mecatrônica e demais áreas. Muito legal!

  103. Fernando Silva - 14 de setembro de 2014

    Como faço a ligação paralela para ligar um motor de 4 A?

  104. Iuri - 13 de setembro de 2014

    Obrigado, me ajudou bastante.

  105. Felipe - 9 de setembro de 2014

    Ola amigo, você poderia arrumar a imagem do “MOTOR DC COM DRIVER PONTE H L298N”, para poder fazer um projeto no fritzing.
    Obrigado

  106. Reinaldo - 6 de setembro de 2014

    Boa tarde filipeflop, meu caso é o segundo, dois motores dc 12v com fonte externa, devo alimentar o arduino pelo plug de 2,1 mm com 12 v ?
    Obrigado

  107. Douglas Roberto Nervo da Cruz - 27 de agosto de 2014

    Eu preciso usar 2 atuadores lineares que operam com tensão 24V.
    É possível ligar esse 2 atuadores no mesmo L298N ?
    Se sim, o L298N precisa ter uma fonte externa de 24V? É que no L298N que comprei, na parte de baixo da placa, que corresponde ao conector 6-35V está escrito 12V.
    Obrigado.

  108. Lucas Carneiro - 25 de agosto de 2014

    O que eu posso fazer para aumentar a velocidade dos motores? Os pinos PWM já estão definidos como “255”

  109. Lucas Carneiro - 18 de agosto de 2014

    Como controlar essa ponte H com um controle de ps2? Já tenho o código do controle, como faço pra interligar os códigos?

  110. Lucas - 17 de agosto de 2014

    Cara, parabéns pelo post. Gostaria de saber se é possível controlar um motor de passo de 1,4A com esse driver ligando-o a um arduino. Obrigado :D

  111. Victor Santos - 13 de agosto de 2014

    Grande Filipe,
    Excelente explicação!

    Só uma observação: Como estás usando o pino 9 como saída de PWM ele deveria estar setado como saída no setup, certo? pinMode(speedMx, OUTPUT);

    Abraço!

  112. Flavio - 10 de agosto de 2014

    Qual o código para controlar dois motores e um sensor ultrassonico usando o Driver Ponte -H L 298 ???

    • FILIPEFLOP - 11 de agosto de 2014

      Boa tarde Flavio,

      Você pode verificar os nossos posts tanto do Sensor Ultrasonico HC-SR04 como esse da Ponte H, juntando os dois códigos.

      Nesse código da ponte H, copie a parte que se refere aos pinos IN1 e IN2 e renomeie para IN3 e IN4, assim você consegue controlar o segundo motor.

      Abraço

      Adilson – Equipe FILIPEFLOP

  113. Renan - 10 de junho de 2014

    Fantástico, esclareceu todas as minhas dúvidas. Vlw filipeflop

  114. Otávio Augusto Barro - 5 de junho de 2014

    Bom dia Filipe, gostaria de saber se é possivel fazer com que o motor gire em gire no sentido horario e depois gire no sentido anti-horario, sem trocar as conexoes dos fios. Obrigado.

  115. Bruno D Anna - 2 de junho de 2014

    Olá Felipe,

    Gostei de todas as informações postadas aqui, foram de muita utilidade, agora quando for utilizar um motor de passo nesta placa como fica os jumpers? eles ficam fechados ou devo coloca-los na porta pwm do arduino? teria algum site que demonstre esta ligação?

    Fiz um teste ligando os quatros fios no IN1, IN2 IN3, IN4 e mais duas ligações na porta PWM cada uma em um jumper mas não conseguir acertar a programação para o motor partir, ele apenas vibra, saberia me dizer onde estou errando?

    Obrigado

  116. Arthur - 17 de maio de 2014

    Esqueci de perguntar: sabe me dizer se queimei/danifiquei a placa fazendo o que fiz?

    E correção:
    Para se controlar um motor que trabalha com 4,4V, eu alimento com +5V por exemplo em qual entrada? A de 5V? Com o jumper ou sem o jumper 5v? Não entendi o que este jumper faz… Ligo GND no GND, motor na OUT1 e OUT2 e saídas digitais do arduino na IN1 e IN2 – correto?

    Obrigado.

  117. Arthur - 17 de maio de 2014

    Olá.
    Possuo exatamente esta placa porém no “verso” dela mostra que as opções de alimentação são +12V GND +5V.
    Na imagem deste post a entrada que diz permitir 6-35V na minha placa está escrito apenas +12V no verso. Sabe me dizer por que?
    Outra coisa: liguei a placa com 3,3V na entrada de +5V e terra no GND. Deixei os jumpers do 5V, do ENA e do ENB conectados como estavam. Como não sabia como funcionava, apliquei PWM (arduino 0-5V/0-255) na entrada IN4 afim de controlar o buzzer 0-5V. O resultado foi que variando o PWM, o som do buzzer variava também mas não como o esperado – aumentava depois diminuía com uma variação crescente do PWM.
    Enfim, para se controlar um motor que trabalha com ~5V, eu alimento com +5V a entrada de 6-35V, GND no GND, motor na OUT1 e OUT2 e saídas digitais do arduino na IN1 e IN2. E quanto ao PWN? Quando eu retirar o jumper, em qual dos dois pinos eu conecto o PWM?
    Muito obrigado por responder – vai me ajudar de mais!
    Abraço.

  118. Ronaldo - 12 de maio de 2014

    Gostaria de saber Pq essa ponte h l298n vem com jumpers no ENA e ENB?

    • filipeflop - 14 de maio de 2014

      Olá Ronaldo,
      O jumper no ENA e ENB são respectivamente o Ativa MA e Ativa MB, por padrão eles estão conectados para setar a velocidade máxima no motor. Se desejar controlar esta velocidade, tire os jumper e conecte ao PWM do Arduino.
      Obrigado pela pergunta!

  119. Demétrius Fernandes - 25 de abril de 2014

    Olá, boa noite!

    Você poderia postar um esquema de ligações que mostre as ligações dos motores e a alimentação do arduino.

    Não ficou claro pra mim.

    Alimento o arduino com o pino +5power? O.o

Deixe uma resposta