Referenzprojekt Industrie
Management der Erdung von Solarpanels
REST-Web-Service, .Net, Android-App
RC Partners betreiben mehrere Solarkraftwerke (Photovoltaik).
In Solarkraftwerken entstehen im Bereich der Solar-Panels hohe Gleichstrom-Spannungen von mehreren hundert Volt, die bei Wartungs- oder Grünpflegearbeiten für die ausführenden Personen gefährlich sein können. Im Bereich der Panels kann die Berührung bereits eines Pols zu einem Stromschlag führen, weil der Stromkreis im normalen Betrieb an einer Seite geerdet ist.
Diese Gefahr kann herabgesetzt werden, indem die Erdung vorübergehend abgeschaltet wird. Eine vorübergehende Abschaltung der Erdung hat keine negativen Auswirkungen auf den Betrieb der Anlage, allerdings sollte die Erdung wieder hergestellt werden, wenn die Arbeiten vorüber sind. Die Abschaltung erfolgte beim Kunden bisher nur vor Ort durch fachkundiges Personal oder über ein Remote-Kommando, allerdings einzeln für jeden Wechselrichter des Kraftwerks und ohne automatisierte Erfolgskontrolle.
Der Kunde hatte den Wunsch, das weiter zu automatisieren mit folgenden Zielen:
- Erhöhte Sicherheit bei Arbeiten auf dem Gelände
- Zentrale Steuerung und Überwachung der Erdungs-Abschalteinrichtungen
- Steuerbarkeit der Erdungs-Abschalteinrichtungen durch das Wartungspersonal vor Ort
Für den Kunden war wichtig, dass verschiedene Szenarien softwaregestützt ablaufen können:
- Ein Service-Techniker ist vor Ort und möchte Wartungsarbeiten durchführen. Er kann mit seinem mobilen Gerät direkt vor Ort für die gesamte Anlage oder Teile der Anlage die Erdung deaktivieren, indem er sich einbucht. Er bekommt eine Rückmeldung, wenn die Erdung deaktiviert ist und kann die Anlage dann betreten.
- Ein Gärtner steht am Tor der Anlage mit dem Auftrag zu mähen. Er meldet sich telefonisch bei der Leitstelle. Die Leitstelle bucht den Gärtner ein, das System schaltet daraufhin die Erdung der Anlage oder von Teilen der Anlage ab und speichert eine Notiz und die Telefonnummer des Gärtners. Sobald in der Leitstelle durch Rückmeldung der Abschalteinrichtungen gemeldet ist, dass die Erdung vollständig abgeschaltet wurde, gibt sie dem Gärtner die Freigabe zum Betreten der Anlage.
- Auch eine Kombination ist möglich: Während der Gärtner mäht, möchte eine Service-Technikerin Wartungsarbeiten an einem Anlagenteil durchführen. Sie sieht in ihrem Mobilgerät zunächst nicht, dass die Erdung des Anlagenteils bereits abgeschaltet wurde. Sie muss sich zunächst ebenfalls einbuchen und bekommt sofort die Rückmeldung, dass die Erdung abgeschaltet ist.
- Wenn Personen die Anlage wieder verlassen, wird die Buchung gelöscht.
- Das System stellt die Erdung von Anlagenteilen erst dann wieder her, wenn alle Buchungen für die Anlage gelöscht wurden.
- In der Leitstelle kann der Zustand der Abschalteinrichtungen aller Anlagen zentral überwacht werden. Buchungen und Fehlerzustände werden gemeldet.
Unsere Lösung besteht in einem zentralen Dienst, der die Kommunikation mit den Abschalteinrichtungen an den Solarkraftwerken übernimmt und der die Zustände der Anlagen und Anlagenteile verwaltet, sowie in zwei Steuerprogrammen: Eines für die Leitstelle und eine Android-App für Service-Techniker unterwegs.
Technische Umsetzung
Der zentrale Dienst wurde als Windows-Service implementiert.
Der grafische Client der Leitstelle ist eine WPF-Windows-Desktop-Anwendung.
Beim Client für Unterwegs handelt es sich um eine Android-App.
Die Kommunikation zwischen den Clients und dem Service erfolgt über eine REST-Schnittstelle. Damit Status-Änderungen an Anlagenteilen auch zum Client übertragen werden können, wird für die App GCM (Googles Push-Dienste) verwendet.
Besondere Herausforderungen
Bei dieser Software stand die Sicherheit im Vordergrund. Weil das Abschalten der Erdung zur Sicherheit beiträgt, waren eine hohe Zuverlässigkeit und eine ausgefeilte Fehlerbehandlung notwendig.
Die Zuverlässigkeit wurde durch Code-Reviews sowie durch die Entwicklung von rund 600 automatischen Tests unterstützt.
Fehlerbehandlung ist besonders bei nebenläufigen Vorgängen ein kompliziertes Thema. Das Kommando zum Abschalten der Erdung einer Anlage zieht eine erhebliche Zahl Einzelvorgänge nach sich.
So können in einer Anlage z.B. 80 einzelne Erdungs-Abschalteinrichtungen installiert sein. Der Vorgang des Abschaltens dauert eine Weile, denn es werden Motoren angesteuert, die Schütze betätigen. Nach dem Vorgang muss nach einer Weile eine Messung des Widerstands zur Erde hin durchgeführt werden. Nur wenn diese Messung ergibt, dass die Erdung abgeschaltet ist, wird „grünes Licht“ gegeben. Dieser Vorgang läuft jeweils parallel für eine Anzahl Abschalteinrichtungen und bei jedem Einzelschritt können Fehler auftreten, die entsprechend verarbeitet und angezeigt werden müssen. Eine Freigabe zum Betreten der Anlage darf nur dann ergehen, wenn tatsächlich alle Abschaltungen fehlerfrei vollzogen wurden.
Natürlich kann es auch sein, dass noch während der Abschaltvorgang läuft bereits wieder das Kommando zum Erden gegeben wird. Auch mit diesem Fall muss korrekt umgegangen werden.
Aus der Aufgabenstellung ergab sich damit eine Vielzahl von Kombinationen von Zuständen, wartenden Aufträgen und zu machenden Statusmeldungen. Diese wurden über automatische Tests simuliert und wir können dadurch sicher sein, dass die Software bestmöglich zur Sicherheit beiträgt.