Sistema Automatizado de Llenado y Monitorización de Piscina
Este proyecto describe el viaje de un ingeniero DIY para reemplazar un sistema de piscina fallido con una solución totalmente automatizada y dirigida por sensores. Usando una Raspberry Pi, Arduinos de bajo consumo y software open-source, el sistema monitoriza continuamente nivel de agua, temperatura, pH, ORP, presión del filtro, consumo eléctrico y operación de la bomba, rellenando la piscina solo cuando es necesario.
Historia
En el verano de 2015, mis hijos y yo abordamos una cascada de problemas en nuestra piscina doméstica —tuberías defectuosas, válvulas con fugas, filtro deficiente y una empresa de piscinas ineficaz. Reconstruir todo el sistema se convirtió en una misión: limpiar la piscina, instalar nuevos componentes y, lo más importante, dotarla de automatización inteligente.
La Idea
El objetivo central era reemplazar la configuración mecánica antigua con una red de sensores y un centro de control que pudiera gestionar la piscina autónomamente. Elegimos el sistema de gestión Autopilot para conversión a agua salada y dosificación básica de químicos, mientras que la mayor parte de la automatización la manejaba hardware personalizado.
Primeros Pasos
Tras actualizar filtro, bomba y válvulas, introdujimos un sistema basado en Raspberry Pi para leer datos de sensores y accionar la válvula de llenado. La Pi se comunica con microcontroladores alimentados por batería que manejan mediciones de nivel, temperatura y presión.
Automatización – El Comienzo
Necesitábamos una forma de detectar nivel de agua y activar la válvula de llenado. Inicialmente se seleccionó un sensor de resistencia de cinta líquida Milone, pero un fallo por entrada de agua provocó el cambio a una solución de interruptor de flotador de bajo coste. Un Moteino‑R5 de bajo consumo lee el estado del flotador y envía los datos vía transceptor RFM69 a la Pi.
Llenado de la Piscina
El agua se suministra vía el sistema de riego existente. Una válvula de aspersión 24 V AC, controlada por un transformador 240 V a 24 V y un relé de estado sólido ópticamente aislado, se energiza solo cuando la piscina está por debajo del nivel objetivo y los aspersores están inactivos. La API de Rachio se consulta cada minuto para confirmar que ninguna zona de césped está usando agua.
Gestión de Energía
La operación de la bomba se monitoriza mediante un monitor eléctrico Brultech GEM. Cuando la bomba consume más de 5 kW, el sistema suspende el llenado para evitar pérdida de contrapresión. Un UPS MightyHat proporciona respaldo de dos horas para la Pi, y un botón manual "Parar Llenado" apaga el transformador si es necesario.
Suite de Sensores de Monitorización
- Nivel de agua (interruptor de flotador)
- Temperatura de piscina (sonda RTD)
- Presión del filtro (sensor 100 PSI)
- pH y ORP (sensores Atlas Scientific en celda de flujo)
- Carga eléctrica (GEM, máx 5 kW)
- Estado de aspersores (API Rachio)
- Nivel de tanque de ácido (sensor de nivel líquido DFRobot)
Sensor de Nivel de Agua – Nuevo Método
La configuración de interruptor de flotador usa dos flotadores de 1/4″ montados en un recinto estanco. Los flotadores superior e inferior reportan estados abierto/cerrado; el sistema interpreta la combinación como bajo, medio o lleno. El nodo sensor envía un 0, 1 o 2 a la Pi cada minuto.
Sensor de Temperatura – Recinto Flotante
Una sonda de temperatura se coloca en un flotador de cloro que descansa en la superficie de la piscina, asegurando lecturas fiables y protegiendo el sensor de daños accidentales.
Monitorización de Nivel de Ácido
Un sensor de nivel líquido DFRobot en el tanque de ácido dispara una notificación cuando el tanque está bajo, permitiendo recarga manual antes de que el Autopilot pueda añadir ácido.
Interfaz Web
Un panel basado en Flask muestra medidores en tiempo real, LEDs de estado del sistema, salud de batería y controles para llenado manual, programas de bomba y ajustes de notificaciones. La interfaz también aloja una skill Alexa vía Flask‑Ask, permitiendo a usuarios consultar estado de la piscina o iniciar/parar llenado con comandos de voz.
Gráficos Históricos
Los datos de sensores se registran en base de datos MySQL y se reenvían a InfluxDB; Grafana visualiza tendencias de temperatura, pH, ORP y uso de agua. Los paneles ayudan a detectar anomalías y optimizar la química de la piscina.
Notificaciones
El sistema soporta archivos de log, depuración en consola, Pushbullet, email y Twilio SMS. Los usuarios pueden personalizar qué eventos disparan qué canal directamente desde el panel web.
Integración Alexa
Una skill Alexa personalizada, construida con Flask‑Ask, proporciona actualizaciones habladas de temperatura, pH, estado de bomba y puede ordenar al sistema iniciar o parar el llenado.
Conclusión
La versión 3.5.0 del código modulariza la lógica en funciones Python reutilizables, mejorando mantenibilidad y fiabilidad. El proyecto demuestra que un propietario puede reemplazar un sistema de piscina heredado con una pila de automatización open-source, de bajo coste y alta fiabilidad, ofreciendo insights en tiempo real y control manos libres.
Fuente: Pool Fill Control
Proceso de manufactura
- Cómo Funcionan los Aspersores de Césped: Diseño, Historia y Fabricación Moderna
- Guía completa de diseño y construcción de piscinas enterradas y elevadas
- Tecnología del lavavajillas: historia, diseño e innovaciones futuras
- Mesa de Billar: Diseño, Historia y Estándares de Construcción
- La Evolución de las Pistolas de Agua de Acción de Bombeo: De la Invención al Liderazgo Global
- Presas de materiales sueltos: diseño, construcción y perspectivas futuras
- La Evolución, Materiales y Fabricación de los Inodoros Modernos
- Pastillas Anticonceptivas: Historia, Beneficios, Riesgos y Producción
- Hidrantes contra Incendios: Diseño, Fabricación y Papel en la Seguridad Urbana
- Agua: Historia, Tipos y Procesos Modernos de Tratamiento
- Circuitos de Control: Fundamentos, Aplicaciones y Mejores Prácticas