Neargrid-MQTT-Treiber
Die folgende Integration kann verwendet werden, um Standortmesswerte über MQTT zu senden und Befehle für die verschiedenen installierten Gerätetypen zu empfangen.
Python-Demonstrationsskript
Wenden Sie sich an SmartgridOne, um ein Demonstrationsskript anzufordern.
Voraussetzungen
Cloud Controller
Die Standorte werden über einen Cloud Controller gesteuert. Bitte wenden Sie sich an SmartgridOne, um einen neuen Cloud Controller einzurichten.
Standorteinrichtung
Nachdem ein Cloud Controller erstellt wurde, enthält er eine eindeutige Seriennummer (<Controller SN>).
Neue Standorte können auf dem Cloud Controller mithilfe eindeutiger Standortfilter <site_filter> erstellt werden.
Diese beiden Variablen müssen in den MQTT-Topics und im Nachrichtentext verwendet werden.
Warnung
Die Verwendung identischer Standortfilter führt zu Fehlern.
Geräteauswahl
| Device Type | Supported |
|---|---|
| Solar Inverters | ✅ |
| Storage Devices | |
| Heatpumps | |
| Grid & Consumption Meters | |
| EV Chargers | ❌ |
Hinweis
Die Geräte eines Standorts können nach dessen Erstellung nicht mehr bearbeitet werden.
MQTT-Zugangsdaten
SmartgridOne stellt MQTT-Zugangsdaten bereit. Der MQTT-Benutzername muss beim Erstellen eines neuen Standorts eingegeben werden.
Hinweis
Die Zugangsdaten müssen nur einmal bereitgestellt werden. Ein Satz MQTT-Zugangsdaten kann zur Steuerung aller Standorte verwendet werden.
Senden von Messwerten
Um Messwerte an den SmartgridOne Controller zu senden, kann das folgende MQTT-Topic zum Veröffentlichen verwendet werden: standard1/outbound/neargrid_meas/<site_filter>/<Controller SN>/
Optionale Felder sind 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 off, on
- active_power_W
- Entspricht der Nennleistung, während die Wärmepumpe on 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": <Grid Active Power in Watts>,
"today_imported_energy_Wh": <Grid Imported Energy in Watt-hours>,
"today_exported_energy_Wh": <Grid Exported Energy in Watt-hours>,
},
"meter": {
"active_power_W": <Grid Active Power in Watts>,
"today_imported_energy_Wh": <Grid Imported Energy in Watt-hours>,
"today_exported_energy_Wh": <Grid Exported Energy in Watt-hours>,
},
"storage": {
"energy_stored_Wh": <Energy Stored in Watt-hours>,
"mean_soc_perc": <Mean State of Charge Percentage>,
"active_power_W": <Active Power in Watts>,
"today_charged_Wh": <Energy Charged on the Current Today in Watt-hours>,
"today_discharged_Wh": <Energy Discharged on the Current Today in Watt-hours>,
},
"solar": {
"active_power_W": <Solar Active Power in Watts>,
"today_energy_Wh": <Energy Produced Today in Watt-hours>.
},
"heat_pump": {
"active_power_W": <Heat Pump Active Power in Watts>,
"operation_modes": <Heat Pump Operation Mode>
}
},
"response_code": <Response Code>
},
"fields": {},
"requestTime": "<Unix Timestamp>",
"time": "<Unix Timestamp>",
"siteNodeId": "<site_filter"
}Bestätigung des Messwertempfangs
Wenn ein Messwert erfolgreich empfangen wurde, wird eine Empfangsbestätigung an das folgende Topic gesendet: standard1/rp_one_s/neargrid_ack/<site_filter>/<Controller SN>
Diese Empfangsbestätigung kann verwendet werden, um:
- Zu überprüfen, ob die Messwertnachricht erfolgreich empfangen wurde.
- Zu überprüfen, ob die Messwertnachricht alle erforderlichen Daten enthielt.
Empfangen von Befehlen
Um Befehle vom SmartgridOne Controller zu empfangen, abonnieren Sie das folgende MQTT-Topic: standard1/outbound/neargrid_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 möglicher Richtlinien
