Que tal controlar as luzes da sua casa usando um módulo wifi ESP32? Neste tutorial vamos mostrar como criar um projeto de automação residencial com módulo ESP32 e o app Blynk, permitindo que você acione lâmpadas, eletrodomésticos, motores e outros equipamentos usando uma rede sem fio (wireless).
O Blynk é um aplicativo para smartphones que permite controlar de forma fácil e rápida placas como Arduino, Raspberry Pi, ESP8266 e ESP32, sendo uma excelente opção para projetos de Internet das Coisas (IoT). O app para celular atualmente oferece suporte para mais de 400 tipos de placas.
Criando o projeto com ESP32 no Blynk
No nosso projeto de automação residencial com módulo ESP32 e Blynk (disponível neste link ou na loja de aplicativos do seu celular) vamos acionar um módulo relé de 2 canais conectado nas portas D32 e D33 do módulo.
Se você ainda não usou o Blynk, sugiro a leitura do post Use o Blynk para controlar o Arduino via bluetooth para saber mais sobre o app. No post eu explico como realizar a instalação e configurações iniciais.
Para criação do nosso projeto, selecione New Project na tela inicial. Na tela seguinte, defina um nome para o projeto, selecione a placa ESP32 Dev Board e a conexão Wifi:
Clique em Create e em logo em seguida você verá um aviso informando que um token foi enviado para o seu endereço de email. O token será utilizado posteriormente na IDE do Arduino para programação do ESP32:
A tela seguinte é a tela de layout. Clique no sinal de + para adicionar dois botões na tela:
Com os botões criados, clique no primeiro botão para abrir a sua tela de configuração, escolhendo a porta GP32. Observe também que o módulo relé é ativo em nível baixo (LOW, ou 0 (zero)), por isso escolhemos o valor 1 para ser enviado quando o botão estiver na posição Desligado, e 0 quando o botão estiver na posição Ligado. Faça o mesmo procedimento para o segundo botão, alterando a porta para GP33:
Finalizada essa parte da configuração, vamos realizar a conexão do relé com o ESP32.
Conexões do ESP32 com módulo relé
Como mencionamos anteriormente, o relé será conectado nas portas D32 e D33 do módulo ESP32. O relé que estamos usando (módulo relé 2 canais) funciona com 5V, então vamos conectar a alimentação dele no pino Vin do ESP32, já que o mesmo está conectado na porta USB do computador sendo alimentado também por uma tensão de 5V.
Sua placa pode ser um pouco diferente dessa mostrada na imagem acima, mas o princípio é o mesmo, ok? O fio vermelho (alimentação do relé) deve ser conectado no pino 5V ou Vin, e o fio preto deve ser conectado no pino GND. O pino IN1 do relé vai conectado no pino 32 e o IN2 no pino 33.
Programa automação residencial com ESP32 e Blynk
Para transferir o programa abaixo vamos utilizar a IDE do Arduino, e todos os passos de configuração do ESP32 com a IDE você encontra no post Como programar o módulo ESP32 com IDE Arduino, aqui mesmo no Arduino e Cia.
Com a IDE configurada para o hardware, vamos apenas incluir a biblioteca Blynk, que é realmente quem faz todo o trabalho de comunicação com o módulo. Instale a biblioteca à partir da própria IDE do Arduino, no menu Sketch -> Incluir Biblioteca -> Gerenciar bibliotecas. Procure por Blynk e clique em Instalar:
O programa é bem simples e para usar você só precisa alterar 3 informações: na linha 13incluir o token que você recebeu por email, e nas linhas 16 e 17 configurar o nome e senha da rede wifi que você irá utilizar para que o ESP32 se conecte à internet.
//Programa: Automacao Residencial com ESP32 e Blynk //Autor: Arduino e Cia //Envia mensagens de debug para o Serial Monitor #define BLYNK_PRINT Serial //Carrega as bibliotecas do ESP32 e Blynk #include <WiFi.h> #include <WiFiClient.h> #include <BlynkSimpleEsp32.h> //Preencha com o token que voce recebeu por email char auth[] = "f12f25258da235eaca92e5ca32b39f8"; //Preenche com o nome e senha da sua rede Wifi char ssid[] = "<nome da rede wifi>"; char pass[] = "<senha da rede wifi>"; void setup() { Serial.begin(9600); Blynk.begin(auth, ssid, pass); } void loop() { Blynk.run(); }
Um detalhe importante no carregamento é que foi necessário pressionar o botão BOOTdo módulo durante todo o processo de transferência do programa. Finalizado o carregamento, reinicie o ESP32.
Voltando ao Blynk, agora basta carregar o projeto que você criou anteriormente. Pressione o ícone (play) no canto superior direito do app e controle a iluminação da sua casa.
O projeto é facilmente adaptável para outros tipos de módulo relé como os de 8 ou 16 canais. Basta criar os botões no app e configurar as portas correspondentes. Não é necessária nenhuma alteração no programa do ESP32.
Gostou do projeto de automação residencial com módulo ESP32? Confira outros posts com ESP32 aqui mesmo no Arduino e Cia!