
Stromnetze im Browser modellieren und simulieren – ein praktischer Leitfaden zu BambooGrid


Stromnetze direkt im Browser modellieren und simulieren – ein praktischer Leitfaden zu BambooGrid
Die Analyse elektrischer Energiesysteme war traditionell auf spezialisierte Software, kommerzielle Lizenzen oder lokal konfigurierte Entwicklungs- und Simulationsumgebungen angewiesen. BambooGrid erleichtert den Einstieg und ermöglicht es, Stromnetze direkt im Browser zu untersuchen.
Bevor eine neue Solaranlage, ein Batteriespeicher, eine industrielle Last, ein Kabel oder ein Transformator an ein Stromnetz angeschlossen wird, müssen Ingenieurinnen und Ingenieure verstehen, wie sich diese Komponente auf das restliche Netz auswirkt. Bleiben die Spannungen an den Netzknoten innerhalb der zulässigen Grenzen? Könnte eine Leitung oder ein Transformator überlastet werden? Wie viel Leistung wird aus dem übergeordneten Netz bezogen oder dorthin zurückgespeist?
Genau diese Fragen beantwortet eine Lastflussberechnung.
BambooGrid ist eine quelloffene, browserbasierte Anwendung zur visuellen Modellierung und Analyse elektrischer Energienetze. Die Anwendung basiert auf pandapower und ermöglicht es Ingenieurinnen und Ingenieuren, Studierenden, Lehrenden und Entwicklerinnen und Entwicklern, Netze mit mehreren Spannungsebenen über einen Drag-and-drop-Editor zu erstellen und Berechnungen auszuführen – ohne Desktop-Software installieren oder eine lokale Python-Umgebung konfigurieren zu müssen.
In diesem Artikel erstellen wir ein kleines Verteilnetz, schließen eine Last und eine Solaranlage an, führen eine Lastflussberechnung durch, beobachten einen umgekehrten Leistungsfluss, ergänzen einen Transformator sowie eine zweite Spannungsebene und untersuchen anschließend die resultierenden Netzdaten.

Was ist ein Lastfluss und warum ist er wichtig?
Ein Stromnetz ist kein passives Rohrleitungssystem, sondern ein System, das kontinuierlich im Gleichgewicht gehalten werden muss. Zu jedem Zeitpunkt muss die irgendwo im Netz erzeugte Leistung der an anderer Stelle verbrauchten Leistung zuzüglich der Verluste in Leitungen und Transformatoren entsprechen.
Der Lastfluss – auch Leistungsfluss genannt – ist eine mathematische Berechnung, die für eine bestimmte Netztopologie sowie definierte Erzeugungs- und Verbrauchswerte folgende Fragen beantwortet:
Welche Spannung liegt an jedem Netzknoten an? Wie viel Strom fließt durch jede Leitung und jeden Transformator? Wie viel Blindleistung muss jeder Generator aufnehmen oder einspeisen, damit die Spannungen stabil bleiben?
Die Berechnung ist nichtlinear, da Spannungen und Leistungsflüsse voneinander abhängen. Deshalb wird sie iterativ gelöst. Das am häufigsten verwendete Verfahren ist das Newton-Raphson-Verfahren – dieselbe Methode, die auch in der numerischen Mathematik zur Bestimmung von Nullstellen eingesetzt wird.
Lastflussberechnungen bilden die Grundlage für nahezu alle Aufgaben in der Energienetztechnik: die Planung neuer Umspannwerke, die Dimensionierung von Kabeln, die Untersuchung der Auswirkungen großer Solarparks auf die lokale Spannung oder die Bewertung, ob eine Leitung den Ausfall einer parallel geführten Leitung verkraften kann.
Das Verständnis des Lastflusses ist daher ein wichtiger erster Schritt für alle, die moderne Stromnetze planen, betreiben oder untersuchen möchten.
Die Bausteine eines Stromnetzes
Bevor Sie den Editor öffnen, ist es hilfreich zu verstehen, was die einzelnen Komponenten bedeuten. BambooGrid bildet die wichtigsten Elemente eines realen Stromnetzes ab.
Bus
Ein Bus beziehungsweise eine Sammelschiene ist ein Knoten im Netz – ein Punkt mit einer definierten Nennspannung in Kilovolt, an den weitere Komponenten angeschlossen werden.

