Scholt MQTT Treiber
Die folgende Integration kann verwendet werden, um Standortmessungen über MQTT zu senden und Befehle für die verschiedenen installierten Gerätetypen zu empfangen.
Python Democode
Dieser Testcode führt eine einfache Aufgabe aus, indem er kontinuierlich Dummy-Messungen an eine Installation sendet und Befehle empfängt:
Bitte laden Sie die Datei unten in Ihrer bevorzugten Python-IDE herunter. Füllen Sie Ihre Seriennummer, Standortfilter und MQTT-Anmeldeinformationen aus und führen Sie das Skript aus:
Voraussetzungen
Cloud-Controller
Die Standorte werden über einen Cloud-Controller gesteuert. Bitte kontaktieren Sie SmartgridOne, um einen neuen Cloud-Controller einzurichten.
Standortsetup
Sobald ein Cloud-Controller erstellt wurde, enthält er eine eindeutige Seriennummer (<Controller SN>).
Neue Standorte können auf dem Cloud-Controller mit eindeutigen Standortfiltern <site_filter> generiert werden.
Diese beiden Variablen müssen in den MQTT-Themen und dem Body verwendet werden.
Warning
Die Verwendung identischer Standortfilter führt zu Fehlern.
Gerätauswahl
| Device Type | Unterstützt |
|---|---|
| Solarwechselrichter | ✅ |
| Speichergeräte | |
| Wärmepumpen | |
| Netz- und Verbrauchszähler | |
| EV-Ladegeräte | ❌ |
Note
Die Geräte an einem Standort können nach der Erstellung nicht mehr bearbeitet werden.
MQTT-Anmeldeinformationen
SmartgridOne stellt die MQTT-Anmeldeinformationen zur Verfügung. Der MQTT-Benutzername muss eingegeben werden, wenn ein neuer Standort erstellt wird.
Note
Die Anmeldeinformationen müssen nur einmal angegeben werden. Ein Satz von MQTT-Anmeldeinformationen kann verwendet werden, um alle Standorte zu steuern.
Messungen senden
Um Messungen an die SmartgridOne Controller zu senden, kann das folgende MQTT-Thema für die Veröffentlichung verwendet werden: standard1/outbound/scholt_meas/<site_filter>/<Controller SN>/
Optionale Felder sind in kursiv angegeben.
Die folgenden Felder können pro Gerätetyp gesendet werden:
-
Speicher
- mean_soc_perc
- active_power_W
- today_charged_Wh
- today_discharged_Wh
- energy_stored_Wh
-
Solar
- active_power_W
- today_energy_Wh
-
Wärmepumpen
- operation_modes
- Mögliche Betriebsmodi sind aus, ein
- active_power_W
- Entspricht der Nennleistung, während die Wärmepumpe eingeschaltet ist
- operation_modes
-
Zähler
- active_power_W
- today_imported_energy_Wh
- today_exported_energy_Wh
Die Nachricht muss wie folgt strukturiert sein:
{
"time": "<Unix Timestamp>",
"data": {
"state": {
"grid": {
"active_power_W": <Aktive Netzleistung in Watt>,
"today_imported_energy_Wh": <Importierte Energie aus dem Netz in Wattstunden>,
"today_exported_energy_Wh": <Exportierte Energie aus dem Netz in Wattstunden>,
},
"meter": {
"active_power_W": <Aktive Zählerleistung in Watt>,
"today_imported_energy_Wh": <Importierte Energie in Wattstunden>,
"today_exported_energy_Wh": <Exportierte Energie in Wattstunden>,
},
"storage": {
"energy_stored_Wh": <Energie im Speicher in Wattstunden>,
"mean_soc_perc": <Durchschnittlicher Ladezustand in Prozent>,
"active_power_W": <Aktive Leistung in Watt>,
"today_charged_Wh": <Heute im aktuellen Tag geladen in Wattstunden>,
"today_discharged_Wh": <Heute im aktuellen Tag entladen in Wattstunden>,
},
"solar": {
"active_power_W": <Aktive Solarleistung in Watt>,
"today_energy_Wh": <Heute produzierte Energie in Wattstunden>.
},
"heat_pump": {
"active_power_W": <Aktive Wärmepumpenleistung in Watt>,
"operation_modes": <Betriebsmodus der Wärmepumpe>
}
},
"response_code": <Antwortcode>
},
"fields": {},
"requestTime": "<Unix Timestamp>",
"time": "<Unix Timestamp>",
"siteNodeId": "<site_filter"
}Messungsbestätigung
Wenn eine Messung erfolgreich empfangen wurde, wird eine Bestätigung auf dem folgenden Thema gesendet: standard1/rp_one_s/scholt_ack/<site_filter>/<Controller SN>
Diese Bestätigung kann verwendet werden, um:
- Zu überprüfen, dass die Messnachricht erfolgreich empfangen wurde.
- Zu überprüfen, dass die Messnachricht alle notwendigen Daten enthielt.
Befehle empfangen
Um Befehle von der SmartgridOne Controller zu empfangen, abonnieren Sie das folgende MQTT-Thema: standard1/outbound/scholt_cmd/<site_filter>/<Controller SN>/
Die Antwort ist wie folgt strukturiert:
{
"extraTags": {
"nodeId": "<Controller SN>_site_0"
},
"time": "<Unix Timestamp>",
"fields": {
"solar_policy": "<policy>",
"solar_power_setpoint_w": 5000,
"storage_policy": "<policy>",
"storage_power_setpoint_w": -5000
}
}Die Liste der Richtlinien, die empfangen werden können, finden Sie hier: Liste der möglichen Richtlinien
