Virtuelles Kraftwerk
Das VPP-Protokoll basiert auf dem Live-MQTT-Protokoll. Bitte beziehen Sie sich auf diese Seite vorher. Siehe Live MQTT Control.
Die erste VPP-Einrichtung MUSS von Eniris durchgeführt werden. Bitte kontaktieren Sie Eniris bevor Sie mit den nächsten Schritten fortfahren.
Verbindung zum MQTT-Broker
Bitte beziehen Sie sich auf den folgenden Abschnitt, um herauszufinden, wie Sie sich mit dem Eniris MQTT-Broker verbinden: MQTT Broker Connection
VPP-Funktionalität
Das VPP ist so konzipiert, dass es pro Gerätegruppe (z.B. Solar, Speicherung) einen Satz von Sollwerten/Strategien empfängt und die Sollwerte zwischen den mit dem VPP verbundenen Controllern aggregiert.
Während das Live-MQTT-Protokoll einen Befehl an einen einzelnen Controller senden würde, ermöglicht das VPP dem Benutzer, einen Befehl an eine Gruppe von Controllern zu senden.

Hinzufügen von Controllern zum VPP




Beim Hinzufügen des Eniris MQTT-Signals wird ein Feld VPP ID
angezeigt. Geben Sie die hier erhaltene VPP ID ein.


Aggregationsalgorithmus
Die Sollwerte werden basierend auf der Kapazität der Geräte aggregiert, die unter den einzelnen Controllern fallen.
MQTT-Themen
Sobald die erste Einrichtung abgeschlossen ist, werden eine VPP ID und ein MQTT-Benutzername (und Passwort) bereitgestellt.
Eingehendes Thema
Thema: vpp/{MQTT Benutzername}/{VPP ID}
Dieses Thema wird vom Benutzer verwendet, um einen aggregierten Befehl an das VPP zu senden.
Body:
{
"msg_id": <inkrementelle Nachrichten-ID>(int),
"vpp_id": <VPP ID>(str),
"time": "<Unix-Zeitstempel>(int)",
"fields": {
"<Komponentenrichtlinie>": "<Richtlinientyp>",
"<Komponentenleistungssollwert>": <Sollwert in Watt>
}
}
Die Komponentenrichtlinien und Sollwerte finden Sie hier: MQTT Komponenten und Richtlinien
Bestätigungsthema
Thema: vpp/{MQTT Benutzername}/{VPP ID}/acknowledgement
Nachdem ein Befehl gesendet wurde, wird das VPP mit einer Bestätigung antworten, die angibt, ob der Befehl erfolgreich empfangen wurde oder nicht.
Body:
{
"payload": {
"fields": {
"responseCode": <Erfolgs-/Fehlercode>(int),
"ack": <Bestätigungsnachricht>(str)
},
"target": <VPP ID>(str)
},
"message_type": <Art der Nachricht>(str)
}
Rückmeldethema
Thema: vpp/{MQTT Benutzername}/{VPP ID}/feedback
Das Rückmeldethema enthält das Feedback, das von den einzelnen Controllern zurückgegeben wird.
Body:
{
"payload": {
"updated_on": <Unix-Zeitstempel der Daten>(str),
"feedback_dict": {
<Feedback-Dikt>(dict)
},
"target": <Standort-Knoten-ID>(str)
},
"message_type": <Art der Nachricht>(str)
}
Die Struktur des Feedback-Dikts ist hier zu finden: MQTT Feedback Payload Structure
Aggregiertes Rückmeldethema
Thema: vpp/{MQTT Benutzername}/{VPP ID}/aggregated_feedback
Das VPP aggregiert das Feedback, das von jedem einzelnen Controller empfangen wird.
Body:
{
"payload": {
"updated_on": <Unix-Zeitstempel der Daten>(str),
"feedback_dict": {
<Aggregiertes Feedback-Dikt>(dict)
}
},
"message_type": <Art der Nachricht>(str)
}
Das aggregierte Feedback-Wörterbuch ist ähnlich strukturiert wie die MQTT Feedback Payload Structure. Allerdings können Stringwerte, wie ausgeführte Strategien, nicht aggregiert werden und sind daher nicht enthalten.
Versendete Befehle Thema
Thema: vpp/{MQTT Benutzername}/{VPP ID}/dispatched_commands
Wenn Befehle von dem VPP an die Controller gesendet werden, wird dies über dieses Thema gemeldet.
Body:
{
"payload": {
"aggregated": {
<Komponentenname>(str): <CommandPower Wert>(float)...
},
"dispatched_commands": [
<Liste der einzelnen Befehle, die an die Controller gesendet wurden>
]
},
"message_type": <Art der Nachricht>(str)
}
Die Payload-Struktur der einzelnen gesendeten Befehle finden Sie hier: MQTT Feedback Payload Structure.
Warnung Thema
Thema: vpp/{MQTT Benutzername}/{VPP ID}/warning
Wenn ein Fehler oder eine Warnung im VPP auftritt, wird eine Nachricht über dieses MQTT-Thema gesendet.
Body:
{
"payload": {
"fields": {
<Feld Wörterbuch>(dict)
},
"target": <VPP ID>(str)
},
"message_type": <Art der Nachricht>(str)
}