# 🤖 Przykładowe automatyzacje dla Deye Battery Control
# Skopiuj do configuration.yaml lub stwórz przez UI
automation:
# ============================================
# 1. ŁADOWANIE W TANIEJ TARYFIE (G12)
# ============================================
- alias: "Deye - Ładowanie w nocy (01:00-07:00)"
description: "Włącz ładowanie z sieci w taniej taryfie nocnej"
trigger:
- platform: time
at: "01:00:00"
action:
- service: switch.turn_on
target:
entity_id: switch.inverter_deye_battery_grid_charging
- service: select.select_option
target:
entity_id: select.inverter_deye_program_1_charging
data:
option: "Grid"
- service: notify.notify
data:
message: "🔋 Rozpoczęto ładowanie baterii z sieci (tania taryfa)"
- alias: "Deye - Koniec ładowania nocnego (07:00)"
description: "Wyłącz ładowanie z sieci po taniej taryfie"
trigger:
- platform: time
at: "07:00:00"
action:
- service: switch.turn_off
target:
entity_id: switch.inverter_deye_battery_grid_charging
- service: select.select_option
target:
entity_id: select.inverter_deye_program_1_charging
data:
option: "Disabled"
- alias: "Deye - Ładowanie popołudniowe (13:00-15:00)"
description: "Włącz ładowanie w popołudniowej taniej taryfie"
trigger:
- platform: time
at: "13:00:00"
action:
- service: switch.turn_on
target:
entity_id: switch.inverter_deye_battery_grid_charging
- service: select.select_option
target:
entity_id: select.inverter_deye_program_3_charging
data:
option: "Grid"
- alias: "Deye - Koniec ładowania popołudniowego (15:00)"
description: "Wyłącz ładowanie po taniej taryfie"
trigger:
- platform: time
at: "15:00:00"
action:
- service: switch.turn_off
target:
entity_id: switch.inverter_deye_battery_grid_charging
# ============================================
# 2. PRIORYTET BATERII W SZCZYCIE
# ============================================
- alias: "Deye - Bateria priorytetem wieczorem"
description: "Od 17:00 używaj baterii zamiast sieci"
trigger:
- platform: time
at: "17:00:00"
condition:
- condition: numeric_state
entity_id: sensor.inverter_deye_battery_soc
above: 30
action:
- service: select.select_option
target:
entity_id: select.inverter_deye_energy_pattern
data:
option: "Battery First"
- service: notify.notify
data:
message: "🔋 Priorytet baterii włączony (szczyt wieczorny)"
- alias: "Deye - Przywróć Load First"
description: "Po 22:00 przywróć normalny tryb"
trigger:
- platform: time
at: "22:00:00"
action:
- service: select.select_option
target:
entity_id: select.inverter_deye_energy_pattern
data:
option: "Load First"
# ============================================
# 3. OCHRONA BATERII
# ============================================
- alias: "Deye - Ochrona przed głębokim rozładowaniem"
description: "Zatrzymaj rozładowanie przy niskim SOC"
trigger:
- platform: numeric_state
entity_id: sensor.inverter_deye_battery_soc
below: 20
action:
- service: switch.turn_on
target:
entity_id: switch.inverter_deye_battery_grid_charging
- service: notify.notify
data:
title: "⚠️ Ostrzeżenie baterii"
message: "Bateria poniżej 20% - włączono ładowanie z sieci"
- alias: "Deye - Alert wysokiej temperatury"
description: "Powiadom gdy bateria jest zbyt gorąca"
trigger:
- platform: numeric_state
entity_id: sensor.inverter_deye_battery_temperature
above: 45
action:
- service: notify.notify
data:
title: "🌡️ Alert temperatury baterii"
message: "Temperatura baterii: {{ states('sensor.inverter_deye_battery_temperature') }}°C - sprawdź wentylację!"
# ============================================
# 4. INTELIGENTNE ŁADOWANIE
# ============================================
- alias: "Deye - Doładuj baterię gdy SOC < 30% w tańszej taryfie"
description: "Automatyczne ładowanie gdy bateria niska i taryfa korzystna"
trigger:
- platform: numeric_state
entity_id: sensor.inverter_deye_battery_soc
below: 30
condition:
- condition: time
after: "01:00:00"
before: "07:00:00"
action:
- service: switch.turn_on
target:
entity_id: switch.inverter_deye_battery_grid_charging
- service: notify.notify
data:
message: "🔋 Doładowywanie baterii (SOC < 30%, tania taryfa)"
- alias: "Deye - Zatrzymaj ładowanie przy 95% SOC"
description: "Nie ładuj powyżej 95% aby chronić baterię"
trigger:
- platform: numeric_state
entity_id: sensor.inverter_deye_battery_soc
above: 95
condition:
- condition: state
entity_id: switch.inverter_deye_battery_grid_charging
state: "on"
action:
- service: switch.turn_off
target:
entity_id: switch.inverter_deye_battery_grid_charging
- service: notify.notify
data:
message: "✅ Bateria naładowana do 95% - zatrzymano ładowanie"
# ============================================
# 5. ZERO EXPORT
# ============================================
- alias: "Deye - Zero Export gdy nadwyżka"
description: "Automatycznie przełącz na Zero Export gdy produkcja > zużycie"
trigger:
- platform: template
value_template: "{{ states('sensor.inverter_deye_pv_power')|float > states('sensor.inverter_deye_load_power')|float + 500 }}"
for:
minutes: 5
condition:
- condition: numeric_state
entity_id: sensor.inverter_deye_battery_soc
below: 95
action:
- service: select.select_option
target:
entity_id: select.inverter_deye_work_mode
data:
option: "Zero Export To Load"
# ============================================
# 6. POWIADOMIENIA DZIENNE
# ============================================
- alias: "Deye - Raport dzienny"
description: "Wyślij podsumowanie dnia o 23:00"
trigger:
- platform: time
at: "23:00:00"
action:
- service: notify.notify
data:
title: "📊 Raport dzienny Deye"
message: |
🌞 Produkcja: {{ states('sensor.inverter_deye_daily_production') }} kWh
🔋 Naładowano: {{ states('sensor.inverter_deye_daily_battery_charge') }} kWh
🏠 Zużycie: {{ states('sensor.inverter_deye_daily_consumption') }} kWh
⚡ Import z sieci: {{ states('sensor.inverter_deye_daily_grid_import') }} kWh
💰 Eksport do sieci: {{ states('sensor.inverter_deye_daily_grid_export') }} kWh
🔋 SOC: {{ states('sensor.inverter_deye_battery_soc') }}%
# ============================================
# 7. ADAPTACYJNE ŁADOWANIE (Zaawansowane)
# ============================================
- alias: "Deye - Inteligentne ładowanie oparte na pogodzie"
description: "Ładuj z sieci jeśli jutro ma być pochmurnie"
trigger:
- platform: time
at: "22:00:00"
condition:
# Wymaga integracji pogodowej (np. Met.no)
- condition: numeric_state
entity_id: weather.home
attribute: forecast_cloudiness_tomorrow
above: 70
- condition: numeric_state
entity_id: sensor.inverter_deye_battery_soc
below: 80
action:
- service: switch.turn_on
target:
entity_id: switch.inverter_deye_battery_grid_charging
- service: notify.notify
data:
message: "☁️ Jutro pochmurnie - ładuję baterię z sieci"
# ============================================
# 8. AWARYJNE PRZEŁĄCZENIA
# ============================================
- alias: "Deye - Awaria sieci - tryb Off-Grid"
description: "Automatycznie przełącz na baterię gdy brak zasilania"
trigger:
- platform: numeric_state
entity_id: sensor.inverter_deye_grid_voltage
below: 180
for:
seconds: 30
action:
- service: switch.turn_on
target:
entity_id: switch.inverter_deye_off_grid
- service: notify.notify
data:
title: "⚠️ Awaria sieci!"
message: "Przełączono na zasilanie bateryjne"
- alias: "Deye - Powrót zasilania - tryb On-Grid"
description: "Wróć do normalnego trybu gdy sieć wróci"
trigger:
- platform: numeric_state
entity_id: sensor.inverter_deye_grid_voltage
above: 210
for:
minutes: 2
action:
- service: switch.turn_off
target:
entity_id: switch.inverter_deye_off_grid
- service: notify.notify
data:
message: "✅ Sieć przywrócona - powrót do normalnego trybu"
# ============================================
# SCRIPTS (Wielokrotnego użytku)
# ============================================
script:
deye_emergency_charge:
alias: "Deye - Awaryjne ładowanie"
description: "Maksymalne ładowanie baterii z sieci"
sequence:
- service: switch.turn_on
target:
entity_id: switch.inverter_deye_battery_grid_charging
- service: number.set_value
target:
entity_id: number.inverter_deye_battery_max_charging_current
data:
value: 100
- service: notify.notify
data:
message: "🚨 Rozpoczęto awaryjne ładowanie baterii"
deye_eco_mode:
alias: "Deye - Tryb ECO"
description: "Maksymalna oszczędność i wykorzystanie PV"
sequence:
- service: select.select_option
target:
entity_id: select.inverter_deye_work_mode
data:
option: "Zero Export To Load"
- service: select.select_option
target:
entity_id: select.inverter_deye_energy_pattern
data:
option: "Load First"
- service: switch.turn_off
target:
entity_id: switch.inverter_deye_battery_grid_charging
- service: notify.notify
data:
message: "🌱 Tryb ECO włączony"
deye_max_self_consumption:
alias: "Deye - Maksymalna autokonsumpcja"
description: "Wykorzystaj całą energię z PV"
sequence:
- service: select.select_option
target:
entity_id: select.inverter_deye_work_mode
data:
option: "Zero Export To Load"
- service: select.select_option
target:
entity_id: select.inverter_deye_energy_pattern
data:
option: "Battery First"