Compartir
Portada de Proyecto Eficiencia Energética
Logo de Proyecto Eficiencia EnergéticaProyecto iot · energiasolar

Proyecto Eficiencia Energética

Una app que junta la producción solar, el precio de la luz y los enchufes inteligentes.

2 feb 20262 minde lectura1vista
Tipo
App + API
Integraciones
4 APIs
Desarrollo
2025
Estado
En desarrollo
año
2026

Qué es

Este proyecto junta en una sola app lo que normalmente vive en tres sitios distintos: lo que produce una instalación fotovoltaica con inversor Fronius, lo que cuesta la luz en cada hora y los enchufes inteligentes de la casa. Son dos piezas: un backend en FastAPI con PostgreSQL y una app Flutter.

La idea de fondo es aprovechar el excedente: si las placas producen más de lo que se consume, encender primero lo que más importa en vez de verter esa energía a la red. Los enchufes van por la nube de Tuya, la misma plataforma que uso con la bombilla inteligente Tuya.

Producción en vivo

Lee del inversor Fronius, vía Solar.web, la producción, el consumo, el vertido a red y la batería, y lo refresca cada 10 segundos.

Flujos animados

El inicio dibuja la energía moviéndose entre placas, red, batería y casa, y marca si estás en autoconsumo o pagando luz.

Precio de la luz

Consulta a Red Eléctrica el precio del mercado de la hora actual y lo clasifica en barato, normal o caro.

Enchufes inteligentes

Enciende y apaga enchufes Tuya desde la app a través de su nube, y muestra si cada uno está en línea.

Prioridades

Cada dispositivo guarda su consumo, una foto y una prioridad que se reordena arrastrando la lista.

Cielo según la hora

El fondo cambia con la hora y la producción: nubes de día y, de noche, estrellas, la fase lunar real y estrellas fugaces.

Así se ve la app (datos de demostración)

Inicio de día: flujos y autoconsumo

Inicio de día: flujos y autoconsumo

Dispositivos por prioridad

Dispositivos por prioridad

Resumen energético

Resumen energético

Inicio de noche

Inicio de noche

Editar un dispositivo

Editar un dispositivo

Cómo está hecho

El backend es una API en FastAPI con cuatro grupos de rutas (dispositivos, inversor, tiempo y usuario), todas detrás de un token Bearer. Las claves de Tuya, Fronius y OpenWeather se leen de una tabla de configuración en PostgreSQL, donde también viven el usuario, su instalación (dirección y coordenadas) y sus dispositivos. Habla con cuatro servicios: Fronius Solar.web para los flujos de energía, la OpenAPI de Tuya para leer y conmutar los enchufes, la API pública de Red Eléctrica para el precio y OpenWeather para el tiempo. Hoy corre en local.

La app Flutter tiene cinco pestañas: Inicio, Dispositivos, Power, Estadísticas y Perfil. El inicio se refresca cada 10 segundos y pausa el refresco mientras haces scroll. La ubicación de la instalación, que el perfil toma del GPS del móvil, sirve para pedir el tiempo de ese sitio.

Tres intentos de app

Antes de Flutter probé dos caminos más: React Native con Expo y una app nativa en Kotlin con Retrofit, que ya tenía la lista de dispositivos reordenable. Ambos se quedaron como pruebas en el repositorio. Flutter ganó y es donde está todo el trabajo de interfaz: los flujos de energía animados, el cielo de día y de noche y la gestión de dispositivos.

Estado real

Está en desarrollo y se nota. Lo que funciona: leer el inversor, el precio y el tiempo, encender y apagar enchufes desde la app y ordenar los dispositivos por prioridad. Lo que no: las pestañas Power y Estadísticas son todavía maquetas con marcadores, el inicio de sesión aún no está terminado y, sobre todo, el reparto automático del excedente no existe aún. La prioridad está guardada y se ordena desde la app, pero nada se enciende ni se apaga solo.

Materiales / Compra

Tienda: Datos de producción del inversor vía la API de Fronius Solar.web; enchufes a través de la nube de Tuya; precios del mercado eléctrico de la API pública de Red Eléctrica (REE); meteorología de OpenWeather.

Aprendizajes

La integración con los cuatro servicios está hecha; falta la parte que da sentido al nombre del proyecto: decidir sola qué encender con el excedente y en qué orden.