Skip to content

Commit

Permalink
fix: improve names, description and readme.
Browse files Browse the repository at this point in the history
  • Loading branch information
rattkin committed Oct 7, 2023
1 parent 1fc7038 commit fc19b81
Show file tree
Hide file tree
Showing 4 changed files with 40 additions and 38 deletions.
53 changes: 28 additions & 25 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -48,33 +48,36 @@ Repozitář by se vám měl zobrazit mezi ostatními repozitáři.

## Sensory

| ID | Popis |
| --------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
| `current_market_price` | Současná tržní cena elektřiny. |
| `current_consumption_price` | Tržní cena pro spotřebu po odečtení poplatků podle aktuálního ceníku, bez DPH. |
| `current_consumption_price_with_vat` | Tržní cena pro spotřebu po odečtení poplatků podle aktuálního ceníku, včetně DPH. |
| `current_production_price_with_nano` | Tržní cena pro výkup přebytků při současném odběru elektřiny od Nano Green po odečtení poplatku za služby obchodu ve výši 600 Kč/MWh bez DPH. |
| `current_production_price_without_nano` | Tržní cena pro výkup přebytků při odběru elektřiny od jiného dodavatele po odečtení poplatku za služby obchodu ve výši 900 Kč/MWh bez DPH. |
| `today_base_cheapest_hour` | Dnešní nejlevnější hodina za celý den. |
| `today_peak_cheapest_hour` | Dnešní nejlevnější hodina v energetické špičce. |
| `today_offpeak_cheapest_hour` | Dnešní nejlevnější hodina mimo energetickou špičku. |
| `today_base_second_cheapest_hour` | Dnešní druhá nejlevnější hodina za celý den. |
| `today_peak_second_cheapest_hour` | Dnešní druhá nejlevnější hodina v energetické špičce. |
| `today_offpeak_second_cheapest_hour` | Dnešní druhá nejlevnější hodina mimo energetickou špičku. |
| `is_currently_cheapest_hour` | Binární sensor. Zapnutý, pokud je nejlevnější hodina elektřiny z celého dne. |
| `is_currently_second_cheapest_hour` | Binární sensor. Zapnutý, pokud je druhá nejlevnější hodina elektřiny z celého dne. |
| `is_currently_third_cheapest_hour` | Binární sensor. Zapnutý, pokud je třetí nejlevnější hodina elektřiny z celého dne. |
| `is_currently_fourth_cheapest_hour` | Binární sensor. Zapnutý, pokud je čtvrtá nejlevnější hodina elektřiny z celého dne. |
| `is_currently_fifth_cheapest_hour` | Binární sensor. Zapnutý, pokud je pátá nejlevnější hodina elektřiny z celého dne. |
| `is_currently_sixth_cheapest_hour` | Binární sensor. Zapnutý, pokud je šestá nejlevnější hodina elektřiny z celého dne. |
| `is_currently_in_two_cheapest_hours` | Binární sensor. Zapnutý, pokud je jedna ze dvou nejlevnějších hodin elektřiny z celého dne. |
| `is_currently_in_three_cheapest_hours` | Binární sensor. Zapnutý, pokud je jedna ze tří nejlevnějších hodin elektřiny z celého dne. |
| `is_currently_in_four_cheapest_hours` | Binární sensor. Zapnutý, pokud je jedna ze čtyř nejlevnějších hodin elektřiny z celého dne. |
| `is_currently_in_five_cheapest_hours` | Binární sensor. Zapnutý, pokud je jedna z pěti nejlevnějších hodin elektřiny z celého dne. |
| `is_currently_in_six_cheapest_hours` | Binární sensor. Zapnutý, pokud je jedna z šesti nejlevnějších hodin elektřiny z celého dne. |
| ID | Popis |
| --------------------------------------- | --------------------------------------------------------------------------------------------------------------------------------------- |
| `current_market_price` | Současná tržní cena silové elektřiny. |
| `current_consumption_price` | Spotřební cena silové el. po odečtení poplatků podle aktuálního ceníku, bez DPH. |
| `current_consumption_price_incl_vat` | Spotřební cena silové el. po odečtení poplatků podle aktuálního ceníku, včetně DPH. |
| `current_production_price_with_nano` | Výkupní cena silové el. při současném odběru elektřiny od Nano Green po odečtení poplatku za služby obchodu ve výši 600 Kč/MWh bez DPH. |
| `current_production_price_without_nano` | Výkupní cena silové el. při odběru elektřiny od jiného dodavatele po odečtení poplatku za služby obchodu ve výši 900 Kč/MWh bez DPH. |
| `today_base_cheapest_hour` | Dnešní nejlevnější hodina za celý den. |
| `today_peak_cheapest_hour` | Dnešní nejlevnější hodina v energetické špičce. |
| `today_offpeak_cheapest_hour` | Dnešní nejlevnější hodina mimo energetickou špičku. |
| `today_base_second_cheapest_hour` | Dnešní druhá nejlevnější hodina za celý den. |
| `today_peak_second_cheapest_hour` | Dnešní druhá nejlevnější hodina v energetické špičce. |
| `today_offpeak_second_cheapest_hour` | Dnešní druhá nejlevnější hodina mimo energetickou špičku. |
| `is_currently_cheapest_hour` | Binární sensor. Zapnutý, pokud je nejlevnější hodina elektřiny z celého dne. |
| `is_currently_second_cheapest_hour` | Binární sensor. Zapnutý, pokud je druhá nejlevnější hodina elektřiny z celého dne. |
| `is_currently_third_cheapest_hour` | Binární sensor. Zapnutý, pokud je třetí nejlevnější hodina elektřiny z celého dne. |
| `is_currently_fourth_cheapest_hour` | Binární sensor. Zapnutý, pokud je čtvrtá nejlevnější hodina elektřiny z celého dne. |
| `is_currently_fifth_cheapest_hour` | Binární sensor. Zapnutý, pokud je pátá nejlevnější hodina elektřiny z celého dne. |
| `is_currently_sixth_cheapest_hour` | Binární sensor. Zapnutý, pokud je šestá nejlevnější hodina elektřiny z celého dne. |
| `is_currently_in_two_cheapest_hours` | Binární sensor. Zapnutý, pokud je jedna ze dvou nejlevnějších hodin elektřiny z celého dne. |
| `is_currently_in_three_cheapest_hours` | Binární sensor. Zapnutý, pokud je jedna ze tří nejlevnějších hodin elektřiny z celého dne. |
| `is_currently_in_four_cheapest_hours` | Binární sensor. Zapnutý, pokud je jedna ze čtyř nejlevnějších hodin elektřiny z celého dne. |
| `is_currently_in_five_cheapest_hours` | Binární sensor. Zapnutý, pokud je jedna z pěti nejlevnějších hodin elektřiny z celého dne. |
| `is_currently_in_six_cheapest_hours` | Binární sensor. Zapnutý, pokud je jedna z šesti nejlevnějších hodin elektřiny z celého dne. |