Externes Netz und Slack-Bus
Das externe Netz bildet die Verbindung zum übergeordneten Übertragungsnetz ab – also zu einem System, das groß genug ist, um jedes Leistungsungleichgewicht im lokalen Netz aufzunehmen oder auszugleichen.
Bei einer Lastflussberechnung benötigt jedes elektrische Inselnetz genau eine Spannungsreferenz. Dabei handelt es sich um einen Bus, an dem Spannungsbetrag und Phasenwinkel fest vorgegeben sind, typischerweise 1,0 p.u. und 0°.
Dieser Bus wird als Slack-Bus oder Referenzknoten bezeichnet. Er gleicht das verbleibende Wirk- und Blindleistungsungleichgewicht aus, nachdem alle anderen Erzeuger und Lasten berücksichtigt wurden. Ohne ihn besitzt das Gleichungssystem keine eindeutige Lösung und der Solver kann die Berechnung nicht durchführen.
Der Slack-Bus ist der Bus selbst und nicht das daran angeschlossene Element. Ein externes Netz ist die häufigste Möglichkeit, einen Slack-Bus zu definieren. Alternativ kann auch ein Generator als Slack konfiguriert werden.
Entscheidend ist, dass in jedem elektrischen Inselnetz genau ein Bus als Spannungsreferenz und Leistungsausgleichspunkt dient. Das mit diesem Bus verbundene Element – ein externes Netz oder ein entsprechend konfigurierter Generator – stellt die physische Möglichkeit bereit, die notwendige Ausgleichsleistung einzuspeisen oder aufzunehmen.

Für die meisten Netze ist ein externes Netz die naheliegende Wahl. Es repräsentiert das Übertragungsnetz, das in der Praxis eine nahezu unbegrenzte Kapazität zur Aufnahme von Leistungsungleichgewichten besitzt.
Ein als Slack konfigurierter Generator ist besonders dann sinnvoll, wenn ein isoliertes Microgrid oder Inselnetz modelliert wird, in dem eine bestimmte Maschine für die Frequenz- und Spannungsregelung verantwortlich ist.
Generator
Ein Generator wird als PV-Knoten modelliert. Sie geben seine Wirkleistung in Megawatt und die Spannung vor, die er an seinem Anschlussbus halten soll.
Der Solver berechnet anschließend, wie viel Blindleistung in MVAr der Generator einspeisen oder aufnehmen muss, um diese Spannung aufrechtzuerhalten.
Regelbare Gasturbinen, Wasserkraftwerke oder Kraft-Wärme-Kopplungsanlagen können auf diese Weise modelliert werden.
Ein Generator ist jedoch nicht automatisch eine Spannungsreferenz. Er hält zwar die Spannung an seinem Anschlussbus, gleicht aber nicht das gesamte Netz aus. Innerhalb des Inselnetzes wird weiterhin ein externes Netz oder ein anderer als Slack konfigurierter Generator benötigt.

Statischer Erzeuger
Ein statischer Erzeuger wird als PQ-Knoten modelliert. Sowohl die Wirk- als auch die Blindleistung werden fest vorgegeben und vom Solver nicht angepasst.
Dieses Modell eignet sich beispielsweise für Photovoltaikanlagen auf Gebäudedächern, Windkraftanlagen und Batterie-Wechselrichter, die mit einem festgelegten Sollwert betrieben werden. Sie speisen eine definierte Leistung ein, während sich die Spannung aus der Netzberechnung ergibt.
Als einfache Merkhilfe für die drei Arten von Erzeugungselementen gilt:
Das externe Netz legt die Spannung fest und gleicht das Netz aus. Ein Generator hält die Spannung, speist aber nur seine geplante Wirkleistung ein. Ein statischer Erzeuger speist eine fest vorgegebene Wirk- und Blindleistung ein.

Last
Eine Last verbraucht eine festgelegte Wirkleistung P in MW und Blindleistung Q in MVAr.
Sie ist eines der einfachsten Elemente und kann beispielsweise eine Fabrik, einen Wohngebietsabgang oder einen beliebigen zusammengefassten Verbraucher darstellen, dessen Leistungsbedarf bekannt ist.

Shunt
Ein Shunt ist ein festes Blindleistungselement, das zwischen einem Bus und Erde angeschlossen wird.
Typische Beispiele sind eine Kondensatorbank zur Spannungsstützung und Einspeisung von Blindleistung oder eine Drossel zur Aufnahme überschüssiger Blindleistung in schwach belasteten Kabelnetzen.
Im Gegensatz zu einem SVC kann ein Shunt seine Leistung nicht dynamisch regeln. Er bleibt fest mit dem Bus verbunden und trägt mit einer konstanten Suszeptanz zur Knotengleichung bei.

