@luki25
Zakładam że trzeba by dopisać druki warunek jako jakiś “or”, ale słabo u mnie z programowaniem w yaml, więc może inni pomogą.
Sam dla siebie na początku spróbowałbym po prostu zdublować cały blok availability_template dla jednej i drugiej encji źródłowej osobno.
@stemer
Jakoś nie potrafię tego logicznie ułożyć w głowie że będzie to działać (chyba że się coś nie zrozumieliśmy).
Na przykład:
Aktualizacja wartości encji produkcja w danej chwili:
9:00 - 0,5 kW
9:15 - 0,5kW
9:30 - 1,0 kW
itp.
Jeżeli np. od 9:02 do 9:12 wyszło super słońce i produkcja skoczyła do 5kW - encja tego nie wyłapie i już odczyt/wyliczenia o kant sosny będą.
Niestety tak, integracja odwołuje się do chmury a tam dane aktualizowane są właśnie co 15 min.
Dane na stronie producenta są dokładne, ponieważ urządzenie wysyła cały pakiet danych (co 15 min, ale dane zarejestrowane co chwilę). Sam producent jeszcze nie wystawia API aby dobrać się do pełnych danych (choć ponoć pracują nad tym).
Generalnie integracja hoymiles napisana dla HA przewiduje dostęp do tego pakietu danych na poziomie samego urządzenia monitorującego (tzw. DTU) ale nie wszystkie rodzaje osprzętu obsługuje (mnie się nie udało dobić do tych danych).
Szanowni Państwo, podzielę się z Wami moim małym doświadczeniem. U mnie panel Energia działa prawidłowo.
Parametry mojej instalacji;
SofarSolar 8,8 KTX
Licznik energii Shelly PM3 ( zamontowany na WLZ)
W pliku configuration.yaml mam wpisy “- platform: scrape”, z nich pobieram dane dotyczące aktualnej produkcji.
sensor:
# Sensory bezpośrednie pobierające dane z falownika SolarSofar 8.8KTX SCRAPE
- platform: scrape
resource: http://10.0.0.250/status.html
name: Produkcja_ogolem_sofar
authentication: basic
username:******
password: ******
select: "script"
index: 1
value_template: '{{ (( value.split('';'')[7] ) | replace (''var webdata_total_e = '','''') |replace(''"'', '''')|float ) }}'
scan_interval: 300 # co jaki czas dane będą pobierane do HA
unit_of_measurement: "kWh"
- platform: scrape
resource: http://10.0.0.250/status.html
name: Produkcja_aktualna_sofar # ten sensor będzie używany jako dane o produkcji do panelu Energia
authentication: basic
username: *******
password: *********
select: "script"
index: 1
value_template: '{{ (( value.split('';'')[5] ) | replace (''var webdata_now_p ='','''' ) |replace(''"'', '''') |float) }}'
scan_interval: 30
unit_of_measurement: "W"
- platform: scrape
resource: http://10.0.0.250/status.html
name: Produkcja_dzisiaj_sofar
authentication: basic
username: ****
password: ****
select: "script"
index: 1
value_template: '{{ (( value.split('';'')[6] ) | replace (''var webdata_today_e = '','''')|replace(''"'', '''')|float )}}'
scan_interval: 30
unit_of_measurement: "kWh"
- platform: scrape
resource: http://10.0.0.250/status.html
name: Nr_seryjny_sofarsolar
authentication: basic
username: *******
password: *********
select: "script"
index: 1
value_template: '{{ (( value.split('';'')[4] ) | replace (''var webdata_sn = '','''')|replace(''"'', '''')|float )}}'
scan_interval: 10
ponadto dopisane jest;
# integracja produkcja paneli
# integracja produkcja paneli
- platform: integration
source: sensor.produkcja_aktualna_sofar
name: Produkcja z Solaow
unit_prefix: k
round: 2
Sensor ten w dostosowaniu encji ustawiłem w “dostosowanie encji”
W taki sposób dodałem odpowiednie sensory. Licznik Shelly PM3, informuje mnie o energii pobranej z PGE, oraz wysłanej do PGE - auto konsumpcja, sensor z SofarSolar podaje jaka produkcja jest.
Całość daje pełny obraz o energii. Po zamontowaniu więcej opomiarowanych punktów, gniazd oświetlenia itp. będę widział co się dzieje z energią w moim domu
p/s wszystkie sensory; napięcie, moc, temperatura, od 02:08 brak zapisu. restart odczytał dane.
Urządzenia Shelly nie wykonały automatyzacji, konieczny device reboot.
Urządzenia Supla to samo.
Tuya jakoś sobie poradziła z automatyzacją ale dane w HA po restarcie HA
Pozdrawiam.
Czy każda zmiana czasu będzie powodowała takie “gagi” ?
Hejka, własnie drugi dzień rozkminiam moduł energy, i pytanie jest, czy stosując twój kod, to po restarcie HA nie dodaje Ci podwójnie wartości w słupkach poszczególnych godzin?
Cześć,
Generalnie wtedy wszystko działało elegancko, nigdy nie miałem podwojeń, natomiast jakiś czas temu wyszły 2 aktualizacje add-ona w których niestety autor trochę namieszał z jednostkami itp. Tak więc o ile pamiętam były konieczne jakieś zmiany w template.
Ogólnie rzecz biorąc w aktualnej wersji add-on działa słabo, często się wykrzacza i trzeba go restartować mimo włączonego watchdoga. Coś też zostało namieszane w schemacie MQTT bo wali ostrzeżeniami na okrągło.
Ja czekam aż autor ponownie usiądzie do aktualizacji.
4 dni mi to zajęło, ale zaczyna wyglądać to dobrze.
Problem był, że po restarcie HA dublowało mi wartość z licznika, ponieważ na chwilę pojawiała się wartość 0, a później właściwa
dogrzebałem się w necie jak to zrobić, ponieważ pomysł z kodem:
availability_template: >-
nie działa w tym przypadku.
Ale po kolei:
Urządzenie Shelly 3EM
integracja standard z HA - samo wykryło urządzonko
kod u mnie jest jak poniżej, czyli najpierw sumowanie faz z shelly, a później trzeba stworzyć encje pomocnicze dla modułu energy, w których jak wystąpi wartoś 0 w encji źrodłowej, to pobierze poprzednią wartość z encji pomocniczej.
#---------------Shelly----------------
# Aktualna produkcja lub zużycie energii, dane z Shelly (pobór, wysył)
- platform: template
sensors:
dom_aktualna_moc:
device_class: power
friendly_name: "Dom Aktualna moc"
value_template: >-
{{ (((states('sensor.shellyem3_c45bbe6b232e_channel_a_power')|float + states('sensor.shellyem3_c45bbe6b232e_channel_b_power')|float + states('sensor.shellyem3_c45bbe6b232e_channel_c_power')|float)/1000))|round(3) }}
unit_of_measurement: "kW"
# Energia pobrana z zakładu energetycznego Tauron
- platform: template
sensors:
dom_energia_pobrana:
device_class: energy
friendly_name: "Dom Energia pobrana z Tauron"
value_template: >-
{{ (((states('sensor.shellyem3_c45bbe6b232e_channel_a_energy')|float + states('sensor.shellyem3_c45bbe6b232e_channel_b_energy')|float + states('sensor.shellyem3_c45bbe6b232e_channel_c_energy')|float)))|round(2) }}
unit_of_measurement: "kWh"
# Energia wysłana do zakładu energetycznego Tauron
- platform: template
sensors:
dom_energia_oddane:
device_class: energy
friendly_name: "Dom Energia wyslana do Tauron"
value_template: >-
{{ (((states('sensor.shellyem3_c45bbe6b232e_channel_a_energy_returned')|float + states('sensor.shellyem3_c45bbe6b232e_channel_b_energy_returned')|float + states('sensor.shellyem3_c45bbe6b232e_channel_c_energy_returned')|float)))|round(2) }}
unit_of_measurement: "kWh"
# Moduł ENERGY energia pobrana
- platform: template
sensors:
dom_energia_pobrana_m_energy:
friendly_name: "Dom Energia pobrana z Tauron ENERGY"
icon_template: mdi:transmission-tower
unit_of_measurement: "kWh"
device_class: energy
value_template: >
{% if states('sensor.dom_energia_pobrana') | float == 0 %}
{{ states('sensor.dom_energia_pobrana_m_energy') }}
{% else %}
{{ states('sensor.dom_energia_pobrana') | float }}
{% endif %}
# Moduł ENERGY energia oddana
- platform: template
sensors:
dom_energia_oddane_m_energy:
friendly_name: "Dom Energia oddane do Tauron ENERGY"
icon_template: mdi:solar-panel
unit_of_measurement: "kWh"
device_class: energy
value_template: >
{% if states('sensor.dom_energia_oddane') | float == 0 %}
{{ states('sensor.dom_energia_oddane_m_energy') }}
{% else %}
{{ states('sensor.dom_energia_oddane') | float }}
{% endif %}
# Moduł ENERGY Produkcja PV z paneli
- platform: template
sensors:
daily_energy_pv_m_energy:
friendly_name_template: "Produkcja PV dzien ENERGY"
icon_template: mdi:transmission-tower
unit_of_measurement: "kWh"
device_class: energy
value_template: >
{% if states('sensor.daily_energy_pv') | float == 0 %}
{{ states('sensor.daily_energy_pv_m_energy') }}
{% else %}
{{ states('sensor.daily_energy_pv') | float }}
{% endif %}
Z takiego fragmentu kodu trudno znaleźć błąd, jeśli ten “ucięty” kod też należy do platform: template to na pewno masz podwójne wpisy dotyczące tej platformy.
Najlepiej wlej to w postaci kodu a nie printscrena.
Witam. Mam problem którego nie potrafię rozwiązać. Czytałem wszystko powyżej ale nici z tego. Posiadam falowniki zeversolar. Wyciągnęłam z niego encje za pomoce instalacji APPDaemon4 . Encje są dwie, wskazują produkcję total oraz w czasie rzeczywistym. W żaden sposób nie mogę zrobić żeby były widziane w panelu energia. Jestem początkujący w temacie Homea więc może ktoś mi pomoże rozwiązać ten problem