Índice:
2025 Autor: John Day | [email protected]. Última modificação: 2025-01-13 06:58
Motores de passo como o NEMA 17 têm muitos usos e este protótipo ajudará os leitores a entender o método para controlar o NEMA 17 do aplicativo Blynk.
Esta é uma tentativa de fazer uma IoT que nos ajudará a acessar e controlar a NEMA 17 de qualquer lugar e a qualquer momento.
Existem muitos casos de uso em que o motor de passo é usado (especialmente quando você precisa de precisão no controle do número de voltas via código).
Suprimentos
- WeMos D1 Mini
- L298N Stepper motor drive
- Motor de passo NEMA 17
- Cabo micro USB para alimentar o WeMos D1 Mini e transferir o código.
- Adaptador 12V 1A para alimentar o motor de passo NEMA 17
- Jumper Wires Masculino para Masculino e Masculino para Feminino
- Adaptador de tomada de força DC feminino
- Capacitor - 100 μF
- Placa de ensaio.
Etapa 1: Diagrama de conexão
A imagem carregada é autoexplicativa e a única mudança importante é que usei um adaptador DC 12V 1A para conectar o driver L298N. Você também não verá nenhuma placa de ensaio.
- D8 de WeMos D1 Mini> IN1 de L298N
- D7 de WeMos D1 Mini> IN2 de L298N
- D6 de WeMos D1 Mini> IN3 de L298N
- D5 de WeMos D1 Mini> IN4 de L298N
- 5V de WeMos D1 Mini> 5V de L298N
- GND de WeMos D1 Mini> GND de L298N> GND de fonte de alimentação 12V 1A DC
Observação: o motor de passo NEMA17 que comprei tem pinos com os códigos de cores vermelho, verde, azul e preto. Para identificar as extremidades de duas bobinas, a única melhor maneira é tocar ambas as extremidades e girar o eixo do passo. O eixo do motor de passo se move suavemente se os fios conectados não pertencerem à mesma bobina, o eixo não gira suavemente se pertencerem a uma bobina.
No meu caso, conectei os fios da seguinte maneira:
- Vermelho de NEMA 17> OUT1 de L298N
- Verde de NEMA 17> OUT2 de L298N
- Azul de NEMA 17> OUT3 de L298N
- Preto de NEMA 17> OUT4 de L298N
Etapa 2: configurar o Blynk no celular
As capturas de tela anexadas devem fornecer aos leitores deste artigo o procedimento passo a passo para configurar dois botões que ajudarão o usuário a girar o motor de passo NEMA 17 no sentido horário (ou) anti-horário. Se alguém não conseguir seguir as capturas de tela e concluir a configuração do Blynk, também pode ler as instruções abaixo:
- Abra o aplicativo "Blynk" no seu celular e selecione "Novo Projeto".
- Digite o nome do projeto: "NEMA 17 Control" (neste caso), selecione "WeMos D1mini" na lista de "Device". Agora selecione "Criar" para prosseguir com as próximas etapas.
- Verifique o e-mail configurado no aplicativo "Blynk" para encontrar o "Token de autorização" (isso será útil durante a codificação).
- O painel aparece, permitindo-nos prosseguir com os próximos passos e o nosso principal objetivo será adicionar dois botões.
- Ajuste os botões de acordo com as necessidades do projeto (a etapa é opcional). No meu caso, abro os botões para coincidir com a largura do painel.
- Configure o primeiro botão com o texto "Vire à esquerda" com "V0" como um pino virtual.
- Configure o segundo botão com o texto "Turn Right" com "V1" como um pino virtual.
- Navegue até o menu principal e clique no botão “Play” para verificar a funcionalidade do aplicativo e controlar o motor NEMA 17.
- O motor NEMA 17 é programado para girar 10 vezes na seleção do botão. Ele não liga e desliga no momento em que você pressiona um dos botões para "Virar à direita" (ou) "Virar à esquerda". Aguarde algum tempo para que o NEMA17 pare e, em seguida, verifique a funcionalidade do segundo botão.
Etapa 3: o código.
Antes de enviar o seguinte código, certifique-se de fornecer o seguinte:
- Chave de autorização de Blynk
- SSID
- Senha para permitir que "WeMos Mini" acesse a rede sem fio e se conecte à Internet
Selecione também o seguinte no menu Arduino IDE: Ferramentas> Placa> Placas ESP8266> LOLIN (WEMOS) D1 R2 e mini.
>> Início do snippet de código <<<
#include Stepper.h
#include ESP8266WiFi.h
#include BlynkSimpleEsp8266.h
#define BLYNK_PRINT Serial
Stepper my_Stepper (200, D8, D7, D6, D5);
bool Right = false;
bool Left = false;
char auth = "********************************************* ** ";
char ssid = "****************";
char pass = "******************************";
void setup () {
Serial.begin (9600);
Blynk.begin (auth, ssid, pass);
my_Stepper.setSpeed (70);
}
BLYNK_WRITE (V1) {
Right = param.asInt ();
}
BLYNK_WRITE (V0) {
Esquerda = param.asInt ();
}
void Stepper1 (int Direction, int Rotation) {
para (int i = 0; i <Rotação; i ++) {
my_Stepper.step (direção * 200);
Blynk.run ();
}
}
void loop ()
{
Blynk.run ();
if (direito) {
Stepper1 (1,10);
Serial.println ("Virar à direita");
}
atraso (20);
if (esquerda) {
Stepper1 (-1, 10);
Serial.println ("virar à esquerda");
}
atraso (20);
}
>> Fim do snippet de código <<<
Nota: No código acima, não deixe de inserir "" (maior que) na instrução "incluir". Em caso de problemas adicionais com o código, você também pode consultar a captura de tela incluída neste artigo.
Etapa 4: Funcionalidade de protótipo de vídeo
Em anexo está o vídeo que ajudará os leitores a entender brevemente como o protótipo funciona.