Automatize Controle de Luzes: ESP8266 e Sensor de Presença
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 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🔗
2. Montagem do CircuitoDetector 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ó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 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 ESP8266Descubra como automatizar cortinas com ESP8266. Aprenda componentes, montagem, programação e integração IoT para conforto e eficiência energética.
Componentes Necessários🔗
Componente | Especificações Técnicas | Função no Projeto |
---|---|---|
ESP8266 (NodeMCU) | 80-240 MHz, 4MB Flash, Wi-Fi 802.11 b/g/n | Processamento 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é 5V | Contato NA/NF, 10A 250VAC | Acionamento de cargas elétricas |
Resistores | 10kΩ (pull-down), 220Ω (LED) | Condicionamento de sinal do LDR |
Protoboard e Jumpers | - | Conexões temporárias |
Fonte de Alimentação | 5V 2A (USB ou externa) | Alimentação do circuito |
Montagem do Circuito🔗
Diagrama de Fluxo e Conexões
Esquema Elétrico Detalhado
Passo a Passo:
1. Conecte o LDRSistema 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 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 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.
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:
- Leitura Analógica:
analogRead(LDR_PIN)
converte a resistência do LDRSistema 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 valor digital (0-1023).
- Controle de Saída: Aciona o relé
Sistema 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. via
digitalWrite()
com base no limiar pré-definido. - Comunicação MQTT
Simulador de tráfego com ESP8266Explore a plataforma inovadora que integra simulação de tráfego, IoT, protocolos avançados e modelagem matemática para controle dinâmico e preditivo.: Publica dados para monitoramento remoto
Dashboard de monitoramento remoto com ESP8266Aprenda a criar um dashboard IoT com ESP8266, integrando sensores, segurança avançada e otimização de comunicação para monitoramento remoto eficiente. em tempo real.
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:
Tabela de Referência Prática
Condição de Luz | Valor ADC (0-1023) | Ação |
---|---|---|
Luz direta do sol | 150-300 | Relé desligado |
Anoitecer | 450-600 | Relé ligado |
Noite total | 800-1023 | Relé ligado |
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 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ópicocasa/luz/set
. - Ajuste de Limiar: Envie
{"threshold":500}
paracasa/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
- Multímetro: Verifique a tensão no divisor resistivo (3.3V esperado em condições padrão).
- Osciloscópio: Analise ruídos no sinal do LDR
Sistema 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. (filtro RC recomendado se necessário).
- Wireshark: Monitore pacotes MQTT
Sistema 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. para otimizar QoS e latência.
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 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🔗
- Documentação Wiki do ESP8266: github.com/esp8266/esp8266-wiki/wiki
- ESP8266.com Community Forum: www.esp8266.com/viewforum.php?f=5
- GitHub - ESP8266 Community: github.com/esp8266/Arduino
- Random Nerd Tutorials: randomnerdtutorials.com/projects-esp8266/
- Site Oficial da Espressif: www.espressif.com/en/products/socs/esp8266