diff --git a/ha-configs/solcast_automations_g12w_v9_chronological.yaml b/ha-configs/solcast_automations_g12w_v9_chronological.yaml new file mode 100644 index 0000000..73063a7 --- /dev/null +++ b/ha-configs/solcast_automations_g12w_v9_chronological.yaml @@ -0,0 +1,435 @@ +# ============================================ +# SOLCAST + TARYFA G12W v9 +# Inteligentne ładowanie baterii +# Żarki, 5.0 kWp +# +# WAŻNE: Deye wymaga programów w kolejności chronologicznej! +# Program 1: 22:01 → Grid (start nocny) +# Program 2: 00:00 → Grid (kontynuacja po północy) +# Program 3: 06:00 → Disabled (stop nocny) +# Program 4: 13:00 → Grid (start popołudniowy - opcjonalnie) +# Program 5: 15:00 → Disabled (stop popołudniowy) +# ============================================ + +- alias: "Solcast - Raport poranny" + description: "Dzienny raport o 7:00" + trigger: + - platform: time + at: "07:00:00" + action: + - service: notify.persistent_notification + data: + title: "☀️ Prognoza PV" + message: | + Dziś: {{ states('sensor.solcast_pv_forecast_prognoza_na_dzisiaj') }} kWh + Jutro: {{ states('sensor.solcast_pv_forecast_prognoza_na_jutro') }} kWh + Bateria: {{ states('sensor.inverter_deye_battery') }}% + +# ============================================ +# DNI POWSZEDNIE (Pn-Pt) - BARDZO POCHMURNIE (<3 kWh) +# Ładowanie: 22:01-06:00 + 13:00-15:00 +# ============================================ + +- alias: "Solcast G12W - Bardzo pochmurnie (Pn-Pt)" + description: "Maksymalne ładowanie gdy < 3 kWh + okno 13-15" + trigger: + - platform: time + at: "21:30:00" + condition: + - condition: time + weekday: [mon, tue, wed, thu, fri] + - condition: numeric_state + entity_id: sensor.solcast_pv_forecast_prognoza_na_jutro + below: 3 + - condition: numeric_state + entity_id: sensor.inverter_deye_battery + below: 95 + action: + - service: switch.turn_on + target: + entity_id: switch.inverter_deye_battery_grid_charging + + # Program 1: 22:01 Start ładowania nocnego + - service: time.set_value + target: + entity_id: time.inverter_deye_program_1_time + data: + time: "22:01:00" + - service: select.select_option + target: + entity_id: select.inverter_deye_program_1_charging + data: + option: "Grid" + - service: number.set_value + target: + entity_id: number.inverter_deye_program_1_soc + data: + value: 100 + + # Program 2: 00:00 Kontynuacja po północy + - service: time.set_value + target: + entity_id: time.inverter_deye_program_2_time + data: + time: "00:00:00" + - service: select.select_option + target: + entity_id: select.inverter_deye_program_2_charging + data: + option: "Grid" + - service: number.set_value + target: + entity_id: number.inverter_deye_program_2_soc + data: + value: 100 + + # Program 3: 06:00 Stop ładowania nocnego + - service: time.set_value + target: + entity_id: time.inverter_deye_program_3_time + data: + time: "06:00:00" + - service: select.select_option + target: + entity_id: select.inverter_deye_program_3_charging + data: + option: "Disabled" + - service: number.set_value + target: + entity_id: number.inverter_deye_program_3_soc + data: + value: 15 + + # Program 4: 13:00 Start ładowania popołudniowego (5kW!) + - service: time.set_value + target: + entity_id: time.inverter_deye_program_4_time + data: + time: "13:00:00" + - service: select.select_option + target: + entity_id: select.inverter_deye_program_4_charging + data: + option: "Grid" + - service: number.set_value + target: + entity_id: number.inverter_deye_program_4_soc + data: + value: 100 + - service: number.set_value + target: + entity_id: number.inverter_deye_program_4_power + data: + value: 5000 + - service: number.set_value + target: + entity_id: number.inverter_deye_battery_grid_charging_current + data: + value: 100 + + # Program 5: 15:00 Stop ładowania popołudniowego + - service: time.set_value + target: + entity_id: time.inverter_deye_program_5_time + data: + time: "15:00:00" + - service: select.select_option + target: + entity_id: select.inverter_deye_program_5_charging + data: + option: "Disabled" + - service: number.set_value + target: + entity_id: number.inverter_deye_program_5_soc + data: + value: 15 + + # Program 6: wyłączony + - service: select.select_option + target: + entity_id: select.inverter_deye_program_6_charging + data: + option: "Disabled" + + - service: notify.persistent_notification + data: + title: "🌧️ G12W: Bardzo pochmurnie!" + message: "Prognoza: {{ states('sensor.solcast_pv_forecast_prognoza_na_jutro') }} kWh. Ładowanie 22:01-06:00 + 13:00-15:00 (5kW)!" + +# ============================================ +# DNI POWSZEDNIE (Pn-Pt) - POCHMURNIE (>=3 kWh) +# Ładowanie: tylko 22:01-06:00 +# ============================================ + +- alias: "Solcast G12W - Pochmurnie (Pn-Pt)" + description: "Standardowe ładowanie nocne gdy >= 3 kWh" + trigger: + - platform: time + at: "21:30:00" + condition: + - condition: time + weekday: [mon, tue, wed, thu, fri] + - condition: numeric_state + entity_id: sensor.solcast_pv_forecast_prognoza_na_jutro + above: 3 + - condition: numeric_state + entity_id: sensor.inverter_deye_battery + below: 95 + action: + - service: switch.turn_on + target: + entity_id: switch.inverter_deye_battery_grid_charging + + # Program 1: 22:01 Start ładowania + - service: time.set_value + target: + entity_id: time.inverter_deye_program_1_time + data: + time: "22:01:00" + - service: select.select_option + target: + entity_id: select.inverter_deye_program_1_charging + data: + option: "Grid" + - service: number.set_value + target: + entity_id: number.inverter_deye_program_1_soc + data: + value: 100 + + # Program 2: 00:00 Kontynuacja po północy + - service: time.set_value + target: + entity_id: time.inverter_deye_program_2_time + data: + time: "00:00:00" + - service: select.select_option + target: + entity_id: select.inverter_deye_program_2_charging + data: + option: "Grid" + - service: number.set_value + target: + entity_id: number.inverter_deye_program_2_soc + data: + value: 100 + + # Program 3: 06:00 Stop ładowania + - service: time.set_value + target: + entity_id: time.inverter_deye_program_3_time + data: + time: "06:00:00" + - service: select.select_option + target: + entity_id: select.inverter_deye_program_3_charging + data: + option: "Disabled" + - service: number.set_value + target: + entity_id: number.inverter_deye_program_3_soc + data: + value: 15 + + # Wyłącz programy 4-6 (brak ładowania popołudniowego) + - service: select.select_option + target: + entity_id: select.inverter_deye_program_4_charging + data: + option: "Disabled" + - service: select.select_option + target: + entity_id: select.inverter_deye_program_5_charging + data: + option: "Disabled" + - service: select.select_option + target: + entity_id: select.inverter_deye_program_6_charging + data: + option: "Disabled" + + - service: notify.persistent_notification + data: + title: "⛅ G12W: Pochmurnie" + message: "Prognoza: {{ states('sensor.solcast_pv_forecast_prognoza_na_jutro') }} kWh. Ładowanie 22:01-06:00." + +# ============================================ +# RESET PRĄDU PO 15:00 +# ============================================ + +- alias: "Solcast G12W - Reset prądu po 15:00" + description: "Przywróć prąd ładowania do 80A po oknie 13-15" + trigger: + - platform: time + at: "15:00:00" + condition: + - condition: time + weekday: [mon, tue, wed, thu, fri] + action: + - service: number.set_value + target: + entity_id: number.inverter_deye_battery_grid_charging_current + data: + value: 80 + +# ============================================ +# SOBOTA - bez ładowania (cały weekend tani) +# ============================================ + +- alias: "Solcast G12W - Sobota bez ładowania" + description: "Weekend = tania energia, nie ładujemy" + trigger: + - platform: time + at: "21:30:00" + condition: + - condition: time + weekday: [sat] + action: + # Wyłącz wszystkie programy + - service: select.select_option + target: + entity_id: select.inverter_deye_program_1_charging + data: + option: "Disabled" + - service: select.select_option + target: + entity_id: select.inverter_deye_program_2_charging + data: + option: "Disabled" + - service: select.select_option + target: + entity_id: select.inverter_deye_program_3_charging + data: + option: "Disabled" + - service: select.select_option + target: + entity_id: select.inverter_deye_program_4_charging + data: + option: "Disabled" + - service: select.select_option + target: + entity_id: select.inverter_deye_program_5_charging + data: + option: "Disabled" + - service: select.select_option + target: + entity_id: select.inverter_deye_program_6_charging + data: + option: "Disabled" + + - service: notify.persistent_notification + data: + title: "🎉 G12W: Sobota - tani weekend!" + message: "Cały weekend tania energia. Brak ładowania baterii." + +# ============================================ +# NIEDZIELA - ładowanie na poniedziałek +# ============================================ + +- alias: "Solcast G12W - Niedziela ładowanie na poniedziałek" + description: "Niedziela w nocy = ładowanie na poniedziałek" + trigger: + - platform: time + at: "21:30:00" + condition: + - condition: time + weekday: [sun] + action: + - service: switch.turn_on + target: + entity_id: switch.inverter_deye_battery_grid_charging + + # Program 1: 22:01 Start + - service: time.set_value + target: + entity_id: time.inverter_deye_program_1_time + data: + time: "22:01:00" + - service: select.select_option + target: + entity_id: select.inverter_deye_program_1_charging + data: + option: "Grid" + - service: number.set_value + target: + entity_id: number.inverter_deye_program_1_soc + data: + value: 100 + + # Program 2: 00:00 Kontynuacja + - service: time.set_value + target: + entity_id: time.inverter_deye_program_2_time + data: + time: "00:00:00" + - service: select.select_option + target: + entity_id: select.inverter_deye_program_2_charging + data: + option: "Grid" + - service: number.set_value + target: + entity_id: number.inverter_deye_program_2_soc + data: + value: 100 + + # Program 3: 06:00 Stop + - service: time.set_value + target: + entity_id: time.inverter_deye_program_3_time + data: + time: "06:00:00" + - service: select.select_option + target: + entity_id: select.inverter_deye_program_3_charging + data: + option: "Disabled" + - service: number.set_value + target: + entity_id: number.inverter_deye_program_3_soc + data: + value: 15 + + # Wyłącz pozostałe + - service: select.select_option + target: + entity_id: select.inverter_deye_program_4_charging + data: + option: "Disabled" + - service: select.select_option + target: + entity_id: select.inverter_deye_program_5_charging + data: + option: "Disabled" + - service: select.select_option + target: + entity_id: select.inverter_deye_program_6_charging + data: + option: "Disabled" + + - service: notify.persistent_notification + data: + title: "🌙 G12W: Niedziela → Poniedziałek" + message: | + 🔋 Bateria: {{ states('sensor.inverter_deye_battery') }}% + ☀️ Prognoza pon: {{ states('sensor.solcast_pv_forecast_prognoza_na_jutro') }} kWh + ⚡ Ładowanie 22:01-06:00 + 🎯 Cel: 100% SOC na poniedziałek + +# ============================================ +# RAPORT PORANNY +# ============================================ + +- alias: "Solcast G12W - Raport poranny" + description: "Status ładowania o 6:05" + trigger: + - platform: time + at: "06:05:00" + action: + - service: notify.persistent_notification + data: + title: "🌅 G12W: Raport poranny" + message: | + 🔋 SOC: {{ states('sensor.inverter_deye_battery') }}% + ⚡ Naładowano: {{ states('sensor.inverter_deye_today_battery_charge') }} kWh + ☀️ Prognoza: {{ states('sensor.solcast_pv_forecast_prognoza_na_dzisiaj') }} kWh