Controle de velocidade e direção do motor DC via WiFi usando o módulo Nodemcu esp8266 Wifi

Controle de velocidade e direção do motor DC via WiFi usando o módulo Nodemcu esp8266 Wifi

Neste tutorial vou ensinar como controlar a velocidade e a direção do motor CC usando o módulo WiFi nodemcu e o driver do motor l293d. O Nodemcu servirá uma página da web no navegador do seu celular, desktop, laptop ou notebook. A página da Web lista os controles do motor CC. O usuário pode controlar a velocidade de rotação do motor na página da web e alterar a direção de rotação do motor CC através dos controles da página da web. O tutorial também ensina como fazer a interface h bridge l293d ic com o módulo WiFi nodemcu esp8266 12e.
Motor CC Nodemcu e driver de motor l293d

Motor CC Nodemcu e driver de motor l293d
Dois motores CC são usados ​​no projeto. O consumo de energia dos motores CC é de 12 volts a 300 mA de corrente. O módulo Nodemcu esp8266 WiFi funciona em lógica TTL de 3,3 volts. Não podemos alimentar o motor CC diretamente através dos pinos de saída do nodemcu. Precisamos de uma potência extra e de um circuito externo que possa lidar com a carga pesada do motor. O transistor é a melhor escolha para controlar cargas pesadas com microcontroladores. A base do transistor recebe sinal de saída do microcontrolador TTL de 3,3 volts e pode conduzir cargas pesadas em seu lado coletor e emissor. Através do transistor também podemos controlar a velocidade do motor. Mas o problema está no controle de direção do motor. Através de um único transistor não é possível alterar o sentido de rotação do motor. Para alterar a direção do motor precisamos de uma combinação de transistores. Esta combinação de transistores é conhecida como driver de ponte h. Através do circuito de ponte h podemos facilmente alterar o sentido de rotação do motor. O circuito de ponte H também pode ser utilizado com eficácia para controlar a velocidade de rotação do motor CC.
Fazer um circuito de ponte h cria um circuito muito confuso. Também é difícil e demorado selecionar os transistores ou mosfets com classificação apropriada (a ponte h também pode ser feita com fet) para as necessidades do circuito. Circuitos de ponte H pré-montados e fabricados estão disponíveis no mercado e também vêm em IC's. L293d é um IC de ponte meia-h popular disponível no mercado.

Motorista L293d

L293d possui dois canais de ponte meio h. Cada canal pode controlar um único motor de forma independente. Podemos controlar dois motores com um único driver de motor l293d. Cada canal pode controlar cargas que requerem 0 – 36 volts e 600 mA de corrente. Cada canal possui dois pinos de entrada e dois pinos de saída. Nossa carga (motor) está conectada aos pinos de saída do canal. Os controles são conectados aos pinos de entrada. Cada canal é ativado através de um pino de habilitação. Para saber mais sobre a estrutura interna do canal individual, cada função do pino e os requisitos de operação do l293d, recomendo que você siga o tutorial abaixo.

Pinagem e funcionamento do L293d

O tutorial acima é muito importante para a compreensão do diagrama de circuito do projeto e do código abaixo. Por favor, pegue-o antes de prosseguir.

A velocidade dos motores CC pode ser controlada através de vários métodos. O mais popular é variar a tensão de entrada do motor. Também vou variar a tensão de entrada do motor CC para controle de velocidade do motor CC. A tensão de entrada pode ser variada usando um resistor variável. Como nas casas, giramos o botão na porta do switch para controlar a velocidade do ventilador de teto. Girando o botão variamos a potência de entrada (tensão, corrente) do ventilador.
No nosso caso, queremos controlar a velocidade digitalmente e não fisicamente (caso do botão do ventilador discutido no parágrafo acima). O controle digital da velocidade do motor CC é possível ligando e desligando o sistema de controle do motor. Como estamos usando um microcontrolador nodemcu em nosso projeto, devemos ligar e desligar o sistema que controla o motor. Estamos usando o driver de motor l293d em nosso projeto e nossos motores estão conectados através dos pinos de saída de seus canais. Se ligarmos e desligarmos os canais individuais do l293d, podemos variar a tensão de saída do motor e, portanto, podemos controlar a velocidade do motor.

