Die ausführliche Fallstudie ist auf Spanisch verfügbar.
Logros
- Riego por ciclos de 30 s con pausa de absorción hasta el umbral
- Umbrales ajustables desde la web que sobreviven a un reinicio
- Panel web en el propio ESP32 con histórico de 48 h en Chart.js
- Bomba gobernada sin relé, con transistor y diodo de protección
Contexto
Proyecto personal para automatizar el riego de las plantas de casa: medir la humedad real de la tierra en lugar de regar a ciegas por horario, y poder controlarlo desde el móvil.
Mi rol
Lo hice de principio a fin: elegí y monté los componentes, programé el firmware en C++ con Arduino IDE y diseñé el panel web que sirve el propio ESP32.
Qué construí
Lógica de riego
El sensor mide la humedad cada hora. Si está por debajo del mínimo (30 % por defecto), la bomba riega 30 segundos, se detiene un minuto para que la tierra absorba el agua y vuelve a medir; repite el ciclo hasta llegar al máximo (70 % por defecto). Entre los dos umbrales no hace nada y espera a la siguiente medición.
Panel web
El ESP32 sirve una web en la red local con la humedad actual y el estado, control manual (iniciar y parar el riego en cualquier momento), los umbrales configurables y un gráfico con las últimas 48 lecturas hecho con Chart.js. La interfaz se actualiza cada 5 segundos. Los umbrales se guardan en la memoria del ESP32 y se conservan aunque se reinicie; el histórico se borra al reiniciar.
Hardware
- Microcontrolador ESP32
- Sensor de humedad del suelo resistivo con módulo LM393 (salida analógica)
- Bomba sumergible JT-DC3V-4.5 (3–5 V, 180 mA) controlada sin relé: transistor 2N2222A con diodo de protección (flyback) 1N4007
Resultado
El riego funciona de forma autónoma y se puede vigilar y ajustar desde cualquier dispositivo de la red de casa.
Qué demuestra
- Capacidad de llevar un sistema completo de la idea al funcionamiento: electrónica, firmware y web
- Traducir una regla de negocio (regar solo cuando hace falta, sin encharcar) a una máquina de estados
- Persistencia de configuración y diseño de una interfaz de control sencilla