ESP8266 - Bomba
Este tutorial ensina você a usar o ESP8266 para controlar uma bomba. Adaptando este tutorial, você pode construir um sistema de irrigação, um aquário, um sistema de reabastecimento de água e muito mais.
Vamos aprender duas formas de acionar a bomba: com um relé e com um módulo MOSFET. Um relé só consegue ligar e desligar a bomba. Um módulo MOSFET também consegue ligar e desligar, e ainda pode mudar a velocidade da bomba com PWM, o que significa que você pode bombear mais ou menos água. Ele também funciona sem o som de clique.
Hardware Necessário
Or you can buy the following kits:
| 1 | × | DIYables Sensor Kit (18 sensors/displays) |
Sobre a Bomba de 12V
Pinagem da Bomba

A bomba de 12V normalmente tem dois pinos:
- O pino Negativo (-) (preto) deve ser conectado ao GND da fonte de alimentação DC
- O pino Positivo (+) (vermelho) deve ser conectado aos 12V da fonte de alimentação DC
Como Controlar a Bomba usando o ESP8266
Se uma bomba de 12V receber uma fonte de alimentação de 12V, ela funcionará. Para controlar a bomba, é preciso usar um relé entre o ESP8266 e a bomba. O ESP8266 pode então controlar a bomba por meio do relé.
Se você não está familiarizado com relés (pinagem, funcionamento, programação etc.), consulte o tutorial ESP8266 - Relé para mais informações.
Da mesma forma, o tutorial ESP8266 - Módulo MOSFET ensina o básico do módulo MOSFET, caso você ainda não tenha usado um.
Relé vs Módulo MOSFET para Bomba
| Ponto | Relé | Módulo MOSFET |
|---|---|---|
| Controle da bomba | somente ligar/desligar | ligar/desligar e vazão (PWM) |
| Ruído ao comutar | clique | silencioso |
| Tempo de reação | lento, em milissegundos | muito rápido |
| Durabilidade | os contatos se desgastam com o tempo | sem partes móveis |
| Potência da bomba | AC ou DC | somente DC |
| Tensão da bomba | dentro da especificação do relé | pelo menos cerca de 6V |
| Isolação | sim (bobina / contatos) | sim (optoacoplador PC817) |
| Ideal para | bombas AC, ON/OFF simples | bombas DC, controle de vazão, comutação muitas vezes |
Uma bomba DC de 12V funciona muito bem com o módulo MOSFET, porque você pode deixar o fluxo suave ou forte. Se a sua bomba funciona na rede elétrica AC, o relé é a opção a usar.
Diagrama de Ligação

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 Bomba
O código abaixo vai manter a bomba alternando entre LIGADA e DESLIGADA a cada cinco segundos.
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.
- Conecte o seu ESP8266 ao seu computador usando um cabo USB.
- Abra a Arduino IDE, selecione a placa e a porta apropriadas.
- 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.
- Veja o estado da bomba mudando.
Explicação do Código
Confira a explicação linha por linha contida nos comentários do código-fonte!
Confira este tutorial sobre ESP8266 - se o botão for pressionado, ligar a bomba por 10 segundos.
Código ESP8266 para Controlar a Vazão da Bomba com Módulo MOSFET
Esta parte substitui o relé por um módulo MOSFET. O pino D5 do NodeMCU emite PWM, e o duty cycle decide a rapidez com que a bomba gira e quanta água ela move.
Diagrama de Ligação

This image is created using Fritzing. Click to enlarge image
- D5 (GPIO14) do NodeMCU → PWM do módulo
- G (GND) do NodeMCU → GND do módulo
- + do adaptador 12V → + do módulo
- Fio vermelho (+) da bomba → + do módulo (junto com o fio + do adaptador)
- Fio preto (−) da bomba → LOAD do módulo
- − do adaptador 12V → − do módulo
O motor da bomba é uma bobina. Conecte um diodo de roda livre (1N4007 ou 1N5819) entre os fios da bomba, com o lado listrado (cátodo) no fio + da bomba.
Código ESP8266
Como a bomba se comporta: 2 segundos com vazão total, 2 segundos parada, depois a vazão cresce de 10% a 100% e diminui de volta a 0%. Com pouca potência, a bomba pode não conseguir empurrar a água pelo tubo.
Passos Rápidos
- Faça a configuração da Arduino IDE e do NodeMCU como nos Passos Rápidos do relé acima.
- Coloque a bomba na água e faça a ligação como no diagrama. Deixe o adaptador de 12V desconectado.
- Faça o upload do código acima.
- Conecte o adaptador de 12V e observe a vazão da água.
- Abra o Serial Monitor a 9600 baud.
Note que o módulo MOSFET precisa de uma bomba DC e de uma alimentação de cerca de 6V ou mais. Uma bomba AC deve continuar no relé. Nunca deixe a bomba funcionar a seco.