niedziela, 14 sierpnia 2016

Protokoły komunikacyjne - ramka Modbus RTU

Modbus RTU wydaje się być najprostszą wersją tego protokołu. Ramki w tej wersji oddziela przerwa w transmisji na łączu. Istotny jest również fakt, że w zapytaniu podaje się zarówno ilość danych do odczytu czy zapisu, jak i rozmiar danych w ramce. Coils i Discrete Inputs zajmują tylko 1 bit, w 1 bajcie zmieści się ich 8. Z kolei każdy rejestr z grupy Input Registers i Holding Registers zajmuje 16 bitów, czyli 2 bajty.

ODCZYT

Struktura ramki zapytania dla funkcji 1,2,3 i 4:

Adres Modbus 1 bajt
Kod funkcji 1 bajt
Adres w pamięci 2 bajty
Ilość danych 2 bajty
CRC 2 bajty

Struktura ramki odpowiedzi dla funkcji 1,2,3 i 4:

Adres Modbus 1 bajt
Kod funkcji 1 bajt
Rozmiar danych 1 bajt
Dane N bajtów
CRC 2 bajty


ZAPIS

Struktura ramki zapytania i odpowiedzi dla funkcji 5 i 6:

Adres Modbus 1 bajt
Kod funkcji 1 bajt
Adres w pamięci 2 bajty
Dane 2 bajty
CRC 2 bajty

Struktura ramki zapytania dla funkcji 15 i 16:

Adres Modbus 1 bajt
Kod funkcji 1 bajt
Adres w pamięci 2 bajty
Ilość danych 2 bajty
Rozmiar danych 1 bajt
Dane N bajtów
CRC 2 bajty

Struktura ramki odpowiedzi dla funkcji 15 i 16:

Adres Modbus 1 bajt
Kod funkcji 1 bajt
Adres w pamięci 2 bajty
Ilość danych 2 bajty
CRC 2 bajty

Brak komentarzy:

Prześlij komentarz