Nemáte někdo prosím podobný script pro vyčtení samostatných hodin i z integrace: rnovacek/homeassistant_cz_energy_spot_prices? Nebo to to z této integrace nelze vytáhnout a musím si naintalovat i grinco?Pete30 píše: ↑16. srpen 2022, 00:08 Tak zde máš prozatím šablonu pro vyčtení hodnoty v danou hodinu.
Tady je příklad senzoru první hodiny který vložíš do configuration.yamlpro každou jednotlivou hodinu můžeš vytvořit senzor ....Kód: Vybrat vše
- platform: template sensors: cena_energie_euro_mwh_1_hod: friendly_name: Cena Mwh 1 hodina euro value_template: "{{ states.sensor.current_ote_energy_cost.attributes.1 }}" unit_of_measurement: "EUR" icon_template: "mdi:cash-100" unique_id: senzor_cena_mwh_eur_1_hod device_class: monetary
Min/max hodnota atributu u entity Current OTE Energy Cost
-
- Začínající autor
- Příspěvky: 38
- Registrován: 16. prosinec 2022, 14:11
- Dal poděkování: 9 poděkování
- Dostal poděkování: 2 poděkování
Re: Min/max hodnota atributu u entity Current OTE Energy Cost
- Pete30
- Moderátor
- Příspěvky: 3333
- Registrován: 30. září 2020, 20:33
- Dal poděkování: 172 poděkování
- Dostal poděkování: 364 poděkování
Re: Min/max hodnota atributu u entity Current OTE Energy Cost
Jaké atributy má ta tvoje entita ?
Pokud nejsem přítomen tak jsem na rybách
-
- Začínající autor
- Příspěvky: 38
- Registrován: 16. prosinec 2022, 14:11
- Dal poděkování: 9 poděkování
- Dostal poděkování: 2 poděkování
Re: Min/max hodnota atributu u entity Current OTE Energy Cost
[spoiler]Atributy
2022-12-20T23:00:00+00:00
2022-12-21T00:00:00+00:00
2022-12-21T01:00:00+00:00
2022-12-21T02:00:00+00:00
2022-12-21T03:00:00+00:00
2022-12-21T04:00:00+00:00
2022-12-21T05:00:00+00:00
2022-12-21T06:00:00+00:00
2022-12-21T07:00:00+00:00
2022-12-21T08:00:00+00:00
2022-12-21T09:00:00+00:00
2022-12-21T10:00:00+00:00
2022-12-21T11:00:00+00:00
2022-12-21T12:00:00+00:00
2022-12-21T13:00:00+00:00
2022-12-21T14:00:00+00:00
2022-12-21T15:00:00+00:00
2022-12-21T16:00:00+00:00
2022-12-21T17:00:00+00:00
2022-12-21T18:00:00+00:00
2022-12-21T19:00:00+00:00
2022-12-21T20:00:00+00:00
2022-12-21T21:00:00+00:00
2022-12-21T22:00:00+00:00
2022-12-21T23:00:00+00:00
2022-12-22T00:00:00+00:00
2022-12-22T01:00:00+00:00
2022-12-22T02:00:00+00:00
2022-12-22T03:00:00+00:00
2022-12-22T04:00:00+00:00
2022-12-22T05:00:00+00:00
2022-12-22T06:00:00+00:00
2022-12-22T07:00:00+00:00
2022-12-22T08:00:00+00:00
2022-12-22T09:00:00+00:00
2022-12-22T10:00:00+00:00
2022-12-22T11:00:00+00:00
2022-12-22T12:00:00+00:00
2022-12-22T13:00:00+00:00
2022-12-22T14:00:00+00:00
2022-12-22T15:00:00+00:00
2022-12-22T16:00:00+00:00
2022-12-22T17:00:00+00:00
2022-12-22T18:00:00+00:00
2022-12-22T19:00:00+00:00
2022-12-22T20:00:00+00:00
2022-12-22T21:00:00+00:00
2022-12-22T22:00:00+00:00[/spoiler]
Naposledy upravil(a) vomic dne 22. prosinec 2022, 07:20, celkem upraveno 1 x.
-
- Začínající autor
- Příspěvky: 38
- Registrován: 16. prosinec 2022, 14:11
- Dal poděkování: 9 poděkování
- Dostal poděkování: 2 poděkování
Re: Min/max hodnota atributu u entity Current OTE Energy Cost
Já to zatím vyřešil tak, že jsem nainstaloval Grinco a udělal si 24 sensorů na každou hodinu.
Jelikož vím, že nejlevnější elektrika z 99% je mezi 3-5 hodinou tak vypočítávám průměrnou nákupní cenu mezi 3-5h.
Během této doby jsem schopen nabít baterii na full.
Full baterie mě teoreticky vydrží cca 7-13 h teď v zimě kdy nesvítí.
Zajímá mě tedy zda když nakoupím mezi 3-5h do baterky a spotřebu z baterky zapnu až v 7 h. ráno kdy ceny elektriky ztnatelně vylítnou zda to bude výhodnější než když normálně nakoupím během dne.
K tomu potřebuji znát nákupní průměrnou cenu od 7 rána do 19h večer cca. Tedy si spočítám průměr.
V automatizaci pak jen nastavím aby se baterky nabily pokud průměr ceny nabíjení mezi 3-5h bude nižší než průměr ceny z spotu mezi 7-19h. Pokud ano začne se baterka nabíjet, pokud ne tak se nic nabíjet nebude.
Na jaře až začne svítit pravidelně, mě ale plný baterky budou limitovat ... pokud bych měl plný baterky, tak bych většinu výroby prodával což je za jinou mnohem nižsí cenu než nákup na spotovém trhu ... takže mě zajímá průměr za jaký prodám mezi 7-19h cca (cena bez DPH a distribuce ponížená o marži obchodníka) ... ten je pak zcela jiný než nákup.
Opět si pak udělám automatizaci, kdy pokud nákup mezi 3-5h bude výhodnější než prodej mezi 7-19h pak at se baterky nabijí a i kdybych celý den pak prodával přetoky do gridu nebudu na tom nijak finančně hůře než kdybych je čistě spotřeboval.
Mám v plánu ještě nějak rozšířit AI tak aby podmínka nabíjení s porovnáním prodejní ceny byla jen pokud bude predikce počasí že bude slunečno, pokud bude zataženo bez teoretické větší výroby z FVE měla by platit podmínka porovnání s cenou nakupu 7-19h
zatím mám jen toto:
[spoiler] [/spoiler]
Jelikož vím, že nejlevnější elektrika z 99% je mezi 3-5 hodinou tak vypočítávám průměrnou nákupní cenu mezi 3-5h.
Během této doby jsem schopen nabít baterii na full.
Full baterie mě teoreticky vydrží cca 7-13 h teď v zimě kdy nesvítí.
Zajímá mě tedy zda když nakoupím mezi 3-5h do baterky a spotřebu z baterky zapnu až v 7 h. ráno kdy ceny elektriky ztnatelně vylítnou zda to bude výhodnější než když normálně nakoupím během dne.
K tomu potřebuji znát nákupní průměrnou cenu od 7 rána do 19h večer cca. Tedy si spočítám průměr.
V automatizaci pak jen nastavím aby se baterky nabily pokud průměr ceny nabíjení mezi 3-5h bude nižší než průměr ceny z spotu mezi 7-19h. Pokud ano začne se baterka nabíjet, pokud ne tak se nic nabíjet nebude.
Na jaře až začne svítit pravidelně, mě ale plný baterky budou limitovat ... pokud bych měl plný baterky, tak bych většinu výroby prodával což je za jinou mnohem nižsí cenu než nákup na spotovém trhu ... takže mě zajímá průměr za jaký prodám mezi 7-19h cca (cena bez DPH a distribuce ponížená o marži obchodníka) ... ten je pak zcela jiný než nákup.
Opět si pak udělám automatizaci, kdy pokud nákup mezi 3-5h bude výhodnější než prodej mezi 7-19h pak at se baterky nabijí a i kdybych celý den pak prodával přetoky do gridu nebudu na tom nijak finančně hůře než kdybych je čistě spotřeboval.
Mám v plánu ještě nějak rozšířit AI tak aby podmínka nabíjení s porovnáním prodejní ceny byla jen pokud bude predikce počasí že bude slunečno, pokud bude zataženo bez teoretické větší výroby z FVE měla by platit podmínka porovnání s cenou nakupu 7-19h
zatím mám jen toto:
[spoiler]
Kód: Vybrat vše
################# SPOT CENY
- name: "Spot cena prumer 3-5h (nakup)"
unique_id: spot_cena_prumer_3_5h_nakup
icon: "mdi:cash-100"
unit_of_measurement: "Kč/kWh"
state: "{{((((((states('sensor.spot_cena_03') | float(0)) + (states('sensor.spot_cena_04') | float(0)))/2)*25/1000) + 0.50 + 0.30) *1.21) | round(2)}}" # 25= KURZ, 0.50 = distribuce ČEZ +0.30 = poplatek bezdodavatele, 1.21 = DPH
- name: "Spot cena prumer 7-20h (nakup)"
unique_id: spot_cena_prumer_7_20h_nakup
icon: "mdi:cash-100"
unit_of_measurement: "Kč/kWh"
# state: "{{(((((states('sensor.spot_cena_07') | float(0)) + (states('sensor.spot_cena_08') | float(0)) + (states('sensor.spot_cena_09') | float(0)) + (states('sensor.spot_cena_10') | float(0)) + (states('sensor.spot_cena_11') | float(0)) + (states('sensor.spot_cena_12') | float(0)) + (states('sensor.spot_cena_13') | float(0)) + (states('sensor.spot_cena_14') | float(0)) + (states('sensor.spot_cena_15') | float(0)) + (states('sensor.spot_cena_16') | float(0)) + (states('sensor.spot_cena_17') | float(0)) + (states('sensor.spot_cena_18') | float(0)) + (states('sensor.spot_cena_19') | float(0)) )/13)*24*1.21/1000)+1) | round(2)}}"
state: "{{((((states('sensor.spot_cena_prumer_7_20h') | float(0))*25/1000) + 0.50 + 0.30)*1.21) | round(2)}}" # 25= KURZ, 0.50 = distribuce ČEZ +0.30 = poplatek bezdodavatele, 1.21 = DPH
- name: "Spot cena prumer 7-20h (prodej)"
unique_id: spot_cena_prumer_7_20h_prodej
icon: "mdi:cash-100"
unit_of_measurement: "Kč/kWh"
# state: "{{((((states('sensor.spot_cena_07') | float(0)) + (states('sensor.spot_cena_08') | float(0)) + (states('sensor.spot_cena_09') | float(0)) + (states('sensor.spot_cena_10') | float(0)) + (states('sensor.spot_cena_11') | float(0)) + (states('sensor.spot_cena_12') | float(0)) + (states('sensor.spot_cena_13') | float(0)) + (states('sensor.spot_cena_14') | float(0)) + (states('sensor.spot_cena_15') | float(0)) + (states('sensor.spot_cena_16') | float(0)) + (states('sensor.spot_cena_17') | float(0)) + (states('sensor.spot_cena_18') | float(0)) + (states('sensor.spot_cena_19') | float(0)) )/13)*24/1000) | round(2)}}"
state: "{{(((states('sensor.spot_cena_prumer_7_20h') | float(0))*24/1000) - 0.30) | round(2)}}" # 24= KURZ, -0.30 = poplatek bezdodavatele
- name: "Spot cena prumer 7-20h"
unique_id: spot_cena_prumer_7_20h
icon: "mdi:cash-100"
unit_of_measurement: "EUR/MWh"
state: "{{(((states('sensor.spot_cena_07') | float(0)) + (states('sensor.spot_cena_08') | float(0)) + (states('sensor.spot_cena_09') | float(0)) + (states('sensor.spot_cena_10') | float(0)) + (states('sensor.spot_cena_11') | float(0)) + (states('sensor.spot_cena_12') | float(0)) + (states('sensor.spot_cena_13') | float(0)) + (states('sensor.spot_cena_14') | float(0)) + (states('sensor.spot_cena_15') | float(0)) + (states('sensor.spot_cena_16') | float(0)) + (states('sensor.spot_cena_17') | float(0)) + (states('sensor.spot_cena_18') | float(0)) + (states('sensor.spot_cena_19') | float(0)) )/13) | round(2)}}"
- name: "Spot cena 00"
unique_id: spot_cena_00
state: "{{ states.sensor.current_ote_energy_cost.attributes.0 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 01"
unique_id: spot_cena_01
state: "{{ states.sensor.current_ote_energy_cost.attributes.1 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 02"
unique_id: spot_cena_02
state: "{{ states.sensor.current_ote_energy_cost.attributes.2 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 03"
unique_id: spot_cena_03
state: "{{ states.sensor.current_ote_energy_cost.attributes.3 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 04"
unique_id: spot_cena_04
state: "{{ states.sensor.current_ote_energy_cost.attributes.4 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 05"
unique_id: spot_cena_05
state: "{{ states.sensor.current_ote_energy_cost.attributes.5 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 06"
unique_id: spot_cena_06
state: "{{ states.sensor.current_ote_energy_cost.attributes.6 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 07"
unique_id: spot_cena_07
state: "{{ states.sensor.current_ote_energy_cost.attributes.7 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 08"
unique_id: spot_cena_08
state: "{{ states.sensor.current_ote_energy_cost.attributes.8 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 09"
unique_id: spot_cena_09
state: "{{ states.sensor.current_ote_energy_cost.attributes.9 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 10"
unique_id: spot_cena_10
state: "{{ states.sensor.current_ote_energy_cost.attributes.10 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 11"
unique_id: spot_cena_11
state: "{{ states.sensor.current_ote_energy_cost.attributes.11 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 12"
unique_id: spot_cena_12
state: "{{ states.sensor.current_ote_energy_cost.attributes.12 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 13"
unique_id: spot_cena_13
state: "{{ states.sensor.current_ote_energy_cost.attributes.13 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 14"
unique_id: spot_cena_14
state: "{{ states.sensor.current_ote_energy_cost.attributes.14 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 15"
unique_id: spot_cena_15
state: "{{ states.sensor.current_ote_energy_cost.attributes.15 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 16"
unique_id: spot_cena_16
state: "{{ states.sensor.current_ote_energy_cost.attributes.16 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 17"
unique_id: spot_cena_17
state: "{{ states.sensor.current_ote_energy_cost.attributes.17 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 18"
unique_id: spot_cena_18
state: "{{ states.sensor.current_ote_energy_cost.attributes.18 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 19"
unique_id: spot_cena_19
state: "{{ states.sensor.current_ote_energy_cost.attributes.19 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 20"
unique_id: spot_cena_20
state: "{{ states.sensor.current_ote_energy_cost.attributes.20 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 21"
unique_id: spot_cena_21
state: "{{ states.sensor.current_ote_energy_cost.attributes.21 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 22"
unique_id: spot_cena_22
state: "{{ states.sensor.current_ote_energy_cost.attributes.22 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
- name: "Spot cena 23"
unique_id: spot_cena_23
state: "{{ states.sensor.current_ote_energy_cost.attributes.23 }}"
unit_of_measurement: "EUR/MWh"
icon: "mdi:cash-100"
device_class: "monetary"
-
- Začínající autor
- Příspěvky: 41
- Registrován: 09. prosinec 2022, 13:48
- Dostal poděkování: 4 poděkování
Re: Min/max hodnota atributu u entity Current OTE Energy Cost
Dal jsem dohromady senzor, který umožňuje vypočítat průměrnou cenu za nastavené časové období z dat poskytovaných integrací rnovacek/homeassistant_cz_energy_spot_prices.
Pár poznámek k senzoru:
- trigger je pouze příklad
- pomocí proměnných hour_start a hour_end se nastavuje čas od - do. Musí to být text (string) a pro čas < 10 musí být součástí nula
- pokud je aktuální čas větší než hour_start, tak se počítá průměr z hodnot následujícího dne, jinak se použije aktuální den
- nejsou ošetřeny chyby, takže pokud např. chybí data, tak senzor je "unavailable", v logu se může objevit chyba dělení nulou atd.
Snad Ti to k něčemu bude
Pár poznámek k senzoru:
- trigger je pouze příklad
- pomocí proměnných hour_start a hour_end se nastavuje čas od - do. Musí to být text (string) a pro čas < 10 musí být součástí nula
- pokud je aktuální čas větší než hour_start, tak se počítá průměr z hodnot následujícího dne, jinak se použije aktuální den
- nejsou ošetřeny chyby, takže pokud např. chybí data, tak senzor je "unavailable", v logu se může objevit chyba dělení nulou atd.
Snad Ti to k něčemu bude
Kód: Vybrat vše
template:
- trigger:
- platform: time_pattern
# This will update every hour
hours: "/1"
sensor:
# Keep track how many days have past since a date
- unique_id: spot_electricity_price_average_3to5
name: "Avg Electr. Spot Price / 3:00 - 5:00"
unit_of_measurement: "Kč/kWh"
state: >
{%- set price_avg = namespace() %}
{%- set price_avg.values_sum = 0 %}
{%- set price_avg.values_counter = 0 %}
{%- set hour_start = "03" %}
{%- set hour_end = "05" %}
{%- if utcnow().hour > int(hour_start) %}
{%- set match_date = utcnow() + timedelta( days = 1) %}
{%- else %}
{%- set match_date = utcnow() %}
{%- endif %}
{%- set match_date_str = match_date.strftime("%Y-%m-%dT") %}
{%- for attr in states.sensor["current_spot_electricity_price"].attributes %}
{%- if attr[:-14] == match_date_str %}
{%- set attr_dt = strptime(attr[0:-6], '%Y-%m-%dT%H:%M:%S') %}
{%- if attr_dt.hour >= int(hour_start) and attr_dt.hour <= int(hour_end) %}
{%- set attr_val = states.sensor["current_spot_electricity_price"].attributes[attr] %}
{%- set price_avg.values_sum = price_avg.values_sum + attr_val %}
{%- set price_avg.values_counter = price_avg.values_counter + 1 %}
{%- endif %}
{%- endif %}
{%- endfor %}
{{ (price_avg.values_sum / price_avg.values_counter) | float | round(2) }}
- trigger:
- platform: time_pattern
# This will update every hours
hours: "/1"
sensor:
# Keep track how many days have past since a date
- unique_id: spot_electricity_price_average_7to19
name: "Avg Electr. Spot Price / 7:00 - 19:00"
unit_of_measurement: "Kč/kWh"
state: >
{%- set price_avg = namespace() %}
{%- set price_avg.values_sum = 0 %}
{%- set price_avg.values_counter = 0 %}
{%- set hour_start = "07" %}
{%- set hour_end = "19" %}
{%- if utcnow().hour > int(hour_start) %}
{%- set match_date = utcnow() + timedelta( days = 1) %}
{%- else %}
{%- set match_date = utcnow() %}
{%- endif %}
{%- set match_date_str = match_date.strftime("%Y-%m-%dT") %}
{%- for attr in states.sensor["current_spot_electricity_price"].attributes %}
{%- if attr[:-14] == match_date_str %}
{%- set attr_dt = strptime(attr[0:-6], '%Y-%m-%dT%H:%M:%S') %}
{%- if attr_dt.hour >= int(hour_start) and attr_dt.hour <= int(hour_end) %}
{%- set attr_val = states.sensor["current_spot_electricity_price"].attributes[attr] %}
{%- set price_avg.values_sum = price_avg.values_sum + attr_val %}
{%- set price_avg.values_counter = price_avg.values_counter + 1 %}
{%- endif %}
{%- endif %}
{%- endfor %}
{{ (price_avg.values_sum / price_avg.values_counter) | float | round(2) }}
Re: Min/max hodnota atributu u entity Current OTE Energy Cost
Dovoluji si oživit toto téma a prosím o radu. V rámci zde zmíněných integrací jsem schopen definovat nejlevnější hodinu v rámci dne. Potřeboval bych však stanovit nejlevnější hodinu například pouze v intervalu od 0:00 do 10:00, jak na to?
-
- Dárce - Donátor
- Příspěvky: 187
- Registrován: 20. září 2021, 13:47
- Bydliště: Třebechovice p. O.
- Dal poděkování: 23 poděkování
- Dostal poděkování: 22 poděkování
Re: Min/max hodnota atributu u entity Current OTE Energy Cost
Existuje další integrace pro OTE. Sofistikovanější. Koukni jestli to neumí,
https://github.com/nanogreencz/homeassi ... tegrations
-
- Začínající autor
- Příspěvky: 38
- Registrován: 16. prosinec 2022, 14:11
- Dal poděkování: 9 poděkování
- Dostal poděkování: 2 poděkování
Re: Min/max hodnota atributu u entity Current OTE Energy Cost
nanogreen integraci zkušebně mám a k tomu mám i https://github.com/rnovacek/homeassista ... pot_prices, Nanogreen má trochu problém v tom, že nevytváří žádné zařízení tedy v automatizaci nemohu používat spouštěče či podmínky závislé na zařízení, jinak ok.
Zkoušel jsem i GRINCO ale to způsobuje zastavení načítání dat do databáze influxdb a jelikož tuto databázi používám pro grafanu musel jsem to uplně odinstalovat a udělal jsem si vlastní vyčítání spotových cen za každou hodinu pomocí scrape.
Já si tedy ještě vytvořil své vlastní sensory načítající ceny jednotlivých hodin z webu a k nim mám pak už jednoduše vytvořené sensory počítající průměrné ceny v libovolném časovém úseku tedy třeba mezi 7-20hodinou či 3-5hodinou atd...
Automatice pak funguje takto:
listopad-leden:
- nabije baterky v nejlevnějších dvou hodinách dne na 100% (čerpáno z nanogreen) a vybíjí se od v nejdražších 6ti hodinách dne + zbývající večerní hodiny do 30% (čerpáno z nanogreen) + v době nabíjení a vybíjení se sepne prioritní požadavek na topení.
(vycházím z toho, že i když bude svítit slunko bude v tomto období jen staží pokrývat spotřebu domu plus lehce dobíjet baterku ale asi nikdy nebude slunka tolik aby byl nějaký větší přetok) a že za nejlevnější dvě hodiny denně na spotu se mi nabijí baterky a bude upřednostněno topení v domě
únor-říjen:
- nabije baterky v nejlevnějších dvou hodinách dne na 50% (čerpáno z nanogreen) a pokud je průměr prodejní ceny mezi 8-18hodinou vyšší než průměr nákupní ceny nejlevnějších dvou hodin (vlastní výpočet průměrných cen) kdy dojde k nákuku pak se nabije na 100%. Vybíjení se zapne až v 8 hodin ráno.
(vycházím z toho, že v tomto období už sluníčko dokáže plně nabít baterku a pokud bych jí měl třeba 80% zbytečně bych se připravil o elektriku zdarma, proto mě zajímá zda prodejní cena je vyšší než nákupní v nejlevnějších ranních hodinách ... pokud je prodejní cena dražší je mi jedno že baterku budu mít na 100% protože přetoky pak prodám dráž než jsem nakoupil.)
Plánuji jaro+léto ještě doladit predikcí aby když bude predikce sluníčka došlo k nabití baterky jen na 40-50% cca a pokud bude predikce polojasno pak se nabila na cca 70% a pokud má být déšť či zataženo pak aby se nabila na 100% - veškeré nabíjení v dvou-tří nejlevnějších hodinách dne.
Zkoušel jsem i GRINCO ale to způsobuje zastavení načítání dat do databáze influxdb a jelikož tuto databázi používám pro grafanu musel jsem to uplně odinstalovat a udělal jsem si vlastní vyčítání spotových cen za každou hodinu pomocí scrape.
Já si tedy ještě vytvořil své vlastní sensory načítající ceny jednotlivých hodin z webu a k nim mám pak už jednoduše vytvořené sensory počítající průměrné ceny v libovolném časovém úseku tedy třeba mezi 7-20hodinou či 3-5hodinou atd...
Automatice pak funguje takto:
listopad-leden:
- nabije baterky v nejlevnějších dvou hodinách dne na 100% (čerpáno z nanogreen) a vybíjí se od v nejdražších 6ti hodinách dne + zbývající večerní hodiny do 30% (čerpáno z nanogreen) + v době nabíjení a vybíjení se sepne prioritní požadavek na topení.
(vycházím z toho, že i když bude svítit slunko bude v tomto období jen staží pokrývat spotřebu domu plus lehce dobíjet baterku ale asi nikdy nebude slunka tolik aby byl nějaký větší přetok) a že za nejlevnější dvě hodiny denně na spotu se mi nabijí baterky a bude upřednostněno topení v domě
únor-říjen:
- nabije baterky v nejlevnějších dvou hodinách dne na 50% (čerpáno z nanogreen) a pokud je průměr prodejní ceny mezi 8-18hodinou vyšší než průměr nákupní ceny nejlevnějších dvou hodin (vlastní výpočet průměrných cen) kdy dojde k nákuku pak se nabije na 100%. Vybíjení se zapne až v 8 hodin ráno.
(vycházím z toho, že v tomto období už sluníčko dokáže plně nabít baterku a pokud bych jí měl třeba 80% zbytečně bych se připravil o elektriku zdarma, proto mě zajímá zda prodejní cena je vyšší než nákupní v nejlevnějších ranních hodinách ... pokud je prodejní cena dražší je mi jedno že baterku budu mít na 100% protože přetoky pak prodám dráž než jsem nakoupil.)
Plánuji jaro+léto ještě doladit predikcí aby když bude predikce sluníčka došlo k nabití baterky jen na 40-50% cca a pokud bude predikce polojasno pak se nabila na cca 70% a pokud má být déšť či zataženo pak aby se nabila na 100% - veškeré nabíjení v dvou-tří nejlevnějších hodinách dne.
-
- Začínající autor
- Příspěvky: 38
- Registrován: 16. prosinec 2022, 14:11
- Dal poděkování: 9 poděkování
- Dostal poděkování: 2 poděkování
Re: Min/max hodnota atributu u entity Current OTE Energy Cost
Nanogreen integrace umí:
- zobrazit aktuální cenu spotu + cenu výkupu na nanogreen a cenu nákupu ... toto si můžeš upravit pro své výkupy pokud šáhneš do dat a změníš pár hodnot
- definovat nejlevnější hodinu, dvě, tři, čtyři, pět, šet hodin denně
- definovat nejdražší hodinu, dvě, tři, čtyři, pět, šet hodin denně
- definovat nejlevnější hodinu, dvě denně v peak době
- definovat nejlevnější hodinu, dvě denně v off-peak době
- definovat nejdražší hodinu, dvě denně v peak době
- definovat nejdražší hodinu, dvě denně v off-peak době
peak doba:
Mo-Fri: 07:00AM - 08:00PM
Saturday: 07:00AM - 01:00PM
off-peak doba:
Mo-Fri: 08:00PM - 07:00AM
Saturday: 01:00PM - Monday 07:00AM
-
- Aktivní autor
- Příspěvky: 79
- Registrován: 29. prosinec 2022, 18:09
- Dal poděkování: 4 poděkování
- Dostal poděkování: 7 poděkování
Re: Min/max hodnota atributu u entity Current OTE Energy Cost
Tak pecka, první automatizace a dokonce funguje
Není to nic ke chlubení, ale jen ujištění, že tudy vede cesta.
Ale vyladit to k "dokonalosti" bude ještě dlouhá cesta.
Aby to dávalo smysl, tak je do toho třeba započítat všechny poplatky za distribuci, amortizaci baterie, ztráty nabíjením/vybíjením atd. A pak taky předpověď výroby FVE, SoC auta, spotřebu vytápění, stav naplnění prádelního koše a jídelníček s ohledem na vytížení kuch. spotřebičů
Nebo to moc neřešíte a máte to jako koníčka?
Dneska byl tedy rozdíl na spotu cca 120€, to by asi nabíjet baterii v noci smysl dávalo, ale pod 100€ si myslím, že to moc smysl nemá...
Já jdu na spot od března, tak mám ještě čas si s tím vyhrát.
Není to nic ke chlubení, ale jen ujištění, že tudy vede cesta.
Kód: Vybrat vše
alias: Test nabíjení
description: eco nabíjet
trigger:
- platform: state
entity_id:
- sensor.current_spot_electricity_price
condition:
- condition: numeric_state
entity_id: sensor.current_spot_electricity_price
below: 5
action:
- device_id: f0d47b776b0eebd6976254134540f8b0
domain: select
entity_id: select.inverter_operation_mode
type: select_option
option: Eco charge mode
mode: single
Aby to dávalo smysl, tak je do toho třeba započítat všechny poplatky za distribuci, amortizaci baterie, ztráty nabíjením/vybíjením atd. A pak taky předpověď výroby FVE, SoC auta, spotřebu vytápění, stav naplnění prádelního koše a jídelníček s ohledem na vytížení kuch. spotřebičů
Nebo to moc neřešíte a máte to jako koníčka?
Dneska byl tedy rozdíl na spotu cca 120€, to by asi nabíjet baterii v noci smysl dávalo, ale pod 100€ si myslím, že to moc smysl nemá...
Já jdu na spot od března, tak mám ještě čas si s tím vyhrát.
HA 2023
RB Pi 4B 8GB + SSD Kingston KC600 256GB
TP-Link Deco M9 Plus + 2x Deco E4R + switch SG1210MPE
Goodwe GW10K-ET + OTE
Tesla M3
RB Pi 4B 8GB + SSD Kingston KC600 256GB
TP-Link Deco M9 Plus + 2x Deco E4R + switch SG1210MPE
Goodwe GW10K-ET + OTE
Tesla M3