Vysvětlení:

Kromě silové elektřiny ještě platíte za distribuci podle vašeho distribučního území ČEZ, PRE nebo EG.d a distribučního tarifu. Některé tarify mají dvě ceny NT/VT (nesouvisí s časy Peak/OffPeak spotu).
Distribuce se platí pro nákup i prodej. V ČR, jako jediné zemi na světě, je měření po fázích zvlášť. Pokud máte na jedné fázi prodej a na druhé nákup, za prodej platíte. Za distribuci platíte pro oba směry.

PEAK LOAD (8:00 - 20:00)

OFFPEAK LOAD (0:00 - 8:00, 20:00 - 24:00)
Expand Down Expand Up @@ -123,7 +126,7 @@ header:
series:
- entity: sensor.current_market_price_czk_kwh
data_generator: |
return entity.attributes.today_hourly_consumption_prices_with_vat.map((price, index) => {
return entity.attributes.today_hourly_consumption_prices_incl_vat.map((price, index) => {
const date = new Date()
date.setHours(index)
date.setMinutes(0)
Expand Down
11 changes: 5 additions & 6 deletions custom_components/nanogreen/const.py
Original file line number Diff line number Diff line change
Expand Up @@ -17,12 +17,11 @@
VAT = 1.21 # DPH 21%

# Fees per MWh in watt, without VAT
WH_FEE = (350 + 113)/1000

WH_FEE = (350 + 28.3 + 113.53)/1000

ATTR_API_CURRENT_MARKET_PRICE = "current_market_price"
ATTR_API_CURRENT_CONSUMPTION_PRICE = "current_consumption_price"
ATTR_API_CURRENT_CONSUMPTION_PRICE_WITH_VAT = "current_consumption_price_with_vat"
ATTR_API_CURRENT_CONSUMPTION_PRICE_INCL_VAT = "current_consumption_price_incl_vat"
ATTR_API_CURRENT_PRODUCTION_WITH_NANO_PRICE = "current_production_price_with_nano"
ATTR_API_CURRENT_PRODUCTION_WITHOUT_NANO_PRICE = "current_production_price_without_nano"
ATTR_API_TODAY_BASE_CHEAPEST_HOUR = "today_base_cheapest_hour"
Expand All @@ -32,7 +31,7 @@
ATTR_API_TODAY_PEAK_SECOND_CHEAPEST_HOUR = "today_peak_second_cheapest_hour"
ATTR_API_TODAY_OFFPEAK_SECOND_CHEAPEST_HOUR = "today_offpeak_second_cheapest_hour"
ATTR_API_TODAY_HOURLY_PRICES = "today_hourly_prices"
ATTR_API_TODAY_HOURLY_CONSUMPTION_PRICES_WITH_VAT = "today_hourly_consumption_prices_with_vat"
ATTR_API_TODAY_HOURLY_CONSUMPTION_PRICES_INCL_VAT = "today_hourly_consumption_prices_incl_vat"
ATTR_API_TOMORROW_HOURLY_PRICES = "tomorrow_hourly_prices"


Expand All @@ -48,8 +47,8 @@
native_unit_of_measurement="CZK/kWh",
),
SensorEntityDescription(
key=ATTR_API_CURRENT_CONSUMPTION_PRICE_WITH_VAT,
name="Current consumption price with VAT [CZK/kWh]",
key=ATTR_API_CURRENT_CONSUMPTION_PRICE_INCL_VAT,
name="Current consumption price including VAT [CZK/kWh]",
native_unit_of_measurement="CZK/kWh",
),
SensorEntityDescription(
Expand Down
8 changes: 4 additions & 4 deletions custom_components/nanogreen/coordinator.py
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
DOMAIN,
ATTR_API_CURRENT_MARKET_PRICE,
ATTR_API_CURRENT_CONSUMPTION_PRICE,
ATTR_API_CURRENT_CONSUMPTION_PRICE_WITH_VAT,
ATTR_API_CURRENT_CONSUMPTION_PRICE_INCL_VAT,
ATTR_API_CURRENT_PRODUCTION_WITH_NANO_PRICE,
ATTR_API_CURRENT_PRODUCTION_WITHOUT_NANO_PRICE,
ATTR_API_IS_CURRENTLY_CHEAPEST_HOUR,
Expand All @@ -32,7 +32,7 @@
ATTR_API_TODAY_PEAK_CHEAPEST_HOUR,
ATTR_API_TODAY_PEAK_SECOND_CHEAPEST_HOUR,
ATTR_API_TODAY_HOURLY_PRICES,
ATTR_API_TODAY_HOURLY_CONSUMPTION_PRICES_WITH_VAT,
ATTR_API_TODAY_HOURLY_CONSUMPTION_PRICES_INCL_VAT,
ATTR_API_TOMORROW_HOURLY_PRICES,
WH_FEE,
VAT,
Expand Down Expand Up @@ -76,7 +76,7 @@ async def _convert_response(self, response):
# non binary sensors
ATTR_API_CURRENT_MARKET_PRICE: current_price,
ATTR_API_CURRENT_CONSUMPTION_PRICE: current_price + WH_FEE,
ATTR_API_CURRENT_CONSUMPTION_PRICE_WITH_VAT: (current_price + WH_FEE) * VAT,
ATTR_API_CURRENT_CONSUMPTION_PRICE_INCL_VAT: (current_price + WH_FEE) * VAT,
ATTR_API_CURRENT_PRODUCTION_WITH_NANO_PRICE: current_price - 0.6,
ATTR_API_CURRENT_PRODUCTION_WITHOUT_NANO_PRICE: current_price - 0.9,
ATTR_API_TODAY_BASE_CHEAPEST_HOUR: data.get("todayBaseCheapestHour"),
Expand All @@ -92,7 +92,7 @@ async def _convert_response(self, response):
"todayPeakSecondCheapestHour"
),
ATTR_API_TODAY_HOURLY_PRICES: data.get("todayHourlyPrices", []),
ATTR_API_TODAY_HOURLY_CONSUMPTION_PRICES_WITH_VAT: list(map(lambda x: (x + WH_FEE) * VAT, data.get("todayHourlyPrices", []))),
ATTR_API_TODAY_HOURLY_CONSUMPTION_PRICES_INCL_VAT: list(map(lambda x: (x + WH_FEE) * VAT, data.get("todayHourlyPrices", []))),
ATTR_API_TOMORROW_HOURLY_PRICES: data.get("tomorrowHourlyPrices", []),
# binary sensors
ATTR_API_IS_CURRENTLY_CHEAPEST_HOUR: data.get(
Expand Down
6 changes: 3 additions & 3 deletions custom_components/nanogreen/sensor.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@

from .const import (
ATTR_API_TODAY_HOURLY_PRICES,
ATTR_API_TODAY_HOURLY_CONSUMPTION_PRICES_WITH_VAT,
ATTR_API_TODAY_HOURLY_CONSUMPTION_PRICES_INCL_VAT,
ATTR_API_TOMORROW_HOURLY_PRICES,
BINARY_SENSOR_TYPES,
DOMAIN,
Expand Down Expand Up @@ -95,8 +95,8 @@ def extra_state_attributes(self):
ATTR_API_TODAY_HOURLY_PRICES: self._coordinator.data.get(
ATTR_API_TODAY_HOURLY_PRICES
),
ATTR_API_TODAY_HOURLY_CONSUMPTION_PRICES_WITH_VAT: self._coordinator.data.get(
ATTR_API_TODAY_HOURLY_CONSUMPTION_PRICES_WITH_VAT
ATTR_API_TODAY_HOURLY_CONSUMPTION_PRICES_INCL_VAT: self._coordinator.data.get(
ATTR_API_TODAY_HOURLY_CONSUMPTION_PRICES_INCL_VAT
),
ATTR_API_TOMORROW_HOURLY_PRICES: self._coordinator.data.get(
ATTR_API_TOMORROW_HOURLY_PRICES
Expand Down

0 comments on commit fc19b81

Please sign in to comment.