#372InicianteIoT

ESP32 Interruptor IoT de Lâmpada (Relé)

Ligue e desligue sua lâmpada pelo celular, onde você estiver. Este projeto é o guia passo a passo do modelo IoT Lâmpada com relé do app, montado com um ESP32 e um módulo relé e testado primeiro com um LED. Vá em Oficina › Dispositivos › Adicionar dispositivo e escolha Lâmpada com relé; o Ohmi prepara o código com a sua própria chave de dispositivo. O código desta página é um exemplo: a chave e os dados do Wi-Fi são valores de exemplo.

0.0(0)
ESP32 Interruptor IoT de Lâmpada (Relé)
Se você quer apagar a luz sem sair da cama, ou acender a lâmpada antes de chegar em casa, este projeto é para você. A placa liga e desliga uma lâmpada com um relé, e um único interruptor no app controla tudo de qualquer lugar do mundo. Depois de uma queda de energia, a lâmpada volta ao último estado. O app prepara o código para você; você só liga os fios e envia. Você começa com um LED no lugar da lâmpada, assim aprende a ligação e a segurança antes de mexer na rede elétrica de casa.
IoT · controle remotoSeu primeiro dispositivo é grátis

Controle este dispositivo pelo app

Conecte seu ESP32 ou Raspberry Pi Pico W ao Wi-Fi, ligue e desligue pelo celular e veja as leituras ao vivo. O Ohmi prepara o código; você só informa os dados do Wi-Fi e faz o upload.

Modelo no app: Lâmpada com relé

  • Onde fica no app?Adicione um novo dispositivo pela aba Ferramentas ou em Oficina › Dispositivos e escolha este modelo.
  • Biblioteca ArduinoAbra o Gerenciador de Bibliotecas no Arduino IDE, procure BlueGraysIoT e instale.
Baixe o app grátis

O plano grátis inclui 1 dispositivo, 1 gráfico e 24 horas de histórico. Com o Premium, você tem mais dispositivos, mais gráficos e histórico mais longo.

Esquema do circuito

ESP32 Interruptor IoT de Lâmpada (Relé) - Circuit

Código-fonte

C++ (Arduino IDE)
1// ─────────────────────────────────────────
2//   BlueGrays · bluegrays.com
3//   ESP32 Interruptor IoT de Lâmpada (Relé)
4// ─────────────────────────────────────────
5// O modelo IoT "Lâmpada com relé" do app BlueGrays: você liga e desliga
6// uma lâmpada com um relé pelo celular. O Ohmi prepara o código de verdade
7// no app com a sua própria chave de dispositivo (Oficina › Dispositivos ›
8// Adicionar dispositivo); o código daqui é um exemplo, a chave do
9// dispositivo e os dados do Wi-Fi são valores de exemplo. Gerenciador de
10// bibliotecas: BlueGraysIoT (com as dependências). A placa só se conecta a
11// redes Wi-Fi de 2,4 GHz. O relé aciona com LOW. Ligue uma lâmpada de
12// 127/220 V só com alguém experiente; teste primeiro com um LED.
13//
14// Pinos:
15//   GPIO26 -> Módulo relé IN
16//   5V, GND -> Módulo relé VCC, GND
17//   Relé COM -> 5V, NO -> 220 ohm -> ânodo do LED, cátodo do LED -> GND
18//   Pico W: relé IN GP15
19
20/*
21 * Lâmpada com relé · BlueGrays IoT
22 * BlueGrays · bluegrays.com
23 * Não compartilhe este código: ele contém a chave do dispositivo e a senha do Wi-Fi.
24 */
25
26#include <BlueGraysIoT.h>
27
28const char *DEVICE_KEY = "SUA_CHAVE_DO_DISPOSITIVO";
29const char *WIFI_NAME = "SUA_REDE_WIFI";
30const char *WIFI_PASSWORD = "SUA_SENHA_WIFI";
31
32BlueGraysIoT bg(DEVICE_KEY);
33
34const int RELAY_PIN = 26;
35const bool RELAY_ACTIVE_LOW = true;  // a maioria dos módulos de relé liga com LOW
36void setRelay(bool on) { digitalWrite(RELAY_PIN, (on != RELAY_ACTIVE_LOW) ? HIGH : LOW); }
37
38void setup() {
39  Serial.begin(115200);
40  pinMode(RELAY_PIN, OUTPUT);
41  setRelay(false);
42  bg.onSwitch("lamba", setRelay);
43  bg.setDebug(Serial);
44  bg.setLanguage(BG_LANG_EN);
45  bg.begin(WIFI_NAME, WIFI_PASSWORD);
46}
47
48void loop() {
49  bg.loop();  // evite delay() longos aqui
50}
51

Perguntas frequentes

Posso enviar o código desta página direto para a placa?

Pode, mas ela não vai se conectar: a chave do dispositivo e os dados do Wi-Fi no código são valores de exemplo. No app, vá em Oficina › Dispositivos › Adicionar dispositivo e escolha Lâmpada com relé; o Ohmi prepara o código com a sua chave, o nome da sua rede e a sua senha. Copie esse código e envie. Depois você vê o código completo em Dispositivo › Código e chave.

Funciona com um Pico W também?

Funciona. Ao adicionar o dispositivo, escolha Pico W como placa; o código continua o mesmo e só muda o pino do relé: o IN do relé vai no GP15 e o VCC no VBUS. No Arduino IDE, instale o pacote "pico" pelo Gerenciador de placas. O circuito e a foto desta página foram feitos com um ESP32.

Posso ligar uma lâmpada de verdade na tomada?

A tensão da tomada (127 V ou 220 V) pode matar e causar incêndio. Teste primeiro com um LED, como nesta página. Se for passar para uma lâmpada de verdade, faça isso com alguém que entenda de eletricidade: plugue fora da tomada, só a fase passa pelos terminais COM e NO do relé, nenhum fio desencapado à mostra, o circuito numa caixa fechada e a potência da lâmpada abaixo do limite impresso no módulo.

O que acontece com a lâmpada depois de uma queda de energia?

Ao ligar, o relé fica primeiro desligado, então a lâmpada nunca acende sozinha. Assim que a placa volta a se conectar ao Wi-Fi e ao servidor, a biblioteca aplica o último estado do app: se a lâmpada estava acesa antes da queda, ela acende de novo; se estava apagada, continua apagada. Se só o Wi-Fi cair com a placa funcionando, a lâmpada fica como está.