ESP8266 - Válvula de Água/Líquido

Este tutorial ensina você a usar um ESP8266 e uma válvula solenoide para controlar o fluxo de líquidos como água, cerveja e óleo. A mesma técnica pode ser aplicada para controlar o fluxo de gás.

A válvula pode ser aberta e fechada por meio de um relé ou de um módulo MOSFET. Os dois só abrem a válvula totalmente ou a fecham totalmente, porque uma válvula solenoide não deve ser acionada com PWM. O módulo MOSFET, porém, comuta sem clique, comuta mais rápido e não tem contatos metálicos que se desgastam. Este tutorial cobre as duas opções.

Sobre a Válvula de Água/Líquido

Pinagem da Válvula de Água/Líquido

Pinagem da Válvula de Água/Líquido com ESP8266 NodeMCU

Uma válvula solenoide normalmente tem dois terminais:

  • O pino Positivo (+) (vermelho) deve ser conectado a uma fonte de alimentação de 12V DC
  • O pino Negativo (-) (preto ou outra cor) deve ser conectado ao GND de uma fonte de alimentação DC

Como a Válvula de Água/Líquido funciona

Normalmente, a válvula fica na posição fechada. Quando 12V DC são fornecidos aos dois terminais, a válvula abre e permite a passagem de água/líquido.

※ Nota:

  • Em certos tipos de válvula, uma disposição interna de vedação exige uma pressão mínima para abrir a válvula depois que os 12V DC são aplicados. Essa pressão pode ser gerada pelo fluxo do líquido.
  • Além disso, em algumas válvulas, o líquido só consegue fluir em uma direção.

Como Controlar a Válvula Solenoide de Água/Líquido usando o ESP8266

Se a válvula receber 12V, ela abrirá. Para controlar a válvula, é preciso usar um relé entre o ESP8266 e a válvula. O ESP8266 pode então controlar a válvula solenoide por meio do relé.

Se você não está familiarizado com relés (pinagem, como funcionam, como programá-los etc.), você pode aprender sobre eles no tutorial ESP8266 - Relé.

Você também pode usar um módulo MOSFET no lugar do relé. Para conhecer seus pinos e como ele comuta uma carga de 12V, veja o tutorial ESP8266 - Módulo MOSFET.

Relé vs Módulo MOSFET para Válvula de Água/Líquido

Item Relé Módulo MOSFET
Controle da válvula abrir/fechar abrir/fechar (sem PWM para uma válvula)
Som um clique a cada vez sem clique
Velocidade de comutação lenta (milissegundos) muito rápida
Desgaste os contatos do relé se desgastam sem contatos móveis
Tipo de válvula válvula AC ou DC somente válvula DC
Alimentação da válvula qualquer, conforme a especificação do relé cerca de 6V ou mais
Isolação sim, bobina separada dos contatos sim, pelo optoacoplador PC817
Bom para válvulas AC, projetos simples válvulas DC, comutação silenciosa ou frequente

Para uma válvula de 12V DC, as duas peças fazem o mesmo trabalho de abrir e fechar. Escolha o módulo MOSFET se você quer silêncio ou se a válvula comuta muitas vezes por dia. Escolha o relé se a válvula funciona em AC.

Diagrama de Ligação

diagrama de ligação da válvula de água com ESP8266 NodeMCU

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.

Código ESP8266 para Controlar a Válvula de Líquido

O código abaixo liga a válvula de água por cinco segundos e depois a desliga por cinco segundos

/* * Este código de ESP8266 NodeMCU foi desenvolvido por pt.newbiely.com * Este código de ESP8266 NodeMCU é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/esp8266/esp8266-water-liquid-valve */ #define RELAY_PIN D8 // The ESP8266 pin connected to the IN pin of relay // The setup function runs once on reset or power-up void setup() { // initialize digital pin A5 as an output. pinMode(RELAY_PIN, OUTPUT); } // The loop function repeats indefinitely void loop() { digitalWrite(RELAY_PIN, HIGH); // open valve 5 seconds delay(5000); digitalWrite(RELAY_PIN, LOW); // close valve 5 seconds delay(5000); }

Passos Rápidos

