PowerLight
Project PowerLight | |
---|---|
Show energy mix of dutch power generation as a pie chart on a LED ring | |
Status | In progress |
Contact | bertrik |
Last Update | 2022-07-13 |
The concept
Draw the current power generation-mix as a kind of pie chart on a LED ring light, with colors representing a fraction of a specific power generation source.
For example:
- blue: wind power
yellow: solar powersee belowgreen: power from biomasssee below- purple: power from nuclear
- red: fossil
- grey: other
Power generation data
Information about energy in Europe is collected at the european organisation ENTSO. 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.
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 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: https://transparency.entsoe.eu/content/static_content/Static%20content/web%20api/Guide.html#_generation_domain
Hardware
Parts:
- LED ring light https://nl.aliexpress.com/item/1005003798658173.html
- Wemos D1 mini with an ESP8266
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
In progress, run as a REST-like resource at http://stofradar.nl:9001/energy/latest (1-minute rate limit)
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