Driver TB6600: Controlando um motor de passo - MakerHero
Controle de motor de passo com driver TB6600

Controle de motor de passo com driver TB6600 Deixe um comentário

O driver TB6600 é muito utilizado em projetos de automação, CNC e impressoras 3D por sua robustez, facilidade de configuração e capacidade de controlar motores de passo com correntes mais altas.

Controle de motor de passo com driver TB6600

Neste post, você vai entender como o driver TB6600 funciona, suas principais características e como utilizá-lo com Arduino para controlar motores Nema com precisão e segurança.

O que é o driver TB6600?

O TB6600 é um driver de motor de passo utilizado em projetos de automação, CNCs, impressoras 3D de grande porte e outros sistemas que exigem controle preciso de motores com correntes mais altas.

Esse driver foi desenvolvido para acionar motores de passo bipolares, oferecendo alta eficiência e facilidade de controle. Sua função principal é receber sinais de um microcontrolador, como o Arduino, e converter esses sinais em pulsos de corrente para movimentar o motor de forma controlada.

Entre suas principais vantagens, estão:

  • Compatibilidade com motores de maior torque: ao suportar correntes mais altas (até cerca de 4A com refrigeração adequada), o TB6600 permite o uso de motores maiores, como Nema 23 ou Nema 34, que drivers menores como o A4988 ou DRV8825 não conseguem acionar.
  • Facilidade de configuração: possui dip-switches para ajustar a corrente de saída e a configuração de microstepping, permitindo adaptar o desempenho conforme o motor utilizado.

Dip-switches

  • Simplicidade de controle: utiliza entradas padrão Step e Dir, que podem ser facilmente geradas por placas Arduino, ESP32 ou controladores CNC.

Além disso, o TB6600 possui proteções contra sobrecorrente, sobretensão e sobretemperatura, aumentando a segurança no uso em projetos robustos.

Principais características do driver TB6600

O driver TB6600 possui diversas características que o tornam uma excelente escolha para projetos que exigem motores de passo mais potentes. Confira as principais:

  1. Corrente ajustável: o TB6600 permite ajustar a corrente máxima fornecida ao motor através de dip-switches na lateral do driver. Essa configuração é essencial para:
  • Proteger o motor contra sobrecorrente, evitando superaquecimento ou danos aos enrolamentos.
  • Garantir torque suficiente para o funcionamento do projeto sem forçar o driver além do especificado.

O ajuste de corrente varia de 0.5A até cerca de 3.5~4A RMS, dependendo do modelo e da refrigeração utilizada.

  1. Configuração de microstepping: outra característica importante do TB6600 é a possibilidade de configurar diferentes resoluções de microstepping, como:
  • Full step (1:1)
  • Half step (1/2)
  • Quarter step (1/4)
  • Eighth step (1/8)
  • Sixteenth step (1/16)

Essa configuração permite que o motor de passo tenha movimentos mais suaves e precisos, essenciais para aplicações como CNCs, impressoras 3D e rotacionamento de câmeras ou sensores com precisão.

  1. Faixa de tensão ampla: o TB6600 pode ser alimentado com tensões típicas entre 9V e 42V DC. Utilizar tensões maiores dentro do limite do driver permite maior velocidade e torque do motor, devido à resposta elétrica mais rápida dos enrolamentos.
  2. Proteções integradas: para maior segurança e durabilidade, o driver possui proteções contra:
  • Sobrecorrente (Overcurrent)
  • Sobretensão (Overvoltage)
  • Sobreaquecimento (Overtemperature)

Essas proteções garantem que, em caso de falha de configuração ou sobrecarga, o driver desligue temporariamente ou reduza sua operação para evitar danos permanentes.

  1. Controle simples via Step e Dir: o TB6600 utiliza entradas lógicas padrão Step (pulso de passo) e Dir (direção), compatíveis com microcontroladores como Arduino, ESP32 e controladoras de CNC. Isso facilita a implementação em projetos de automação sem a necessidade de circuitos complexos de controle.

