Panel Energia - wskazania produkcji PV

@Marku, a jak bedzie wyglądał zapis jak sumuję 2 encje, mam ten sam problem, jedna czasami ma stan niedostępny
moja encja

  - platform: template
    sensors:
      daily_energy:
        friendly_name: Pompa dzienne zużycie
        unit_of_measurement: kWh
        value_template: "{{ states('sensor.pompa_ciepla_t06_energy_today')|float| round(0) + states('sensor.pompa_ciepla_wew_energy_today')|float | round(0) }}"

Powinny być prawidłowe w panelu energia. Wg mnie wyważasz już otwarte drzwi :wink:

@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ą.

Ale to jest encja z integracji w chmurze, tak? Czy na stronie/apce producenta pokazuje ci sensowną produkcję na koniec dnia?

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).

Jeśli możesz tą encję dodać jako solar production w panelu energii, to bym z nią spróbował. Najwyżej stracisz tylko jeden dzień :wink:

Szanowni Państwo, podzielę się z Wami moim małym doświadczeniem. U mnie panel Energia działa prawidłowo.
Parametry mojej instalacji;

  1. SofarSolar 8,8 KTX
  2. 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 Panelu energia mam


Dodatkowo dopięte są gniazda i przekaźniki shelly ( z pomiarem ) co dodatkowo obrazuje, gdzie energua jest dystrybuowana

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

image


jeżeli chcemy rozliczyć energię w/g panelu energia można to zrobić ale następnego dnia.
U mnie wyniki są prawidłowo naliczane

Pozdrawiam i przepraszam za tą ilość obrazków :slight_smile:

3 polubienia

Ktoś mi może wytłumaczyć skąd te błędy we wskazaniu zużytej energii?
Cały dzień pokazuje realne wartości a pomiędzy 00:00-01:00 jakieś bzdury.

Wartości biorę z encji, która się zeruje o północy, wychodzi na to, że może powinienem zaciągać z total?

U mnie to samo, mój kolega również.
Ja mam shelly em3, on ma suple. Problem z HA.
Przyczyny nie znam

Czy zmiana czasu nie zablokowała odczytu ??? danych.

Była wywałka przez zmianę czasu na recorderze - znalazłem w necie - wiele osób, podobnie jak ja, miały problem dzisiaj w nocy, więc może to to. Restart core pomaga, ale nie wiem jak z danymi - u mnie po prostu ich nie było. Wy macie jakieś dziwne odczyty.
https://community.home-assistant.io/t/recorder-queue-reached-the-maximum-size-of/351734

Po restarcie dane się pokazują, ale bez rozbicia na godziny, ale suma się zgadza.

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 %}

a finalnie wygląda to tak:

Karta górowanie jak to karta ?

Dzięki :), napiszę coś jeszcze aby było min 20 znaków :slight_smile:

A czy ktoś umie mi powiedzieć co robię źle,
wyskakuje mi błąd expected: NULL, i te sensory nie tworzą się…

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