Nie mogę dodać wpisu:
sensor: !include sensor.yaml, bo chyba dubluje się z sekcją sensor - linia 15.
edit:
Nie wiem czy mogę przenieść sekcję sensor z linii 15 do nowego pliku o nazwie sensor.yaml ?
Nie mogę dodać wpisu:
sensor: !include sensor.yaml, bo chyba dubluje się z sekcją sensor - linia 15.
edit:
Nie wiem czy mogę przenieść sekcję sensor z linii 15 do nowego pliku o nazwie sensor.yaml ?
Wyżej krskrab dokładnie to opisał.
dodaj wpis configuration.yaml
utility_meter: !include meter.yaml
następnie utwórz plik w katalogu gdzie masz pliki yaml meter.yaml
potem wklej do pliku meter.yaml poniższy przykład
W kolejności
1 linia nazwa nowego sensora zliczający;
quarter-hourly = 15 minut
hourly = godzina
daily = dzień
itp itp
2 linia sensor który ma być zliczany
3 linia reset cykli
meter_klimatyzacja_sypialnia_kwadrans:
source: sensor.klima_sypialnia_energy
cycle: quarter-hourly
meter_klimatyzacja_sypialnia_godzina:
source: sensor.klima_sypialnia_energy
cycle: hourly
meter_klimatyzacja_sypialnia_dzien:
source: sensor.klima_sypialnia_energy
cycle: daily
meter_klimatyzacja_sypialnia_tydzien:
source: sensor.klima_sypialnia_energy
cycle: weekly
meter_klimatyzacja_sypialnia_miesiac:
source: sensor.klima_sypialnia_energy
cycle: monthly
meter_klimatyzacja_sypialnia_kwartal:
source: sensor.klima_sypialnia_energy
cycle: quarterly
meter_klimatyzacja_sypialnia_rok:
source: sensor.klima_sypialnia_energy
cycle: yearly
meter_klimatyzacja_sypialnia_narastajaco:
source: sensor.klima_sypialnia_energy
po dostosowaniu do swojego sensora energy możesz przeprowadzić kalibrację sensorów i wpisać stany początkowe np do sensora rok czy narastająco
Tak, musisz przenieść to z configuration.yaml
do sensor.yaml
, żeby się sekcja nie dublowała (przy przenoszeniu do konfiguracji tworzonej w ten sposób wcięcia musisz skrócić o 2 spacje).
Panowie, dzięki wielkie za pomoc. Jakoś to wymęczyłem Małymi kroczkami do przodu !
Nie wiem czy mogę podjąć inny temat w tym wątku ? ale strasznie męczą mnie wyniki składające się z 6 cyfr po przecinku, Chciałbym zrobić jedno miejsce.
Czy stopień trudności podobny do tego ?
Musisz skorzystać z template i “round(1)”
Poniżej masz przykładowe rozwiązanie:
Hej, a powiedzcie co tutaj mam nie tak że mi nie zlicza?
- platform: template
sensors:
licznik_pobrana2:
value_template: "{{ (states('solaredge_imported_energy_template')|float + 3036) | round(1) }}"
unit_of_measurement: 'kWh'
device_class: power
icon_template: mdi:gauge
- platform: template
sensors:
licznik_oddana2:
value_template: "{{ (states('solaredge_exported_energy_template')|float + 3930) | round(1) }}"
unit_of_measurement: 'kWh'
device_class: power
icon_template: mdi:gauge
- platform: template
sensors:
licznik_pobrana3:
value_template: "{{ (states('solaredge_imported_energy')|float + 3036) | round(2) }}"
unit_of_measurement: 'kWh'
device_class: power
icon_template: mdi:gauge
- platform: template
sensors:
licznik_oddana3:
value_template: "{{ (states('solaredge_exported_energy')|float + 3930) | round(2) }}"
unit_of_measurement: 'kWh'
device_class: power
icon_template: mdi:gauge
Encja z template to tylko zmienione jednostki. Nie działa ani na zwykłej encji ani na zmienionej jednostce na kWh.
Ja bym spróbował jakoś tak:
- platform: template
sensors:
licznik_pobrana2:
value_template: "{{ (states('sensor.solaredge_imported_energy_template') | float + 3036.0 ) | round(1) }}"
unit_of_measurement: 'kWh'
device_class: energy
icon_template: mdi:gauge
Odnośnie zaokrąglania liczb i template. Nie za bardzo wiem od czego zacząć. Gdzie mam wpisywać encje z template ?
Cześć! Walczę z tym od X czasu i poddaję się. Nie działa ani zliczanie kilowatów, ani zliczanie kosztów…
Podpowiedzcie proszę gdzie popełniam błąd:
- platform: template
sensors:
monthly_czajnik_pln:
friendly_name: "Kosz miesięczny - Czajnik"
unit_of_measurement: 'PLN'
icon_template: mdi:currency-eur
value_template: "{{ (states('sensor.monthly_czajnik')|float * 0,699888)|round(2) }}"
- platform: template
sensors:
daily_czajnik_pln:
friendly_name: "Kosz dzienny - Czajnik"
unit_of_measurement: 'PLN'
icon_template: mdi:currency-eur
value_template: "{{ (states('sensor.daily_czajnik')|float * 0,699888)|round(2) }}"
utility_meter:
daily_czajnik:
source: sensor.czajnik_energy
cycle: daily
monthly_czajnik:
source: sensor.czajnik_energy
cycle: monthly
Efekt jest taki:
A faktyczne wskazania licznika następujące:
POMOCY!
Po pierwsze masz podwójnie wywołaną funkcję template, po drugie w stałych użyj kropki nie przecinka:
- platform: template
sensors:
monthly_czajnik_pln:
friendly_name: "Kosz miesięczny - Czajnik"
unit_of_measurement: 'PLN'
icon_template: mdi:currency-eur
value_template: "{{ (states('sensor.monthly_czajnik')|float(0) * 0.699888)|round(2) }}"
daily_czajnik_pln:
friendly_name: "Kosz dzienny - Czajnik"
unit_of_measurement: 'PLN'
icon_template: mdi:currency-eur
value_template: "{{ (states('sensor.daily_czajnik')|float(0) * 0.699888)|round(2) }}"
Serdecznie dziękuję za ekspresową odpowiedź! Błędy początkującego, jeszcze wiele nauki przede mną…
W każdym razie zliczanie kosztów działa, natomiast wciąż mam te dziwne odczyty. Mógłbym prosić o podpowiedź skąd się biorą?
Edit:
Jako że rozpoczął się nowy dzień a zarazem miesiąc, licznik się zresetował i wszystko pokazuje się poprawnie.
Jeszcze raz dziękuje za pomoc!
Witaj, jak uzyskać nazwę obok a nie na, tzn. tak jak jest u Ciebie ?
entities:
- name: Pralka
entity: sensor.lazienka_energy
- name: Zmywarka
entity: sensor.lazienka_energy
minmax: inside
title: inside
value: inside
- entity: sensor.lazienka_energy
name: Anita
- entity: sensor.lazienka_energy
name: Łazienka
decimal: 1
min: 0
severity:
- color: '#0080FF'
from: '0'
to: '19'
- color: '#40bf40'
from: '19'
to: '22'
- color: '#bf9540'
from: '22'
to: '25'
- color: '#c0392b'
from: '25'
to: '40'
direction: up
height: 155px
width: 24px
positions:
indicator: inside
name: inside
icon: 'off'
style: |-
.card-header {
font-size: 18px;
}
bar-card-value, bar-card-name {
font-size: 12px;
transform-origin: 0 0;
transform: rotate(270deg);
text-shadow: 1px 1px #0008;
white-space: nowrap;
}
bar-card-value {
margin-right: auto;
margin-left: 6px;
margin-bottom: auto;
margin-top: auto;
}
bar-card-name {
margin-right: auto;
margin-left: 0px;
margin-bottom: -130px;
margin-top: 130px;
right: 20px;
}
bar-card-currentbar, bar-card-backgroundbar {
border-radius: 12px;
border: 1px solid #DDD9;
}
stack: horizontal
type: custom:bar-card
animation:
state: 'on'
max: '200'
entity_row: true
Podpinam się pod wątek, mam podobny problem tylko sytuacja odwrotna, mam encje z bieżącym zużyciem z falownika Fronius, do falownika podłączyłem licznik SO ( czyli licznik impulsów ) encja to [sensor.power_real_fronius_meter_0_…] oraz drugą pokazującą podobne wskazania (sensor.power_load_fronius_power_flow_0_…) jak z tych encji zrobić licznik total który będę mógł użyć w zakładce energia “Użycie energii z sieci” przy pomocy którego będę widział aktualne zapotrzebowanie mojego domu na prąd .
Mógłbym prosić o podpowiedź, jak wyliczyć offset dla licznika bimonthly
utworzonego np. dziś tj. 16.08, którego reset będzie nie 31.08 ale 30.09.
Czy to tak ?
source: sensor.gas_meter_cost
cycle: bimonthly
offset:
days: 16
hours: 0
minutes: 0
Powyższy oczywiście spowoduje reset 17 dnia.
Zaczynamy od lutego co dwa miesiące:
utility_meter:
gas_bimonthly_cost
source: sensor.gas_meter_cost
cron: "0 0 1 2/2 *"
@macek był szybszy.
Cykl dwumiesięczny liczymy: styczeń-luty, marzec-kwiecień itd.
W Twoim przypadku cykl zresetuje się 31 lsierpnia i następnie będzie Ci zliczał co drugi miesiąc - czyli wrzesień-październik.
Chyba nie tak bo :
When using the
offset
configuration parameter, the defined period must not be longer than 28 days
Podany kod zwraca błąd:
invalid config for [utility_meter]: Unsupported offset of more then 28 days, please use a cron pattern. for dictionary value @ data['utility_meter']['gas_bimonthly']['offset']. Got OrderedDict([('days', 31), ('hours', 0), ('minutes', 0)])
Unsupported offset of more then 28 days, please use a cron pattern. for dictionary value @ data['utility_meter']['gas_bimonthly_cost']['offset']. Got OrderedDict([('days', 31), ('hours', 0), ('minutes', 0)])
Unsupported offset of more then 28 days, please use a cron pattern. for dictionary value @ data['utility_meter']['gas_bimonthly_kwh']['offset']. Got OrderedDict([('days', 31), ('hours', 0), ('minutes', 0)]). (See /config/configuration.yaml, line 131).
Przeoczyłem to czytając dokumentację na komórce, powyżej 28 dni dla offsetu
trzeba stosować cron pattern
: 0 0 1 2/2 * - zaczyna się o północy pierwsze dnia miesiąca zaczynającego się od 2 i co drugi miesiąc czyli 2, 4, 6 itd.