Grid Designer es un simulador gratuito que le permite diseñar y probar una red sin emisiones de carbono para el Reino Unido, y probarla utilizando datos meteorológicos y de demanda del mundo real. Este artículo explica cómo funciona el modelo y lo que podría enseñarnos sobre nuestras elecciones energéticas.
¿Alguna vez te has preguntado qué tan difícil será hacer la transición a la energía verde? 🌍
Con la energía y el clima rara vez fuera del ciclo de noticias, comencé a hacerme estas preguntas. A medida que aprendí más, comencé a pensar en cómo nuestro sistema de energía y nuestras elecciones podrían modelarse en el software.
El resultado de esta exploración es Grid Designer, un juego simple que le permite diseñar su red de energía verde ideal y probarla utilizando la demanda de energía real del Reino Unido y los datos meteorológicos. Funciona mejor en dispositivos móviles y puede probarlo aquí .
Lo divertido de crear software para resolver un problema es que requiere que entendamos el problema lo suficientemente profundo como para describirlo en código. Este artículo explica cómo se construyó el simulador y cómo podemos pensar más claramente sobre las fuentes de energía: sus beneficios, compensaciones y costos.
Si queremos cumplir con nuestras ambiciones climáticas, necesitamos que nuestro sistema eléctrico sea cero en carbono . No mayormente verde , no casi cero – cero .
Por lo tanto, el modelo se centra exclusivamente en fuentes de energía escalables sin emisiones de carbono:
Solar ☀️ (Fotovoltaica)
Eólica 💨 (On-shore & Offshore),
Nuclear ⚛️ (Fisión)
Baterías / Almacenamiento 🔋
Otras fuentes, como la energía hidroeléctrica y geotérmica, solo pueden implementarse en lugares muy seleccionados, por lo que están excluidas. Lo mismo se aplica a tecnologías teóricas como Fusion: por emocionantes que sean, mi atención se centra en las soluciones más plausibles para la crisis climática.
También necesitamos un tiempo de actividad del 100% de nuestra red . La civilización no debe tolerar ni tolerará un paso atrás en los niveles de vida. Si nuestro sistema de energía verde no puede satisfacer la demanda, debemos esperar un retroceso a los combustibles fósiles y un fracaso para llegar a cero CO2. Las comunidades no tolerarán apagones ni racionamientos. Debemos optimizar para la abundancia.
Dadas las rápidas fluctuaciones de la demanda y la intermitencia de algunas fuentes renovables, quería modelar el sistema en alta resolución. Esto significa cada hora durante un año entero.
El simulador se centra en el Reino Unido, pero el software se puede aplicar a cualquier país o grupo de países (naciones con poder de importación y exportación).
El simulador incluye un presupuesto imaginario de £ 400 mil millones. Este número es bastante arbitrario y su propósito es asegurarse de que los jugadores consideren la restricción del capital. ¡El Reino Unido no puede gastar un billón en su red! Temas financieros complejos como la amortización, la vida útil de la unidad y los costos de reciclaje están fuera de su alcance.
Siempre que ha sido posible, me he inclinado hacia el optimismo, ya sea en el costo o en la producción de energía. Este simulador se centra únicamente en la producción y el consumo de energía, lo que significa que no se incluyen temas avanzados como la transmisión eficiente de electricidad.
El objetivo no es crear un modelo de ultra alta fidelidad, sino algo que sea lo suficientemente preciso como para ser informativo y que haga reflexionar.
Vamos a empezar…. ⚡️
¿Cuánta potencia necesitamos? Pude obtener un archivo csv que contenía 10 años de datos de la red nacional registrados en intervalos de 5 m. El archivo era demasiado grande para Excel (>1 millón de filas), así que usé Python para aislar el año 2021 y calculé la demanda promedio cada hora. Convertido en JS se ve algo como esto:
export const uk_grid_demand_2021 = [ // Jan 1st - each value is avg demand by hour, starting at 00:00. (MWs) [28956, 28183, 27092, 26254, 25416, 25050, 25632, 25740, 26609, 28927, 31482, 33423, 34821, 35424, 35540, 36051, 38430, 40352, 39044, 36578, 34266, 32093, 29887, 27168], // Jan 2... etc ]
La demanda varía a lo largo del año y a lo largo del día:
A continuación, veremos cómo podemos modelar fuentes de energía individuales: energía solar, eólica, nuclear, almacenamiento y combustibles fósiles….
solar: { name: 'Solar', unit: 'hectares', unitToMw: 1.2, // 1.2 hectares = 1 MWp capex_per_mw: 0.92, // Million USD per MWp opex_per_mw: 0.017, }
El área es la unidad clave a considerar al escalar la energía solar. A medida que diseñemos nuestra red, definiremos la cantidad de paneles solares que queremos en hectáreas .
Los paneles solares tienen una "capacidad nominal" definida por la unidad Megawatt peak (MWp)
. Una matriz solar de 1 MWp puede generar 1 MW de energía eléctrica en condiciones ideales . La salida real dependerá de factores como la latitud, la orientación y el clima. De estos, la latitud es más importante cuando se diseña una cuadrícula : un panel ubicado en el sur de Francia se acercará mucho más a su rendimiento 'nominal' que el mismo panel ubicado en Escocia.
En Grid Designer, asumí que colocaremos nuestros paneles solares exclusivamente en el sur de Inglaterra, donde hay más energía solar disponible. Según las cifras del gobierno, asumimos que se requieren 1,2 ha de tierra por cada 1 MWp de paneles.
Solar Rated Capacity (MW) = Area in Hectares * 1.2
Para calcular la producción cada hora usamos datos del Global Solar Atlas
Notará cómo la potencia de salida varía a lo largo del día y del año. En los cortos días de diciembre, nuestros parques solares producirán solo una décima parte de la energía que proporcionan en verano. En pleno verano, nuestros paneles solares producirán aproximadamente la mitad de su capacidad nominal al mediodía.
Nota: Nuestros datos de referencia solar se agrupan por mes en lugar del día real. Esto significa que el modelo solar es menos granular que para otras fuentes: todos los días de enero se consideran iguales, luego cambia para febrero, y así sucesivamente. También ignoramos el clima, asumiendo generosamente las condiciones ideales en cada momento .
El simulador utiliza los datos anteriores para calcular la salida por hora de cada día del año: Output = solarOutput[month][hour] * MWp
NB: Puede ver la producción solar del Reino Unido en tiempo real en el sitio web solar de la Universidad de Sheffield .
El costo de los paneles solares fotovoltaicos se ha reducido drásticamente en los últimos 20 años y la energía solar se celebra por sus costos de funcionamiento muy bajos. Nuestras cifras de Capex y Opex se toman de las previsiones del Laboratorio Nacional de Energía Renovable para 2025.
Tenga en cuenta que solo consideramos viables las instalaciones solares a gran escala. La energía solar en los techos es al menos dos veces más costosa por MWp que las granjas solares a gran escala, y no hay suficiente espacio disponible en los techos para satisfacer la demanda a escala nacional. Del mismo modo, los paneles colocados en latitudes más altas son mucho menos rentables que los del sur.
Finalmente, las estimaciones financieras para Solar excluyen los costos de la tierra , que serán significativos dadas las áreas requeridas en lugares como Kent y Cornwall. El modelo tampoco tiene en cuenta los costos ecológicos y de biodiversidad de la reutilización de tierras de cultivo y setos para paneles.
wind_l: { name: 'Onshore Wind', unit: 'Turbines', unitToMw: 4, // ie 4MW Turbines capex: 1.7, // Million USD per MW opex: 0.02, } wind_os: { name: 'Offshore Wind', unit: 'Turbines', unitToMw: 15, // ie 15 MW Turbines capex_per_mw: 6.04, // Million USD per MW opex_per_mw: 0.12, }
Para modelar el viento, estableceremos el número de aerogeneradores terrestres y marinos que nos gustaría construir. El simulador los distribuye en los sitios existentes en todo el Reino Unido y utiliza datos meteorológicos históricos para modelar la producción de energía. Esto se hace cada hora durante todo un año.
Nuestras turbinas en tierra y en alta mar están modeladas en base a información de fuente abierta del Laboratorio Nacional de Energía Renovable.
Los datos históricos de velocidad del viento por hora se recopilaron utilizando la API meteorológica de Visual Crossing. Estos datos se procesaron en python y están disponibles para el sim en un archivo JSON separado.
Los datos meteorológicos indican la velocidad del viento registrada a una altura de 10 m. Sin embargo, la velocidad del viento aumenta con la distancia desde el suelo y será mayor a la altura de una turbina eólica. Esta es la razón por la que las turbinas (y los veleros) tienen mástiles tan altos: cuanto más alto es el mástil, más energía disponible . El aumento en la velocidad del viento depende de la fricción de la superficie circundante, llamada " rugosidad " ( ver aquí para una explicación ).
Para nuestros sitios de turbinas en tierra, asumimos una rugosidad de 0,055 my ajustamos la velocidad del viento para una altura de buje de turbina de 110 m. Para alta mar, asumimos una rugosidad de 0,0002 m y ajustamos la velocidad del viento para una altura de buje de 150 m. Todos los valores se convirtieron a m/s.
El rendimiento operativo de un aerogenerador se describe por su curva de potencia.
Por debajo de la velocidad cut-in
, las aspas no pueden girar y no se genera energía. Por encima de este umbral, la potencia de salida sigue una curva hasta la potencia máxima de la turbina. El valor al que una turbina alcanza su máximo rendimiento es su rated wind speed
. Las turbinas seguirán funcionando cerca de su rendimiento máximo hasta que alcancen su velocidad cut-out
, que es la velocidad del viento a la que el rotor debe aplicar los frenos para evitar daños.
Para crear el simulador, simplifiqué la curva de la curva de potencia a una línea recta :
Para velocidades del viento por encima del valor cut-in
, calculamos la potencia de salida usando la fórmula para una línea recta: y = mx + c
, donde y
es la salida en MW, m
es la pendiente, x
es la velocidad del viento y c
es la y -interceptar.
Los datos de la curva de potencia para nuestras turbinas terrestres y marinas simuladas se tomaron del GitHub de NREL . Los valores se definen en el código de la siguiente manera:
// Onshore Turbine 4MW, 110m const wl_power_curve = { cut_in: 3.25, // m/s rated: 9.75, cut_out: 25, } // Off-Shore Turbine 15MW, 150m const ws_power_curve = { cut_in: 4, rated: 11, cut_out: 25, }
Una ráfaga de viento es un período breve de aumento de la velocidad del viento. Los datos de origen de API incluyen valores para ráfagas que duraron al menos 25 segundos y, en muchos casos, estos son mayores que la velocidad del viento cut-out
la turbina. Sin embargo, no pude encontrar datos consistentes de los fabricantes sobre cómo responden exactamente las turbinas a las ráfagas y, por lo tanto, las excluí de nuestro modelo. El tiempo de inactividad por mantenimiento de las turbinas es pequeño (~24 h por año) y también se ha excluido.
Las turbinas modernas son capaces de girar de cara al viento en cualquier dirección, por lo que suponemos que lo hacen de forma inmediata y perfecta. Cuando el aire pasa a través de la superficie de una pala, crea turbulencia o una estela , lo que reduce la energía disponible para cualquier turbina aguas abajo. Los parques eólicos están diseñados para minimizar esto mediante el posicionamiento de las turbinas para optimizar la dirección del viento predominante (más común). Por lo tanto, estos efectos suelen ser pequeños y no los he incluido en el modelo.
En el transcurso de este trabajo, me sorprendió saber que los valores de la velocidad del viento no son promedios . En cambio, son la velocidad del viento sostenida más alta en ese período de tiempo . Por lo tanto, si la API dice que la velocidad del viento fue de 15 m/s el martes, solo podemos estar seguros de que este umbral se registró una vez en todo el día. La velocidad media del viento puede haber sido mucho menor.
Esto tiene implicaciones importantes para cualquier modelo, ya que el uso de valores diarios de velocidad del viento conduce a sobreestimaciones enormes de la producción de energía . Considere el siguiente ejemplo real:
En la línea roja, podemos ver la velocidad del viento 'diaria' de 5,3 m/s. Si se usa cada hora del día, la turbina opera al 30% de su salida nominal (área sombreada en rojo). Sin embargo, si observamos los datos por hora para el mismo día en azul, podemos ver que durante la mayoría de las horas, la velocidad máxima del viento registrada no alcanzó el umbral de activación de las turbinas, y la energía total producida fue mucho menor (área sombreada en azul ).
El viento es intermitente, por lo que la resolución de grano fino es esencial para comprender el rendimiento de las turbinas.
Cada hora calculamos la producción de viento de la siguiente manera para cada sitio:
// installed_mw = number of turbines * MW rating of turbine. const m = 1 / (power_curve.rated - power_curve.cut_in) const c = -1 * m * power_curve.cut_in let output; if (windData[d][h] < power_curve.cut_in) { output = 0 } else if (windData[d][h] > power_curve.cut_out) { output = 0 } else if (windData[d][h] >= power_curve.rated) { output = installed_mw } else { // y = mx + c; x=wind speed, y=power output, c = y-intercept let y = m * windData[d][h] + c // Fraction of rated output output = y * installed_mw } return output
Este código encuentra el gradiente ( m ) y la intersección y ( c ) de nuestra curva de potencia simplificada. Si la velocidad del viento está por encima del umbral de activación y por debajo del umbral nominal, calcula la fracción de salida máxima ( y ) en función de la velocidad del viento y la utiliza para devolver la salida en MW.
En la actualidad, el simulador proporciona datos para solo 1 sitio de parque eólico en tierra y 1 en alta mar ( Scout Moor & Hornsea ), ¡y esto es ciertamente una limitación! Al agregar más sitios, podríamos mitigar el riesgo de días con poco viento en la red simulada: si el viento no sopla en Hornsea, puede estar soplando desde la costa de Kent o Aberdeenshire. Esta estrategia es válida, pero requiere que construyamos en exceso en cada sitio para compensar los demás, lo que aumenta los costos y no ayudaría en los días en que la velocidad del viento es baja en una gran cantidad de sitios .
Las suposiciones de costos se toman de la Agencia de Información de Energía de EE. UU .
Establecemos el número de turbinas que deseamos construir en tierra y en alta mar.
Ubicamos nuestras turbinas en sitios de parques eólicos existentes en todo el Reino Unido y usamos datos meteorológicos reales de 2022 para calcular la producción.
En la actualidad sólo 2 sitios están disponibles para la simulación.
La velocidad del viento se ajusta según la altura de cada turbina y la "rugosidad" de la tierra/mar circundante.
Usamos una curva de potencia simplificada para calcular el rendimiento de la turbina.
La salida se modela por hora, los 365 días del año.
Se ignoran los efectos de las ráfagas y la estela de la turbina.
nuclear: { capacity_factor: 0.9, capex_per_mw: 7.0, opex_per_mw: 0.13, }
La energía nuclear es un tema divisivo y, lamentablemente, no todas las críticas que se le hacen están respaldadas por la evidencia. Entraré en detalles en una publicación diferente, pero creo que un buen resumen de la tecnología sería observar lo siguiente:
La energía nuclear es generalmente más costosa y requiere más tiempo de construcción en comparación con otras fuentes. Sin embargo, produce enormes cantidades de energía sin carbono, con un tiempo de actividad extremadamente alto, a costos marginales bajos por MW.
Grid Designer modela la energía nuclear en términos de 'centrales eléctricas', utilizando como referencia el Sizewell C puesto en servicio recientemente. Usando un diseño PWR bien establecido, sus dos reactores proporcionarán un total de 3200MW de energía durante su vida útil de 60 años.
Hay otros diseños de reactores nucleares con diferentes costos y perfiles de producción. Estos incluyen reactores modulares pequeños (SMR) y reactores de sales fundidas (MSR), sin embargo, ninguno de estos está tan bien establecido como los PWR y, por lo tanto, no se incluyen como una opción en nuestro simulador.
La energía nuclear tiene un factor de capacidad extremadamente alto. La única vez que un reactor no produce energía es cuando se apaga para mantenimiento programado o recarga de combustible. Dado que estos cierres son eventos planificados, adoptaremos un enfoque simplista de cómo lo modelamos: asumiendo un factor de capacidad del 90 % y aplicando este descuento a la producción durante todo el año.
Hourly output = 3200 * Number of Stations * 0.9
Las centrales nucleares proporcionan energía de referencia predecible:
Se observa un patrón estable similar en los datos de Grid reales del Reino Unido.
El costo de construir y operar una planta de energía nuclear se debate acaloradamente, con algunos sobrecostos de proyecto infames. Los detractores argumentan que esto demuestra la inviabilidad de la tecnología, mientras que los defensores señalan la importancia de una inversión constante. Corea del Sur se cita a menudo como un ejemplo de una nación que ha sido capaz de construir su flota nuclear con mayor velocidad y costos decrecientes . Las estimaciones de costos de Grid Designer nuevamente se toman de la Agencia de Información de Energía de EE. UU ., y debe entenderse que los costos operativos incluyen el combustible y la eliminación segura de los desechos .
3200*0.9
storage: { name: 'Battery Storage (Li-Ion)', unit: 'MWh', capex_per_mw: 0.2, // Million USD per MWh opex_per_mw: 0.025 }
El almacenamiento de electricidad es esencial para las redes que dependen de las energías renovables: los apagones no son aceptables, por lo que se necesitan baterías para compensar cualquier déficit causado por la intermitencia del viento y la energía solar.
Los sistemas de baterías tienen una salida nominal : la cantidad máxima de energía que pueden proporcionar en un momento dado ( megavatios ) y un valor de capacidad independiente ( megavatios por hora ). Por lo tanto, un sistema de batería de 60MW/240MWH completamente cargado puede entregar 60MW durante 4 horas, o 30MW durante 8 horas, etc.
Para simplificar, decidí ignorar la salida nominal y concentrarme únicamente en la capacidad. Esto significa que asumimos que nuestras baterías siempre pueden satisfacer la demanda de salida y solo están limitadas por su capacidad (en MHW) . También ignoramos factores como el tiempo de ciclo y el sobrecalentamiento.
Dado que nuestra red requiere aproximadamente 30 GW de energía cada hora, esto significa que necesitaríamos una instalación de 30 000 MWH para satisfacer 1 hora de demanda solo con almacenamiento, ¡esto es mucho!
Nuestras baterías se cargan o se descargan según haya o no déficit o excedente de energía disponible para esa hora. El código del simulador por hora se ve así:
let d = demand[day][hour]; let s = solar_output + wind_l_output + wind_os_output + nuclear_output; let balance; //demand exceeds supply if (d >= s) { const deficit = ds // ...code to drain batteries } //supply exceeds demand else if (d < s) { const surplus = s - d // ...code to charge batteries with the surplus } return balance
Se debate el costo de las baterías y su costo futuro previsto. El modelo utiliza predicciones del Laboratorio Nacional de Energía Renovable y asume un valor muy optimista de $200 por KWH para iones de litio. En realidad, es dudoso que ese precio pueda mantenerse si se compran e implementan baterías a escala de red. Por ejemplo, alimentar el Reino Unido durante solo 12 horas (con nuestro nivel de demanda actual) requeriría una solución de almacenamiento de ~420 GWH, ¡más que la producción mundial anual de baterías de iones de litio! Finalmente, también vale la pena señalar que cualquier batería de este tipo probablemente deba reemplazarse cada 5 años.
Las tecnologías alternativas de almacenamiento a escala de red como las baterías de flujo redox de vanadio (VRBF) tienen etiquetas de precios proyectadas similares, y nuestro modelo es lo suficientemente simple como para que se las pueda considerar intercambiables. Las baterías Iron Air son una tecnología que se prevé que sea significativamente más barata, pero aún no han entrado en producción a gran escala.
Vale la pena recordar que cada centavo gastado en almacenamiento es un centavo que podría haberse gastado en producción de energía.
fossil_co2_mwh = 233 // Kg CO2
Siempre que nuestra red de energía verde no pueda satisfacer la demanda, recurriremos a los combustibles fósiles . Suponemos un resultado optimista de 233 kg de CO2 por MWH de electricidad de combustibles fósiles mediante el uso de gas natural ( fuente ). NB: el promedio actual del Reino Unido es > 500 kg.
Grid Designer considera que cualquier emisión de CO2 es un fracaso ; en otras palabras, queremos desmantelar por completo la infraestructura de combustibles fósiles del Reino Unido. Aunque la misión principal es cero neto , el costo de eliminar el CO2 de la atmósfera, una vez emitido, es muy alto ($ 100-300 millones por Mt), por lo que es mucho mejor no quemarlo en primer lugar.
El simulador genera un gráfico de 'tiempo de actividad verde' (¡inspirado en github!). Muestra todos los días del año y brinda una referencia visual para mostrar cuántas horas la red funcionó con energía sin carbono:
El simulador también proporciona un resumen del rendimiento de su red, incluida una opción para análisis diarios.
Al evaluar el rendimiento, el sim está evaluando la producción de energía efectiva .
Esta ha sido una inmersión profunda en el pensamiento técnico detrás del simulador. Guardaré mis conclusiones políticas para otro post. Por ahora, después de haber investigado el tema con cierta extensión, simplemente observaré lo siguiente:
¡Los comentarios, las opiniones, las refutaciones, las correcciones y los contrafactuales son bienvenidos en los comentarios!