• Witaj na Forum Arduino Polska! Zapraszamy do rejestracji!
  • Znajdziesz tutaj wiele informacji na temat hardware / software.
Witaj! Logowanie Rejestracja


Ocena wątku:
  • 0 głosów - średnia: 0
  • 1
  • 2
  • 3
  • 4
  • 5
MODBUS Solar Sofar
#1
Witam
Zainstalowałem sobie zestaw fotowoltaiczny z falownikiem Sofar Solar.
Mam pytanie czy ktoś próbował czytać dane z falownika Sofar Solar przez magistralę MODBUS. Chciałbym, aby dane czytało "arduino" i wyświetlać je na wyświetlaczu w domu. Na tym wyświetlaczu już wyświetla się wiele informacji, jest to taki zbiorczy punkt, gdzie mogę podejrzeć na tą chwilę kilka urządzeń w domu.

Wiem, że są do PV aplikacje, ale lubię się bawić i stąd moje pytanie.
Czy muszę mieć do obsługi MODBUS jakąś bibliotekę czy wystarczy wysyłać string z odpowiednia ustawionymi bajtami jako zapytanie i po wysłaniu nasłuchiwać co przychodzi jako odpowiedź.
Czy ktoś może zna adresy rejestrów, w których zapisywane są podstawowe parametry takiego falownika. 
Trochę poczytałem o MODBUS i wydaje mi się że trochę wiem ale nie wiem jak dużo Smile
Czy trzeba jakoś implementować bajty startu i stopu (T1-T2-T3-T4) w wysyłanym stringu czy jest to realizowane przez podanie w konwerterze UART na RS 485 (MAX485) sygnału nadaję. 
 
Odpowiedź
#2
Odpowiem sobie sam. Temat mam ogarnięty. "Arduino" czyta z rejestrów dane. Jak się już je ma to nie trudno je "obrobić" i wyświetlać sobie gdzie się chce.
SOFAR SOLAR w "kategorii" 0x03 protokołu MODBUS, posiada, według mnie, rejestry o adresach od 0x00 do 0x2F. W tym zakresie na podstawie "porównywajewa" znalazłem rejestry, w których są przechowywane dane wyświetlane na wyświetlaczu inwertera czyli: częstotliwość, napięcia i prądy poszczególnych faz, napięcia i prądy stringów, moc chwilową oddawaną do sieci, produkcję dzienną i całkowitą energii.
Pomogła mi w rym aplikacja na windowsa "APBModbusTest" z www.telmatik.pl.
Program napisałem "na piechotę" bez dedykowanych do modbus'a bibliotek. Wygląda na to, że bajty startu i stopu nie są jakieś krytyczne. UART odbiera tylko dane wysłane z SOFARA i zaczynają się od numeru identyfikacyjnego urządzenia czyli w moim przypadku 0x01.
Nie chcę się rozpisywać, jakby ktoś chciał to mogę podać pod jakimi adresami kryją się zidentyfikowane dane.

EDIT
Odkrywałem "Amerykę" a tu jest gotowy opis rejestrów https://www.elektroda.pl/rtvforum/topic3698233.html
post #10.
 
Odpowiedź
#3
(30-09-2020, 13:54)Agregacik napisał(a): Odpowiem sobie sam. Temat mam ogarnięty. "Arduino" czyta z rejestrów dane. Jak się już je ma to nie trudno je "obrobić" i wyświetlać sobie gdzie się chce.
SOFAR SOLAR w "kategorii" 0x03 protokołu MODBUS, posiada, według mnie, rejestry o adresach od 0x00 do 0x2F. W tym zakresie na podstawie "porównywajewa" znalazłem rejestry, w których są przechowywane dane wyświetlane na wyświetlaczu inwertera czyli: częstotliwość, napięcia i prądy poszczególnych faz, napięcia i prądy stringów, moc chwilową oddawaną do sieci, produkcję dzienną i całkowitą energii.
Pomogła mi w rym aplikacja na windowsa "APBModbusTest" z www.telmatik.pl.
Program napisałem "na piechotę" bez dedykowanych do modbus'a  bibliotek. Wygląda na to, że bajty startu i stopu nie są jakieś krytyczne.  UART odbiera tylko dane wysłane z SOFARA  i zaczynają się od numeru identyfikacyjnego urządzenia czyli w moim przypadku 0x01.
Nie chcę się rozpisywać, jakby ktoś chciał to mogę podać pod jakimi adresami kryją się zidentyfikowane dane.

EDIT
Odkrywałem "Amerykę" a tu jest gotowy opis rejestrów https://www.elektroda.pl/rtvforum/topic3698233.html
post #10.

Hej, 


Dzięki za sprawdzenie i podzielnie się informacjami.

Mógłbyś podpowiedzieć jaki najlepiej do tego Arduino, bo chciałbym też sobie coś takiego zrobić do falownika Sofar?

Nie mam doświadczenia w tym temacie i potrzebuje podpowiedzi.
 
Odpowiedź
  


Skocz do:


Przeglądający: 1 gości