W bibliotece urządzeń niestandardowych znajduje się tester Modbus, który pozwala ręcznie wykonywać operacje na magistrali. Znając rejestry, które obsługuje urządzenie, możliwe jest sprawdzenie poprawności komunikacji.
Do użycia testera potrzebna jest dokumentacja urządzenia Modbus slave, która zawiera listę obsługiwanych rejestrów Modbus.
Otwórz urządzenia wirtualne w ustawieniach centrali Sinum. Naciśnij przycisk 🞢. Na końcu listy typów urządzeń znajduje się pozycja urządzenie niestandardowe — naciśnij ją. Wybierz biblioteka:
Wyszukaj tester Modbus. Wybierz go z listy.
Naciśnij przycisk wybierz, aby dodać urządzenie do centrali. Otworzy się okno konfiguracji testera.
Wprowadź parametry komunikacji i adres slave odpowiednie dla urządzenia, które chcesz sprawdzić. Najczęściej urządzenia używają konfiguracji 9600 8N1:
Uwaga: 8 bitów danych to jedyne obsługiwane ustawienie tego parametru.
Zamknij okno. Urządzenie jest skonfigurowane i gotowe do użycia. Ustawienia komunikacji możesz szybko zmienić, naciskając przycisk ⤢ na widgecie urządzenia.
Górna część widgetu służy do wykonywania odczytów. Przycisk ze strzałką w dół pozwala wybrać typ rejestru, co wpływa na użyty kod operacji. Dostępne typy to:
| Typ | Operacja |
|---|---|
| Coil | 0x01 Read Coils |
| Discrete input | 0x02 Read Discrete Inputs |
| Holding | 0x03 Read Holding Registers |
| Input | 0x04 Read Input Registers |
W polu obok należy wpisać adres rejestru do odczytania, kliknąć poza to pole, a następnie kliknąć przycisk odczyt.
Po adresie możesz też wpisać dwukropek : i ilość rejestrów do odczytania. Przykładowo, wpisanie „1200:10” spowoduje odczytanie dziesięciu rejestrów, zaczynając od rejestru pod adresem 1200.
Dolna część widgetu służy do wykonywania zapisów. Analogicznie jak przy odczytach, wybierz typ rejestru i podaj adres. W polu wartość wpisz wartość, która ma zostać wysłana do urządzenia.
W zależności od wybranego typu rejestru, dane zostaną wysłane jedną z poniższych operacji:
Można zapisać kilka rejestrów na raz, podając odpowiednią ilość wartości, oddzielonych przecinkami. Przykładowo, podając „1,2,3,4” i zapisując na adres 81, zostaną zapisane cztery rejestry zaczynając od rejestru pod adresem 81. Podanie kilku wartości spowoduje użycie operacji typu Write Multiple.
Jeżeli odczyt się powiedzie, poniżej przycisku odczyt zostanie wyświetlony adres i odczytane wartości. W przeciwnym przypadku pojawi się jeden z następujących błędów:
Nie otrzymano odpowiedzi od urządzenia. Możliwe przyczyny:
Centrala Sinum otrzymała odpowiedź, ale dane są nieprawidłowe (uszkodzone). Możliwe przyczyny:
Inny błąd transceivera lub ekstendera. Możliwe przyczyny:
Inne błędy to wyjątki Modbus. Są to prawidłowe odpowiedzi od urządzeń, które w ten sposób sygnalizują powód, przez który nie mogą odpowiedzieć na wysłane żądanie. Obsługiwane wyjątki to:
Uwaga: Rejestry należy podawać w taki sposób, w jaki powinny zostać wysłane do urządzenia. W większości przypadków w dokumentacji będą podane te prawidłowe adresy.
Wielu producentów stosuje jednak konwencję, według której adresy podane w dokumentacji są większe o 1 od rzeczywistych adresów. Przykładowo, wtedy do odczytania rejestru numer 8 należy użyć adresu 7.
Inna, często stosowana konwencja przypisuje przesunięcia zależne od typu rejestru, wg. poniższej tabeli:
| Typ | Zakres | Przesunięcie | Rzeczywisty zakres |
|---|---|---|---|
| Coil | 0–9999 | 0 | 0–9999 |
| Discrete input | 10000–19999 | 10000 | 0–9999 |
| Holding | 40000–49999 | 40000 | 0–9999 |
| Input | 30000–39999 | 30000 | 0–9999 |
Wtedy do odczytania rejestru typu holding numer 40008 należy użyć adresu 8, a do odczytania rejestru typu input numer 30032 należy użyć adresu 32.
Czasem oba te przekształcenia są stosowane jednocześnie, wtedy do odczytania rejestru numer 40008 należy użyć adresu 7.
Dokumentacja powinna określać jaką konwencję stosuje. Jeśli nie możesz znaleźć takiej informacji, sprawdź czy producent zawarł przykłady komunikacji, na podstawie których można wywnioskować jakie adresy należy podawać w centrali Sinum. Są to adresy, które są częścią ramki protokołu Modbus RTU.
Jeśli dokumentacja nie zawiera żadnej informacji na ten temat, a odczytane wartości nie odpowiadają tym z dokumentacji, możesz szukać wg. następujących wskazówek:
Aby ułatwić sobie szukanie rejestrów, znajdź w tabeli w dokumentacji rejestr odpowiadający za łatwo rozpoznawalną wartość. Przykładowo, większość falowników fotowoltaicznych pozwala odczytać częstotliwość sieci, która będzie w okolicach 50 Hz (lub 60 Hz w zależności od kraju i regionu).