Automatizar tu hogar ya no requiere sistemas caros ni técnicos especializados. Con un Arduino o ESP32 y cuatro sensores básicos puedes construir un sistema de domótica funcional por una fracción del costo de las soluciones comerciales. Esta guía te llevará desde el concepto hasta el código funcionando.
¿Qué Necesitas para Empezar?
Hardware Esencial
- Arduino Uno R3 (control local sin WiFi) o ESP32 (con WiFi para control remoto)
- Sensor DHT11 — temperatura y humedad
- Módulo relé optoacoplado — para controlar cargas de 220V AC
- Sensor PIR HC-SR501 — detección de movimiento
- Sensor LDR KY-018 — nivel de iluminación
Conexiones Básicas
| Sensor | Pin Arduino | Notas |
|---|---|---|
| DHT11 (DATA) | Pin 2 | Resistencia pull-up 10kΩ a VCC |
| PIR (OUT) | Pin 3 | Alimentar con 5V |
| LDR | A0 (analógico) | Divisor de voltaje con resistencia 10kΩ |
| Relé (IN) | Pin 6 | NUNCA toques los terminales AC con energía |
Código Arduino Completo
#include "DHT.h"
#define DHT_PIN 2
#define PIR_PIN 3
#define LDR_PIN A0
#define RELAY_PIN 6
DHT dht(DHT_PIN, DHT11);
void setup() {
Serial.begin(9600);
dht.begin();
pinMode(PIR_PIN, INPUT);
pinMode(RELAY_PIN, OUTPUT);
digitalWrite(RELAY_PIN, LOW);
}
void loop() {
float temp = dht.readTemperature();
float hum = dht.readHumidity();
int motion = digitalRead(PIR_PIN);
int light = analogRead(LDR_PIN);
if (!isnan(temp)) {
Serial.print("Temp: "); Serial.print(temp); Serial.print("°C | ");
Serial.print("Hum: "); Serial.print(hum); Serial.print("% | ");
}
// Encender luces automáticamente si hay movimiento y poca luz
if (motion == HIGH && light < 300) {
digitalWrite(RELAY_PIN, HIGH); // Enciende la luz
Serial.println("Luz ON");
} else {
digitalWrite(RELAY_PIN, LOW);
Serial.println("Luz OFF");
}
delay(2000);
}
Integración con Home Assistant via MQTT (ESP32)
Para control remoto desde tu teléfono, usa el ESP32 en lugar del Arduino Uno. La librería ArduinoHA permite descubrimiento automático de dispositivos en Home Assistant:
- Instala la librería
ArduinoHAdesde el gestor de librerías del IDE - Configura un broker MQTT local (Mosquitto en Raspberry Pi o en el servidor de Home Assistant)
- El ESP32 publicará los datos del DHT11 y recibirá comandos para el relé
⚠️ Seguridad Eléctrica
Si vas a controlar cargas de 220V AC (luces, ventiladores, enchufes):
- Usa siempre módulos de relé con optoacoplador para aislar el circuito de control del de potencia
- Nunca toques los terminales AC mientras el sistema está energizado
- Usa cables y terminales apropiados para la corriente que manejarás
Encuentra todos los componentes para tu proyecto de domótica en Especificar.cl. Ver también: Guía completa del ESP32 para proyectos IoT.