MQTT-topics voor Home Assistant#

Topics gebruikt voor communicatie tussen GbbOptimizer en Home Assistant / GbbConnect.

Gegevens van Home Assistant naar GbbOptimizer#

Verplichte velden:

VeldTypeBeschrijving
soc_percdecimalBatterij-SOC (%). Gebruik V indien „Aansturing via V" is aangevinkt
loads_total_kWhdecimalVerbruik — cumulatieve teller
fromgrid_total_kWhdecimalImport uit het net — cumulatieve teller
togrid_total_kWhdecimalExport naar het net — cumulatieve teller
pv_total_kWhdecimalPV-productie — cumulatieve teller

Optionele velden:

VeldTypeBeschrijving
ev_charge_total_kWhdecimalEV-laden
hp_total_kWhdecimalWarmtepomp
other1_total_kWhother6_total_kWhdecimalAndere 1–6

Meerdere PV-bronnen:

1
2
3
4
5
6
7
{
  "pv_total_kWh": 123.4,
  "more": [
    {"number": 2, "pv_total_kWh": 56.7},
    {"number": 3, "pv_total_kWh": 89.0}
  ]
}
  • Tellers mogen worden gereset — je kunt bijvoorbeeld dagelijkse tellers versturen
  • Waarden < 0 worden behandeld als ontbrekende gegevens
  • Je kunt alleen optionele gegevens versturen als de hoofdgegevens uit de omvormer worden geïmporteerd. Voeg in dat geval het HomeAssistant-systeem toe in het IoT-menu
  • pv_total_kWh is hetzelfde als "more" met number=1 — gebruik beide niet tegelijk
  • Solarman/DeyeCloud: afzonderlijke velden (soc_perc, fromgrid_total_kWh, togrid_total_kWh, loads_total_kWh) kunnen apart worden verstuurd als de bijbehorende opties zijn aangevinkt in de installatieparameters

Commando’s van GbbOptimizer naar Home Assistant#

GbbOptimizer verstuurt stuurcommando’s naar speciale topics:

PUB {PlantId}/ha_gbb/Start_Charge

Start batterijladen tot SOC uit Payload

PUB {PlantId}/ha_gbb/Start_Discharge

Start batterijontladen naar het net (tot SOC uit Payload)

PUB {PlantId}/ha_gbb/Start_DisableCharge

Laad de batterij niet — PV naar huis en net

PUB {PlantId}/ha_gbb/Start_Normal

Terug naar normale werking

Parallel worden dezelfde gegevens ook verstuurd naar:

PUB {PlantId}/ha_gbb/EMS

Gecombineerd EMS-commando met volledige JSON-payload

JSON-payload:

VeldTypeBeschrijving
HourintUur
FromMinuteintBeginminuut
ToMinuteintEindminuut
DischargeLimitWintOntlaadlimiet (W)
ChargeLimitWintLaadlimiet (W)
InputLimitWintImportlimiet (W)
PriceLessZeroint0 = normale prijs, 1 = prijs < 0
Operationstring"Normal", "Discharge", "DisableCharge" of "Charge"
SOCintDoel-SOC
VdecimalSOC omgerekend naar V (indien aansturing via V)

Voorbeeld:

1
2
3
4
5
6
7
8
{
  "Hour": 22,
  "FromMinute": 0,
  "ToMinute": 59,
  "PriceLessZero": 0,
  "Operation": "Normal",
  "SOC": 90
}

Voorbeeld van HA-automatisering#

1
2
3
4
5
6
7
8
alias: mqtt output_source_priority_battery
trigger:
  - platform: mqtt
    topic: ha_gbb/Start_Charge
action:
  - service: switch.turn_on
    target:
      entity_id: switch.bms_1_output_source_priority_battery

Voorbeeld van het publiceren van gegevens naar MQTT#

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
alias: mqtt_publicatie
trigger:
  - platform: time_pattern
    minutes: /5
action:
  - service: mqtt.publish
    data:
      qos: "0"
      retain: false
      topic: ha_gbb/sensor
      payload: >
        {
          "loads_total_kWh": {{ states.sensor.inverter_out_daily_energy.state | float(-1) }},
          "fromgrid_total_kWh": {{ states.sensor.inverter_in_daily_energy.state | float(-1) }},
          "pv_total_kWh": {{ states.sensor.total_daily_energy.state | float(-1) }},
          "soc_perc": {{ states.sensor.battery_soc.state | float(-1) }},
          "togrid_total_kWh": 0
        }