Deprecated: Return type of Google\Site_Kit_Dependencies\Google\Model::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/third-party/google/apiclient/src/Model.php on line 240

Deprecated: Return type of Google\Site_Kit_Dependencies\Google\Model::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/third-party/google/apiclient/src/Model.php on line 244

Deprecated: Return type of Google\Site_Kit_Dependencies\Google\Model::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/third-party/google/apiclient/src/Model.php on line 248

Deprecated: Return type of Google\Site_Kit_Dependencies\Google\Model::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/third-party/google/apiclient/src/Model.php on line 257

Deprecated: Return type of Google\Site_Kit_Dependencies\Google\Collection::current() should either be compatible with Iterator::current(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/third-party/google/apiclient/src/Collection.php on line 19

Deprecated: Return type of Google\Site_Kit_Dependencies\Google\Collection::next() should either be compatible with Iterator::next(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/third-party/google/apiclient/src/Collection.php on line 32

Deprecated: Return type of Google\Site_Kit_Dependencies\Google\Collection::key() should either be compatible with Iterator::key(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/third-party/google/apiclient/src/Collection.php on line 26

Deprecated: Return type of Google\Site_Kit_Dependencies\Google\Collection::valid() should either be compatible with Iterator::valid(): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/third-party/google/apiclient/src/Collection.php on line 36

Deprecated: Return type of Google\Site_Kit_Dependencies\Google\Collection::rewind() should either be compatible with Iterator::rewind(): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/third-party/google/apiclient/src/Collection.php on line 13

Deprecated: Return type of Google\Site_Kit_Dependencies\Google\Collection::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/third-party/google/apiclient/src/Collection.php on line 41

Deprecated: Return type of Google\Site_Kit\Core\Util\JSON_File::offsetExists($offset) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/JSON_File.php on line 87

Deprecated: Return type of Google\Site_Kit\Core\Util\JSON_File::offsetGet($offset) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/JSON_File.php on line 101

Deprecated: Return type of Google\Site_Kit\Core\Util\JSON_File::offsetSet($offset, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/JSON_File.php on line 113

Deprecated: Return type of Google\Site_Kit\Core\Util\JSON_File::offsetUnset($offset) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/JSON_File.php on line 124

Deprecated: Return type of Google\Site_Kit\Core\Util\JSON_File::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/JSON_File.php on line 148

Deprecated: Return type of Google\Site_Kit\Core\Util\JSON_File::jsonSerialize() should either be compatible with JsonSerializable::jsonSerialize(): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/JSON_File.php on line 135

Deprecated: Creation of dynamic property WP_Bulk_Delete::$api is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/wp-bulk-delete/wp-bulk-delete.php on line 53

Deprecated: Constant FILTER_SANITIZE_STRING is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Admin/Standalone.php on line 95

Deprecated: filter_input(): Passing null to parameter #4 ($options) of type array|int is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/Input.php on line 64

Deprecated: filter_input(): Passing null to parameter #4 ($options) of type array|int is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/Input.php on line 64

Deprecated: version_compare(): Passing null to parameter #2 ($version2) of type string is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/elementor/core/upgrade/manager.php on line 62

Deprecated: Return type of Elementor\Core\Utils\Collection::offsetExists($key) should either be compatible with ArrayAccess::offsetExists(mixed $offset): bool, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/elementor/core/utils/collection.php on line 404

Deprecated: Return type of Elementor\Core\Utils\Collection::offsetGet($key) should either be compatible with ArrayAccess::offsetGet(mixed $offset): mixed, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/elementor/core/utils/collection.php on line 413

Deprecated: Return type of Elementor\Core\Utils\Collection::offsetSet($key, $value) should either be compatible with ArrayAccess::offsetSet(mixed $offset, mixed $value): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/elementor/core/utils/collection.php on line 421

Deprecated: Return type of Elementor\Core\Utils\Collection::offsetUnset($key) should either be compatible with ArrayAccess::offsetUnset(mixed $offset): void, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/elementor/core/utils/collection.php on line 432

Deprecated: Return type of Elementor\Core\Utils\Collection::count() should either be compatible with Countable::count(): int, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/elementor/core/utils/collection.php on line 446

Deprecated: Return type of Elementor\Core\Utils\Collection::getIterator() should either be compatible with IteratorAggregate::getIterator(): Traversable, or the #[\ReturnTypeWillChange] attribute should be used to temporarily suppress the notice in /var/www/stromhaltig/blog/wp-content/plugins/elementor/core/utils/collection.php on line 439

Deprecated: version_compare(): Passing null to parameter #2 ($version2) of type string is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/elementor/core/upgrade/manager.php on line 62

Deprecated: Creation of dynamic property Advanced_Ads_Ads_Txt_Public::$strategy is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/advanced-ads/modules/ads-txt/public/class-advanced-ads-ads-txt-public.php on line 12

Deprecated: Creation of dynamic property Advanced_Ads_Ads_Txt_Public::$strategy is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/advanced-ads/modules/ads-txt/public/class-advanced-ads-ads-txt-public.php on line 12

Deprecated: Creation of dynamic property Advanced_Ads_Network_Adsense::$settings_section_id is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/advanced-ads/admin/includes/class-ad-network.php on line 45

Deprecated: Creation of dynamic property Advanced_Ads_Network_Adsense::$settings_init_hook is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/advanced-ads/admin/includes/class-ad-network.php on line 46

Deprecated: Creation of dynamic property Advanced_Ads_Network_Adsense::$data is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/advanced-ads/modules/gadsense/includes/class-network-adsense.php on line 38

Deprecated: filter_input(): Passing null to parameter #4 ($options) of type array|int is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/Input.php on line 64

Deprecated: filter_input(): Passing null to parameter #4 ($options) of type array|int is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/Input.php on line 64

Deprecated: Creation of dynamic property Google\Site_Kit\Modules\Analytics\Web_Tag::$module_slug is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Modules/Tags/Module_Tag.php on line 42

Deprecated: filter_input(): Passing null to parameter #4 ($options) of type array|int is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/Input.php on line 64

Deprecated: Creation of dynamic property Google\Site_Kit\Modules\Analytics_4\Web_Tag::$module_slug is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Modules/Tags/Module_Tag.php on line 42

Deprecated: filter_input(): Passing null to parameter #4 ($options) of type array|int is deprecated in /var/www/stromhaltig/blog/wp-content/plugins/google-site-kit/includes/Core/Util/Input.php on line 64
Stochastische Analyse der Netzfrequenz – blog.stromhaltig

Stochastische Analyse der Netzfrequenz

Das Stromnetz in Europa hat eine Sollfrequenz von 50 Hertz. Wird mehr Strom aus dem Netz genommen, dann geht die Frequenz (leicht) zurück. Wird mehr erzeugt, dann steigt die Frequenz. Die sogenannte Regelenergie sorgt dafür, dass die Erzeugung dem Verbrauch angepasst wird und die Grundbedingung für eine stabile Stromversorgung immer gilt: Es wird soviel Strom erzeugt, wie zum gleichen Zeitpunkt verbraucht wird. Zur weiteren Lektüre wird die Master-Thesis von Markus Jaschinsky empfohlen:

Untersuchung des Zusammenhangs zwischen gemessener Netzfrequenz und Regelenergieeinsatz als Basis eines Reglerentwurfs zum Intraday Lastmanagement

Treuen Lesern sollte Markus bereits bekannt sein, denn er ist der Mensch hinter dem Blog Netzfrequenz.info und Lieferant für die Rohdaten gewesen. Danke!

Langfristiges Ziel soll es sein, den Einsatz der Regelleistung möglichst vor dem Bedarf zu erkennen. Dies könnte für Anbieter ein Entscheidender Wettbewerbsvorteil sein. Wie bereits im Beitrag “Das Stromnetz als Beweis vor Gericht” geschildert, ist die Analyse der Netzfrequenz auch noch für viel mehr Szenarien relevant.

Bevor es bei blog.stromhaltig um die Vorhersage geht, soll in diesem Beitrag zunächst ein Gespür für die Daten entwickelt werden. Bei der Daten-Analyse ist dies ein wichtiger erster Schritt, der immer durchgeführt werden sollte. Er dient unter anderem die Validität der Messwerte zu prüfen und grundlegende Hypothesen aufzustellen.

Rohdaten

Eine Frequenzdatenbank ist eigentlich immer nach dem gleichen Schema aufgebaut:

Zeitstempel,Frequenz

Das Material, welches ich von Markus erhalten habe, besitzt einen Wert pro Sekunde. Bei der Erstellung einer Vorhersage (Forecast) mit Hilfe einer Zeitreihenanalyse ist dies zwar hilfreich, wird aber die Algorithmen überfordern, wenn man mehr als ein paar Sekunden in die Zukunft schauen möchte. Grund hierfür ist, dass die verwendeten Berechnungen eine Ungenauigkeit für jeden “Schritt” in die Zukunft zum Quadrat haben. Für eine Einsatzprognose von Regelleistung ist daher eine Aggregation notwendig.

Aggregation

Unter Aggregation wird die Zusammenfassung mehrerer Einzelwerte zu einem Wertesatz bezeichnet. Im ersten Anlauf sollen die Sekundenwerte zu Minutenwerte zusammengefasst werden. Bei der Kursanalyse an Börsen hat sich dabei eine Aggregation bewehrt, die folgende Werte beinhaltet:

  • Zeitstempel
  • Öffnungskurs (=>Frequenz am Anfang der Minute)
  • Schlußkurs (=>Frequzenz am Ende der Minute)
  • Mittelkurs (=>Arithmetisches Mittel der Frequenz)
  • Höchterkurs (=>Höchste Frequenz in der Minute)
  • Niedrigsterkurs (=>Niedrigste Frequenz in der Minute)

Die Praxis, wird zeigen, dass zum Zeitpunkt der Aggregation gleich einige Hilfswerte berechnet werden sollten.

  • Minute des Tages
  • Wochentag
  • Spreizung (Hoch-Tief)

Software

Nach der Aggregation hat man im Prinzip eine neue CSV Datei, die nun mehr Felder – aber weniger Reihen – enthält. Damit lassen sich logische Regeln aufbauen (zum Beispiel Random Forrest, Liniear Reg, …). Es gibt viele verschiedene Software-Plattformen, die dies erlauben. Die aktuell am einfachsten zu erlernende ist WEKA (gleich Version 3.7.x!). Weka ist ein Data-Mining Tool, welches von der Neuseländischen Universität in Waikato entwickelt wurde.

Erste Analyse

netzfrequenz_glocke

Zunächst eine Visualisierung der Öffnungsfrequenzen – die Kurve sollte mit der Kurve der Schlußfrequenz mehr oder minder übereinstimmen. Schaltet man innerhalb von WEKA zwischen der Visualisierung der beiden Attribute hin und her, kann man einen schnellen Eindruck darüber bekommen, ob genügend “Minuten” (Datensätze) im Sampel vorhanden sind.  Als Anhaltspunkt arbeite ich meist mit 12 Tagen = 17600 Werte – dies lässt einen normalen Notebook noch Ergebnisse in Sekunden liefern.

 netzfrequenz_spreizung

Als nächstes sollte ein Blick auf die Spreizung geworfen werden. Zur Erinnerung – dieser Wert gibt an, in welchem Band die Netzfrequenz innerhalb einer Minute geschwankt ist. Sehr schön ist auch hier die Glockenkurve zu erkennen, die von automatisierter Netzsteuerung hervorgebracht wird. Der Grund für den Peak bei 0,025 Hz kann man gerne im ENTSOe Handbuch  nachlesen 🙂

Zweite Analyse

Das finale Ziel soll es sein eine Prognose für die Zukunft abzugeben. Bislang wurde lediglich die genaue Minute für die Berechnung verwendet. Man erleichtert sich die Auswertung, wenn man bei der Aggregation zusätzlich noch weitere Hilfswerte ausgibt (in WEKA Lag genannt):

  • Minute der Stunde (0-60)
  • Minute des Tages (0-1440)
  • Wochentag (0-6)
  • Stunde des Tages (0-23)

netzfrequenz_gaps

Visualisiert man zum Beispiel die Minuten der Stunde gemeinsam mit der Spreizung, so stellt man fest, dass es in der ersten Minute jeder Stunde die größten Spreizungen in der Frequenz gibt – gefolgt von den 15 Minuten Grenzen (:15, :30, :45).

Handel und die Netzfrequenz

Das Ergebnis der zweiten Analyse war zu erwarten und wurde bei blog.stromhaltig bereits erörtert. Der Strom wird in Stundenblöcken – und neu in 15 Minutenblöcken – gehandelt. Aus dem Ergebnis der Handelstätigkeit ergibt sich für die Netzbetreiber ein sogenannter Fahrplan, der vorgibt, welcher Strom von welchem Ort zu welchem Ort transportiert werden soll.

Was passiert an den Stundengrenzen?

Die Netzbetreiber schalten das Netz um, d.h. in einem Umspannwerk wird von einer Leitung der Strom weggenommen, eine andere Leitung wird zugeschaltet. Da die Leitungen jedoch unterschiedliche Längen haben, die 50 Hertz  Netzfrequenz sich nur mit Lichtgeschwindigkeit ausbreitet, stimmen die Frequenzkurven nicht vollständig überein.

Wie blog.stromhaltig von einem Netzbetreiber bestätigt wurde, kann es zudem zu kurzzeitigen Ringflüssen kommen (beide Leitungen sind aktiv). Man könnte den gemessenen Effekt vergleichen mit dem Knacken in einem Lautsprecher, wenn man zu Hause den Staubsauger ein/aus Schaltet.

Ausblick

Bis zur Prognose der Regelenergie ist es noch ein paar Beiträge weit. Die Analyse der Netzfrequenz ist jedoch relativ leicht nachvollziehbar und diese Einführung soll zum Nachmachen animieren.

Spannend ist zum Beispiel eine Auswertung der Handelsvolumen an der EPEX-Spot im Vergleich zu den Spreizungen.  Gerne als Übung ausprobieren. Tipp: Wetterlage anschauen!

Inhalt nicht verfügbar.
Bitte erlauben Sie Cookies, indem Sie auf Übernehmen Sie auf das Banner

Durch das Fortsetzen der Benutzung dieser Seite, stimmst du der Benutzung von Cookies zu. Weitere Informationen

Die Cookie-Einstellungen auf dieser Website sind auf "Cookies zulassen", um Ihnen das beste Surferlebnis möglich zu geben. Wenn Sie diese Website ohne Änderung Ihrer Cookie-Einstellungen zu verwenden fortzufahren, oder klicken Sie auf "Akzeptieren" unten, dann erklären Sie sich mit diesen.

Schließen