Transformer
Ein Transformator verbindet zwei Busse mit unterschiedlichen Spannungsebenen.
BambooGrid unterstützt:
- Zweiwicklungstransformatoren: Der am häufigsten verwendete Typ mit einem Hochspannungs- und einem Niederspannungsanschluss. Der Transformator kann aus einer Bibliothek standardisierter Typen ausgewählt werden, beispielsweise 25 MVA bei 110/20 kV. Nach einer Lastflussberechnung zeigt BambooGrid den Auslastungsgrad des Transformators an und damit, wie nahe er an seiner thermischen Belastungsgrenze betrieben wird.
- Dreiwicklungstransformatoren: Diese verbinden gleichzeitig einen Hochspannungs-, Mittelspannungs- und Niederspannungsbus. Ein einzelner Dreiwicklungstransformator kann beispielsweise ein vollständiges Umspannwerk versorgen, das zwei unterschiedliche Spannungsebenen über einen gemeinsamen Netzanschluss bereitstellt.

Beide Transformatorarten unterstützen Stufenschalter. Diese verändern das Übersetzungsverhältnis geringfügig gegenüber dem Nennwert. Auch reale Transformatoren verwenden solche mechanischen Stufenschalter, um die nachgelagerten Spannungen bei wechselnder Belastung innerhalb des zulässigen Bereichs zu halten.
Leitung, Schalter, SVC und weitere Elemente
Eine Leitung überträgt Leistung zwischen zwei Bussen derselben Spannungsebene. Im Gegensatz zu einem geschlossenen Schalter besitzt sie einen Widerstand und eine Reaktanz. Dadurch entstehen Verluste und ein Spannungsabfall, der von der übertragenen Leistung abhängt.
Ein Schalter verbindet zwei Busse mit einer Impedanz von null. Ist er geschlossen, verhalten sich die Busse wie ein gemeinsamer elektrischer Knoten. Ist er geöffnet, sind sie elektrisch voneinander getrennt.
Mit einem Kuppelschalter kann eine Sammelschiene unterteilt werden. Wird er geöffnet, kann ein Netzabschnitt zu einem eigenen Inselnetz werden und benötigt dann eine eigene Spannungsreferenz.
Ein SVC, ein Static Var Compensator, ist ein FACTS-Element, das dynamisch Blindleistung einspeist oder aufnimmt, um eine vorgegebene Spannung zu halten. Vereinfacht betrachtet handelt es sich um eine automatisch geregelte Kombination aus Kondensator und Drossel.

