Mój podlicznik (EASTRON SDM72D-M Modbus v2) pod który była podłączona pompa ciepła uległ awarii. Objawiało się to tym, że zaczął naliczać export oraz nie wyświetlał wartości na fazie L3.
Stary zakończył swój żywot z wartością 7249,15 kWh.
Zgłosiłem reklamację z tyt. rękojmi, wymienili mi na nowy.
Problem polega na tym, że w panelu “Energia” sekcja “Monitorowanie poszczególnych urządzeń” wyświetla mi MINUS 7249,15 kWh.
W jaki sposób dodać do encji tą starą wartość (7249,15) by zachować ciągłość zużytych kWh (bo nowy licznik startuje od zera kWh)?
W zakresie jednego dnia mogę skorygować dane. Problem polega na tym, że stary licznik zdjąłem 06.10.2023 ze stanem 7249,15 kWh a nowy założyłem 16.10.2023 ze stanem 0,0 kWh.
Panel ENERGIA na dole w sekcji MONITOROWANIE POSZCZEGÓLNYCH URZĄDZEŃ pokazuje MINUS 7249,15 kWh (w ujęciu dnia wczorajszego, czyli jak montowałem licznik, oraz w ujęciu tygodnia czy też dłuższego okresu).
Jest to dla mnie zrozumiałe ale chcę to poprawić tak, aby Home Assistant do wartości nowego licznika (do tej encji) dodawał starą wartość (czyli 7249,15 kWh). Wydaje mi się, że jest to dobre rozwiązanie. Poprawcie mnie jeśli się mylę. Jak to zrobić?
Dlaczego uważam, że powinna stara wartość być dodawana do nowej? Dlatego, że Home Assistant odpytuje przez Modbus nowy licznik a on zwraca mu wartość taką którą mogę odczytać na jego panelu.
@artpc czuję, że chyba się nie rozumiemy. Nie chodzi o korektę jednorazowej wartości tylko o wymianę licznika.
Prawdopodobnie znalazłem błąd który zrobiłem. W przypadku LICZNIKÓW ENERGII, GAZU itp. należy ustawić
state_class: total_increasing
U mnie było ustawione na TOTAL (a w niektórych encjach w ogóle tego parametru nie dodałem).
Zatem HA odczytał przez Modbus zerową wartość licznika i taką zapisał w bazie. Przy ustawieniu “total_increasing” sprawdza o ile urosła nowa wartość w stosunku do poprzedniej i o tą różnicę powiększa wartość encji.
Moje obecne ustawienia licznika Eastron do zliczania kWh.
PROBLEM 2 - naprawa wykresów i statystyk w panelu Energii:
Edytuję ten post, może komuś się przyda w przyszłości. Zatem jeżeli został wymieniony licznik a my nie zadbaliśmy o to by encja miała “state_class: total_increasing”, to zrobi się nam bałagan w panelu Energia. U mnie była to duża, minusowa wartość (ok. -7300 kWh).
Jak rozwiązałem problem?
Uruchomiłem dodatek “SQLite Web”
W tabeli “statistics_meta” odnalazłem ID mojej encji.
Usunąłem z tabel “statistics” oraz “statistics_short_term” za pomocą zapytań SQL wiersze które spełniały dwa warunki:
a) miały kolumnę “metadata_id” równą ID mojej encji ORAZ
b) kolumna “ID” była większa niż… (i tu sprawdziłem w bazie datę kiedy to dokładnie wymieniłem licznik).
Tabela “statistics_short_term” zapisuje dane co 5 minut, natomiast tabela “statistics” co godzinę. Zauważyłem też, że dane w panelu Energia prawdopodobnie są zasysane co godzinę z “statistics”.
Gdy mamy ustawione “state_class: total_increasing” to w bazie danych, w kolumnie “sum” pojawia się zawsze wartość większa o kilka kWh od poprzedniej (mimo, że HA odczytał przez Modbus z naszego NOWEGO licznika wartość np 4,12 kWh a stary licznik miał np. 7214,89 kWh). Dokładnie tego oczekujemy.