Neargrid MQTT-drivrutin
Följande integration kan användas för att skicka mätvärden från platsen via MQTT och ta emot kommandon för de olika installerade enhetstyperna.
Python demo-script
Kontakta Sofar för att begära ett demo-script.
Förutsättningar
Cloud Controller
Platserna kommer att styras via en Cloud Controller. Vänligen kontakta EMS för att sätta upp en ny Cloud Controller
Platsinställning
När en Cloud Controller har skapats kommer den att innehålla ett unikt serienummer (standard1/rp_one_s/neargrid_ack/<site_filter>/<Controller SN>).
Nya platser kan genereras på Cloud Controllern med hjälp av unika platsfilter standard1/outbound/neargrid_cmd/<site_filter>/<Controller SN>/
Dessa två variabler måste användas i MQTT Topics och Body.
Varning
Att använda identiska platsfilter kommer att resultera i fel.
Enhetsval
| Device Type | Stöds |
|---|---|
| Solar Inverters | ✅ |
| Storage Devices | |
| Heatpumps | |
| Grid & Consumption Meters | |
| EV Chargers | ❌ |
Not
Enheterna i en plats kan inte redigeras efter skapandet.
MQTT-referenser
Sofar kommer att förse med MQTT-referenser. MQTT-användarnamnet måste anges vid generering av en ny plats.
Not
Referenserna behöver endast anges en gång. En uppsättning MQTT-referenser kan användas för att styra alla platser.
Skicka mätvärden
För att skicka mätvärden till Sofar EMS kan följande MQTT-topic användas för publicering: standard1/outbound/neargrid_meas/<site_filter>/<Controller SN>/
Valfria fält anges i kursiv stil.
Följande fält kan skickas per enhetstyp:
-
Lagring
- mean_soc_perc
- active_power_W
- today_charged_Wh
- today_discharged_Wh
- energy_stored_Wh
-
Sol
- active_power_W
- today_energy_Wh
-
Värmepumpar
- operation_modes
- Möjliga driftlägen är off, on
- active_power_W
- Lika med nominell effekt när värmepumpen är på
- operation_modes
-
Mätare
- active_power_W
- today_imported_energy_Wh
- today_exported_energy_Wh
Meddelandet måste struktureras enligt följande:
{
"time": "<Unix Timestamp>",
"data": {
"state": {
"grid": {
"active_power_W": <Nätets aktiva effekt i watt>,
"today_imported_energy_Wh": <Nätets importerade energi i wattimmar>,
"today_exported_energy_Wh": <Nätets exporterade energi i wattimmar>,
},
"meter": {
"active_power_W": <Nätets aktiva effekt i watt>,
"today_imported_energy_Wh": <Nätets importerade energi i wattimmar>,
"today_exported_energy_Wh": <Nätets exporterade energi i wattimmar>,
},
"storage": {
"energy_stored_Wh": <Lagrad energi i wattimmar>,
"mean_soc_perc": <Genomsnittlig laddningsnivå i procent>,
"active_power_W": <Aktiv effekt i watt>,
"today_charged_Wh": <Energi laddad idag i wattimmar>,
"today_discharged_Wh": <Energi urladdad idag i wattimmar>,
},
"solar": {
"active_power_W": <Solens aktiva effekt i watt>,
"today_energy_Wh": <Energi producerad idag i wattimmar>.
},
"heat_pump": {
"active_power_W": <Värmepumpens aktiva effekt i watt>,
"operation_modes": <Värmepumpens driftläge>
}
},
"response_code": <Svarskod>
},
"fields": {},
"requestTime": "<Unix Timestamp>",
"time": "<Unix Timestamp>",
"siteNodeId": "<site_filter"
}Bekräftelse av mätvärde
När ett mätvärde har tagits emot framgångsrikt kommer en bekräftelse att skickas på följande topic: standard1/rp_one_s/neargrid_ack/<site_filter>/<Controller SN>
Denna bekräftelse kan användas för att:
- Verifiera att mätmeddelandet mottogs korrekt.
- Verifiera att mätmeddelandet innehöll all nödvändig data.
Ta emot kommandon
För att ta emot kommandon från Sofar EMS, prenumerera på följande MQTT-topic: standard1/outbound/neargrid_cmd/<site_filter>/<Controller SN>/
Svaret är strukturerat enligt följande:
{
"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
}
}Listan över policys som kan tas emot finns här: List of Potential Policies