Ihr erstes Netz in BambooGrid erstellen
Am schnellsten lernen Sie BambooGrid kennen, indem Sie ein kleines Netz von Grund auf erstellen.
Sie können die Anwendung direkt im Browser unter https://bamboo.kickstage.com/ ausprobieren. Es sind weder ein Benutzerkonto noch eine Installation erforderlich.
Schritt 1 – Einen Bus hinzufügen
Ziehen Sie einen Bus aus der linken Elementpalette auf die Arbeitsfläche.
Stellen Sie im Inspektor auf der rechten Seite die Nennspannung auf 20 kV ein. Dieser Bus bildet die zentrale Mittelspannungssammelschiene eines kleinen Verteilnetz-Umspannwerks.
Schritt 2 – Ein externes Netz anschließen
Ziehen Sie ein Element vom Typ „External grid“ auf die Arbeitsfläche und verbinden Sie es mit dem 20-kV-Bus.
Belassen Sie den Spannungssollwert bei 1,0 p.u., also bei Nennspannung.
Dieses Element stellt die Verbindung zum Übertragungsnetz dar und dient als Slack-Referenz, die das gesamte Leistungsungleichgewicht ausgleicht.
Schritt 3 – Eine Last hinzufügen
Ziehen Sie eine Last auf die Arbeitsfläche und verbinden Sie sie mit demselben Bus.
Stellen Sie die Wirkleistung auf 5 MW und die Blindleistung auf 1 MVAr ein. Damit wird ein kleiner industrieller Verbraucher dargestellt.
Schritt 4 – Eine Photovoltaikanlage hinzufügen
Ziehen Sie einen statischen Erzeuger auf die Arbeitsfläche und verbinden Sie ihn mit dem Bus.
Stellen Sie die Wirkleistung auf 2 MW und die Blindleistung auf 0 MVAr ein. Dieses Element repräsentiert eine Photovoltaikanlage, die ihre erzeugte Leistung in das Netz einspeist.
Schritt 5 – Eine Lastflussberechnung durchführen
Vergewissern Sie sich, dass im Auswahlfeld für den Berechnungsmodus „Load flow“ ausgewählt ist. Klicken Sie anschließend in der Werkzeugleiste auf „Run“.
Der Bus wird grün dargestellt, da die Spannung bei 1,0 p.u. liegt.
Das externe Netz zeigt seine berechnete Leistung von 3 MW an. Dieser Wert ergibt sich aus der Last von 5 MW abzüglich der Solarerzeugung von 2 MW.
Die Last und der statische Erzeuger zeigen ebenfalls ihre verbrauchte beziehungsweise eingespeiste Leistung an.
Erhöhen Sie nun die Solarleistung auf 6 MW und führen Sie die Berechnung erneut aus.
Die Leistung des externen Netzes wird negativ. Der Bus exportiert nun die überschüssige Solarleistung zurück in das Übertragungsnetz. Dieser Zustand wird als umgekehrter Leistungsfluss bezeichnet.
Schritt 6 – Einen Transformator und eine zweite Spannungsebene hinzufügen
Ziehen Sie einen zweiten Bus auf die Arbeitsfläche und stellen Sie seine Nennspannung auf 110 kV ein.
Fügen Sie anschließend einen Transformator hinzu und wählen Sie einen Standardtyp mit 25 MVA und 110/20 kV.
Verbinden Sie den Hochspannungsanschluss des Transformators mit dem 110-kV-Bus und den Niederspannungsanschluss mit dem 20-kV-Bus.
Verschieben Sie das externe Netz anschließend auf den 110-kV-Bus.
Führen Sie die Lastflussberechnung erneut aus. Der Transformator zeigt nun seinen Auslastungsgrad an. Auf der 20-kV-Seite sinkt die Spannung aufgrund der Transformatorimpedanz geringfügig ab.
Dieses Netz ist ebenfalls als fertiges Beispiel verfügbar. Wählen Sie „File › Open example › Substation with solar“, um es mit einem Klick zu laden und die manuellen Schritte zu überspringen.
Ergebnisse visualisieren
Nach einer Lastflussberechnung wird die Darstellung direkt auf der Arbeitsfläche aktualisiert.
Die Farbe eines Busses zeigt die Abweichung der Spannung vom Nennwert an:
- Grün bedeutet, dass die Spannung nahe bei 1,0 p.u. liegt und sich in einem gesunden Bereich befindet.
- Gelb beziehungsweise Orange zeigt eine moderate Abweichung an.
- Rot weist auf eine deutliche Abweichung hin, die untersucht werden sollte.
Generatoren und externe Netze zeigen ihre berechnete Wirk- und Blindleistung an.
Transformatoren zeigen ihren Auslastungsgrad und damit, wie nahe sie an ihrer thermischen Belastungsgrenze betrieben werden.
Leitungen zeigen ihren Auslastungsgrad und den fließenden Strom an.
Über den Schalter „Results“ in der Werkzeugleiste können diese Ergebnisanzeigen ein- oder ausgeblendet werden, ohne die Berechnung erneut ausführen zu müssen.
Netze importieren und exportieren
BambooGrid verwendet pandapower JSON als natives Dateiformat. Dieses standardisierte Format ist in der Forschung und Entwicklung elektrischer Energiesysteme weit verbreitet.
Über „File › Export“ kann das vollständige Netz als einzelne JSON-Datei heruntergeladen werden.
Die Datei enthält sowohl ein gültiges pandapower-Netz als auch die Tabellen mit den Layoutinformationen des Editors. Dadurch kann sie vollständig wieder importiert werden: Nach dem Import sieht die Arbeitsfläche genauso aus wie zuvor, einschließlich der Positionen aller Elemente.
Über „File › Import“ kann jede pandapower-JSON-Datei geladen werden. Dies kann eine aus BambooGrid exportierte Datei oder ein einfaches pandapower-Netz aus einer anderen Quelle sein.
Wenn die Datei keine Layoutinformationen enthält, berechnet der Editor automatisch eine passende Diagrammanordnung.
Dadurch können Netze, die mit pandapower-Skripten, im Rahmen wissenschaftlicher Arbeiten oder mit anderen Werkzeugen erstellt wurden, ohne manuelles Nachzeichnen visualisiert und berechnet werden.
Unter „File › Open example“ stehen außerdem mehrere integrierte Beispielnetze zur Verfügung. Dazu gehört das klassische IEEE-14-Bus-Testnetz – ein Referenznetz mit 14 Bussen, 15 Leitungen und fünf Transformatoren, das häufig in der Lehre und Forschung zu elektrischen Energiesystemen eingesetzt wird.
Netze teilen
Über die Schaltfläche „Share“ in der Werkzeugleiste wird ein kurzer Link erstellt, der kopiert und an andere Personen gesendet werden kann.
Wenn eine Empfängerin oder ein Empfänger diesen Link öffnet, erstellt BambooGrid in einer neuen Sitzung eine unabhängige und bearbeitbare Kopie des Netzes. Das ursprüngliche Netz bleibt vollständig unverändert.
Dadurch eignet sich BambooGrid besonders für Lehrveranstaltungen und Workshops.
Eine Lehrperson kann ein vorbereitetes Netz erstellen und den Link mit den Studierenden teilen. Jede Person erhält anschließend eine eigene isolierte Kopie, mit der sie experimentieren kann, ohne die Sitzung anderer Teilnehmender zu beeinflussen.
Cloud-Speicherung mit Google-Anmeldung
Damit Ihre Arbeit browser- und geräteübergreifend verfügbar bleibt, bietet BambooGrid eine Anmeldung mit Google an.
Nach der Anmeldung mit Ihrem Google-Konto erhalten Sie eine persönliche Netzbibliothek. Dort können Sie Netze unter eigenen Namen in der Cloud speichern, später wieder öffnen, umbenennen und löschen.
Auch Gastsitzungen ohne Anmeldung sind vollständig funktionsfähig. Sie werden beim erneuten Laden der Seite für die Dauer der Sitzung vom Server wiederhergestellt.
Eine gespeicherte Netzbibliothek bleibt jedoch auch dann erhalten, wenn Sie die Browserdaten löschen oder ein anderes Gerät verwenden.
BambooGrid selbst betreiben
BambooGrid ist unter der MIT-Lizenz als Open-Source-Software verfügbar und wird als einzelner Docker-Container bereitgestellt.
Die einzige externe Abhängigkeit ist eine PostgreSQL-Datenbank, die zur dauerhaften Speicherung der Sitzungen verwendet wird.
Das Repository finden Sie unter github.com/kickstage/bamboogrid.
Beiträge zum Projekt sind willkommen – beispielsweise neue Elementtypen, ein CGMES-Export, Verbesserungen an der Benutzeroberfläche und weitere Funktionen.
Beginnen Sie mit BambooGrid
In diesem Leitfaden haben wir ein kleines Verteilnetz erstellt, eine Last und eine Solaranlage hinzugefügt, einen umgekehrten Leistungsfluss beobachtet, über einen Transformator eine zweite Spannungsebene integriert und untersucht, wie BambooGrid die Berechnungsergebnisse direkt im Netzdiagramm darstellt.
Simulationen elektrischer Energiesysteme waren lange Zeit nur über teure kommerzielle Lizenzen und komplexe lokale Installationen zugänglich.
Werkzeuge wie pandapower haben die Möglichkeiten innerhalb der Python-Welt grundlegend erweitert. Das Ziel von BambooGrid ist es, vergleichbare Analysen direkt im Browser zugänglich zu machen.
BambooGrid richtet sich an Ingenieurinnen und Ingenieure, die neue Umspannwerkskonzepte untersuchen, an Studierende, die ihre ersten Lastflussberechnungen durchführen, sowie an alle, die verstehen möchten, wie das Stromnetz funktioniert, das ihr Zuhause mit Energie versorgt.
Probieren Sie BambooGrid unter bamboo.kickstage.com aus, erkunden Sie die Beispielnetze und teilen Sie uns mit, welche Funktionen Sie als Nächstes sehen möchten.
BambooGrid ist unter der MIT-Lizenz als Open-Source-Software verfügbar. Sie können den Quellcode ansehen, Fehler melden, Verbesserungen beitragen oder dem Projekt auf GitHub unter github.com/kickstage/bamboogrid einen Stern geben. ⭐
Wir zeigen, wie Grafana, Python, Docker, PostgreSQL und TimescaleDB öffentliche deutsche Stromdaten in praktische Energie-Dashboards für Ingenieure, Betreiber und Stakeholder verwandeln können.

