Witajcie, zakupiłem na znanym portalu z zagranicy licznik TRIYEDQ T1100 z komunikacją modbus. konwerter RS485-USB podłączony do PC, program Open ModScan komunikuje się z licznikiem i odczytuje parametry prawidłowo. Po podłączeniu konwertera do HA nie odczytuje jednak żadnych danych.
Ale te dane nie są typu float tylko jakiś integer. Przy 32bitach danych adresy nie mogą się zminiać o +1, więc wygląda na to, że bezrefleksyjnie skopiowałeś konfigurację do jakiegoś licznika SDM.
To jest niedźwiedzia przysługa za chwilę sam będziesz zachodził w głowę czemu nagle zaczęły się pokazywać głupoty.
Nie po to w tabeli są jeszcze dwie kolumny Length i Data Format aby ciurkiem ustawiać wszystko jako int16. Zadanie domowe to nauczyć się zakresu i rozmiaru dla typów danych.
Przechowywana jest liczba całkowita bez znaku. To wiem z instrukcji modbus czyli nie może być ujemna, zakładam że przekłada się to na maksymalną „pojemność” komórki.
Fajnie, a wiesz czym się różnią typy danych int32 i uint32 w twoim zastosowaniu integracji modbus
W skrócie - w przypadku encji energii nie dziś, nie jutro, ale istnieje prawdopodobieństwo, że kiedyś znienacka “ni z gruchy ni z pietruchy” otrzymasz jakiś gigantyczny wynik ujemny, więc należałoby po prostu zgodnie z dokumentacją podeklarować te encje tak, jak to przewidział producent licznika (a nie wyłącznie na zasadzie “Odczyt się dziś zgadza, więc jest OK”).
Tak poza konkurencją, zakładając, że Chińczyk zastosował normalną nomenklaturę, to między dokumentacją, a integracją przekłada się to mniej więcej tak
long → int32; ulong → uint32; int → int16; uint → uint16; czasem urządzenia mogą raportować też wartości zmiennoprzecinkowe (ale załączyłeś tylko jakiś mały fragment dokumentacji, w sumie fajnie by było gdybyś spakował plik do zip i wrzucił jako załącznik gdy już przygotujesz finalny YAML, którym się podzielisz z innymi)
Mając dziś chwile zakończyłem konfigurowanie licznika TRIYEDQ T1100. Dziękuję wszystkim komentującym za pomoc i naprowadzenie na prawidłowy odczyt dokumentacji oraz podpowiedzi które nakierowały mnie na prawidłowe podłączenie licznika.
Mój YAML zawiera tylko elementy które interesują mnie, w razie potrzeby wskazane będzie poszukiwanie rejestrów.
Mam nadzieje że nie popełniłem żadnego błędu ale dziś już sił na to więcej nie mam
Nie ma najmniejszego sensu do nazwy encji dodawać jednostkę miary, tym przypadku “V”, HA poprawnie wyświetla stan encji wraz z jednostką miary zdeniniowaną w atrybucje encji unit_of_measurement bo potem dochodzi do takich niejasności jak poniżej:
Nazwa to już chyba kwestia indywidualna nie sądzisz? jak wspominałem to testowa konfiguracja i licznik po weryfikacji możliwości i komunikacji wylądował w szufladzie. Gdy będę go adaptować już pod określone zadanie to i nazwy ulegną zmianie.
Oczywiście, że indywidualna ale wg mnie, żadna nazwa nie powinna wprowadzać wątpliwości lub wprowadzać w błąd, przykład nazwy z W a wartość podawana w kW. Następnym razem powstrzymam się od takich uwag.
przeszukałem cały wątek pod kątem występowania słów zaczynających się od “test” - nigdzie nie wspominałeś wcześniej o tym, jedynie mamy name: sdm_test_1 i name: sdm_test_2 .
No tak, o tym wspomniałem podczas prywatnej korespondencji z jednym z użytkowników, ale tak, to platforma testowa. Jak na chwilę obecną licznik nie ma zastosowania, jest to test/weryfikacja celem wyboru niedrogiego, wartego uwagi urządzenia.