Tutorial Arduino - Motor de Passo 28BYJ-48 + driver ULN2003

Mais um Tutorial para os colegas do Lab de Garagem - Arduino controlando o motor de passo 

28BYJ-48 com o driver ULN2003.

Essa montagem, eu diria que é a mais simples para controle de um motor de passo (stepper motor). Nem por isso ela pode ser considerada ruim. Esse motorzinho tem uma redução interna que aumenta bem o torque, apesar do pequeno tamanho. O módulo de controle com o chip ULN2003 é bem pequeno também, o que pode facilitar a montagem em um seu projeto. 

As vantagens são a simplicidade na montagem , Sketch pode ser bem enxuto, o uso de tensão de 5V para alimentar o motor, etc. 

A desvantagens são que a rotação é baixa (devido a redução na caixa de engrenagens) ,  que  o motor unipolar é menos eficiente e o uso de quatro portas do Arduino. Alguns módulos de controle de motor de passo usam interfaces com duas portas apenas (por exemplo I2C). 

Favor interagir com o tutorial, somente assuntos relacionados com o mesmo. 

Se deseja esclarecer alguma outra dúvida, favor criar um novo tópico. 

Farei o Tutorial em partes. 

Para facilitar a pesquisa nos tópicos, criei esse índice :

A precisão de um motor de passo :
http://labdegaragem.com/forum/topics/tutorial-arduino-motor-de-pass...

Informações sobre o Motor de Passo 28BYJ-48 :
http://labdegaragem.com/forum/topics/tutorial-arduino-motor-de-pass...

Informações sobre o Módulo Driver ULN2003:
http://labdegaragem.com/forum/topics/tutorial-arduino-motor-de-pass...

Diagrama de montagem do Modulo Driver + Motor com Arduino:
http://labdegaragem.com/forum/topics/tutorial-arduino-motor-de-pass...

Primeiro exemplo - com dois botões para alterar o sentido da rotação:
http://labdegaragem.com/forum/topics/tutorial-arduino-motor-de-pass...


Segundo exemplo - controla-se o motor através do angulo:
http://labdegaragem.com/forum/topics/tutorial-arduino-motor-de-pass...
http://labdegaragem.com/forum/topics/tutorial-arduino-motor-de-pass...


Terceiro exemplo - Controle do motor através de um potenciômetro:
http://labdegaragem.com/forum/topics/tutorial-arduino-motor-de-pass...
http://labdegaragem.com/forum/topics/tutorial-arduino-motor-de-pass...


Quarto exemplo - Três voltas no sentido horário e mais duas voltas no sentido ant-horário :
http://labdegaragem.com/forum/topics/tutorial-arduino-motor-de-pass...
http://labdegaragem.com/forum/topics/tutorial-arduino-motor-de-pass...


Quinto exemplo - Acionamento com duplo sentido :
http://labdegaragem.com/forum/topics/tutorial-arduino-motor-de-pass...
http://labdegaragem.com/forum/topics/tutorial-arduino-motor-de-pass...

Aplicações com o Motor + Driver - Impressora de Ovos e Ploter de PCB:
http://labdegaragem.com/forum/topics/tutorial-arduino-motor-de-pass...

Aplicações com o Motor + Driver - Fotografia Time-lapse:
http://labdegaragem.com/forum/topics/tutorial-arduino-motor-de-pass...
http://labdegaragem.com/forum/topics/tutorial-arduino-motor-de-pass...

Motor de Passo - modos de operação :
http://labdegaragem.com/forum/topics/tutorial-arduino-motor-de-pass...

Motor de Passo - Modo Passo completo com baixo torque ( Wave Step):
http://labdegaragem.com/forum/topics/tutorial-arduino-motor-de-pass...

Motor de Passo - Modo Passo completo com alto torque ( Full Step):
http://labdegaragem.com/forum/topics/tutorial-arduino-motor-de-pass...

Motor de Passo - Modo Meio Passo ( Half Step):
http://labdegaragem.com/forum/topics/tutorial-arduino-motor-de-pass...

E muito mais !!!

Espero que gostem.  

Exibições: 69209

Responder esta

Respostas a este tópico

Bom dia , 

Qual mensagem de erro esta apresentando ? clique na parte inferior da IDE = copiar mensagens de erro .

