Renovables: predecir la generación solar con Machine Learning

Curriculum

España es uno de los países europeos con mayor potencial fotovoltaico, pero la generación solar depende de variables meteorológicas difíciles de anticipar con precisión: irradiancia, nubosidad, temperatura. Durante el Bootcamp de Data Science e IA, este proyecto nació de una pregunta concreta: ¿es posible predecir con un modelo de Machine Learning la energía que va a generar una planta fotovoltaica real a partir de datos meteorológicos históricos?

De los datos meteorológicos a un modelo desplegado

Para responder, combiné dos fuentes de datos independientes: los datos de reanálisis meteorológico ERA5 (irradiancia solar sobre la planta fotovoltaica Francisco Pizarro, en Badajoz) y los datos reales de generación publicados por Red Eléctrica Española (REE). Con ambas fuentes entrenė un modelo de Machine Learning capaz de predecir la generación esperada, y lo integré en una aplicación completa con backend, frontend y modelos servidos a través de una API, desplegada en producción.

velocidad de carga

Objetivos del proyecto

El análisis perseguía varios objetivos clave:

  • Validar la relación entre meteorología y generación real: cruzar datos de irradiancia (ERA5) con datos de producción real (REE) para una planta fotovoltaica concreta.
  • Construir un modelo predictivo fiable: entrenar un modelo de Machine Learning capaz de estimar la generación a partir de variables meteorológicas.
  • Ir más allá del notebook: estructurar el proyecto en backend, frontend y modelos como componentes independientes, no como un script aislado.
  • Desplegar en un entorno real: publicar la aplicación en producción para que el modelo fuera accesible y consultable, no solo ejecutable en local.

Retos y soluciones

Durante el desarrollo surgieron varios desafíos:

  • Integrar fuentes de datos heterogéneas: los datos de ERA5 llegan en formato NetCDF (.nc), pensado para datos científicos multidimensionales, mientras que los de REE se gestionan en una base de datos relacional. Se construyó un proceso de extracción y combinación (api.ipynb) para unificar ambas fuentes en un mismo conjunto de entrenamiento.
  • Persistencia y consulta eficiente: almacenar y consultar series temporales de generación de forma ágil requería una capa de datos propia; se implementó una base de datos SQLite (ree_generacion.db) como almacén intermedio.
  • Llevar el modelo a producción: entrenar el modelo era solo el primer paso; se diseñó una arquitectura con backend y frontend separados, y se configuró el despliegue (render.yaml) para publicar la aplicación de forma accesible.

Resultados

El resultado es una aplicación funcional que predice la generación solar fotovoltaica a partir de datos meteorológicos reales, con una arquitectura completa de backend, frontend y modelo desplegada en producción. El proyecto demuestra cómo un caso de uso de energías renovables puede resolverse de principio a fin: desde el dato meteorológico en bruto hasta una predicción accesible en una aplicación real.
El código completo está disponible en el repositorio de GitHub.

Jose Luis Alonso

© 2026 Jose Luis Alonso Redondo

Email