Ligar e desligar canais individuais do l293d de forma controlada é uma tarefa fácil. Podemos gerar um sinal liga/desliga controlado do nodemcu que pode controlar a velocidade de rotação do motor da maneira desejada. Pwm (modulação por largura de pulso) é o nome da técnica através da qual sinais de controle podem ser gerados a partir de qualquer microcontrolador. Também estou gerando sinal pwm do nodemcu para controle de velocidade do motor.
Em uma saída de sinal de modulação por largura de pulso, o ciclo de trabalho do sinal é controlado. O ciclo de trabalho é a quantidade de tempo que o sinal fica alto em um determinado período do sinal digital. No lado direito, os ciclos de trabalho são mostrados em diagrama. Na primeira onda, o ciclo de trabalho é de 50%. Isso significa que o sinal está alto durante 50% do período. Por exemplo, o período é de 2 segundos. Com ciclo de trabalho de 50%, a saída permanece alta por 1 segundo e baixa por 1 segundo. Se o ciclo de trabalho for 75%. A saída permanece alta por 1,5 segundos e baixa por 0,5 segundos. Espero que faça sentido para você. Quando os períodos são combinados, forma-se a frequência. E geralmente está em quilo ou mega Hz.

Circuito de projeto

Como estou usando dois motores no projeto, precisamos de quatro controles para alterar as direções dos motores. Dois controles para cada motor. Quatro pinos digitais do Nodemcu são usados ​​como controles. Conectar

  • GPIO-15 com entrada 1 de l293d
  • GPIO-13 com entrada 2 de l293d
  • GPIO-12 com entrada 4 de l293d
  • GPIO-14 com entrada 3 de l293d

Para controlar a velocidade dos motores estou gerando um sinal pwm no GPIO-5 e GPIO-4 do nodemcu esp8266. Cada pino de habilitação do canal l293d recebe o sinal pwm gerado para controlar a velocidade de rotação do motor. Conectar

  • GPIO-5 com ENABLE-1 de l293d
  • GPIO-4 com ENABLE-2 de l293d

Vss de l293d é fornecido com +5 volts. No Vs do l293d é fornecida a tensão de operação do motor +12 volts no nosso caso. Os aterramentos l293d e nodemcu devem ser comuns para que o circuito funcione corretamente.

Controle de velocidade e direção do motor DC com módulo WiFi nodemcu esp8266 e driver de motor l293d

Controle de velocidade e direção do motor DC com módulo WiFi nodemcu esp8266 e driver de motor l293d
Chegando à parte do código do projeto. O código é escrito em arduino ide. Arduino fornece anúncios para placas principais nodemcu esp8266 e podemos escrever, compilar e programar o nodemcu esp8266 é arduino ide.
No código primeiro incluí a biblioteca ESP8288WiFi.h. Esta biblioteca contém as funções principais de inicialização do nodemcu. Em seguida, o SSID e a senha da rede WiFi são inseridos. Você deve inserir seu SSID e senha WiFi antes de mover a cabeça.

const char* ssid = “Seu SSID”;
const char* senha = “Sua senha Wifi”;

