02. Contexto problema y objetivos - diegogopa/Challenge-IOT GitHub Wiki

2. Contexto, problema y objetivos

2.1 Contexto

En junio de 2026 el Gobierno Nacional y el IDEAM confirmaron el inicio anticipado del fenómeno de El Niño, asociado a altas temperaturas, disminución de precipitaciones y aumento de la evaporación potencial por radiación solar [1]. En Cundinamarca, la CAR identificó 20 municipios en nivel de riesgo extremo por desabastecimiento hídrico e incendios forestales [2], y las autoridades distritales tipificaron 16 escenarios de riesgo para la región metropolitana, entre los cuales el desabastecimiento de agua potable y la caída del nivel de los embalses son de los de mayor impacto [3]. La Gobernación ordenó planes de contingencia orientados a robustecer el monitoreo hidrometeorológico continuo [4].

En la provincia de Sabana Centro, la sobredemanda de agua para actividades industriales y distritos de riego agrava esta presión sobre las fuentes locales.

2.2 Problema

La identificación de condiciones de escasez depende de mediciones periódicas o de redes institucionales que no cubren todos los puntos locales de almacenamiento (tanques comunitarios, reservorios de riego, acueductos veredales).

Además, una única variable no basta para representar la situación. Un nivel bajo es más preocupante si simultáneamente hay temperatura alta, humedad baja y radiación UV elevada (evaporación alta), o si la presión atmosférica está cayendo; y un descenso rápido del nivel puede deberse a evaporación o a una fuga, que requieren respuestas distintas.

Por esta razón, se propone un sistema de bajo costo que mida simultáneamente variables hidráulicas y meteorológicas, las combine mediante una lógica de fusión y genere alertas tempranas tanto en el sitio como en un tablero de control local para las autoridades.

2.3 Pregunta guía

¿Cómo diseñar un sistema IoT que mida y analice en tiempo real el nivel y/o caudal del agua, la evaporación potencial y variables meteorológicas (radiación solar, temperatura, humedad y presión atmosférica) en la región Sabana Centro (Cundinamarca), que combine múltiples señales ambientales críticas mediante lógica de fusión para generar alertas válidas y emita alertas tempranas "in situ" y en un "tablero de control" local a las autoridades locales de manera efectiva?

2.4 Objetivo general

Desarrollar un prototipo IoT de bajo costo basado en ESP32, listo para instalar en un punto de almacenamiento de agua, que mida el nivel de agua y variables meteorológicas, las combine mediante lógica de fusión para detectar sequía, desborde, fugas y fallas de sensores, y emita alertas in situ y en un tablero de control web alojado en el propio dispositivo dentro de la WLAN de la zona.

2.5 Objetivos específicos

  1. Medir la distancia entre el sensor y la superficie del agua con un HC-SR04 y convertirla en un nivel porcentual filtrado (mediana + EMA).
  2. Medir temperatura y humedad relativa con un DHT22.
  3. Medir la radiación UV con un GUVA-S12SD y expresarla como índice y categoría UV.
  4. Medir la presión atmosférica con un BMP180 y calcular su tendencia en una ventana de 3 horas.
  5. Calcular un índice de evaporación potencial a partir de temperatura, humedad y UV.
  6. Diseñar una lógica de fusión basada en reglas que combine nivel, tasa de cambio, evaporación y tendencia de presión para clasificar el estado como OK, SEQUIA, DESBORDE, FUGA o ERROR_SENSOR.
  7. Detectar la desconexión o falla de cada sensor, la pantalla y la red, y recuperarse automáticamente.
  8. Ejecutar la medición en un hilo (tarea FreeRTOS) diferente al hilo principal.
  9. Emitir alertas in situ mediante pantalla OLED y buzzer, sin depender de la red.
  10. Alojar en el ESP32 un tablero de control web con valor actual, histórico, eventos y desactivación de la alarma física, restringido a dispositivos autorizados de la WLAN.
  11. Integrar el prototipo en una carcasa apta para instalación en campo.
  12. Validar la solución mediante un banco de pruebas: calibración, emulación acelerada, lógica de fusión, notificaciones, robustez y repetibilidad.