Hi Ccspack
My Setup is quite simple. Here is how it works
As mentioned before, I have some appliances that must run their function every day:
- Heat water for domestic consumption
- Run the swimming pool filter for a number of hours (7h in summer, 3h rest of year)
- Climate the house (based on some room priorities)
Those actions normally run every day, and they normally run if there is solar power enough, otherwise HA stops those appliances.
To achieve this, there is an event that at sunrise shuts down zero injection, allowing maximum power generation.
As the sun rises up, power will be increasing more and more, and those 3 appliances will be activated ensuring there is no extra grid demand
For any sudden power demand coming from the rest of the house, HA will be monitoring and deactivating/activating those 3 appliances that normally run on power surplus
Once those 3 appliances have completed their daily function, then there is an event that activates again zero power injection, so the inverter generates just what is only needed by the house.
This way, we ensure that there is no āfree electricityā for the grid company (Iām not doing power compensation)
As mentioned before I have a minimum of 150W sent to the grid (so in reality is not true zero injection). This is to absorb sudden minimal peaks.
So here it is my configuration:
- Inverter Configuration
First establish the control priorities as modbus control first, then power limitation as shown in the image:
Then, configure power limitation (zero injection), in my case min 150w, but you could put just 0
- Home Assistant events:
Then define 2 events to activate and deactivate export limitation (as you can see in my case those events respond to an input_boolean helper that also allows to manually activate/disable mode)
This event deactivates via Modbus full throttle (MAX power generation) in the inverter, so the inverter then stays in the second mode configured in controlling priorities:
alias: GestiĆ³n de excedentes - Activa InyecciĆ³n CERO
description: ""
trigger:
- platform: state
entity_id:
- input_boolean.zero_injection
from: "off"
to: "on"
condition: []
action:
- service: modbus.write_register
data:
address: 40236
unit: 1
value: 0
hub: mb_fronius
mode: single
This event activates via Modbus full throttle (MAX power generation) in the inverter, so the inverter then stays in the first mode configured in controlling priorities:
alias: GestiĆ³n de excedentes - Desactiva InyecciĆ³n ZERO
description: ""
trigger:
- platform: state
entity_id:
- input_boolean.zero_injection
from: "on"
to: "off"
condition: []
action:
- service: modbus.write_register
data:
address: 40236
unit: 1
value: 0
hub: mb_fronius
- service: modbus.write_register
data:
unit: 1
hub: mb_fronius
address: 40232
value: 10000
- service: modbus.write_register
data:
unit: 1
hub: mb_fronius
address: 40236
value: 1
mode: single
This way Iām able to optimize my power generation based on my houseās needs
I hope it helps