Controle Inteligente de Iluminação com ESP8266 e LDR

Controlar iluminação de forma inteligente usando ESP8266 e sensor de luminosidadeSistema de controle de luzes com ESP8266 e temporizadorSistema de controle de luzes com ESP8266 e temporizadorDescubra como montar e programar um sistema inteligente de automação residencial com ESP8266, relê, sensor de luminosidade e RTC DS3231. é a base para sistemas de automação residencial eficientes. Este projeto combina eletrônica analógica, processamento digital e IoT para criar um sistema que ajusta luzes automaticamente conforme a luminosidade ambiente, com possibilidade de intervenção remota. Além de aumentar o conforto, a solução pode economizar até 30% de energia elétrica, como demonstrado no exemplo prático de acionamento de lâmpadas ao entardecer e desligamento ao amanhecer.

Conteúdo🔗

1. Componentes Necessários

2. Montagem do CircuitoDetector de fumaça com ESP8266 e alarme sonoroDetector de fumaça com ESP8266 e alarme sonoroMonte um detector de fumaça inteligente com ESP8266 e MQ-2. Tutorial que ensina montagem, programação e integração IoT para sistemas residenciais.

3. Programação do ESP8266Monitor de nível de água com ESP8266 para reservatóriosMonitor de nível de água com ESP8266 para reservatóriosAprenda a monitorar e gerenciar reservatórios com sensores, ESP8266 e integração IoT em aplicações agrícolas e residenciais, de forma prática e precisa.

4. Calibração do Sensor de LuminosidadeSistema de controle de luzes com ESP8266 e temporizadorSistema de controle de luzes com ESP8266 e temporizadorDescubra como montar e programar um sistema inteligente de automação residencial com ESP8266, relê, sensor de luminosidade e RTC DS3231.

5. Lógica de Controle Automático

6. Integração com Wi-Fi e MQTTSistema de controle de cortinas automatizadas com ESP8266Sistema de controle de cortinas automatizadas com ESP8266Descubra como automatizar cortinas com ESP8266. Aprenda componentes, montagem, programação e integração IoT para conforto e eficiência energética.

7. Implementações Avançadas

8. Testes e Otimização

Componentes Necessários🔗

ComponenteEspecificações TécnicasFunção no Projeto
ESP8266 (NodeMCU)80-240 MHz, 4MB Flash, Wi-Fi 802.11 b/g/nProcessamento e comunicação Wi-Fi
Sensor LDR (GL5528)Faixa: 8-20 kΩ (luz) / 1-2 MΩ (escuro)Medição da luminosidade ambiente
Módulo Relé 5VContato NA/NF, 10A 250VACAcionamento de cargas elétricas
Resistores10kΩ (pull-down), 220Ω (LED)Condicionamento de sinal do LDR
Protoboard e Jumpers-Conexões temporárias
Fonte de Alimentação5V 2A (USB ou externa)Alimentação do circuito
📌 Dica prática: Use um LDR com curva logarítmica (como o GL5528) para melhor resposta em ambientes com variações sutis de luz.

Montagem do Circuito🔗

Diagrama de Fluxo e Conexões

graph TD A[Sensor LDR] -->|Variação de resistência| B(Divisor de Tensão) B --> C[Entrada Analógica do ESP8266] C --> D{Processamento} D -- Se escuro --> E[Acionar Relé/LED] D -- Se claro --> F[Desligar Relé/LED]

Esquema Elétrico Detalhado

graph LR A[ESP8266] -->|A0| B(LDR + Resistor 10kΩ) A -->|D1| C[Módulo Relé] C --> D(Lâmpada 220V) A -->|3.3V| E[LED Indicador] E -->|Resistor 220Ω| F(GND)

Passo a Passo:

1. Conecte o LDRSistema de controle de cortinas automatizadas com ESP8266Sistema de controle de cortinas automatizadas com ESP8266Descubra como automatizar cortinas com ESP8266. Aprenda componentes, montagem, programação e integração IoT para conforto e eficiência energética. em série com um resistor de 10kΩ entre 3.3V e GND, formando um divisor de tensão.

2. Leia a tensão no ponto médio (pino A0 do ESP8266Sistema de automação residencial com ESP8266 e controle de luzesSistema de automação residencial com ESP8266 e controle de luzesEste tutorial aborda a implementação de automação residencial com ESP8266, destacando segurança, eficiência energética, integração MQTT e interface web.).

3. Conecte o reléSistema de controle de bomba de água com ESP8266 para fontes decorativasSistema de controle de bomba de água com ESP8266 para fontes decorativasAprenda a automatizar bombas de água usando ESP8266, com isolamento seguro, controle PID e integração IoT via web, MQTT e API para automação residencial. ao pino D1 para controle da lâmpada 220V.

⚠️ Atenção: Isole todas as conexões de alta tensão (220V) usando caixa protetora e verifique a polaridade do relé.