Digite o SSID e a senha entre aspas duplas. Após SSID e senha. Os pinos de controle nodemcu do canal L293d e os pinos pwm são inicializados. Na função de configuração, a comunicação serial arduino ide é iniciada a uma taxa de transmissão de 115200 bps. Em seguida, os pinos de controle são declarados como saída. Nas enfermarias, o nodemcu solicita ao seu roteador WiFi uma distribuição de IP. Após a alocação de IP, o nodemcu iniciará seu servidor.
No código acima, algum texto está fora de ordem porque o código HTML está presente no código do projeto. O código HTML começa a ser executado no navegador.
Quando o nodemcu iniciou seu servidor. Começou a servir a página da web. Basta fazer o circuito e fazer upload do código acima no seu nodemcu.
Depois de enviar o código em nodemcu abre o monitor serial do arduino a partir do seu ide arduino. No monitor serial do Arduino, você verá o nodemcu solicitando o roteador WiFi para atribuição de IP e então iniciará seu servidor. Quando o servidor estiver totalmente operacional, o nodemcu exibirá o endereço do servidor no monitor serial do Arduino. Este endereço é o endereço HTML da página da web de controles do motor. É necessário inserir este endereço no navegador do seu dispositivo (celular, desktop ou laptop). Você pode ver o instantâneo do monitor serial no lado direito.
OBSERVAÇÃO: Tanto o servidor (nodemcu esp8266) quanto o cliente (celular, laptop e desktop) devem estar conectados ao mesmo WiFi. Para fazer a comunicação entre dois módulos eles devem estar na mesma rede. Portanto, seu nodemcu e cliente (móvel, desktop) devem estar na mesma rede. Se algum deles estiver em uma rede diferente, você não conseguirá nem ver a página da web no navegador do cliente.
Assim que você inserir o endereço acima em seu navegador, uma página web será exibida no cliente contendo os controles do motor.
Controles nodemcu da página da web do motor DC: velocidade e direção

Controles nodemcu da página da web do motor DC: velocidade e direção
A página acima será exibida no navegador do cliente. Você pode saber como iniciar, parar e alternar a direção do motor CC usando a página da web. Você também pode alterar a velocidade de rotação do motor. Você pode selecionar quaisquer três velocidades. No final da página da web, o status do motor é exibido. Se estiver girando? em qual direção? e a velocidade de rotação instantânea é exibida.

  • Botão Iniciar motor

Começará a girar o motor 1 e 2 no sentido horário.

  • Botão Alternar direção

Alternará a direção e começará a girar os motores no sentido anti-horário. Para voltar ao sentido horário, pressione Iniciar motor de novo.
Na função de loop, o nodemcu está aguardando qualquer solicitação do cliente. Se a solicitação for feita, o nodemcu executa a função desejada na solicitação do cliente e antes de fechar a solicitação, o nodemcu responde com o status atualizado do motor CC.

Trabalho futuro
Mostrei como controlar a velocidade do motor CC com o módulo WiFi nodemcu e o driver do motor ponte l293d h. No meu projeto é possível selecionar apenas três ciclos de trabalho. No futuro, você pode inserir um campo de texto e um botão de envio na página da web e aceitar o ciclo de trabalho personalizado do usuário por meio do teclado. Existem muitas outras possibilidades para melhorar a funcionalidade do projeto, tornando o carro RC, o robô, etc.

Baixe o código do projeto. A pasta contém o arquivo arduino ide .ino. Cada instrução do código é explicada minuciosamente. Se você tiver alguma dúvida e dúvida, escreva-as abaixo na seção de comentários.
Código/Arquivos

Conteúdo Relacionado

Uma rede de sensores é incorporada em todos os...
O controlador do motor é um dos componentes mais...
ESP32-CAM é um módulo de câmera compacto que combina...
A evolução dos padrões USB foi fundamental para moldar...
A SCHURTER anuncia um aprimoramento para sua conhecida série...
A Sealevel Systems anuncia o lançamento da Interface Serial...
A STMicroelectronics introduziu Diodos retificadores Schottky de trincheira de...
Determinar uma localização precisa é necessário em várias indústrias...
O novo VIPerGaN50 da STMicroelectronics simplifica a construção de...
A Samsung Electronics, fornecedora de tecnologia de memória avançada,...
O mercado embarcado tem uma necessidade de soluções de...
Você provavelmente já se deparou com o termo 'arrastar'...
Você provavelmente tem um Isolador de suporte Se você...
Você provavelmente já viu permanecer um isolante sente-se em...
Você provavelmente já viu Isoladores de manilha entronizados em...
Você provavelmente já passou por situações em que o...
返回博客

发表评论

请注意,评论必须在发布之前获得批准。