SolarEdge-modbus i utility_meter

Cześć,

Czy używa ktoś z Was integracji solaredge-modbus?
Wpiąłem się nią właśnie do mojego falownika i odpytuję co 10s. Integracja wystawia kilka encji, dzięki którym mogę zliczać sobie produkcję, eksport, import, a następne wyliczyć konsumpcję energii przez dom (posiadam osobno smartmeter od SolarEdge’a).
Zrobiłem sobie następujące template’y do tych encji:

      solaredge_modbus_ac_energy:
    friendly_name: 'Produkcja'
    unit_of_measurement: 'kWh'
    icon_template: mdi:solar-power
    value_template: "{{ (states('sensor.solaredge_modbus_ac_energy_kwh') | round(2))  }}"

      solaredge_modbus_m1_exported:
    friendly_name: 'Eksport'
    unit_of_measurement: 'kWh'
    icon_template: mdi:solar-power
    value_template: "{{ (states('sensor.solaredge_modbus_m1_exported_kwh') | round(2))  }}"

  solaredge_modbus_m1_imported:
    friendly_name: 'Import'
    unit_of_measurement: 'kWh'
    icon_template: mdi:solar-power
    value_template: "{{ (states('sensor.solaredge_modbus_m1_imported_kwh') | round(2))  }}"

Dzięki nim (są wyrażone w kWh) stworzyłem sobie encję i mogę wyliczyć konsumpcję energii przez dom:

solaredge_modbus_consumption:
    friendly_name: 'Konsumpcja'
    unit_of_measurement: 'kWh'
    value_template: "{{ ((states('sensor.solaredge_modbus_ac_energy_kwh') | float) - (states('sensor.solaredge_modbus_m1_exported_kwh') | float) + (states('sensor.solaredge_modbus_m1_imported_kwh') | float)) | round(2) }}"
    icon_template: mdi:home-import-outline

Generalnie obliczenia są robione prawidłowo, natomiast babol pojawia się po restarcie HA. Otóż nagle encja konsumpcji przyjmuje wartość jaka była od początku powstania encji, co powodu nienormalny skok zużycia energii. Mogę to sobie później skorygować w integracji utility_meter, no ale robienie tego ręcznie po każdym restarcie mija się trochę z sensem…
Czy miał ktoś podobny problem? A może coś skopałem w template?
Tak wygląda integracja utility_meter, która zlicza pokazywane przez ww encje wartości:

utility_meter:
  energy_production_daily:
    source: sensor.solaredge_modbus_ac_energy
    cycle: daily
  energy_export_daily:
    source: sensor.solaredge_modbus_m1_exported
    cycle: daily
  energy_import_daily:
    source: sensor.solaredge_modbus_m1_imported
    cycle: daily
  energy_consumption_daily:
    source: sensor.solaredge_modbus_consumption
    cycle: daily

A może utility_meter jest błędnie skonfigurowany? Dla encji z solaredge-modbus pokazuje wartości prawidłowe dla dnia, miesiąca i roku, natomiast problematyczna jest ta wyliczana przeze mnie encja.

Edit: formatowanie

Też posiadam inwerter SolarEdge. Posiadasz taki licznik:
https://www.solaredge.com/pl/products/metering-and-sensors/solaredge-modbus-meter#/

Zgadza się, dokładnie taki.

On jest zapięty po modbus do falownika i wtedy pojawiają się dodatkowe encję, przykładowo sensor.solaredge_modbus_m1_exported_kwh?

Tak. Podczas konfiguracji integracji solaredge-modbus wybierasz pierwszy licznik (chyba, że masz ich więcej).

Odpowiadając sobie na zadane pytanie - problemem była błędna konfiguracja utility metera oraz encji, wyliczających konsumpcję. Należy liczyć to inaczej, na już stworzonych encjach od utility_meter:

solaredge_modbus_consumption_daily:
  friendly_name: 'Konsumpcja (dzienna)'
  unit_of_measurement: 'kWh'
  value_template: "{{ ((states('sensor.energy_production_daily') | float) - (states('sensor.energy_export_daily') | float) + (states('sensor.energy_import_daily') | float)) | round(2) }}"
  icon_template: mdi:home-import-outline
solaredge_modbus_consumption_monthly:
  friendly_name: 'Konsumpcja (miesięczna)'
  unit_of_measurement: 'kWh'
  value_template: "{{ ((states('sensor.energy_production_monthly') | float) - (states('sensor.energy_export_monthly') | float) + (states('sensor.energy_import_monthly') | float)) | round(2) }}"
  icon_template: mdi:home-import-outline
solaredge_modbus_consumption_yearly:
  friendly_name: 'Konsumpcja (roczna)'
  unit_of_measurement: 'kWh'
  value_template: "{{ ((states('sensor.energy_production_yearly') | float) - (states('sensor.energy_export_yearly') | float) + (states('sensor.energy_import_yearly') | float)) | round(2) }}"
  icon_template: mdi:home-import-outline

a w konfiguracji utility_meter encje odpowiedzialne za konsumpcję powinny być takie:

  energy_consumption_daily:
    source: sensor.solaredge_modbus_consumption_daily
    cycle: daily

  energy_consumption_monthly:
    source: sensor.solaredge_modbus_consumption_monthly
    cycle: monthly

  energy_consumption_yearly:
    source: sensor.solaredge_modbus_consumption_yearly
    cycle: yearly

Działa wam może wtyczka solaredge ? - ta po API bo SolaredgeModbus mi działa. W node-redzie też po api czyta dane - a w HA mam brak danych

Działa, ale w ostatnim okresie potrafią się na chwilę wyłączyć informacje z API. Wygląda to na jakieś problemy z chmurą.

Jaką masz wersje HA bo patrze na changeloga i jednak coś grzebali zarówno przy solaredge jak i AVM Fritz :slight_smile: Muszę uaktualnić do najnowszej. Po aktualizacji do najnowszej wersji z chmury ściąga mi tylko dwie pozycje:
sensor.solaredgechmura_lifetime_energy
sensor.solaredgechmura_current_power
do d… z takimi danymi

Mam 2021.11.1. U mnie tak to wygląda

Bieżacej produkcji nie ma bo jest ciemno :slight_smile:

U mnie jest 21 encji SolarEdge’a

no mi wlasnie brakuje energii w roku i miesiącu, może dlatego że mam podpięte to pod zakładkę energy . Już kurcze nie wiem…

Edit:

Sam sobie odpowiem, po instalacji Home Assistant w wersji 2021.11.12 trzeba na nowo włączyć encje solaredge w rejestrze encji…

@Bratmat edytuj Swoje posty - nie pisz jednego pod drugim !

Aktywowałem u siebie modbus po TCP. U Was też jest tylko jedna encja pokazująca całkowitą produkcję? Piszę tu o integracji:

Dodatkowo jak chcę tą encję dodać do dashboardu to mam komunikat, że encja nie zdefiniowana:

musisz włączyć encje modbus bo natywnie sa wyłączone :slight_smile:

Pytanie dotyczące konsumpcji i autokonlsumpcji miesięcznej. Czy są one zliczanie w okresie miesiąca kalendarzowego ? np. 01.03. - 31.03. ?

To ci robi panel energii z encji ustawionej w template (konsumpcja). Autokonsumpcję musiałbyś sobie zrobić utility meterem niestety, chyba, że starczy ci procentowa autokonsumpcja w panelu energy.

Jasna sprawa, dzięki.