2. Requisitos y restricciones - Carvaa-7/Challenge1_IoT GitHub Wiki
Requisitos y restricciones
Para el desarrollo de HydroSentry tuvimos en cuenta los diferentes requisitos, con tal de poder definir la funcionalidad del sistema y las condiciones a cumplir de este mismo. Además de esto, tuvimos en cuenta las restricciones planteadas en cuanto al funcionamiento del prototipo, los componentes que utilizamos en este y la forma en la cual el sistema podría generar las alertas planteadas.
Requisitos funcionales
HydroSentry debe ser capaz de realizar lo siguiente:
| ID | Requisito |
|---|---|
| R1 | Medir el nivel de agua almacenada. |
| R2 | Medir variables ambientales como temperatura, humedad y presión atmosférica. |
| R3 | Obtener una estimación de la radiación solar mediante un sensor de luz. |
| R4 | Medir el peso del almacenamiento mediante una celda de carga. |
| R5 | Integrar las diferentes variables para determinar un nivel de riesgo hídrico. |
| R6 | Mostrar las variables y el estado del sistema en tiempo real mediante un LCD. |
| R7 | Generar alertas visuales mediante LEDs según el nivel de riesgo. |
| R8 | Generar una alerta sonora mediante un buzzer cuando se presenta una condición de alerta. |
| R9 | Activar una bomba de agua mediante un relé cuando el nivel del tanque alcanza una condición determinada. |
| R10 | Permitir al usuario navegar entre las diferentes pantallas de información mediante botones. |
| R11 | Cambiar automáticamente a la pantalla de riesgo cuando el sistema entra en un estado de alerta alto o crítico. |
Estados de riesgo
El sistema clasifica el riesgo hídrico en cuatro estados: | 0 % – 24 % | 🟢 Normal | | 25 % – 49 % | 🟡 Preventivo | | 50 % – 74 % | 🟠 Alto | | 75 % – 100 % | 🔴 Crítico |
Esta clasificación permite que el quien use el sistema pueda identificar rápidamente el estado actual del sistema.
Cuando el riesgo alcanza el estado Alto, el sistema comienza a generar un sonido como alerta y el LCD cambia automáticamente a la pantalla de riesgo. Si el riesgo llega al estado Crítico, se mantiene esta alerta y el buzzer actúa con una mayor frecuencia, proporcionando un mayor sonido.
Restricciones
Durante el desarrollo de HydroSentry tuvimos que considerar diferentes restricciones para que la solución cumpliera con el reto planteado.
Funcionamiento local
El sistema debe ser capaz de realizar el procesamiento y generar las alertas localmente, sin depender de una conexión a Internet para tomar las decisiones principales.
Componentes disponibles
La solución debe desarrollarse utilizando los componentes seleccionados para el prototipo, por lo que la arquitectura y las conexiones deben adaptarse a las características de cada sensor y actuador.
Visualización y alertas
El sistema debe proporcionar información en tiempo real al usuario mediante una pantalla LCD y utilizar indicadores visuales y sonoros para comunicar las diferentes condiciones de riesgo.
Integración de variables
El nivel de riesgo no debe depender únicamente de una variable, sino que debe utilizar la información obtenida de diferentes variables hidráulicas y ambientales.
Prototipo físico
La solución debe poder llevarse desde la simulación hasta un prototipo físico funcional, manteniendo la misma lógica principal del sistema.
Resumen de cumplimiento
| Elemento | Implementación en HydroSentry |
|---|---|
| Controlador | ESP32 |
| Nivel de agua | HC-SR04 |
| Peso | HX711 + celda de carga |
| Temperatura y humedad | DHT22 |
| Luz / radiación estimada | LDR |
| Presión atmosférica | BMP180 |
| Visualización | LCD |
| Alertas visuales | LEDs |
| Alerta sonora | Buzzer |
| Actuación | Relé + bomba |
| Interacción | Botones |
| Procesamiento | Local en ESP32 |
| Simulación | Wokwi |