máte tam hodně sensorů můžete to prosím popsat co se v nich očekává za hodnoty? abych to lépe aplikoval na můj kod?
raději bych ale právě uvítal aby přímo nanogreen posílal data o té konečné ceně s distribucí a s dph
czk_price_per_kwh
je OTE cena v Kč, nakup_elektriny_poplatky
je poplatek Nanogreen, zbytek jsou regulované poplatky jak jsou na vyúčtování (nakup_elektriny_distribuce
, nakup_elektriny_systemove_sluzby
, nakup_elektriny_podpora_oze
). Každé z toho je pomocník číslo, takže se to při změně snadno zadává.
no ale czk_price_per_kwh
nakup_elektriny_poplatky
berete odkud? to nejsou pomocníci asi…
Aplikace dalších poplatků · Issue #5 · nanogreencz/homeassistant-integrations · GitHub tady je na to požadavek už dlouho
umíte někdo prosím modifikovat aby v sensorech sensor.is_currently_in_two_cheapest_hours, sensor.is_currently_in_three_cheapest_hours, …
se počítalo také s tím že od 22 hodin do 6 hodin je jiná cena distribuce a to o hodně. Rozdíl je třeba 0,5 Kč za kwh VS 2 Kč za kwh.
Když je teď v poslední době silová složka prakticky levná v průměru za celý den tak bohužel sensor se zapíná třeba ve dne kdy mám pekelně drahou distribuci a je to potom na nic
Mam staticke VT/NT a tak jsem to vyresil tim, ze jsem si v NodeRedu vytvoril real price sensor. Flow vypada takhle:
[{"id":"e50aed3eab1112d0","type":"api-current-state","z":"b939cfccc04f66c5","name":"current price","server":"6bec9d55.e00e34","version":3,"outputs":1,"halt_if":"","halt_if_type":"str","halt_if_compare":"is","entity_id":"sensor.current_market_price_czk_kwh","state_type":"str","blockInputOverrides":false,"outputProperties":[{"property":"payload","propertyType":"msg","value":"","valueType":"entityState"},{"property":"data","propertyType":"msg","value":"","valueType":"entity"}],"for":"0","forType":"num","forUnits":"minutes","override_topic":false,"state_location":"payload","override_payload":"msg","entity_location":"data","override_data":"msg","x":310,"y":1080,"wires":[["a06004e071a1ce84"]]},{"id":"a3201b9d3aed610d","type":"inject","z":"b939cfccc04f66c5","name":"","props":[{"p":"payload"},{"p":"topic","vt":"str"}],"repeat":"300","crontab":"","once":false,"onceDelay":0.1,"topic":"","payload":"","payloadType":"date","x":130,"y":1080,"wires":[["e50aed3eab1112d0"]]},{"id":"a06004e071a1ce84","type":"function","z":"b939cfccc04f66c5","name":"real price","func":"var inputPrices = msg.data.attributes.today_hourly_prices;\nvar distributionFeeHigh = 0.648;\nvar distributionFeeLow = 0.438;\nvar ozeFee = 0.495;\nvar providerFee = 0.35;\nvar tax = 1.21;\n\nvar modifiedPrices = inputPrices.map(function (price, index) {\n var distributionFee;\n\n if (\n (index >= 0 && index <= 6) || // Hodiny 00:00 - 06:00\n (index >= 10 && index <= 13) || // Hodiny 10:00 - 13:00\n (index >= 17 && index <= 24) // Hodiny 17:00 - 24:00\n ) {\n // Použij distributionFeeLow pro určené hodiny\n distributionFee = distributionFeeLow;\n } else {\n // Použij distributionFeeHigh pro všechny ostatní hodiny\n distributionFee = distributionFeeHigh;\n }\n\n var totalPrice = (price + distributionFee + ozeFee + providerFee) * tax;\n\n return totalPrice.toFixed(2); // Zaokrouhleno na 2 desetinná místa\n});\n\nvar currentHour = new Date().getHours();\nvar currentPrice = modifiedPrices[currentHour];\n\nvar today_hourly_prices = modifiedPrices.join(', '); // Spojení hodnot do řetězce odděleného čárkami\n\nvar sensorData = {\n payload: {\n // payload: currentPrice,\n state: currentPrice,\n data: { \n entity_id: \"sensor.real_market_price_czk_kwh\",\n state: currentPrice,\n attributes: {\n today_hourly_prices: today_hourly_prices\n },\n unit_of_measurement: \"CZK/kWh\",\n friendly_name: \"Real market price [CZK/kWh]\" \n }\n }\n};\n\nvar mqttMsg = {\n topic: \"topic/sensor_real_price\", // Změňte na správný MQTT topic\n payload: JSON.stringify(sensorData.payload)\n};\n\nreturn [sensorData, mqttMsg];\n","outputs":1,"timeout":0,"noerr":0,"initialize":"","finalize":"","libs":[],"x":500,"y":1080,"wires":[["089de8054dc51f60"]]},{"id":"089de8054dc51f60","type":"mqtt out","z":"b939cfccc04f66c5","name":"","topic":"topic/sensor_real_price","qos":"","retain":"","respTopic":"","contentType":"","userProps":"","correl":"","expiry":"","broker":"541f6f06c1c46029","x":710,"y":1080,"wires":[]},{"id":"6bec9d55.e00e34","type":"server","name":"Home Assistant","version":5,"addon":true,"rejectUnauthorizedCerts":true,"ha_boolean":"y|yes|true|on|home|open","connectionDelay":true,"cacheJson":true,"heartbeat":false,"heartbeatInterval":30,"areaSelector":"friendlyName","deviceSelector":"friendlyName","entitySelector":"friendlyName","statusSeparator":"at: ","statusYear":"hidden","statusMonth":"short","statusDay":"numeric","statusHourCycle":"h23","statusTimeFormat":"h:m","enableGlobalContextStore":true},{"id":"541f6f06c1c46029","type":"mqtt-broker","name":"broker","broker":"192.168.1.123","port":"1883","clientid":"","autoConnect":true,"usetls":false,"protocolVersion":"4","keepalive":"60","cleansession":true,"birthTopic":"","birthQos":"0","birthPayload":"","birthMsg":{},"closeTopic":"","closeQos":"0","closePayload":"","closeMsg":{},"willTopic":"","willQos":"0","willPayload":"","willMsg":{},"userProps":"","sessionExpiry":""}]
a pak jsem si v HA vytvoril mqtt senzor do ktereho se to odesila:
mqtt:
sensor:
- name: "Real Price CZK/kWh"
state_topic: "topic/sensor_real_price"
unit_of_measurement: "CZK/kWh"
value_template: "{{ value_json.state }}"
json_attributes_topic: "topic/sensor_real_price"
json_attributes_template: >
{% set values = value_json.data.attributes.today_hourly_prices.split(', ') %}
{"today_hourly_prices": {{ values | tojson }}}
Rozhodnuti, jestli je nejlevnejsi hodina nebo ne pak delam zase v nodeRed pres function node. ChatGPT vetsinou rychle vyresi za me
Já to teď dodělal složitěji, nemám statické VT/NT. Na stav HDO mám integraci EGD Distribuce CZ, kde je i příklad sensoru ceny za distribuci.
Pak jsem si dodělal pomocníky (input_number) s cenami POZE, systémové služby a měsíční poplatky (tuto cenu jako jedinou nemám přesně, prostě jsem použil dlouhodobý průměr kWh za den a přepočítal to). Pak už jen value template sensor, který mi to sečte a vynásobí 1,21, abych měl cenu s daní. A rázem je z krásných 2,38 Kč/kWh částka 5,5 Kč/kWh.
Je to “skvělý”, jak to ta regulovaná část pošle úplně někam jinam… Do budoucna se ale chystá přesun za distribuci do fixní platby (ala jističe), takže se poplatky za kWh pravděpodobně budou snižovat a bude vznikat i nějaký day-ahead ceny za distribuci. Což neznamená, že budeme platit někde mít - u distribuce to bude vždycky jen stoupat jen to bude schovaný někde jinde.
to je špatná zpráva pro všechny majitele FVE pač paušál je největší zlo od března do prosince
Díky za návod. Udělal jsem si druhý graf, kde počítám vůči předpoklásané ceně virtuálky a vůči ceně tepla z plynu vs. TČ
Musel jsem trochu upravit ten graf. “y” osa byla škálovaná od nuly, takže to nezobrazovalo záporné ceny, které jsou pro mne, jako pro solárního barona, docela kritické.