Services und Plugins
Verständnis für Instances, Services, Plugins in der GRID-HUB Plattform
Instances, Services, Plugins
Der GRIDNOW® HUB ist modulares verteiltes System dessen Funktionalität durch Kombination und Konfiguration von Services und Plugins bestimmt wird . Die Bereitstellung kann sowohl auf dedizierter Hardware (Desktop-PC, Server, Embedded-System) aber auch in virtuellen (Virtual Machine) und containerisierten Umgebungen (Docker, Podman, Kubernetes) erfolgen. Eine einzelne Installation wird dabei als Instance bezeichnet. Die zentrale Komponente einer jeden Instance ist der CORE Service, er ist für die Kommunikation zwischen den Systemkomponenten (als Event-/Message-Bus), für die Verwaltung von Berechtigungen, sowie Überwachung der Services verantwortlich. Services sind die grundlegenden Funktionsbausteine der Instance und stellen individuelle Funktionen zur Verfügung. Plugins erweitern die Funktionalität der Services um spezifische Ausprägungen wie z.B. spezielle Funktionen oder Datenquellen.
Instances und Cluster
Als Instance wird eine funktionale Einheit, bestehend aus CORE und ausgewählten Services und Plugins bezeichnet. Eine Gesamtinstallation kann dabei aus mehreren Instancen bestehen die miteinander über den Cluster verbunden sind. Der Cluster dient dabei zur Verteilung von Lasten und zur Erhöhung der Ausfallsicherheit. So können für bestimmte Bereiche (z.B. einzelne Stationen, Hallen, Standorte) eigene Instanzen betrieben werden die für die lokale quellnahe Verarbeitung von Daten zuständig sind. Daten werden so dezentral verarbeitet und nur im Bedarfsfall an zentrale Instancen weitergeleitet (z.B. bei Nutzeranfragen). Die zentrale Instance überwacht kontinuierlich die Verfügbarkeit der Clustermitglieder und wird lediglich mit aggregierten Daten versorgt.
Services
Services sind die grundlegenden Funktionsbausteine der GRID-HUB Plattform. Sie stellen individuelle Funktionen zur Verfügung und können in ihrer Funktionalität durch Plugins erweitert werden. Services sind als abgeschlossene Werzeuge unabhängig voneinander und arbeiten als eigenständige Prozesse um im Verbund mit anderen Diensten komplexe Aufgaben zu erfüllen. Im folgenden werden die wichtigsten Services und ihre Funktionen beschrieben:
Core Service
Er ist die zentrale Komponente einer jeden Instance und ist für die Initialisierung, den Betrieb und die Koordination der je nach Anwendungsbedarf benötigten Services sowie Kommunikation zwischen diesen verantwortlich. Der CORE Service stellt einen Event-/Message-Bus zur Verfügung, über den Services miteinander kommunizieren können. Er verwaltet die Berechtigungen der Nutzer und überwacht die Verfügbarkeit der Services. Der CORE Service ist die zentrale Instanz für die Konfiguration und Steuerung der gesamten Plattform.
Communicator Service
Der Communicator Service ist die zentrale Kommunikationsschnittstelle zum Datenaustausch mit externen Geräten, Systemen und Diensten. Er ermöglicht die Anbindung von Sensoren, Aktoren, Maschinen und Anlagen und stellt die Verbindung zu unterschiedlichen Kommunikationsprotokollen und -standards her. Der Communicator Service ist für die Harmonisierung und Kontextualisierung der Daten verantwortlich und ermöglicht die Anbindung von Datenquellen und -senken. Die Funktionalität und Kommunikationsprotokolle des Communicator Service können durch Plugins erweitert werden (z.B. MQTT Plugin, Modbus Plugin, OPC-UA Plugin,...). Die unterschiedlichen Plugins stellen Kommunikationsadapter für spezifische Geräte und Protokolle bereit.
Investigator Service
Der Investigator Service ist für die Echtzeit-Modellierung von Datenströmen, die Berechnung von Kennzahlen und die Analyse von Korrelationen und Mustern verantwortlich. Er ermöglicht die Erstellung von Datenmodellen und die Definition von Regeln und Szenarien zur Überwachung und Steuerung von Anlagen und Systemen. Der Investigator Service unterstützt die Abbildung von Regelungsszenarien und die Automatisierung von Steuerungsprozessen in Echtzeit. Grundlage für die Modellierung und Analyse von Datenströmen sind die definierten Schemas und Tags die im Rahmen von Flow-Modellen verarbeitet werden. Ein no-code Flow-Editor ermöglicht die Erstellung von Modellen und Regeln ohne Programmierkenntnisse.
Presenter Service
Der Presenter Service ist für die Visualisierung der modellierten Daten verantwortlich. Er bietet hierfür eine Vielzahl von Visualisierungsmöglichkeiten für Zeitreihen (Charts), Echtzeit-Daten und KPIs (Diagrams), von Alarmen und Ereignissen (Events) sowie für die strukturierte Darstellung in Dashboards und Views (Views, Nodes). Der Presenter Service stellt die Schnittstelle zur Interaktion mit den Benutzern dar und ermöglicht die Anzeige von Daten in Echtzeit. Verschiedene no-Code Editor ermöglichen die Erstellung von individuellen Dashboards und Views ohne Programmierkenntnisse.
Broker Service
Der Broker Service stellt eine offene Schnittstelle zur Integration in Drittsystemen bereit. Er ermöglicht den Datenaustausch mit anderen Systemen und Diensten über standardisierte Schnittstellen und Protokolle (z.B. REST, MQTT, Kafka). Der Broker Service stellt über das Konzept des Unified Namespaces (UNS) eine strukturierte Abbildung der im GRID-HUB verarbeiteten Daten bereit und ermöglicht die Anbindung von externen Systemen und Diensten z.B. über MQTT mit Sparkplug B, Kafka, REST-APIs oder Websockets.
Simulator Service
Der Simulator Service ermöglicht die Simulation von Datenquellen (z.B. Messgeräte, Sensoren, Aktoren) und die Erzeugung von Testdaten für die Entwicklung und das Testing von Modellen und Szenarien. Er unterstützt die Erstellung von Testumgebungen und die Simulation von Anlagen und Systemen in Echtzeit.
Plugins
Plugins erweitern die Funktionalität der Services um spezifische Ausprägungen wie z.B. spezielle Funktionen oder Datenquellen. Sie können individuell installiert und konfiguriert werden und ermöglichen die Anbindung von spezifischen Geräten, Systemen und Diensten. Plugins können sowohl von GRIDNOW als auch von Drittanbietern entwickelt werden und stehen über den Plugin-Manager zur Verfügung. Das Power-Quality Plugin stellt beispielsweise spezifische Funktionen zur Analyse von Power-Quality-Daten in der Investigator Modelling-Engine (Flow-Editor) aber auch spezifische Visualisierungen und Templates für den Presenter-Service bereit.