Witam Wszystkich
Mam zrobiony pomiar energii w Domoticzu na module PZEM-004T i esp8266.
Wszystko działa poprawnie licznik od zamontowania wskazuje 11,56 kW, ale jakoś na wykresach zawsze kw zaokrągla do 1kw.
Wchodząc w konkretny dzień widać zawsze na wykresie zużycie godzinowe 1kw pomimo, że monitoruje prace pompy ciepła która cały czas zmienia pobór energii
@dzidzi20 Hej możesz rozwinąć swoje rozwiązanie co i jak tak dla prawdziwego nowicjusza
licznik mam SDM120 Modbus RS485 (Modbus -a nie udało mi się do teraz uruchomić) . Licznik podłączyłem do nodemcu v3 z wgranym espeasy wg tego schematu klik.
Pin pod który jest podłączony licznik musi być jako input (w moim przypadku pin nr 14(D5) ). W espeasy w zakładce Rules trzeba wpisać :
On Clock#Time=All,00:10 do
Reboot
endOn
To spowoduje reboot nodemcu v3 o godzinie 10 min po północy i przy okazji skasowanie naliczonych impulsów. Espeasy liczy impulsy do jakieś określonej liczby. po przekroczeniu tej liczby w domoticzu wychodzą mi cuda na kiju (nie wiedziałem o tym i przez to 2 razy system na malinie stawiałem na nowo)
tu masz zrzuty ekranu z ustawieniami na espeasy
W domoticzu trzeba utworzyć licznik przyrostowy (w sprzęt dodać Dummy (Does nothing, use for virtual switches a następnie licznik przyrostowy) Licznik ma swój idx który trzeba wpisać w espeasy w moim przypadku 24. Na koniec trzeba w ustawieniach domoticza w zakładce Mierniki/Liczniki wpisać ile impulsów to 1kWh w polu Energia elektryczna
Nie to ,że bym się czepiał , ale w ESP możesz bezpośrednio wyjscie s0 połączyć z GPIO , i zrobić pullup programowo. Da się to espeasy zrobić .
A jaki masz problem z tym modbusem ?
Kupiłem konwerter usb rs485. Do tego użyłem skryptu do odczytywania danych z licznika. Nie mogę zmusić maliny i licznika do współpracy. Podobno wystarczy tylko dwa kabelki podłączyć do konwertera i licznika. U mnie nie działa. Kupiłem drugi konwerter bo wiadomo jak to z chińskim wynalazkami bywa. Ale to nic nie dało. Znalazłem sposób który opisałem powyżej i jak na razie działa bez zarzutu od roku. Praktycznie te same wskazania co na liczniku głównym. Teraz kupiłem kolejny konwerter i spróbuję podłączyć do wemosa i licznika może będzie działać.
Kolega zmusił swoj chinski licznik do gadania po takiej przejsciowce usb i na malinie , przy pomocy domoticza z tym pluginem: https://www.domoticz.com/forum/viewtopic.php?f=65&t=21297&hilit=pymodbus&sid=0f508e45ad6c6700ad2e1061e03174cf
Choć długo walczył ,udało się , głównym powodem był nieprawidłowo wpisany adres ID , na liczniku był 032 , a w pluginie trzeba było wpisać 0:32...
Ja swoj chinski licznik zczytuje po modbusie przez przejsciowke i Wemosa , i działa tez od ponad roku . "Dostałem" program do skompilowania od znajomego , trzeba bylo go dopasowac - zmienic dane polaczenia , oraz dopasowac rejestry ( bo był na bazie sdm120 , a ten chinski mial troche inne adresy rejestrow). Przekazuje to do mqtt , nie tylko energie , ale i energie bierna , moce ,napiecia ,prady itd.
@marcingajda
a możesz napisać jak to wszystko zrobić ale tak łopatologicznie.
Mogę , ale ,którą wersję ?:)
No i być moze jakąś podpowiedź ,co zpłyciłem...
Teraz tak patrzę i chyba chińczyk mnie w konia zrobił licznik chyba nie ma tego modbus. Zostanę przy tym co jest. Dzięki
Skoro piszesz , że masz SDM120 , to on modbusa musi mieć.
Ok , podłączałeś do terminali 9 i 10 odpowiednio do A i B ?
Podłączyłeś ten konwerter do RPI ? Wykrył go jako ttyUSB ?
W domoticzu masz ten plugin ?
Tak podłączyłem jak piszesz. Wykrywa konwerter ale komunikacji brak
Ok ,w liczniku masz paramery jak:
Baud rate 1200, 2400, 4800, 9600
Parity none / odd / even
RS485 network address 3-digit number, 1 to 247
Jakoś da się je odczytać ,a nawet zmieniać. Wpisałeś je takie same ?
z tym ,żeby pamiętać o tym ID , żeby wpisać np.: 0:01
Odczytujęc Read Input Registers (Function 4) , i register 1 powinno odczytać się napięcie.
EDIT :Register 1 , albo 0 , bo to różnie programy liczą.
Naciskając guzik w liczniku nie wadzę tych parametrów :
Parity none / odd / even
RS485 network address 3-digit number, 1 to 247
Ale pokazuje : Id , i trzy cyfry ?
pokazuje b i np. 9600 ?
Pokazuje Prty ?
Jak tu : https://www.youtube.com/watch?v=yBtqKSWDn1Q#t=3m19s
OK , zdjęcie wkleiłeś z b 2400 ... no ale gdzie są pozostałe rzeczy ?
https://drive.google.com/file/d/1D7V9yNekKjneZxjL3PVGi-Hzi43tKnBV/view?usp=sharing
https://drive.google.com/file/d/1CpJiG11nW-770wZ0nVPFAM16er2OeKVd/view?usp=sharing
https://drive.google.com/file/d/1D7lU0B9dXMhRzDnn2-_FTh74yl0FMAnl/view?usp=sharing
reszta jak wciskam guzik to napięcie ampery i kWh
No to masz wszystkie dane:
Id 0:01 (albo coś w tym stylu jak 0:1)
Parity : None
Baudrate: 2400
Function 4
Register 0
Data type FLOAT 32
Podłączasz A z A , B z B i musi zaczytać napięcie.