Ga naar hoofdinhoud
Scholt

Scholt MQTT-driver

De volgende integratie kan worden gebruikt om terreinmetingen via MQTT te verzenden en om commando's te ontvangen voor de verschillende geïnstalleerde apparaattoepassingen.

Python demo script

Deze testcode doet een eenvoudige taak van het continu verzenden van dummymetingen naar een installatie en het ontvangen van commando's:

Download het onderstaande bestand in je favoriete Python IDE. Vul je serienummer, sitefilter en MQTT-gegevens in en voer het script uit:

Vereisten

Cloud Controller

De sites worden beheerd via een Cloud Controller. Neem contact op met Eniris om een nieuwe Cloud Controller in te stellen.

Site-instelling

Zodra een Cloud Controller is aangemaakt, bevat deze een uniek serienummer (<Controller SN>).

Nieuwe sites kunnen worden gegenereerd op de Cloud Controller met behulp van unieke sitefilters <site_filter>

Deze twee variabelen moeten worden gebruikt in de MQTT-thema's en -inhoud.

waarschuwing

Het gebruik van identieke sitefilters resulteert in fouten.

Apparaatselectie

Device TypeOndersteund
Zonne-energie omvormers
Opslagapparaten
Warmtepompen
Net- en verbruikmeters
EV-laders
info

De apparaten in een site kunnen niet worden bewerkt na creatie.

MQTT-gegevens

Eniris zal de MQTT-gegevens verstrekken. De MQTT-gebruikersnaam moet worden ingevoerd bij het genereren van een nieuwe site.

info

De gegevens moeten slechts één keer worden opgegeven. Eén set MQTT-gegevens kan worden gebruikt om alle sites te beheren.

Metingen verzenden

Om metingen te verzenden naar de SmartgridOne Controller, kan het volgende MQTT-thema worden gebruikt voor publicatie: standard1/outbound/scholt_meas/<site_filter>/<Controller SN>/

Optionele velden worden vermeld in cursief.

De volgende velden kunnen per apparaattype worden verzonden:

  • Opslag

    • mean_soc_perc
    • active_power_W
    • today_charged_Wh
    • today_discharged_Wh
    • energy_stored_Wh
  • Zonne-energie

    • active_power_W
    • today_energy_Wh
  • Warmtepompen

    • operation_modes
      • Mogelijke bedrijfsmodi zijn uit, aan
    • active_power_W
      • Gelijk aan nominale kracht terwijl warmtepomp aan
  • Meters

    • active_power_W
    • today_imported_energy_Wh
    • today_exported_energy_Wh

Het bericht moet als volgt zijn gestructureerd:

{
"time": "<Unix Timestamp>",
"data": {
"state": {
"grid": {
"active_power_W": <Grid Actieve Vermogen in Watts>,
"today_imported_energy_Wh": <Grid Geïmporteerde Energie in Watt-uren>,
"today_exported_energy_Wh": <Grid Geëxporteerde Energie in Watt-uren>
},
"meter": {
"active_power_W": <Grid Actieve Vermogen in Watts>,
"today_imported_energy_Wh": <Grid Geïmporteerde Energie in Watt-uren>,
"today_exported_energy_Wh": <Grid Geëxporteerde Energie in Watt-uren>
},
"storage": {
"energy_stored_Wh": <Energie Opgeslagen in Watt-uren>,
"mean_soc_perc": <Gemiddeld Percentage van de Ladingstoestand>,
"active_power_W": <Actieve Vermogen in Watts>,
"today_charged_Wh": <Energie Opgeladen op de Huidige Dag in Watt-uren>,
"today_discharged_Wh": <Energie Ontladen op de Huidige Dag in Watt-uren>
},
"solar": {
"active_power_W": <Zonne-energie Actieve Vermogen in Watts>,
"today_energy_Wh": <Gegenereerde Energie Vandaag in Watt-uren>.
},
"heat_pump": {
"active_power_W": <Warmtepomp Actieve Vermogen in Watts>,
"operation_modes": <Warmtepomp Bedrijfsmodus>
}
},
"response_code": <Responscode>
},
"fields": {},
"requestTime": "<Unix Timestamp>",
"time": "<Unix Timestamp>",
"siteNodeId": "<site_filter"
}

Bevestiging van metingen

Wanneer een meting succesvol is ontvangen, wordt er een bevestiging verzonden op het volgende onderwerp: standard1/rp_one_s/scholt_ack/<site_filter>/<Controller SN>

Deze bevestiging kan worden gebruikt om:

  1. Te bevestigen dat het metingsbericht succesvol is ontvangen.
  2. Te bevestigen dat het metingsbericht alle noodzakelijke gegevens bevatte.

Ontvangen van commando's

Om commando's te ontvangen van de SmartgridOne Controller, abonneer je op het volgende MQTT-thema: standard1/outbound/scholt_cmd/<site_filter>/<Controller SN>/

De respons is als volgt gestructureerd:

{
"extraTags": {
"nodeId": "<Controller SN>_site_0"
},
"time": "<Unix Timestamp>",
"fields": {
"solar_policy": "<beleid>",
"solar_power_setpoint_w": 5000,
"storage_policy": "<beleid>",
"storage_power_setpoint_w": -5000
}
}

De lijst met beleid die kan worden ontvangen, is hier te vinden: Lijst van Potentiële Beleidslijnen