Messung der Netzfrequenz mit Open Source-Komponenten


Über unsere Stromversorgung macht man sich eigentlich keine Gedanken — Stromausfälle sind sehr selten, und wenn, dann meist schnell behoben. Die Konsequenzen eines flächendeckenden Blackouts können aber dennoch sehr schwerwiegend sein, wie das Büro für Technikfolgen-Abschätzung beim deutschen Bundestag in einer Studie feststellt. Bleibt also die Frage: Funktioniert unser Stromnetz wirklich so reibungslos? Oder sind Störungen durchaus erkennbar?

Frei zugängliche Datensätze gibt es leider nicht - die Strombörse EEX bietet Handelsdaten nur gegen Geld an, und die Übertragungsnetzbetreiber dokumentieren ihre Regelleistungseinsätze nur im 15 Minuten-Raster. Glücklicherweise kann man aber einen zentralen Regelparameter des europäischen Verbundnetzes direkt daheim messen: Die Netzfrequenz. Leider gibt es allerdings keine frei verfügbaren Zeitreihen, welche die Netzfrequenz in hoher Auflösung (ca. 1 Wert/Sekunde) darstellen.

In diesem Artikel beschreibe ich meinen Versuch, ein Messsystem für die Netzfrequenz aufzubauen. Auf der Webseite https://netzsin.us ist das Ergebnis zu sehen: Eine Echtzeitanzeige der Netzfrequenz, wie sie auch durch z.B. netzfrequenz.info umgesetzt wird. Die aktuelle Netzfrequenz wird angezeigt und in hoher Auflösung protokolliert. Die Messung basiert vollständig auf selbst entwickelten Komponenten und ist im Defluxio-Repository verfügbar.

In den Messdaten finden sich bereits Ereignisse wie dieses:

Innerhalb von gut drei Minuten sinkt die Netzfrequenz um 150mHz ab. Um diese Abweichung einordnen zu können muss man allerdings zuerst wissen, welche Bedeutung die Netzfrequenz hat und welche Abweichungen zulässig sind. Im Folgenden gehe ich daher zunächst auf die Bedeutung der Netzfrequenz ein, um dann die technische Umsetzung obiger Webseite genauer zu beleuchten. Abschließend stelle ich einige Analysen vor, die ich mit den bisher gewonnenen Messdaten vornehmen konnte.

Grundlagen der Frequenzregelung

Das Gleichgewicht zwischen Erzeugung und Verbrauch ist recht fragil: Sobald jemand ein Gerät einschaltet, muss die zusätzlich notwendige Leistung in das Stromnetz eingespeist werden. Das Stromnetz selbst hat keine nennenswerten Zwischenspeicher, sodass die notwendiger Zusatzleistung nahezu zeitgleich zur Verfügung gestellt werden muss. Das hört man recht gut bei einem transportablen Generator: Sobald man z.B. eine daran angeschlossene Bohrmaschine einschaltet, ändert sich das Geräusch des Generators sofort.

Für Betreiber eines Stromnetzes stellt sich also die Frage, wie man solche Veränderungen der Stromnachfrage erkennt und entsprechend reagiert. Der wichtigste Parameter für die Wirkleistungssteuerung ist die Netzfrequenz (während die Blindleistung über die Spannung geregelt wird, siehe [1]). Dabei gilt: Je größer das Stromnetz ist, desto eher gleichen sich Einschalten und Ausschalten von Verbrauchern zeitnah aus. Das Stromnetz wird also stabiler. Das europäische Verbundstromnetz wird vom European Network of Transmission System Operators for Electricity (entsoe, früher UCTE) betrieben, einem Zusammenschluss der europäischen Transportnetzbetreiber. Da zumindest auf dem europäischen Festland alle Länder miteinander vernetzt sind, ist die Netzfrequenz überall gleich. Sie wurde auf 50 Hertz festgelegt und schwankt mit der aus dem Stromnetz entnommenen Leistung bzw. der Einspeisung in das Stromnetz. Wenn mehr Leistung eingespeist wird als gleichzeitig verbraucht wird, steigt die Frequenz: Es gibt einen Leistungsüberschuss. Umgekehrt sinkt die Frequenz bei einem Leistungsdefizit: Die Kraftwerke müssen mehr Regelleistung zur Verfügung stellen. Die Netzfrequenz ist dabei der zentrale Mechanismus, um die Leistung der Kraftwerke an die momentane Abnahme anzupassen, d.h. die Regelung der Kraftwerke hängt direkt von der aktuellen Netzfrequenz ab.

