Current Spot Electricity Hour Order

možnosti a vlastnosti
Uživatelský avatar
Pete30
Moderátor
Moderátor
Příspěvky: 2901
Registrován: 30. září 2020, 20:33
Dal poděkování: 152 poděkování
Dostal poděkování: 319 poděkování

Re: Current Spot Electricity Hour Order

Příspěvek od Pete30 »

Zkus to do vývojářské šablony, mělo by to vyhodit hodnotu 3.816

Kód: Vybrat vše

{{ state_attr('sensor.current_spot_electricity_hour_order', '2023-10-17T06:00:00+02:00') [1] }}
Sice nám to zatím nic neřeší protože ten čas se bude měnit a to bude potřeba nějak vymyslet ;)
Zatím nemám představu, ale podívám se na to jaké jsou možnosti.
Pokud nejsem přítomen tak jsem na rybách ;)

Turbo
Aktivní autor
Aktivní autor
Příspěvky: 76
Registrován: 29. prosinec 2022, 18:09
Dal poděkování: 4 poděkování
Dostal poděkování: 4 poděkování

Re: Current Spot Electricity Hour Order

Příspěvek od Turbo »

Ano, vyleze hodnota 3,816
Asi chápu kde je problém - dotazujeme se na hodnotu atributu přes datum a hodinu a to je třeba pokaždé měnit?
Nicméně to mi nevyřeší ten můj problém, potřebuji z toho tahat ceny dle pořadí, které je u nich uvedeno.
Myslel jsem, že to bude jednodušší... doufám, že na něco přijdeš, díky ;)
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

Uživatelský avatar
Pete30
Moderátor
Moderátor
Příspěvky: 2901
Registrován: 30. září 2020, 20:33
Dal poděkování: 152 poděkování
Dostal poděkování: 319 poděkování

Re: Current Spot Electricity Hour Order

Příspěvek od Pete30 »

Ten senzor má atributy v čase
příklad

Kód: Vybrat vše

'2023-10-17T00:00:00+02:00':
  - 12
  - 3.146
a tou šablonou jsi schopen vytáhnout ty 2 hodnoty co obsahuje

Kód: Vybrat vše

{{ state_attr('sensor.current_spot_electricity_hour_order', '2023-10-17T00:00:00+02:00') [0] }}
výsledek bude 12
a

Kód: Vybrat vše

{{ state_attr('sensor.current_spot_electricity_hour_order', '2023-10-17T00:00:00+02:00') [1] }}
výsledek bude 3.146
nic víc z toho nevytáhneš, více hodnot to nemá, jen se poprat s tím časem který se mění

edit: jen stále nechápu tvoje počínání, pokud obejdeme ten čas tak při každé jeho změně na výstupu bude jiné číslo stejné jako ukazuje senzor
protože nebudeš tahat určitou hodinu. A i kdyby jsi tahal jak víš že nejmenší cena dnes ve 4 nebude zítra ve 2
Pokud nejsem přítomen tak jsem na rybách ;)

Turbo
Aktivní autor
Aktivní autor
Příspěvky: 76
Registrován: 29. prosinec 2022, 18:09
Dal poděkování: 4 poděkování
Dostal poděkování: 4 poděkování

Re: Current Spot Electricity Hour Order

Příspěvek od Turbo »

Pete30 píše: 17. říjen 2023, 13:23 jen stále nechápu tvoje počínání
Pokusím se vysvětlit:

Aktuálně řeším doma toky energie na panelu níže, jsem na spotovém trhu a vždy večer si manuálně nastavím hodnoty za jakou cenu se má nabíjet úložiště, případně auto, bojler, do jaké ceny jedu na grid a od jaké ceny už jedu zase na úložiště. V létě ještě pak za jakou cenu posílat přebytky do sítě (ale to už teď v topné sezóně neplatí). Jde hlavně o to se odstřihnout od těch cenových špiček.
Mám to řekl bych funkční, automatizace se mi už neperou mezi sebou, mám to zalimitované vzhledem k jističi atd.
Když jsem s HA začínal, tak tento stav byl pro mě taková hodně vzdálená meta, ale povedlo se.
ha59.png
No a teď bych tomu chtěl dát nějakou autonomii, abych do toho nemusel každý den zasahovat.
Troufám si tvrdit, že co se týká automatizací, pomocníků atd, tak se s tím poperu, to už tak nějak principiálně chápu.
Můžu pracovat s předpokládanou výrobou FVE, nebo třeba spotřebou topení vzhledem k počasí, s tím vším se dá kalkulovat v proměnných.
Ta fundamentální entita je právě Current Spot Electricity Hour Order, kde vidím dopředu ceny v jednotlivých hodinách a pořadí hodin podle ceny.

