Auch wenn sie für gewöhnlich niemandem auffallen, gibt es sie überall dort, wo sich Wohnhäuser oder Industrie in nennenswertem Maße konzentrieren: Mittelspannungs-(MS-)Unterstationen (auch Umspannwerke genannt). Sie haben die Aufgabe, die Spannung aus dem Hochspannungsnetz herunterzutransformieren, und spielen somit eine entscheidende Rolle für die Stromversorgung von privaten und industriellen Verbrauchern. In modernen Unterstationen kommen in der Regel Geräte von verschiedenen Anbietern zum Einsatz, das heißt auf proprietärer Hardware laufen Anwendungen, die für die Funktion der Station entscheidend sind. Allerdings ist die Instandhaltung und Aktualisierung von vielen proprietären Geräten eine anspruchsvolle und teure Angelegenheit. Darüber hinaus sehen sich Betreiber von Unterstationen mit weiteren Herausforderungen konfrontiert – wie etwa der zunehmenden Anzahl von dezentralen Energieressourcen (DERs) im Verteilnetz. Damit verbunden sind zusätzliche Investitionen in die Intelligenz und Resilienz des Netzes. Hinzu kommt, dass Verteilnetzbetreiber (VNBs) generell unter ständigem Druck stehen, ihre Investitions- und Betriebskosten zu senken. Eine wirksame Möglichkeit, diese Herausforderungen zu bewältigen, ist die Einführung einer flexiblen und schnellen Implementierung von Anwendungen in Unterstationen. Damit haben VNBs nicht nur die Möglichkeit, Anwendungen verschiedener Anbieter auf derselben Hardware zu implementieren, sondern bei Bedarf auch Funktionalitäten hinzuzufügen oder vorhandene Funktionalitäten zu erweitern. Der Schlüssel zu einer solchen flexiblen und schnellen Implementierung von Anwendungen liegt in der Virtualisierung.
Entkopplung von Software und Hardware
Das Konzept, Software mittels Virtualisierung von der zugrunde liegenden Hardware zu entkoppeln, hat sich in den vergangenen Jahrzehnten in der IT-Landschaft als sehr erfolgreich erwiesen. Tatsächlich ist die Virtualisierung das „Arbeitspferd“, das eine moderne Cloud-Infrastruktur ermöglicht, da sie die Hardwarekosten reduziert und die Wartung vereinfacht. Bei der Virtualisierung laufen Anwendungen in einer „virtuellen“ Umgebung, losgelöst von der tatsächlich zugrunde liegenden Plattform und isoliert von anderen auf der Plattform laufenden Anwendungen. Durch Virtualisierung lässt sich Software nahezu unabhängig von der zugrunde liegenden Plattform implementieren, ausführen, austauschen und migrieren. Darüber hinaus kann durch Virtualisierung eine hohe Verfügbarkeit und Resilienz bei überschaubaren Kosten gewährleistet werden. Diese Vorzüge der Virtualisierungstechnologie können VNBs dabei helfen, die Herausforderungen und Einschränkungen der Stationsautomatisierung zu bewältigen, und die Implementierung und Skalierung neuer Anwendungen erleichtern.
Virtualisierung für die Stationsautomatisierung
Virtualisierung kann auf verschiedenen Ebenen stattfinden:
- Auf der Hardwareebene in virtuellen Maschinen (VMs), die die Funktionalität eines physischen Computers bereitstellen, ohne dass sich die Entwicklerin/der Entwickler mit der tatsächlichen physischen Hardware befassen muss.
- Auf der Betriebssystemebene (OS) in sogenannten Containern. Im Gegensatz zu einer VM, die eine komplette Hardwaremaschine virtualisiert, virtualisiert ein Container die Softwareebenen oberhalb des OS und kann Prozesse isolieren und den Zugriff von Prozessen auf CPUs, Speicher usw. steuern.
- Auf der Funktionsebene wie bei der serverlosen Datenverarbeitung (Serverless Computing). Hier sind zwar weiterhin Server beteiligt, aber losgelöst von der Anwendung, sodass die Entwickler/innen sich nicht um die Bereitstellung oder Verwaltung der Serverinfrastruktur kümmern müssen, da dies vom Cloud-Anbieter übernommen wird.
Im Hinblick auf die Stationsautomatisierung ergeben sich für die Virtualisierungstechnologie Herausforderungen, die es beim Cloud-Computing nicht gibt. Während in der Cloud üppige Rechen-, Speicher- und Netzwerkressourcen zur Verfügung stehen, sind die auf den Stationsgeräten verfügbaren Ressourcen eher bescheiden. Zudem laufen darauf Anwendungen mit unterschiedlicher Kritikalität (sicherheitskritisch und nicht sicherheitskritisch), von denen einige möglicherweise bestimmte Hardwarekonfigurationen – z.B. Unterstützung des Precision Time Protocols (PTP) in einer Netzwerkkarte – erfordern. Hinzu kommt, dass viele Stationsanwendungen mit speziellen Anforderungen an Reaktionszeiten und eine hohe Verfügbarkeit verbunden sind, die im Betrieb erfüllt werden müssen. Diese Anforderungen unterscheiden die Virtualisierung deutlich, wenn es um die Verteilungs- oder Stationsautomatisierung geht. Folglich ist für eine Bündelung mehrerer VMs oder Container auf Geräten eine sorgfältige Ressourcenbereitstellung und -zuordnung erforderlich. Ansonsten kann es aufgrund von Konflikten zu nichtdeterministischen Verzögerungen kommen, die die Echtzeitgarantien für die in den VMs oder Containern laufenden Anwendungen gefährden.
ABB hat die Anwendbarkeit der Virtualisierungstechnologie in MS-Unterstationen, insbesondere die Nutzung von Echtzeit-Schutz- und Steuerungsanwendungen in Linux-Containern untersucht, die eine Virtualisierung auf OS-Ebene ermöglichen. Dazu wurden mehrere Instanzen eines zentralisierten Stationsschutz- und -steuerungssystems auf demselben Host ausgeführt und die Echtzeit-Performance der Steuerungs- und Schutzanwendungen mithilfe maßgeschneiderter Lösungen zur Ressourcenbereitstellung und virtuellen Vernetzung demonstriert. Die folgende Beschreibung zeigt, wie entscheidend eine effektive Ressourcenbereitstellung und -verwaltung für eine erfolgreiche Virtualisierung in der Stationsautomatisierung sind.
Implementierung und Ressourcenmanagement
Im Rahmen der Forschungsarbeit wurde die Möglichkeit zur Ausführung anspruchsvoller Echtzeit-Anwendungen in Linux nicht nur mithilfe einer Virtualisierung auf OS-Ebene mit Containern, sondern auch mit VMs untersucht. Die Grundlage des Testsystems bildet ein Linux-Kernel mit einem PREEMPT-RT-Patch, der den Linux-Kernel um Echtzeitfähigkeiten erweitert. Auch wenn sich PREEMPT-RT nicht für sehr schnelle Echtzeit-Aufgaben mit Latenzanforderungen im Bereich von wenigen Mikrosekunden eignen mag, werden für Stationsautomatisierungsanwendungen in Wirklichkeit nur die realistisch erreichbaren Latenzen im Millisekundenbereich benötigt.
Um die in der Stationsautomatisierung erforderliche Echtzeit-Performance zu erreichen, muss die Schutzanwendung:
- die ankommenden Strom- und Spannungsmessungen unverzüglich erhalten,
- bei Bedarf garantierten Zugriff auf die Rechenhardware haben,
- Berechnungen innerhalb einer begrenzten Zeit durchführen und in der Lage sein, rechtzeitig eine Reaktion zu senden.
Diese Bedingungen schaffen verschiedene Herausforderungen für ein virtualisiertes System, bei dem sich mehrere Anwendungen dasselbe Hostsystem teilen.
Latenzherausforderungen
Die erste Hürde besteht darin, Prozessdaten rechtzeitig von den Merging Units (MUs) abzurufen. MUs fungieren als Schnittstellen, die Prozessdaten wie etwa Messwerte von Messwandlern sowie Meldungen und Alarme von Schaltanlagen empfangen. Der Schwerpunkt wurde hier auf digitale Unterstationen gelegt, bei denen Prozess- und Steuerdaten gemäß IEC61850 über ein Ethernet-Netzwerk ausgetauscht werden. In solchen Fällen müssen sich mehrere Anwendungen den physischen Netzwerkzugang mit virtualisierten Netzwerktechnologien wie einem virtuellen Switch oder Macvlan (ein Netzwerktreiber, der Softwarecontainer im physischen Netzwerk wie physische Geräte darstellt) teilen. Daher wurden verschiedene Möglichkeiten untersucht, eine virtuelle Umgebung mit dem physischen Hostnetzwerk zu verbinden. Die Untersuchung erfolgte mithilfe des virtuellen Produkts ABB Ability Smart Substation Control and Protection für elektrische Anlagen SSC600 SW. Da gewöhnliche Netzwerk-Virtualisierungskonzepte nicht auf eine Optimierung der Latenz ausgelegt sind, ergaben sich (aufgrund der Art und Weise, wie Netzwerktreiber Aufgaben auf einen späteren Zeitpunkt verschieben) erhebliche Stolpersteine im Hinblick auf einen Echtzeitbetrieb. Das finale System wurde entsprechend optimiert, um diese Stolpersteine zu umgehen. Zudem kann moderne Netzwerkhardware mit expliziten Virtualisierungsfunktionen zur Verbesserung der Situation beitragen.
CPU-Zugriff, wenn erforderlich
Kommen die Daten rechtzeitig an, besteht der nächste Schritt zum Erreichen der notwendigen Echtzeit-Performance darin, Zugriff auf die CPU zu erhalten, wenn dies erforderlich ist. Die Ausführung von Prozessen zu planen (Prozess-Scheduling), gehört zu den Kernaufgaben jedes OS. Linux mit PREEMPT-RT bietet mehrere Echtzeit-Strategien und ermöglicht es der Schutzsoftware, anderen Anwendungen zuvorzukommen. Es hat sich gezeigt, dass es das Scheduling – das heißt, genau dann Zugriff auf die CPU zu bekommen, wenn es nötig ist – nicht wesentlich beeinflusst, wenn die Software in Containern auf modernder Serverhardware ausgeführt wird. Bei einem entsprechend konfigurierten System liegt hier nicht der Hauptengpass, zumindest nicht bei Latenzen von mehr als ein paar Dutzend Mikrosekunden. Dennoch kann es sein, dass der Schutzprozess oder eine ganze VM von einer anderen Anwendung mit ähnlicher Priorität bzw. einer der vielen Verwaltungsaufgaben des OS blockiert wird. Es wurden verschiedene Strategien für die Zuteilung der CPU-Kerne untersucht. Potenziell gefährliche Konflikte wurden durch exklusive Zuordnung von CPU-Kernen zu Anwendungen und eine maximale Isolierung des OS auf dedizierte CPU-Kerne vermieden. Exklusive Zuordnungen helfen zudem bei der korrekten Dimensionierung der Host-Hardware, um die Verfügbarkeit ausreichender Rechenressourcen für alle Anwendungen zu gewährleisten. Die gewählte Strategie passt auch gut zu den hohen Anforderungen von Schutzalgorithmen an die Rechenleistung und die zumeist horizontale Skalierung moderner Hardware mit einer stetig steigenden Zahl von CPU-Kernen.
Speicheraspekte
Auch wenn die Berechnungen rechtzeitig beginnen und dedizierte CPU-Kerne verfügbar sind, können Störungen die Datenverarbeitung auf inakzeptable Weise verzögern. Bei datenintensiven Anwendungen wie Schutz- und Steuerungsfunktionen hängen die Ausführungszeiten stark von der Datenübertragung zwischen Speicher und CPU ab. Ein modernes System nutzt mehrere schnelle Zwischenspeicherebenen (Cache), um die Abrufzeiten für häufig genutzte Daten zu verkürzen. Leider ist die Cachegröße begrenzt und bietet weiteres Störpotenzial zwischen Anwendungen mit hohen Datenlasten. Daher wurden Regeln zur Cache-Partitionierung und exklusiven Reservierung von Speicherbandbreite implementiert. Mit einer sorgfältig durchdachten Ressourcenreservierung ist es möglich, virtuelle Echtzeit-Anwendungen vollständig voneinander zu isolieren und einen stabilen Betrieb mit rechtzeitigen Reaktionen für alle Anwendungen auf derselben Plattform zu gewährleisten.
Pilotinstallation und Performance
Nach ersten Machbarkeitsstudien und anschließenden Tests von virtuellen Schutz- und Steuerungsfunktionen im Labor erfolgte die Validierung im realen Umfeld. Im Labor wurden die Schutzreaktionszeiten für das gesamte System in verschiedenen Konfigurationen und virtuellen Umgebungen bei unterschiedlichen Lasten gegen tatsächliche Signaleinspeisungen in Hardware-in-the-Loop-Tests und Echtzeit-Netzwerksimulationen geprüft. Bei allen Tests erwies sich das virtuelle System als erfolgreich und konnte den Anforderungen des entsprechenden Schutz- und Steuergeräts gerecht werden. Nach den positiven Laborergebnissen begann ABB mit der Validierung im realen Umfeld in Zusammenarbeit mit einem der führenden finnischen VNBs. Dazu wurde ein IEC61850-zertifizierter Server in einer Unterstation in der Provinz Westfinnland installiert. Dank sorgfältiger Ressourcenpartitionierung können auf dem Server zwei vollständig konfigurierte virtuelle SSC600-Instanzen parallel ausgeführt werden. Seit der Inbetriebnahme im September 2021 erfüllen die Instanzen sämtliche funktionale und zeitbezogene Anforderungen des physischen SSC600. Ein Vergleich der Protokolle der (sehr wenigen) in der Station beobachteten Ereignisse zeigt, dass das Verhalten der virtuellen Instanzen mit dem des physischen Systems übereinstimmt. Die sorgfältig konzipierte virtuelle Netzwerkschicht sicherte ein rechtzeitiges Eintreffen aller ankommenden Messwerte im normalen Betrieb ohne Verspätungen oder andere Verluste. Die einzigen beobachteten Paketverluste ereigneten sich während externer Datenunterbrechungen ohne Bezug zum virtuellen System. Der Feldtest in Finnland hat erfolgreich gezeigt, dass sich der gewählte Ansatz zur Virtualisierung von Schutz- und Steuerungsfunktionen in der Stationsautomatisierung für den Einsatz im realen Umfeld eignet. Die Virtualisierung bietet Betreibern von Unterstationen eine Möglichkeit, Kosten zu senken, die Instandhaltung der Anlagen zu vereinfachen und eine rasch wachsende Zahl von erneuerbaren Energiequellen erfolgreich ins Netz zu integrieren.