E me envie as mensagens.

Quais portas digitais esta usando no Arduino Mega? 

Alterou na IDE, a configuração para placa Arduino Mega ?

Olá pessoal
Gostaria de retirar uma dúvida a respeito de motores de passo. (Peço desculpas se minha pergunta é muito sem sentido)

Já mexi bastante com estes motorzinhos 28BYJ-48 e sempre faço a ligação utilizando um ULN2803 onde o fio vermelho (comum) vai no pino COM do CI(comum e que também é ligado ao VCC do circuito).

Sendo assim, imaginei que todos os motores unipolares deveriam ter o fio comum ligado ao positivo.
Entretanto atualmente estou vendo alguns videos sobre CNC que utilizam motores de passo maiores e sempre dizem que o comum deve ser ligado ao GND do circuito.

Alguém poderia me explicar o porquê disso?
Porque no 28BYJ-48 ligamos o comum ao positivo do circuito, mas nestes motores de CNC liga-se ao GND?

Boa noite Fábio, 

Pode ser essa CNC que esta se referindo, use um outro tipo de driver. 

Favor enviar os links do Youtube.

Tem certeza que os motores são unipolares ??

Normalmente, CNC usa motor bipolar. 

Bom dia!!

Estou usando o ULN2003 junto a um NODEMCU perfeitamente sem problemas. 

Gostaria de saber se é possível usar junto a um ESP-01. Pois não estou conseguindo.

Saídas IN1, IN2, IN3 e IN4 - GPIOS: 0, 1, 2, 3.

Obrigado!

Bom dia,

O ESP-01 tem limitação na quantidade de portas que podem ser usadas. 

Qual o problema esta ocorrendo? 

https://labdegaragem.com/forum/topics/conhecendo-o-esp8266

Algum problema no acionamento das bobinas.

Para testar utilizei um código que só preciso utilizar 4 pinos para acioná-las, que são utilizados pelo driver.

Funciona perfeitamente no nodemcu mas quando quando ligo no esp01 utilizando os pinos: 0,1,2,3 não funciona. Farei mais alguns testes.

Quais GPIOs usa no NodeMCU?

No caso do ESP-01 

Interface Serial UART ( Universal asynchronous receiver/transmitter ) 

 RXD0  ( GPIO_3 / pino 25 do chip) : Esse é pino de recepção da interface serial 0   

 TXD0 (GPIO_1 / pino 26 do chip) : esse é pino de transmissão da interface serial 0

IO_2 ( GPIO_2 / Pino 14 do Chip):
Obdecendo configuração do firmware, para boot da memória Flash durante o reset, esse pino deverá ter o nível alto - conecte um resistor de 10K ohms ao +3,3V. Para o modo de download através da interface serial UART, esse pino também deverá estar no nível alto (3,3V).

IO_0 ( GPIO_0 / Pino 15 do Chip): Atenção !
Obdecendo configuração do firmware, para boot da memória Flash durante o reset, esse pino deverá ter o nível alto - conecte um resistor de 10K ohms ao +3,3V. Mas para gravar a memória Flash usando o modo de download através da interface serial UART, esse pino  deverá estar no nível nível baixo (zero Volts - conectado ao terra).

Ola  eu tenhoesta duvida ?

Fiz esse programinha mas não rodou é este  oque esta errado?

/*
Descriçao: Programa teste
Autor: JCarol
*/

void setup() {
serial.begin(9600);      e aqui fica em vermelho  
serial.print("Hello Word");
}

void loop(){

}

aparece esta mensagem :   

Sorry, it seems like your code has some errors.
Close
In function 'void setup()': 7:3: error: 'serial' was not declared in this scope 7:3: note: suggested alternative: 'Serial'

Olá, Oliveira!

   A IDE do Arduino está te dando a sugestão de correção do problema: "suggested alternative: Serial'"

D.T. Ribeiro.

Oliveira bom dia. 

Recomendo estudo no link sobre referencia sobre a linguagem do Arduino:

https://www.arduino.cc/reference/pt/

https://www.arduino.cc/reference/pt/language/functions/communicatio...

RSS

© 2024   Criado por Marcelo Rodrigues.   Ativado por

Badges  |  Relatar um incidente  |  Termos de serviço