protokół MODBUS

Transkrypt

protokół MODBUS
Protokó l komunikacyjny Modbus (Modicon)
• dostep
, do nośnika typu master – slave
• wykrywanie i sygnalizacja b ledów
,
• potwierdzanie wykonania komend
• zabezpieczenie przed blokada,
• możliwość transmisji znakowej RS232C, RS485 itp.
Transakcja w systemie Modbus:
MASTER
adres
kod funkcji
dane
suma kontrolna
SLAVE
⇒
adres
kod funkcji
dane
suma kontrolna
⇐
MW-ZPCiR-ICT-PWr
1
Typy ramek protoko lu Modbus
Ramka w trybie znakowym (ASCII)
:
adres
kod f.
dane
...
suma
CR
LF
• bajty sa, wysy lane szesnastkowo (po dwa znaki ASCII)
kolejnymi znakami ramki < 1s
• odstepy
pomiedzy
,
,
Ramka w trybie binarnym (RTU)
adres
kod f.
dane
...
suma
• bajty sa, wysy lane binarnie jako znaki ośmiobitowe
• każda ramka jest poprzedzona odstepem
(cisza na linii)
,
> 3.5T (gdzie T oznacza czas transmisji jednego znaku)
• odstepy
pomiedzy
kolejnymi znakami ramki < 1.5T
,
,
MW-ZPCiR-ICT-PWr
2
Pola ramki Modbus (1)
adres
0
1 – 247
–
–
adres rozg laszania (broadcast)
adres jednostki slave
kod funkcji
1
2
3
4
5
6
7
8
15
16
17
128 – 255
MW-ZPCiR-ICT-PWr
$01
$02
$03
$04
$05
$06
$07
$08
$0F
$10
$11
$80–$FF
odczyt wyjść bitowych
odczyt wejść bitowych
odczyt n rejestrów
odczyt n rejestrów wejściowych
zapis 1 bitu
zapis 1 rejestru
odczyt statusu
test diagnostyczny
zapis n bitów
zapis n rejestrów
identyfikacja urzadzenia
slave
,
zarezerwowane na odpowiedzi b ledne
,
3
Pola ramki Modbus (2)
rejestry i zmienne
Urzadzenie
jest widziane jako 16-bitowe rejestry Wn.
,
Typy zmiennych umieszczanych w rejestrach:
bitowe
2-bajtowe
4-bajtowe
–
–
–
bity rejestrów W0 − W4095
ca le rejestry Wn
sasiednie
rejestry Wn : Wn+1
,
zalecenie
W celu u latwienia przesy lania danych przy pomocy ramek
z funkcja, ”odczyt (zapis) n rejestrów” rejestry powinny
zajmować spójny obszar adresowany od 0 do rejmax.
MW-ZPCiR-ICT-PWr
4
Przyk lady ramek Modbus
(master): odczyt 2 rejestrów od W30 do W31
żadanie
,
adres
slave
12
kod
fun.
03
dane
RAL RNH
1E
00
RAH
00
RNL
02
suma
LRC
CB
odpowiedź (slave): dane z rejestrów od W30 do W31
adres
slave
12
kod
fun.
03
NB
04
W30H
01
dane
W30L W31H
23
02
W31L
34
suma
LRC
8D
odpowiedź (slave): b lad
, – niedozwolony adres danych
adres
slave
12
MW-ZPCiR-ICT-PWr
kod
fun.
83
dane
kod
02
suma
LRC
69
5
Kontrola poprawności w systemie Modbus
Wykrywanie b ledów
dzieki
transmisji nastepuje
kontroli pa,
,
,
rzystości poprzecznej (bit parzystości znaku) i wzd lużnej (LRC,
CRC).
Wykrywanie i diagnozowanie b ledów
komunikacji nastepuje
,
,
przez:
• odes lanie przez slave ramki z kodem b ledu:
,
01
02
03
04
05
06
07
08
–
–
–
–
–
–
–
–
niedozwolona funkcja
niedozwolony zakres danych
niedozwolona wartość danej
urzadzeniu
uszkodzenie w przy laczonym
,
,
potwierdzenie pozytywne
brak gotowości, komunikat usuniety
,
potwierdzenie negatywne
b lad
, parzystości pamieci
,
• przekroczenie czasu oczekiwania na odpowiedź (timeout w
jednostce master) – slave nie odsy la odpowiedzi przy b ledach
,
w ramce żadania
,
MW-ZPCiR-ICT-PWr
6