Programação do ESP8266🔗

Código Base com Wi-Fi e MQTT

#include <ESP8266WiFi.h>
#include <PubSubClient.h>
#define LDR_PIN A0
#define RELAY_PIN D1
#define LUMINOSITY_THRESHOLD 500  // Valor calibrado
WiFiClient espClient;
PubSubClient client(espClient);
void setup() {
  pinMode(RELAY_PIN, OUTPUT);
  Serial.begin(115200);
  connectWiFi("SSID", "SENHA");  // Configure suas credenciais
  client.setServer("mqtt.broker.com", 1883);
}
void loop() {
  int sensorValue = analogRead(LDR_PIN);
  bool lightNeeded = (sensorValue < LUMINOSITY_THRESHOLD);
  digitalWrite(RELAY_PIN, lightNeeded ? HIGH : LOW);
  client.publish("casa/luminosidade", String(sensorValue).c_str());
  delay(1000);
}

Explicação das Funções:

Calibração do Sensor de Luminosidade🔗

Método Científico com Luxímetro

1. Meça a intensidade luminosa em lux usando um luxímetro profissional.

2. Relacione os valores do ADC com a equação do divisor de tensão:

$$ V_{out} = V_{cc} \times \frac{R_{LDR}}{R_{LDR} + 10k\Omega} $$

Tabela de Referência Prática

Condição de LuzValor ADC (0-1023)Ação
Luz direta do sol150-300Relé desligado
Anoitecer450-600Relé ligado
Noite total800-1023Relé ligado
📌 Dica: Use um potenciômetro multivoltas durante a calibração para ajustes finos.

Lógica de Controle Automático🔗

Implementação de Histerese para Estabilidade

#define HYSTERESIS 50
int previousState = LOW;
void updateLight() {
  int currentValue = analogRead(LDR_PIN);
  if (currentValue > (LUMINOSITY_THRESHOLD + HYSTERESIS)) {
    previousState = LOW;
  } else if (currentValue < (LUMINOSITY_THRESHOLD - HYSTERESIS)) {
    previousState = HIGH;
  }
  digitalWrite(RELAY_PIN, previousState);
}

Teoria: A histereseSistema de controle de cortinas automatizadas com ESP8266Sistema de controle de cortinas automatizadas com ESP8266Descubra como automatizar cortinas com ESP8266. Aprenda componentes, montagem, programação e integração IoT para conforto e eficiência energética. evita oscilações rápidas do relé criando uma "zona morta" entre os limites de ativação (ex.: 500 ± 50).

Integração com Wi-Fi e MQTT🔗

Dashboard Node-RED para Monitoramento

[{"id":"mqtt-in","type":"mqtt in","z":"flow1","name":"","topic":"casa/luminosidade","broker":"","x":300,"y":200,"wires":[["chart","gauge"]]}]

Comandos Remotos Via MQTT

  • Controle Manual: Envie ON/OFF para o tópico casa/luz/set.
  • Ajuste de Limiar: Envie {"threshold":500} para casa/luz/config.

Implementações Avançadas🔗

Controle de Intensidade via PWM

analogWrite(RELAY_PIN, map(sensorValue, 0, 1023, 0, 255));  // Usando MOSFET

Monitoramento de Consumo Energético

#include "EmonLib.h"
EnergyMonitor emon;
void setup() {
  emon.current(A0, 30);  // Calibração: 30 mV/A
}
void loop() {
  double current = emon.calcIrms(1480);
  client.publish("casa/energia", String(current * 220).c_str());  // Potência em Watts
}

Integração com Google Assistant/HomeKit

mosquitto_sub -t "casa/luz/set" | xargs -I {} curl -X POST http://localhost:8123/api/services/light/turn_{}

Testes e Otimização🔗

Ferramentas Recomendadas

Modelo 3D para Enclosure

difference() {
  cube([80, 50, 25], center=true);
  translate([0,0,2]) cube([76, 46, 24], center=true);
}

Conclusão🔗

Este sistema oferece uma base escalável para automação residencial, combinando eletrônica analógica, processamento digital e IoT. Para aprimoramentos, considere adicionar sensores de presença, integração com calendários ou controle de persianas automatizadas. Experimente ajustar parâmetros como histereseSistema de controle de cortinas automatizadas com ESP8266Sistema de controle de cortinas automatizadas com ESP8266Descubra como automatizar cortinas com ESP8266. Aprenda componentes, montagem, programação e integração IoT para conforto e eficiência energética. e limiares para adaptar o projeto ao seu ambiente, explorando todo o potencial da iluminação inteligente!

Autor: Marcelo V. Souza - Engenheiro de Sistemas e Entusiasta em IoT e Desenvolvimento de Software, com foco em inovação tecnológica.

Referências🔗

Compartilhar artigo

Artigos Relacionados