Para começar com o ESP8266 na Arduino IDE, siga estes passos:

  • Confira o tutorial como configurar o ambiente para ESP8266 na Arduino IDE se esta for a sua primeira vez usando o ESP8266.
  • Faça a ligação dos componentes como mostrado no diagrama.
  • Conecte a placa ESP8266 ao seu computador usando um cabo USB.
  • Abra a Arduino IDE no seu computador.
  • Escolha a placa ESP8266 correta, como (por exemplo, NodeMCU 1.0 (ESP-12E Module)), e a respectiva porta COM.
  • Saída do sensor no Serial Monitor
  • Conecte o seu ESP8266 ao seu computador usando um cabo USB.
  • Abra a Arduino IDE, selecione a placa e a porta corretas.
  • Copie o código acima e abra-o na Arduino IDE.
  • Clique no botão Upload na Arduino IDE para enviar o código ao ESP8266.
  • Verifique a saída do sensor de fluxo de água no Serial Monitor.

Explicação do Código

Confira a explicação linha por linha contida nos comentários do código-fonte!

Como Controlar a Válvula de Água/Líquido com o Módulo MOSFET

Aqui tiramos o relé e colocamos um módulo MOSFET no lugar dele. A válvula continua apenas abrindo ou fechando, mas agora faz isso sem clique.

O relé e o módulo MOSFET usam pinos diferentes nesta página. O relé está no D8, e o módulo MOSFET está no D5 (GPIO14). Por isso, cada ligação tem o seu próprio código.

Diagrama de Ligação

diagrama de ligação da válvula de água/líquido com módulo MOSFET e ESP8266 NodeMCU NodeMCU

This image is created using Fritzing. Click to enlarge image

Lado NodeMCU / 12V Módulo MOSFET
D5 (GPIO14) PWM
G (GND) GND
+ do adaptador 12V +
Fio + da válvula + (compartilhado com o + do adaptador)
Fio − da válvula LOAD
− do adaptador 12V −

A válvula tem uma bobina dentro, então ela precisa de um diodo de roda livre (1N4007 ou 1N5819) entre os seus dois fios. A faixa (cátodo) deve ficar voltada para o fio + da válvula.

Código ESP8266

O código funciona da mesma forma que o código do relé: HIGH liga a válvula (aberta) e LOW a desliga (fechada). A válvula abre por 5 segundos e fecha por 5 segundos, repetidamente. Nada é impresso no Serial Monitor.

/* * Este código de ESP8266 NodeMCU foi desenvolvido por pt.newbiely.com * Este código de ESP8266 NodeMCU é disponibilizado ao público sem nenhuma restrição. * Para tutoriais completos e diagramas de ligação, visite: * https://pt.newbiely.com/tutorials/esp8266/esp8266-water-liquid-valve */ #define MOSFET_PIN D5 // The ESP8266 pin D5 connected to the PWM pin of the MOSFET module // The setup function runs once on reset or power-up void setup() { pinMode(MOSFET_PIN, OUTPUT); // set the pin as an output } // The loop function repeats indefinitely void loop() { digitalWrite(MOSFET_PIN, HIGH); // open the valve for 5 seconds delay(5000); digitalWrite(MOSFET_PIN, LOW); // close the valve for 5 seconds delay(5000); }

Uma válvula deve receber somente LIGADO total ou DESLIGADO total, nunca PWM. É por isso que esta página não usa o código de fade com PWM do tutorial do módulo MOSFET.

Passos Rápidos

  • Faça a ligação dos componentes como mostrado no diagrama acima.
  • Conecte a placa ESP8266 ao seu computador usando um cabo USB.
  • Abra a Arduino IDE e escolha a placa e a porta COM, como nos Passos Rápidos do relé acima.
  • Copie o código acima e clique no botão Upload.
  • Alimente a válvula. Ela abre por 5 segundos, depois fecha por 5 segundos, e repete sem parar.

※ Nota:

O módulo MOSFET só consegue comutar DC, e precisa de uma alimentação da válvula de pelo menos cerca de 6V. Para uma válvula AC, use o relé.

Vídeo

※ NOSSAS MENSAGENS

  • Fique à vontade para compartilhar o link deste tutorial. Porém, por favor, não use nosso conteúdo em outros sites. Investimos muito esforço e tempo para criar este conteúdo, por favor respeite nosso trabalho!