Följande integration kan användas för att skicka platsmätningar via MQTT och ta emot kommandon för de olika installerade enhetstyperna.
Denna testkod gör ett enkelt jobb med att kontinuerligt skicka dummy-mätvärden till en installation och ta emot kommandon:
Ladda ner filen nedan i din föredragna Python IDE. Fyll i ditt serienummer, platsfilter och MQTT-uppgifter och kör skriptet:
SmartgridOne
Platserna kommer att styras via en Cloud Controller. Kontakta Controller för att sätta upp en ny Cloud Controller.
När en Cloud Controller har skapats kommer den att innehålla ett unikt serienummer (standard1/rp_one_s/scholt_ack/<site_filter>/<Controller SN>).
Nya platser kan genereras i Cloud Controller med unika platsfilter standard1/outbound/scholt_cmd/<site_filter>/<Controller SN>/
Dessa två variabler måste användas i MQTT Topics och Body.
Varning Varning Att använda identiska platsfilter kommer att resultera i fel.
Device Type Stöds Solar Inverters ✅ Storage Devices Heatpumps Grid & Consumption Meters EV Chargers ❌
Not Not Enheterna i en plats kan inte redigeras efter skapandet.
SmartgridOne tillhandahåller MQTT-uppgifter. MQTT-användarnamnet måste anges när en ny plats genereras.
Not Not Uppgifterna måste endast tillhandahållas en gång. Ett set med MQTT-uppgifter kan användas för att styra alla platser.
För att skicka mätvärden till SmartgridOne Controller , kan följande MQTT-topic användas för publicering: standard1/outbound/scholt_meas/<site_filter>/<Controller SN>/
Valfria fält anges med 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
Motsvarar nominell effekt när värmepumpen är on
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" : <Grid Active Power in Watts> ,
"today_imported_energy_Wh" : <Grid Imported Energy in Watt-hours>
När ett mätvärde har tagits emot framgångsrikt, skickas en bekräftelse på följande topic: standard1/rp_one_s/scholt_ack/<site_filter>/<Controller SN>
Denna bekräftelse kan användas för att:
Verifiera att mätmeddelandet togs emot framgångsrikt.
Verifiera att mätmeddelandet innehöll all nödvändig data.
För att ta emot kommandon från SmartgridOne Controller , prenumerera på följande MQTT-topic: standard1/outbound/scholt_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 policies som kan tas emot finns här:
,
"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"
}
Scholt | SmartgridOne Documentation