Difference between revisions of "PowerLight"

From RevSpace
Jump to navigation Jump to search
(The concept)
(Power generation data)
Line 23: Line 23:
  
 
TenneT is the organisation that supplies ENTSO-E with data from the Netherlands.
 
TenneT is the organisation that supplies ENTSO-E with data from the Netherlands.
 
==== The solar power problem ====
 
In particular the solar power fraction is incomplete, but also the biomass figures are missing. See:
 
* https://berthub.eu/articles/posts/dutch-electrical-power-figures-2/ (text)
 
* https://energy-charts.info/charts/energy_pie/chart.htm?l=en&c=NL note how the solar part is tiny
 
 
There is a model to estimate this fraction at https://api.netanders.io/, however you cannot use this API without a key (and you can't just get a key).
 
 
Some ideas to fix this gap somewhat:
 
* Correlate official reported solar data with the model, and extract a kind of tennet-reported->best-guess-actual multiplication factor
 
* Use [https://transparency.entsoe.eu/generation/r2/dayAheadGenerationForecastWindAndSolar/show?name=&defaultValue=false&viewType=GRAPH&areaType=CTY&atch=false&dateTime.dateTime=11.07.2022+00:00|CET|DAYTIMERANGE&dateTime.endDateTime=11.07.2022+00:00|CET|DAYTIMERANGE&area.values=CTY|10YNL----------L!CTY|10YNL----------L&productionType.values=B16&processType.values=A18&processType.values=A01&processType.values=A40&dateTime.timezone=CET_CEST&dateTime.timezone_input=CET+(UTC+1)+/+CEST+(UTC+2) yesterday's solar prediction] data from ENTSO-E. The number seen here seems to correlate reasonably well with the number shown at https://energieopwek.nl/ (which bases itself on the netanders model)
 
  
 
Information about ENTSO-E generation domain API:
 
Information about ENTSO-E generation domain API:
Line 42: Line 31:
  
 
ENTSO-E numbers the production types from B01 to B20 ("PsrType"), how these are filled for the netherlands:
 
ENTSO-E numbers the production types from B01 to B20 ("PsrType"), how these are filled for the netherlands:
* B01 (biomass): always 0
+
* B01 (biomass): always 0, not useful
 
* B02: not available
 
* B02: not available
 
* B03: not available
 
* B03: not available
Line 56: Line 45:
 
* B13 (marine): not available
 
* B13 (marine): not available
 
* <b>B14 (nuclear): useful</b>
 
* <b>B14 (nuclear): useful</b>
* <b>B15 (other renewable): useful, but what is this???</b>
+
* <b>B15 (other renewable): useful, but what is this?</b>
 
* B16 (solar): hugely underreported, *not* useful
 
* B16 (solar): hugely underreported, *not* useful
 
* <b>B17 (waste): useful</b>
 
* <b>B17 (waste): useful</b>
Line 62: Line 51:
 
* <b>B19 (wind onshore): useful</b>
 
* <b>B19 (wind onshore): useful</b>
 
* <b>B20 (other): ???</b>
 
* <b>B20 (other): ???</b>
 +
 +
==== The solar power problem ====
 +
In particular the solar power fraction is incomplete, but also the biomass figures are missing. See:
 +
* https://berthub.eu/articles/posts/dutch-electrical-power-figures-2/ provides a nice overview of the current situation about dutch electrical power generation data
 +
* https://energy-charts.info/charts/energy_pie/chart.htm?l=en&c=NL note how the solar part is tiny, even during the day
 +
 +
There is a model to estimate this fraction at https://api.netanders.io/, however use of this model requires a paid subscription.
 +
 +
What I'm currently doing for the solar fraction, is to use the ENTSO-E <b>forecast</b> instead of the actual solar numbers reported to them, see
 +
[https://transparency.entsoe.eu/generation/r2/dayAheadGenerationForecastWindAndSolar/show?name=&defaultValue=false&viewType=GRAPH&areaType=CTY&atch=false&dateTime.dateTime=11.07.2022+00:00|CET|DAYTIMERANGE&dateTime.endDateTime=11.07.2022+00:00|CET|DAYTIMERANGE&area.values=CTY|10YNL----------L!CTY|10YNL----------L&productionType.values=B16&processType.values=A18&processType.values=A01&processType.values=A40&dateTime.timezone=CET_CEST&dateTime.timezone_input=CET+(UTC+1)+/+CEST+(UTC+2) yesterday's wind/solar forecast].
 +
Perhaps this can also be done for the wind fraction.
  
 
== Hardware ==
 
== Hardware ==

Revision as of 18:12, 19 July 2022

Project PowerLight
PowerLight.jpg
Show energy mix of dutch power generation as a pie chart on a LED ring
Status In progress
Contact bertrik
Last Update 2022-07-19

The concept

Draw the current dutch electrical power generation-mix as pie chart on a LED ring light, with colors representing fractions of a specific power generation source.

For example:

  • yellow: solar
  • blue: wind
  • red: fossil
  • green: nuclear
  • grey: other/waste

Power generation data

Information about energy in Europe is collected at the european organisation https://www.entsoe.eu/ . The section about electrical energy is collected in ENTSO-E. Data is available from this platform at a 15-minute interval.

TenneT is the organisation that supplies ENTSO-E with data from the Netherlands.

Information about ENTSO-E generation domain API: https://transparency.entsoe.eu/content/static_content/Static%20content/web%20api/Guide.html#_generation_domain

Power generation categories

The backend uses the following categories

ENTSO-E numbers the production types from B01 to B20 ("PsrType"), how these are filled for the netherlands:

  • B01 (biomass): always 0, not useful
  • B02: not available
  • B03: not available
  • B04 (fossil hard coal): useful
  • B05 (fossil gas): useful
  • B06: not available
  • B07: not available
  • B08: not available
  • B09 (geothermal): not available
  • B10 (hydro): not available
  • B11 (hydro): always 0
  • B12 (hydro): not available
  • B13 (marine): not available
  • B14 (nuclear): useful
  • B15 (other renewable): useful, but what is this?
  • B16 (solar): hugely underreported, *not* useful
  • B17 (waste): useful
  • B18 (wind offshore): useful
  • B19 (wind onshore): useful
  • B20 (other): ???

The solar power problem

In particular the solar power fraction is incomplete, but also the biomass figures are missing. See:

There is a model to estimate this fraction at https://api.netanders.io/, however use of this model requires a paid subscription.

What I'm currently doing for the solar fraction, is to use the ENTSO-E forecast instead of the actual solar numbers reported to them, see yesterday's wind/solar forecast. Perhaps this can also be done for the wind fraction.

Hardware

Parts:

Software

The software consists of two parts:

  • backend part that collects the power generation data
  • light part that visualizes the power generation as fractions on a LED ring

Backend

Source code: https://github.com/bertrik/energymix-server

Runs as a REST-like resource at http://stofradar.nl:9001/energy/latest (1-minute rate limit)

The backend uses the following categories:

  • solar = B16 (from the forecast document)
  • wind = B18 + B19
  • fossil = B04 + B05
  • nuclear = B14
  • waste = B17
  • other = B15 + B20

Returns a JSON-structure like:

{
  "time": 1657057500,
  "total": 9122,
  "mix": [
    { "id": "solar", "power": 0, "color": "#FFFF00"},
    { "id": "wind", "power": 4, "color": "#0000FF"},
    { "id": "fossil", "power": 86, "color": "#FF0000"},
    { "id": "nuclear", "power": 5, "color": "#FF00FF"},
    { "id": "other", "power": 4, "color": "#444444"},
    { "id": "waste", "power": 1, "color": "#444444"}
  ]
}
  • time is a unix time stamp in seconds, representing the end of the 15-minute period that the power figures refer to
  • total is the total current electrical power (megawatt), suitable for display (on a numeric display inside the ring for example)
  • energymix is an array of power sources, each with:
    • a short unique id
    • most recent known power (megawatt)
    • hex color, for display on the led ring

Light

Source code: https://github.com/bertrik/PowerLight