DRV8825: Como Utilizar Com Arduino e Motor de Passo

Olá pessoal! Existem vários tipos de driver para controlar um motor de passo. Mas se você precisa de resoluções diferentes de passo para seu projeto, ou seja, definir uma precisão excelente de movimento, existe um driver com essa configuração: DRV8825!

Características Driver DRV8825

Driver DRV8825 Com Dissipador
Figura 1 – Driver DRV8825

 

Este pequeno circuito integrado consegue realizar a divisão dos micropassos do motor para que alcance movimentos muito pequenos e precisos. É ideal para projetos em impressoras, CNCs e equipamentos para automação.

É ideal para projetos onde a corrente para cada fase do motor não exceda 2,2A. Para valores de até 1,5A, não é necessário uso do dissipador. Porém, caso necessário, o módulo DRV8825 já vem com dissipador incluso.

Hoje vamos mostrar como utilizar este driver para controlar o Motor de Passo Nema 23 – 4,6 kgf.cm / 1A, com Arduino Mega.

 

Materiais Necessários

 

Configurando o Motor de Passo como Bipolar

Para utilização deste driver, o motor deve ser bipolar (4 fios). O modelo utilizado pode ser configurado tanto como unipolar quanto bipolar (vide datasheet aqui).

Para configurar como bipolar, deve-se isolar os fios preto e branco com termo retrátil separadamente. Para isto, corte um pedaço pequeno do tubo, coloque sobre a ponta do fio e aqueça com soprador térmico ou com ferro de solda. Estes fios não serão utilizados neste projeto.

 

Motor De Passo Sendo Isolado
Figura 2 – Isolando Fios do Motor

 

Fechando Fio com Termo Retrátil
Figura 3 – Fechando Fio com Termo Retrátil

Para facilitar as ligações no protoboard, utilizamos uma barra de pinos macho soldados aos fios de fase do motor (vermelho, verde, azul, amarelo). Siga os seguintes procedimentos:

Corte 4 pinos macho da barra de 40 pinos. Passe estanho sobre as partes menores com ferro de solda.

Cortando Pinos
Figura 4 – Cortando Pinos

 

Colocando Estanho nos Pinos
Figura 5 – Colocando Estanho nos Pinos

Corte pedaços pequenos de tubo termo retrátil e coloque dentro dos fios. Passe estanho sobre a ponta dos fios e solde-os na parte menor da barra de pinos, onde passou estanho anteriormente.

Fios do Motor com Termo Retratil Prontos para Soldagem
Figura 6 – Fios do Motor com Termo Retratil Prontos para Soldagem

 

Quando estiver soldado, puxe o pedaço do tubo até cobrir a solda e esquente a região com soprador ou ferro de solda. Faça isto nos 4 fios.

Fios Soldados DRV8825
Figura 7 – Conectores Prontos

 

 

Circuito Fritizing

O circuito para este post está na figura abaixo:

Circuito Driver DRV8825
Figura 8 – Circuito Driver DRV8825

Segue tabela para melhor compreensão das conexões entre Driver e Arduino:

 

DRV8825Arduino
DIRpino 8
STEPpino 9
SLP5V
RES5V
MS3pino 12
MS2pino 11
MS1pino 10
ENA(não liga)
VMTVin (tensão da fonte)
GNDGND
2B(fase motor)
2A(fase motor)
1A(fase motor)
1B(fase motor)
VDD5V
GNDGND

 

Utilize o próprio pino (+) da saída da fonte para alimentar o Arduino. Coloque o (-) da fonte junto com o GND do Arduino, para não ter problemas com diferencial de tensão. A tensão VMT deve ser de 8.2V até 45V.

Cole o dissipador sobre o chip do Driver, retirando a dupla face na parte de baixo. Não é necessário nenhum tipo de cola adicional.

Programação

Utilizamos a biblioteca STEPPER DRIVER para realizar o controle do driver através do Arduino. Realize o download desta biblioteca aqui e insira o arquivo .ZIP em sua IDE: Menu Sketch => Incluir Biblioteca => Adicionar Biblioteca .ZIP.

O sketch para este projeto encontra-se abaixo:

 

 

Montagem e Testes

A montagem final pode ser vista na próxima imagem:

Carregue o sketch no Arduino Mega. Após isto, ligue uma fonte de 9V no conector P4. Este projeto pode ser alimentado somente pela fonte, não é necessário estar com o computador conectado.

Ao apertar os botões, o motor deve girar sentido horário e anti horário, dando uma volta completa (360º). Caso queira que a volta seja menor, diminua no sketch quantos graus você quer que gire.

Caso queira que o passo seja menor, altere o valor da seguinte linha:

stepper.setMicrostep(1)

Coloque valores dentro dos colchetes que sejam 1, 2, 4, 8, 16 ou 32 para maior precisão.

Dicas:

  • Sempre use uma fonte de alimentação externa de no mínimo 9V/1A. Fontes com valores menores não conseguem movimentar o motor.
  • Mesmo que seu projeto seja com motores de menor corrente, sempre faça uso de dissipador no driver, pois há aquecimento e poderá danificar o protoboard e/ou circuito.
  • Você pode utilizar a fonte conectada direto ao Arduino Mega, ele suporta entradas entre 7V a 12V. Porém, há o aquecimento de capacitores de filtro da placa. Evite utilizando o adaptador P4 como descrito neste post.
  • O Arduino Mega pode suportar mais motores, devido ao número de pinos de entrada/saída. É muito utilizado para fazer projetos com CNC e impressoras 3D.

Projeto Pronto

Projeto pronto
Figura 9 – Projeto pronto

Assista ao Vídeo

 

Espero que tenha curtido este tutorial.  Para dúvidas e sugestões, faça seus comentários abaixo! Confira outros produtos em nossa loja!