Die genauen Mechanismen der Frequenzregelung sind im "Continental Europe Operation Handbook" festgelegt. Man kann drei Stufen der Frequenzregelung unterscheiden:

  • Die Primärregelung ist ein Proportionalregler, dessen Aufgabe darin besteht, die Frequenzabweichung zu begrenzen. Dazu gibt es in jedem Kraftwerk, dass an der Primärregelung teilnimmt, eine Statik. Diese beschreibt den Zusammenhang zwischen Frequenzabweichung und Leistungsanpassung des Kraftwerks. Tritt eine Frequenzabweichung auf, so wird die Leistung der Primärregelkraftwerke zeitlich recht schnell angepasst. Laut Operation Handbook sind in Europa derzeit 3000 MW Primärregelleistung verfügbar. Die Statik beträgt im Durchschnitt 19500MW/Hz Abweichung. Die Primärregelung wird gemeinsam von allen Übertragungsnetzbetreibern zur Verfügung gestellt.
  • Die Sekundärregelung stellt hingegen einen Integralregler dar. Die Sekundärregelung reagiert nach der Primärregelung und führt die Frequenzabweichung wieder zurück auf Null. Sie wird zwar auch auf der Basis der gemessenen Frequenzabweichung aktiviert, allerdings durch einen automatischen Abruf von Regelleistung durch den Übertragungsnetzbetreiber. Nur derjenige Übertragungsnetzbetreiber, in dessen Netzgebiet die Leistungsabweichung vorliegt, wird die Sekundärregelung lokal in seinem Netzgebiet abrufen. Andere Übertragungsnetzbetreiber müssen nicht direkt aktiv werden.
  • Sollte ein Leistungsungleichgewicht länger vorliegen, so wird die Minutenreserve aktiviert. Diese übernimmt die Kompensation des Leistungsungleichgewichtes, sodass die Kapazitäten der Sekundärregelung wieder für die Frequenzstabilisierung zur Verfügung stehen.