Como o driverTB6600 funciona?

O TB6600 funciona como um driver de corrente controlada (chopper driver) para motores de passo bipolares. Seu objetivo é receber sinais digitais de controle (Step e Dir) e converter esses sinais em pulsos de corrente alternada nos enrolamentos do motor, fazendo com que ele gire com precisão.

Funcionamento interno resumido:

  • Sinal de direção (Dir): define para qual lado o motor irá girar. Se o pino de direção estiver em nível alto, por exemplo, o motor gira em sentido horário; se estiver em nível baixo, gira no sentido anti-horário.
  • Sinal de passo (Step): cada pulso enviado nesse pino faz o motor avançar um passo ou microstep, conforme configurado nos dip-switches. A frequência dos pulsos define a velocidade de rotação do motor.
  • Controle de corrente (chopper driver): o TB6600 controla a corrente fornecida aos enrolamentos do motor por meio de um método chamado chopper, que liga e desliga rapidamente a tensão aplicada para manter a corrente dentro do valor configurado. Isso evita superaquecimento e garante torque constante em diferentes velocidades.

Entradas e saídas do TB6600:

Entradas e saídas do TB6600

  • Entradas lógicas: Step, Dir, Enable (opcional).
  • Saídas para motor: A+, A-, B+, B- (conectadas às duas bobinas do motor).
  • Alimentação do motor: Terminais V+ e GND, que fornecem a tensão de operação do motor (ex: 12V, 24V ou até 36-42V dependendo do modelo).
  • Dip-switches: Para ajuste de corrente máxima e configuração de microstepping.

Quando conectado ao Arduino ou outro controlador:

  • O Arduino gera pulsos no pino Step e define a direção no pino Dir.
  • O TB6600 interpreta esses sinais, comuta a corrente nas bobinas do motor de acordo com a direção, e aplica a corrente correta conforme a configuração dos dip-switches.
  • O motor gira com suavidade e torque estável, sendo capaz de mover cargas maiores do que drivers mais simples.

Materiais necessários

Para realizar o exemplo prático de controle de um motor de passo com o driver TB6600 e Arduino, você vai precisar dos seguintes componentes:

Ligação do driver TB6600 com Arduino e motor de passo

Agora que você já conhece o funcionamento do TB6600 e separou todos os materiais, vamos ver como fazer a ligação correta do driver ao Arduino e ao motor de passo.

Conexões do motor de passo ao TB6600

O motor de passo bipolar possui quatro fios, sendo dois pares de bobinas. A ligação nos terminais do TB6600 deve ser feita da seguinte forma:

  • A+ e A-: conectados a um dos pares de fios do motor.
  • B+ e B-: conectados ao outro par de fios do motor.

Dica: utilize um multímetro para identificar os pares de bobinas (os fios de cada bobina terão continuidade entre si).

  • V+ e GND: conecte a fonte de alimentação do motor de passo (ex: 12V ou 24V DC).

Importante: verifique a tensão máxima suportada pelo motor e pelo TB6600 antes de ligar.

Conexões de controle com Arduino

O TB6600 possui três entradas principais para controle:

Pino no TB6600 Função Conexão Arduino
PUL+ (Step +) Pulso de passo Pino digital (ex: D3)
PUL- (Step -) GND do pulso GND do Arduino
DIR+ (Dir +) Direção Pino digital (ex: D2)
DIR- (Dir -) GND da direção GND do Arduino
ENA+ (Enable +) (opcional) Habilita driver Opcional: pino digital ou VCC
ENA- (Enable -) (opcional) GND Opcional: GND do Arduino

Abaixo você pode conferir todas as conexões feitas entre o driver TB6600, Arduino e motor de passo Nema:

Driver TB6600 e Arduino

Configuração dos dip-switches no TB6600

Antes de ligar o sistema, é essencial configurar corretamente:

