Generic selectors
Exact matches only
Search in title
Search in content
Post Type Selectors

PONTE H BTS7960 COM ARDUINO

Ponte h bts7960

Neste artigo iremos demonstrar como controlar um motor DC utilizando uma ponte H BTS7960 através de um Arduino.

O módulo Ponte H é baseado no driver BTS7960, que é metade de uma ponte H, dessa forma utilizam-se 2 drivers BTS7960 para construir uma ponte H com capacidade de até 43A. É um módulo útil para o controle robótico e mecânico, tendo excelente custo benefício para estudantes, amantes e profissionais da área de atuação.

Componentes Utilizados

 Todos os componentes utilizados neste projeto estão listados abaixo, clicando no item você consegue acessar o componente na loja, caso queira adquirir o componente para realizado o projeto:

Características Técnicas

  • Controla 1 motor DC;
  •  Controle de direção e velocidade (PWM);
  •  Tensão de alimentação: 5- 45VDC;
  •  Tensão de entrada do controle: 3,3 – 5V;
  •  Corrente de Alimentação (módulo): 3 mA;
  •  Modo de controle: Serial ou level;
  •  Ciclo de trabalho: 0-100%;
  •  Modulação PWM de até: 25kHz;
  •  Corrente Continua: 43A;
  •  Corrente de pico/pulso: 60A;
  •  Proteção: Térmica, sobre tensão, subtensão, sobrecorrente;
  •  Possui pino (IS) para indicar falhas (proteção);
  •  Possui dissipador de calor;
  •  Dimensão: 50 x 50 x 43 mm;
  •  Peso: 66g.

Para o controle do motor existem várias maneiras, mas neste post iremos ilustrar a principal para uso em todas as aplicações. A Figura 1 ilustra os pinos de alimentação, entrada de nível alto, baixo e PWM:

Pinos de controle do BTS7960.
Pinos de controle do BTS7960.

As ligações entre a ponte H e o Arduino são ilustradas na Figura 2:

Diagrama de conexão.
Diagrama de conexão.

A programação para controle lógico do Arduino é demonstrada abaixo. A programação tem como função: 

1ª parte: Controlar a velocidade do motor para o lado 1 (PWM);

2ª parte: Controlar a velocidade do motor para o lado 2 (PWM);

3ª parte: Acionar o motor com velocidade máxima para o lado 1;

4ª parte: Acionar o motor com velocidade máxima para o lado 2.

Código:

Segue abaixo o código utilizado:

#define PWM2                      2    //Pino do arduino que será ligado o BTS7960
#define PWM3                      3    //Pino do arduino que será ligado o BTS7960
#define TEMPO_DA_VELOCIDADE     150  //tempo (ms) que o motor ficará na mesma velocidade 
  
void setup()
{ 
    //Configura os pinos de saída
    pinMode(PWM2, OUTPUT);
    pinMode(PWM3, OUTPUT);
}
  
void loop()
{   
    int valor_pwm = 0;   //armazena o PWM

     digitalWrite(PWM3, LOW);
 
    //Aumenta a velocidade para o lado 1
    for (valor_pwm = 0; valor_pwm < 256; valor_pwm++)
    {
        analogWrite(PWM2, valor_pwm);
        delay(TEMPO_DA_VELOCIDADE);
    }
 
    //Diminui a velocidade para o lado 1
    for (valor_pwm = 255; valor_pwm >= 0; valor_pwm--)
    {
        analogWrite(PWM2, valor_pwm);
        delay(TEMPO_DA_VELOCIDADE);
    }

/////////////////////////////////////////////////////////////////////////////

    digitalWrite(PWM2, LOW);

     //Aumenta a velocidade para o lado 2
    for (valor_pwm = 0; valor_pwm < 256; valor_pwm++)
    {
        analogWrite(PWM3, valor_pwm);
        delay(TEMPO_DA_VELOCIDADE);
    }
 
    //Diminui a velocidade para o lado 2
    for (valor_pwm = 255; valor_pwm >= 0; valor_pwm--)
    {
        analogWrite(PWM3, valor_pwm);
        delay(TEMPO_DA_VELOCIDADE);
    }

    /////////////////////////////////////////////////////////////////////////////

    //liga o motor para o lado 1 com velocidade maxima

    digitalWrite(PWM2, LOW);
    digitalWrite(PWM3, HIGH);
    delay(10000);

    digitalWrite(PWM2, LOW);
    digitalWrite(PWM3, LOW);
    delay(2000);

    //liga o motor para o lado 2 com velocidade maxima

    digitalWrite(PWM2, HIGH);
    digitalWrite(PWM3, LOW);
    delay(10000);

    digitalWrite(PWM2, LOW);
    digitalWrite(PWM3, LOW);
    delay(2000);
}

Download

Seguindo estes passos é possível controlar a rotação de qualquer motor DC. Nos links abaixo está disponibilizado o download do arquivo fonte e diagrama:

https://bit.ly/3kSmrFM

Para mais detalhes, assista o vídeo abaixo:

Picture of Pedro

Pedro

Bacharel em Engenharia Elétrica, com ênfase em Telecomunicações e hobbysta em eletrônica nas horas vagas =).

VOCÊ TAMBÉM PODE GOSTAR

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *