add battery charging and hot water algos
This commit is contained in:
parent
1172df42c2
commit
2c8801fe42
2 changed files with 140 additions and 0 deletions
60
charge_battery.yaml
Normal file
60
charge_battery.yaml
Normal file
|
@ -0,0 +1,60 @@
|
|||
alias: charge battery
|
||||
description: ""
|
||||
trigger:
|
||||
- platform: state
|
||||
entity_id:
|
||||
- binary_sensor.very_cheap_electricity
|
||||
- platform: state
|
||||
entity_id:
|
||||
- sensor.octopus_energy_electricity_17l0054650_1100015280504_current_rate
|
||||
- platform: state
|
||||
entity_id:
|
||||
- input_boolean.keep_battery_charged
|
||||
condition: []
|
||||
action:
|
||||
- alias: Charge if very cheap or if we really need it
|
||||
if:
|
||||
- condition: or
|
||||
conditions:
|
||||
- condition: state
|
||||
entity_id: binary_sensor.very_cheap_electricity
|
||||
state: "on"
|
||||
- condition: state
|
||||
entity_id: input_boolean.keep_battery_charged
|
||||
state: "on"
|
||||
alias: very cheap electricity or manual charge forced
|
||||
then:
|
||||
- service: script.charge_battery
|
||||
data: {}
|
||||
else:
|
||||
- alias: Charge if cheap-ish and we really need it
|
||||
if:
|
||||
- condition: state
|
||||
entity_id: binary_sensor.octopus_energy_target_cheapest_2h_before_morning
|
||||
state: "on"
|
||||
- condition: numeric_state
|
||||
entity_id: sensor.house_energy_left
|
||||
below: sensor.average_daily_electricity_consumption
|
||||
then:
|
||||
- service: script.charge_battery
|
||||
data: {}
|
||||
else:
|
||||
- alias: continue charging if still relatively cheap or stop
|
||||
if:
|
||||
- condition: and
|
||||
conditions:
|
||||
- alias: relatively cheap electricity still
|
||||
condition: numeric_state
|
||||
entity_id: >-
|
||||
sensor.octopus_energy_electricity_17l0054650_1100015280504_current_rate
|
||||
below: 0.1
|
||||
- condition: numeric_state
|
||||
entity_id: sensor.growatt_batterystateofcharge
|
||||
above: 94
|
||||
then:
|
||||
- service: script.charge_battery
|
||||
data: {}
|
||||
else:
|
||||
- service: script.go_back_to_normal_battery_charging
|
||||
data: {}
|
||||
mode: single
|
80
hot_water.yaml
Normal file
80
hot_water.yaml
Normal file
|
@ -0,0 +1,80 @@
|
|||
alias: hot water
|
||||
description: ""
|
||||
trigger:
|
||||
- platform: time
|
||||
at: "07:00:00"
|
||||
- platform: numeric_state
|
||||
entity_id: sensor.myenergi_eddi_23473751_temp_tank_1
|
||||
below: 45
|
||||
- platform: numeric_state
|
||||
entity_id: sensor.growatt_inputpower
|
||||
above: 200
|
||||
- platform: numeric_state
|
||||
entity_id:
|
||||
- sensor.growatt_batterystateofcharge
|
||||
above: 35
|
||||
- platform: state
|
||||
entity_id:
|
||||
- sensor.myenergi_eddi_23473751_status
|
||||
from: Boosting
|
||||
- platform: state
|
||||
entity_id:
|
||||
- binary_sensor.very_cheap_electricity
|
||||
to: "on"
|
||||
- platform: state
|
||||
entity_id:
|
||||
- binary_sensor.taking_a_shower_now
|
||||
to: "off"
|
||||
- platform: state
|
||||
entity_id:
|
||||
- binary_sensor.octopus_energy_target_cheapest_2h_before_morning
|
||||
to: "on"
|
||||
condition:
|
||||
- condition: state
|
||||
entity_id: binary_sensor.taking_a_shower_now
|
||||
state: "off"
|
||||
enabled: true
|
||||
- condition: or
|
||||
conditions:
|
||||
- alias: Enough energy or cheap power from the grid
|
||||
condition: or
|
||||
conditions:
|
||||
- alias: Enough battery and at least minimal solar
|
||||
condition: and
|
||||
conditions:
|
||||
- condition: numeric_state
|
||||
entity_id: sensor.growatt_batterystateofcharge
|
||||
above: 35
|
||||
- condition: numeric_state
|
||||
entity_id: sensor.solcast_pv_forecast_power_next_30_mins
|
||||
above: 200
|
||||
- condition: numeric_state
|
||||
entity_id: sensor.growatt_invpowertolocalload
|
||||
below: 1000
|
||||
- condition: state
|
||||
entity_id: binary_sensor.very_cheap_electricity
|
||||
state: "on"
|
||||
- condition: and
|
||||
conditions:
|
||||
- alias: Low solar or very cold water
|
||||
condition: or
|
||||
conditions:
|
||||
- condition: numeric_state
|
||||
entity_id: sensor.solcast_pv_forecast_forecast_remaining_today
|
||||
below: 6
|
||||
- condition: numeric_state
|
||||
entity_id: sensor.myenergi_eddi_23473751_temp_tank_1
|
||||
below: 25
|
||||
- condition: state
|
||||
entity_id: binary_sensor.octopus_energy_target_cheapest_2h_before_morning
|
||||
state: "on"
|
||||
alias: We really need hot water and electricity is now the cheapest
|
||||
action:
|
||||
- service: myenergi.myenergi_eddi_boost
|
||||
data:
|
||||
target: Heater 1
|
||||
time: 29
|
||||
target:
|
||||
device_id: 98ed56e9624a0439ce47e66b358e720d
|
||||
mode: single
|
||||
|
Loading…
Reference in a new issue