Microstepping: configure o microstepping conforme a resolução desejada.

S1 S2 S3 Microstepping
ON ON ON NC
ON ON OFF Full step
ON OFF ON 1/2 step
OFF ON ON 1/2 step
ON OFF OFF 1/4 step
OFF ON OFF 1/8 step
OFF OFF ON 1/16 step
OFF OFF OFF 1/32 step

Dica: quanto maior o microstepping, mais suave será o movimento, mas o torque útil tende a diminuir levemente.

Corrente de saída: Verifique a corrente nominal do seu motor de passo (ex: 1.7A).

Corrente (A) Corrente de Pico (A) S4 S5 S6
0.5 0.7 ON ON ON
1.0 1.2 ON OFF ON
1.5 1.7 ON ON OFF
2.0 2.2 ON OFF OFF
2.5 2.7 OFF ON ON
2.8 2.9 OFF OFF ON
3.0 3.2 OFF ON OFF
3.5 4.0 OFF OFF OFF

Importante: Configure o dip-switch do TB6600 para um valor próximo ou ligeiramente menor, caso deseje reduzir aquecimento.

Código driver TB6600 com Arduino

Abaixo está o código para controlar um motor de passo usando o driver TB6600 conectado ao Arduino nos pinos D2 (DIR) e D3 (STEP).

  • Definição dos pinos: O pino dirPin controla o sentido de rotação do motor, enquanto o stepPin envia os pulsos que fazem o motor girar.
  • No setup():Os pinos são configurados como saída e o sentido inicial é definido.
  • No loop(): O motor gira em um sentido por 1000 passos (o valor pode ser ajustado conforme necessário). Cada passo é gerado por um pulso digital no stepPin. Em seguida, há uma pausa de 1 segundo, e o motor gira no sentido contrário pela mesma quantidade de passos.
  • Velocidade: A velocidade do motor é controlada pelo intervalo entre os pulsos (delayMicroseconds(500)). Reduzir esse valor acelera o motor; aumentar diminui a velocidade.

Dicas e cuidados no uso do TB6600

  • Verifique a corrente do motor: sempre ajuste os dip-switches do TB6600 para a corrente nominal do motor ou um pouco abaixo, para evitar aquecimento excessivo e prolongar a vida útil do motor e do driver.
  • Utilize fonte de alimentação adequada: certifique-se de que a fonte utilizada suporta a tensão e corrente necessárias para o motor de passo. Fontes subdimensionadas podem causar falhas no funcionamento.
  • Não troque os fios do motor com o sistema energizado: desligue a alimentação antes de conectar ou desconectar o motor de passo do driver para evitar danos ao TB6600.
  • Evite cabos longos sem blindagem: em altas correntes e velocidades, fios longos podem gerar interferência no sinal de controle. Utilize cabos mais curtos ou blindados quando necessário.
  • Atenção à ventilação do driver: em aplicações contínuas ou motores de alta corrente, deixe o TB6600 em ambiente ventilado ou utilize dissipadores adicionais para evitar desligamentos por sobretemperatura.
  • Confirme as conexões antes de ligar: revise todas as ligações do circuito, incluindo polaridade da alimentação, para evitar danos permanentes ao driver.

Conclusão

O driver TB6600 é uma excelente opção para projetos que exigem controle preciso de motores de passo com correntes mais altas, como máquinas CNC, impressoras 3D de grande porte e sistemas de automação.

Agora que você domina o funcionamento do TB6600, experimente integrar este driver aos seus projetos e explore novas possibilidades de automação e controle de movimento.

Ficou com alguma dúvida ou tem sugestões? Deixe seu comentário aqui embaixo, vamos adorar ajudar e conhecer sua opinião! Se quiser, compartilhe também sua experiência usando o TB6600 em projetos. Não se esqueça de nos seguir no Instagram para conferir mais conteúdos como este e se inspirar em novas ideias de automação e eletrônica.

Faça seu comentário

Acesse sua conta e participe