Takže mám představu, že vždy třeba o půlnoci se spustí automatizace, která nastaví hodnoty na panelu výše například takto:
1.-3. nejlevnější hodina - nabíjej úložiště (nastaví cenu "Baterie nabíjení" na 3. nejlevnější hodinu toho dne)
1.-16. nejlevnější hodina - odebírej ze sítě (nastaví cenu "Grid/baterie" na 16. nejlevnější hodinu)
17.-24. nejlevnější hodina - odebírej z úložiště

Tyto konkrétní limitní ceny chci propisovat do toho ovládacího panelu (a ne přímo do automatizací), abych měl možnost do toho jednoduše zasahovat a měl rychlý přehled, ale to už vím jak na to.

Čili, potřebuji každý den vytáhnout z entity Current Spot Electricity Hour Order číselnou hodnotu (cenu) konkrétní hodiny podle pořadí ceny, ne podle časového sledu.

Snad se to podařilo vysvětlit pochopitelně...
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

Uživatelský avatar
Pete30
Moderátor
Moderátor
Příspěvky: 2901
Registrován: 30. září 2020, 20:33
Dal poděkování: 152 poděkování
Dostal poděkování: 319 poděkování

Re: Current Spot Electricity Hour Order

Příspěvek od Pete30 »

Ok, musím si to trochu srovnat, ale asi to nebude tak jednoduché.
Třeba ještě někdo bude mít nějaký nápad, mě zatím nic nenapadá a hlavně to nemám na čem otestovat.
Pokud nejsem přítomen tak jsem na rybách ;)

rxw
Začínající autor
Začínající autor
Příspěvky: 41
Registrován: 09. prosinec 2022, 13:48
Dostal poděkování: 4 poděkování

Re: Current Spot Electricity Hour Order

Příspěvek od rxw »

Zatím jenom takový "test", ale snad by to šlo použít - vlož si níže uvedený kód do Developer Tools/Template

Kód: Vybrat vše