Die Frequenz wird normalerweise nicht stark schwanken, sondern in einem sehr schmalen Frequenzband um 50Hz pendeln. Die folgende Tabelle gibt einen Überblick über die Frequenzabweichungen nach oben und unten (nach: [2]:

Frequenz Konsequenz
52,00 Hz Unzulässiger Betriebszustand. Dieser Wert wird z.B. von Netzersatzanlagen gezielt angesteuert, um andere Erzeugungsanlagen (z.B. PV) zu deaktivieren.
51,50 Hz Alle regelbaren Kraftwerke müssen ihre Stromerzeugung komplett eingestellt haben.
51,00 Hz Von hier bis 51,50 Hz müssen neue Kraftwerke mind. 90 Minuten einsatzfähig bleiben - ältere Kraftwerke gehen vom Netz.
50,50 Hz Obere Grenze der im Normalbetrieb geduldeten Frequenzabweichungen. Netzersatzanlagen halten die Frequenz bei 50,5 bis 51 Hz.
50,20 Hz Von hier bis 51,5 Hz sollen regelbare Erzeugungsanlagen (PV, BHKW, ...) eine frequenzbasierte Leistungsreduktion vornehmen.
50,00 Hz Grundfrequenz, von der allerdings zur Korrektur der Netzzeit leicht abgewichen werden darf.
49,80 Hz Stufe 1 der Netzstabilisierung. Der ÜNB kann die Aktivierung von zusätzlicher Erzeugungsleistung anweisen.
49,50 Hz Untere Grenze der im Normalbetrieb geduldeten Frequenzabweichungen
49,00 Hz Stufe 2 der Netzstabilisierung aktiviert frequenzabhängigen Lastabwurf von 10 bis 15% der Verbraucher ("Teil-Blackout")
48,70 Hz Stufe 3 der Netzstabilisierung. Abermals frequenzabhängiger Lastabwurf von 10 bis 15% der Verbraucher
48,40 Hz Stufe 4 der Netzstabilisierung. Lastabwurf von 10 bis 15% der Verbraucher.
47,50 Hz Stufe 5 der Netzstabilisierung führt zur gezielten Abtrennung von Netzsegmenten und Kraftwerken — regionaler Blackout.
47,00 Hz Unterhalb dieser Schranke beginnt im europäischen Netzverbund ein unzulässiger Betriebszustand.

Das Band von 49,5 bis 50,5 soll an 8716 Stunden eines Jahres (99,5%) eingehalten werden. Neben der Frequenzregelung spielen natürlich auch die Spannungsregelung und andere Faktoren eine wichtige Rolle beim Betrieb des Stromnetzes. Ich gehe hier nicht näher darauf ein, sondern empfehle die Lektüre von [1].

Messung der Netzfrequenz

Damit man der Frequenzregelung des Stromnetzes sinnvoll folgen kann, benötigt man ein Messgerät mit entsprechender Auflösung: Bei rund vier Nachkommastellen sollten hinreichend genaue Werte messbar sein. Ich habe daher ein einfaches Messgerät gebaut, welches den Netzsinus in eine durch einen Mikrocontroller verwertbare Rechteckspannung verwandelt. Dieser kann dann die Zeit zwischen zwei Nullpunktdurchgängen messen und daraus die Netzfrequenz recht genau ermitteln. Das Funktionsprinzip ist relativ einfach:

  • Der Trafo erzeugt aus den 230V Wechselspannung eine Kleinwechselspannung von 9V.
  • Diese Kleinspannung wird durch einen Brückengleichrichter gleichgerichtet. Als Ergebnis liegt die Wechselspannung nun in einem Bereich von 0V bis 12V vor.
  • Über einen Operationsverstärker in Schmitt-Trigger-Beschaltung wird ein Rechtecksignal erzeugt, welches den Nullpunktdurchgang der Wechselspannung charakterisiert.
  • Dieses Rechtecksignal wird an den Input Capture Pin des Mikrocontrollers angelegt. Bei einer steigenden Flanke wird ein Interrupthandler im Mikrocontroller aufgerufen, indem der Zählerstand eines 16Bit-Timers ausgewertet wird. Bei 16 MHz kann der Timer 244 ns-Einheiten unterscheiden. Ein voller Netzsinus bei 50 Hz dauert 20 ms, d.h. im Durchschnitt werden rund 82 Timerinkremente pro Netzsinus gemacht. Das reicht, um eine hinreichend hohe Genauigkeit zu erreichen.
  • Bevor der Mikrocontroller den Wert an das angeschlossene Linux-System überträgt werden 50 Messungen gemacht und der Mittelwert gebildet. So wird eine verlässliche Messung sichergestellt.

Nach dem Aufbau der Hardware habe ich die gemessenen Frequenzen mit einem Janitza UMG604 Netzanalysator verglichen — Maurice war so nett, mir die Daten zur Verfügung zu stellen. Über einen Zeitraum von ein paar Stunden kommen die Geräte zu einem fast identischen Mittelwert (49.993 vs. 49.992). Im Detail sieht man, dass der Janitza bei der Frequenzmessung stärker mittelt:

Alles in allem habe ich hinreichend Vertrauen in mein Messgerät. Momentan kann ich die Hardware allerdings noch nicht für den Nachbau empfehlen: Ich habe einen im Vergleich zu obiger Darstellung anderen Aufbau gewählt, der nicht ohne Tests am Trenntrafo aufgebaut werden sollte. Daher veröffentliche ich diese Schaltung nicht, sondern baue direkt Version 2 der Hardware. Alle Informationen dazu sind dann auch im github-Repository zum Projekt Defluxio zu finden.

Im gleichen Repository befindet sich auch die Software hinter der Webseite. Die Softwarekomponenten sind vollständig in Go geschrieben. Obwohl ich keine große Erfahrung mit Projekten in Go habe, war die Arbeit daran extrem angenehm. Ich werde in Zukunft definitiv mehr Projekte in Go umsetzen. Einen Überblick über die Komponenten gibt folgende Abbildung:

  • Die Messhardware ist an einen Raspberry Pi angeschlossen. Dort läuft der "defluxio-provider", dessen Aufgabe es ist, die über die serielle Schnittstelle empfangenen Messdaten mit einem Zeitstempel zu versehen und an den Server weiterzuleiten.
  • Der Server verknüpft die unterschiedlichen Komponenten miteinander. Er bietet eine HTTP-API an, um Messwerte von Sensoren entgegenzunehmen und diese — nach einer Plausibilitätsprüfung — an eine Datenbank weiterzuleiten. Ebenso liefert der Server die Webseite aus und bietet den Datenstrom den verbundenen Webbrowsern an.
  • Die Datenbank basiert auf InfluxDB, einer Zeitreihendatenbank auf der Basis von LevelDB und Go. Das eingebaute Webfrontend (welches nicht aus dem Internet erreichbar ist) erlaubt es, schnelle Anfragen nach Durchschnittswerten etc. direkt innerhalb der Datenbank umzusetzen. Diese Eigenschaft war für das Prototyping des Dienstes sehr hilfreich. Ein kleines Exportprogramm ist in der Lage, die aufgezeichneten Daten aus der Datenbank zu exportieren. Ein öffentlicher Export der Daten ist momentan noch nicht umgesetzt, aber das wird kommen.
  • Die Webseite selbst wird direkt über den Server erzeugt und an den Webbrowser ausgeliefert. Dabei benutze ich den Templating-Mechanismus von Go, um die Webseite aus einzelnen Snippets zusammenzusetzen. Die Visualisierung der Messwerte findet direkt im Browser statt: Die über eine Websocket-Verbindung eintreffenden Werte werden via Javascript in Plots verwandelt. Diese Herangehensweise sorgt dafür, dass die Last auf Serverseite recht niedrig bleibt.

Mit diesem Setup konnte ich in den vergangenen zwei Wochen erste Messdaten aufzeichnen. Der Zeitraum ist natürlich noch zu klein, um umfassende Aussagen treffen zu können. Trotzdem habe ich natürlich angefangen, die Messdaten zu analysieren.

Erste Ergebnisse der Frequenzmessung

Neben Einbrüchen der Netzfrequenz — wie oben bereits dargestellt — lassen sich natürlich auch andere Phänomene beobachten. Folgende Abbildung gibt einen Überblick über die Messdaten:

Da das Histogramm zunächst einmal wie eine Normalverteilung aussieht, habe ich die Verteilungsparameter geschätzt und als rot-gestrichelte Linie darüber gelegt. Die Standardabweichung von 0.018 habe ich für die Drei-Sigma-Regel verwendet: 50 Hz +/- 3 * 0.018 sollte 99.7% aller Messwerte einschließen. In obiger Abbildung ist dies durch die roten, durchgezogenen Linien dargestellt. Im Zeitverlauf erkennt man, dass es immer wieder Abweichungen aus diesem Frequenzband gibt. Technisch bewegen diese sich allerdings alle im erlaubten Frequenzband und sind nicht besorgniserregend.

Im Anschluss daran machte ich einen two-sample Kolmogorov-Smirnow-Test , um die Verteilung der Messdaten mit einer perfekten Normalverteilung zu vergleichen. Dabei kam heraus, dass die Daten nicht normalverteilt sind (alpha=0.01). Nach etwas Datenfiltern stieß ich auf folgenden Sachverhalt:

Während eines Stundenwechsels (Minute größer 58 oder kleiner 3) sind die Werte anders verteilt. Plottet man die Anzahl der Abweichungen größer 70 mHz in Abhängigkeit von der Uhrzeit, so erhält man folgende Grafik:

Die Abweichungen sind also nicht gleichverteilt, sondern treten vor allem um Mitternacht auf. Auch während des Stundenwechsels kommen Abweichungen vor, allerdings sind diese eher kleiner.

Als Ursache für die Frequenzabweichungen bleibt eigentlich nur der Handel von Stromerzeugung an der Strombörse. Die Photovoltaikproduktion, die im Messzeitraum definitiv gegeben war, führt hingegen zu keinen sichtbaren Abweichungen der Netzfrequenz. Momentan liegen mir aber noch nicht genügend Daten für eine abschließende Bewertung vor.

Ausblick

Die Infrastruktur läuft momentan soweit, dass man sich via Webbrowser die aktuelle Frequenz anschauen kann. Gleichzeitig werden die Messdaten im Hintergrund aufgezeichnet. Sobald mehr Messdaten vorliegen, kann ich auch andere Analysen wie z.B. eine Korrelationsanalyse mit den Erzeugungsdaten von Photovoltaiksystemen vornehmen. Auf der Basis der jetzigen Messdaten würde ich aber vermuten, dass die PV-Produktion nahezu keinen Einfluss auf die Netzfrequenz hat.

Momentan stehen auch einige Dinge im Issue-Tracker. Darüber hinaus stehen folgende Arbeiten auf meiner Liste:

  • Neue Hardware bauen. Momentan gibt es nur ein Messgerät, was im Hinblick auf die Ausfallsicherheit natürlich zuwenig ist. Außerdem schwebt mir ein Wechsel des Mikrocontrollers vor, der neben der Frequenzmessung auch andere Analysen erlauben würde.
  • Die Messgeräte sollten in verschiedenen Netzbereichen stehen, um bei einem lokalen Ausfall des Stromnetzes trotzdem eine Messung vornehmen zu können.
  • Export-Mechanismus für die Messdaten.

Wer mir dabei helfen mag: Sehr gerne!

Literatur

[1] Olle I. Elgerd, "Control of Electric Power Systems", IEEE Control Systems Society, 1981

[2] Tomi Engel, "Die Netzfrequenz", Sonnenenergie 06/2012


Mathias Dalheimer

Yours truly.

likes distributed & embedded systems

GPG key: B6501625
fingerprint: E7BA B68E A2D3 9B6A ECEF 4DE4 823E 0DBE B650 1625
github | twitter


Proudly made using vim, jekyll, bootstrap (cosmo theme) & coffee. Last update: 20 Apr 2019