ESP8266 - Chave de Fim de Curso do Motor de Passo
Este tutorial ensina como usar o ESP8266 para controlar um motor de passo por meio de uma chave de fim de curso e de um driver L298N. Especificamente, vamos abordar:
- Como programar o ESP8266 para parar o motor de passo quando uma chave de fim de curso é tocada.
- Como programar o ESP8266 para mudar a direção do motor de passo quando uma chave de fim de curso é tocada.
- Como programar o ESP8266 para mudar a direção do motor de passo por meio de duas chaves de fim de curso instaladas em posições opostas.
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Sobre o Motor de Passo e a Chave de Fim de Curso
Se você não está familiarizado com o motor de passo e a chave de fim de curso (incluindo pinagem, funcionamento, programação etc.), os tutoriais a seguir podem dar mais informações:
- Tutorial ESP8266 - Chave de Fim de Curso
- Tutorial ESP8266 - Motor de Passo
Diagrama de Ligação
Este tutorial traz o diagrama de ligação para dois casos: Um motor de passo + uma chave de fim de curso, Um motor de passo + duas chaves de fim de curso.
- Diagrama de Ligação entre o ESP8266, o motor de passo e, e uma chave de fim de curso.

This image is created using Fritzing. Click to enlarge image
Para mais informações, veja Pinagem do ESP8266 e como alimentar o ESP8266 e outros componentes.
- Diagrama de Ligação entre o ESP8266, o motor de passo e, e duas chaves de fim de curso.

This image is created using Fritzing. Click to enlarge image
※ Nota:
A ligação entre o motor de passo e o L298N pode variar dependendo do tipo de motor de passo. Por isso, é importante dar uma olhada neste tutorial ESP8266 - Motor de Passo para entender como fazer a conexão.
Código ESP8266 - Parar o Motor de Passo com uma Chave de Fim de Curso
Existem vários métodos para parar um motor de passo:
- Chamar a função stepper.stop(): Isso não causa uma parada instantânea, mas sim gradual
- Omitir a chamada da função stepper.run(): Isso resulta em uma parada imediata do motor de passo
O código abaixo faz o motor de passo girar continuamente até que uma chave de fim de curso seja acionada, e então ele para imediatamente.
Passos Rápidos
Para começar com o ESP8266 no Arduino IDE, siga estes passos:
- Confira o tutorial como configurar o ambiente para o ESP8266 no Arduino IDE se esta for a sua primeira vez usando o ESP8266.
- Ligue os componentes como mostrado no diagrama.
- Conecte a placa ESP8266 ao seu computador usando um cabo USB.
- Abra o Arduino IDE no seu computador.
- Escolha a placa ESP8266 correta, como (por exemplo, NodeMCU 1.0 (ESP-12E Module)), e a respectiva porta COM.
- Conecte um cabo USB ao ESP8266 e ao PC.
- Abra o Arduino IDE, selecione a placa e a porta apropriadas.
- Clique no ícone Libraries na barra esquerda do Arduino IDE.
- Pesquise por “ezButton” e localize a biblioteca de botão fornecida por ArduinoGetStarted.com.
- Pressione o botão Install para instalar a biblioteca ezButton.

- Procure por “AccelStepper” e localize a biblioteca AccelStepper criada por Mike McCauley.
- Pressione o botão Install para adicionar a biblioteca AccelStepper.

- Copie o código e abra-o com o Arduino IDE.
- Clique no botão Upload para transferir o código para o ESP8266.
- Se a ligação estiver correta, o motor vai girar no sentido horário.
- Toque na chave de fim de curso e o motor vai parar na hora.
- O resultado que aparece no Serial Monitor deve ser parecido com este.
Explicação do Código
Confira a explicação linha por linha contida nos comentários do código-fonte!
Código ESP8266 - Mudar a Direção do Motor de Passo com uma Chave de Fim de Curso
O código abaixo faz um motor de passo girar continuamente, e ele inverte sua direção quando uma chave de fim de curso é tocada.
Passos Rápidos
Para começar com o ESP8266 no Arduino IDE, siga estes passos:
- Confira o tutorial como configurar o ambiente para o ESP8266 no Arduino IDE se esta for a sua primeira vez usando o ESP8266.
- Ligue os componentes como mostrado no diagrama.
- Conecte a placa ESP8266 ao seu computador usando um cabo USB.
- Abra o Arduino IDE no seu computador.
- Escolha a placa ESP8266 correta, como (por exemplo, NodeMCU 1.0 (ESP-12E Module)), e a respectiva porta COM.
- Copie o código e abra-o com o Arduino IDE.
- Clique no botão Upload para enviar o código ao ESP8266.
- Se a ligação estiver correta, o motor vai girar no sentido horário.
- Quando você tocar na chave de fim de curso, a rotação do motor de passo será invertida para o sentido anti-horário.
- Tocar na chave de fim de curso novamente fará o motor de passo girar no sentido horário outra vez.
- A saída no Serial Monitor deve ser parecida com esta.
Código ESP8266 - Mudar a Direção do Motor de Passo com duas Chaves de Fim de Curso
O código abaixo faz um motor de passo girar continuamente, e ele inverte sua direção quando qualquer uma de duas chaves de fim de curso é tocada.
Passos Rápidos
- Ligue os componentes como mostrado no diagrama.
- Conecte a placa ESP8266 ao seu computador usando um cabo USB.
- Abra o Arduino IDE no seu computador.
- Escolha a placa ESP8266 correta, como (por exemplo, NodeMCU 1.0 (ESP-12E Module)), e a respectiva porta COM.
- Copie o código e abra-o com o Arduino IDE.
- Clique no botão Upload na IDE para carregar o código no ESP8266.
- Se a ligação estiver correta, o motor deve girar no sentido horário.
- Quando você tocar na chave de fim de curso 1, a direção do motor de passo deve mudar para anti-horário.
- Tocar na chave de fim de curso 2 deve fazer o motor inverter a direção novamente, desta vez para horário.
- O resultado exibido no Serial Monitor deve ser parecido com o seguinte.