{%- for spot in states.sensor.current_spot_electricity_hour_order.attributes %}
  {%- if spot | contains('00:00') %}
    {%- set hourOrder = int(state_attr('sensor.current_spot_electricity_hour_order', spot)[0]) %}
    {%- set hourPrice = float(state_attr('sensor.current_spot_electricity_hour_order', spot)[1]) %}
    {#- {{ spot }} - {{ hourOrder }} - {{ hourPrice }} #}
    {%- if hourOrder == 1 %}
      Cena 1. nejlevnejsi hodiny je: {{ hourPrice }} Kc ({{ spot }})
    {%- endif %}
    {%- if hourOrder == 2 %}
      Cena 2. nejlevnejsi hodiny je: {{ hourPrice }} Kc ({{ spot }})
    {%- endif %}
    {%- if hourOrder == 6 %}
      Cena 6. nejlevnejsi hodiny je: {{ hourPrice }} Kc ({{ spot }})
    {%- endif %}
    {%- if hourOrder == 12 %}
      Cena 12. nejlevnejsi hodiny je: {{ hourPrice }} Kc ({{ spot }})
    {%- endif %}
  {%- endif %}
{%- endfor%}


Turbo
Aktivní autor
Aktivní autor
Příspěvky: 76
Registrován: 29. prosinec 2022, 18:09
Dal poděkování: 4 poděkování
Dostal poděkování: 4 poděkování

Re: Current Spot Electricity Hour Order

Příspěvek od Turbo »

rxw píše: 17. říjen 2023, 20:50 Zatím jenom takový "test", ale snad by to šlo použít - vlož si níže uvedený kód do Developer Tools/Template

Kód: Vybrat vše

{%- for spot in states.sensor.current_spot_electricity_hour_order.attributes %}
  {%- if spot | contains('00:00') %}
    {%- set hourOrder = int(state_attr('sensor.current_spot_electricity_hour_order', spot)[0]) %}
    {%- set hourPrice = float(state_attr('sensor.current_spot_electricity_hour_order', spot)[1]) %}
    {#- {{ spot }} - {{ hourOrder }} - {{ hourPrice }} #}
    {%- if hourOrder == 1 %}
      Cena 1. nejlevnejsi hodiny je: {{ hourPrice }} Kc ({{ spot }})
    {%- endif %}
    {%- if hourOrder == 2 %}
      Cena 2. nejlevnejsi hodiny je: {{ hourPrice }} Kc ({{ spot }})
    {%- endif %}
    {%- if hourOrder == 6 %}
      Cena 6. nejlevnejsi hodiny je: {{ hourPrice }} Kc ({{ spot }})
    {%- endif %}
    {%- if hourOrder == 12 %}
      Cena 12. nejlevnejsi hodiny je: {{ hourPrice }} Kc ({{ spot }})
    {%- endif %}
  {%- endif %}
{%- endfor%}

Toto je výsledek:

Cena 12. nejlevnejsi hodiny je: 3.139 Kc (2023-10-17T00:00:00+02:00)
Cena 1. nejlevnejsi hodiny je: 2.579 Kc (2023-10-17T03:00:00+02:00)
Cena 6. nejlevnejsi hodiny je: 2.744 Kc (2023-10-17T04:00:00+02:00)
Cena 2. nejlevnejsi hodiny je: 2.591 Kc (2023-10-17T13:00:00+02:00)
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

rxw
Začínající autor
Začínající autor
Příspěvky: 41
Registrován: 09. prosinec 2022, 13:48
Dostal poděkování: 4 poděkování

Re: Current Spot Electricity Hour Order

Příspěvek od rxw »

Já moc automatizaci v rámci HA nepoužívám. Je mi bližší NodeRED. Nicméně pomocí uvedeného kódu je možné vytvořit senzor, který bude obsahovat X-tou nejnižší cenu a následně můžeš tento senzor použít v rámci Tvé logiky. Pokud použiješ trigger-based template sensor, tak si můžeš nastavit automatickou aktualizaci o půlnoci. A přes input helper si můžeš z panelu i nastavit, kterou hodinu to bude brát ;)

Příklad senzoru s automatickou aktualizací o půlnoci.

Kód: Vybrat vše

template:
  - trigger:
      - platform: time_pattern
        # This will update every night
        hours: 0
        minutes: 0
    sensor:
      - name: "Test Sensor"
        unique_id: test_sensor
        state: >
          {%- for spot in states.sensor.current_spot_electricity_hour_order.attributes if spot | contains('00:00') and int(state_attr('sensor.current_spot_electricity_hour_order', spot)[0]) == 3 %}
            {{ float(state_attr('sensor.current_spot_electricity_hour_order', spot)[1]) }}
          {%- endfor%}

Turbo
Aktivní autor
Aktivní autor
Příspěvky: 76
Registrován: 29. prosinec 2022, 18:09
Dal poděkování: 4 poděkování
Dostal poděkování: 4 poděkování

Re: Current Spot Electricity Hour Order

Příspěvek od Turbo »

Tak díky moc příteli :like:
Vypadá to, že to bude šlapat.
Níže automatizace, která mi propisuje 1. nejlevnější hodinu do ovládacího panelu.

Kód: Vybrat vše

alias: Nastavení limitu nabíjení
description: ""
trigger:
  - platform: time
    at: "00:00:00"
condition: []
action:
  - service: input_number.set_value
    data:
      value: >-
        {%- for spot in
        states.sensor.current_spot_electricity_hour_order.attributes if spot |
        contains('00:00') and
        int(state_attr('sensor.current_spot_electricity_hour_order', spot)[0])
        == 1 %} {{ float(state_attr('sensor.current_spot_electricity_hour_order', spot)[1]) }} 
        {%- endfor%}
    target:
      entity_id: input_number.limit_baterie_nabijeni
mode: single
V dalším kroku musím udělat proměnnou z hodnoty pořadí hodin dle ceny na základě předpokládané spotřeby, ale s tím se (snad) už poperu.
Ještě jednou díky, moc mi to pomohlo ;)
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

Odpovědět

Zpět na „Entity“