MODBUS RTU jest otwartym protokołem komunikacyjnym bazującym na szeregowym protokole RS-232 lub RS-485, opartym na hierarchii master/slave. Został on zaakceptowany przez wielu producentów automatyki przemysłowej ze względu na  niezawodność oraz prostotę w implementacji. MODBUS RTU jest szeroko wykorzystywany w systemach zarządzania budynkiem (BMS) oraz w aplikacjach przemysłowych.

Protokół definiuje zasady wymiany danych między urządzeniami. Przesyłanie danych odbywa się możliwie szybko, z kontrolą prawidłowego przesyłu. Nadrzędnym urządzeniem w sieci jest urządzenie typu master, a podrzędnymi typu slave. RTU (real time unit) oznacza komunikację w czasie rzeczywistym.

Rodzaje stosowanych protokołów komunikacyjnych

W przypadku stosowania protokołu RS-232 dla sieci MODBUS RTU połączenie ograniczone jest tylko do jednego urządzenia. Długość segmentu sieci wynosi maksymalnie 40 m.

Rys.1 Przykład instalacji MODBUS wykorzystującej protokół RS-232
Rys.1 Przykład instalacji MODBUS wykorzystującej protokół RS-232

W sieci MODBUS stosowany jest głównie standard RS-485 ze względu na możliwość podłączenia wielu urządzeń z wykorzystaniem tylko dwóch przewodów.  W przypadku tej konfiguracji należy stosować rezystory terminujące, znajdujące się na końcach przewodów o wartości rezystancji mieszczącej się w przedziale od 100 Ω do 120 Ω. Długość segmentu sieci to ok. 1000 m (przy zastosowaniu tzw. „skrętki”). Rozwiązanie charakteryzuje się dużą odpornością na zakłócenia.

Rys.2 Przykład struktury sieci MODBUS wykorzystującej protokół RS-485
Rys.2 Przykład struktury sieci MODBUS wykorzystującej protokół RS-485

Dla protokołu RS485 należy ustalić parametry transmisji, tj. prędkość, liczbę bitów danych, określenie kontroli bitu parzystości, bit stopu.  Parametry mieszczą się w tzw. ramce.

Definicja ramki protokołu RS-485
Rys.3 Definicja ramki protokołu RS-485

Standardowa ramka RS-485 sparametryzowana jest następująco:

Parametry dla standardowej ramki RS-485
Rys.4 Parametry dla standardowej ramki RS-485

Aby zainicjować wymianę informacji między urządzeniami, należy korzystać z odpowiednich poleceń. Poszczególne polecenia mają nadane odpowiednie numery (kody funkcji). Wykorzystując wybrane polecenia możliwy jest odczyt lub ewentualnie zapis (wpisanie wartości) do zmiennej dwustanowej lub do zmiennej 16-bitowej typu WORD.

Podstawowe funkcje protokołu MODBUS RTU
Tabela.1 Podstawowe funkcje protokołu MODBUS RTU

Istnieje możliwość komunikacji do 248 urządzeń podłączonych do tej samej sieci. Każde urządzenie pracujące w sieci musi posiadać swój unikatowy adres. Zapytania oraz odpowiedzi w sieci MODBUS RTU przesyłane są w odpowiednim formacie.

Format danych (ramka) dla protokołu MODBUS RTU
Rys.5 Format danych (ramka) dla protokołu MODBUS RTU

Komunikacja wygląda w ten sposób, że urządzenie master wysyła zapytanie  (odczyt bądź zapis rejestrów) dla urządzenia slave. Slave – o określonym adresie – odpowiada na zapytanie  lub zwraca kod błędu.

Maciej Kurantowicz, WAGO.PL

MODBUS RTU z wykorzystaniem WAGO-I/O-SYSTEM, cz. 1

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

Zobacz również

MODBUS RTU z wykorzystaniem WAGO-I/O-SYSTEM, cz. 2

Modularność daje więcej możliwości – rozszerz system sterowania