mFAQ 3 5 Komunikacja MODBUS RTU

background image

s

s

s

s

FAQ: 00000008/PL Data: 16/08/2007

Komunikacja sterownika SIMATIC S7-200 w protokole Modbus RTU

www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com

1

Sterowniki SIMATIC S7-200 s

ą

dedykowane dla producentów maszyn oraz do budowy

zdecentralizowanych struktur sterowania, budowanych w oparciu o przemysłowe sieci
Ethernet, PROFIBUS, AS-Interface, Modbus RTU. W niniejszym dokumencie zostały
omówione biblioteki Modbus RTU Master i Modbus RTU Slave. Nast

ę

pnie opisano

przykładowe zastosowania powy

ż

szych bibliotek: komunikacja z przepływomierzem

SITRANS F M MAGFLO MAG 6000 firmy Siemens, gdzie sterownik SIMATIC S7-200 pełni
rol

ę

Mastera sieci Modbus RTU oraz komunikacja pomi

ę

dzy dwoma sterownikami S7-200,

gdzie jeden jest Masterem, a drugi Slave’em sieci Modbus RTU.

Modbus RTU Slave


Biblioteka Modbus RTU Slave zawiera niezb

ę

dne komponenty pozwalaj

ą

ce sterownikowi

SIMATIC S7-200, poprzez zintegrowane ł

ą

cze komunikacyjne, komunikowa

ć

si

ę

w protokole

Modbus RTU w trybie Slave. Biblioteka Modbus RTU Slave sprzedawana jest oddzielnie i
dostarczana na CD jako STEP 7-Micro/Win Add (numer katalogowy: 6ES7 830-2BC00-
0YX0).

Wymagania protokołu Modbus Slave:

Protokół Modbus Slave domy

ś

lnie współpracuje z portem „0” sterownika SIMATIC S7-

200

Je

ż

eli Port 0 wykorzystywany jest do komunikacji z protokołem Modbus Slave wtedy nie

mo

ż

na u

ż

y

ć

go do innych celów, dotyczy to równie

ż

programowania STEP7-Micro/Win.

Instrukcja MBUS_INIT pozwala na sterowanie parametrami Portu 0 pozwalaj

ą

c na

programow

ą

zmian

ę

trybu pracy Portu 0 z protokołu Modbus Slave na PPI. Innym

sposobem przeł

ą

czenia Portu 0 do trybu PPI, jest przeł

ą

czenie przeł

ą

cznika RUN/STOP

w poło

ż

enie STOP. Wtedy automatycznie Port 0, przeł

ą

czany jest na protokół PPI.

Instrukcje protokołu Modbus Slave wykorzystuj

ą

rejestry systemowe SM zwi

ą

zane z

obsług

ą

komunikacji w trybie swobodnym (Freeport) dla Portu 0. Do protokołu Modbus

Slave u

ż

ywa 3 podprogramy i 2 przerwania.

Instrukcje Modbus Slave zajmuj

ą

1857 bajtów w przestrzeni programu.

Zmienne obsługi protokołu Modbus Slave, rezerwuj

ą

dodatkowe 779 bajtów pami

ę

ci V.

Adres pocz

ą

tkowy tego obszaru definiowany jest przez u

ż

ytkownika i jest on

zarezerwowany dla zmiennych protokołu Modbus.


Inicjalizacja oraz obsługa protokołu Modbus.

Komunikacja Modbus wykorzystuje sum

ę

kontroln

ą

(CRC - Cyclic Redundancy Check) w

celu zapewnienia spójno

ś

ci przesyłanych danych. Protokół Modbus Slave wykorzystuje

metod

ę

gotowej tabeli z wyliczonymi wst

ę

pnie warto

ś

ciami sumy, co pozwala na znaczne

obni

ż

enie czasu obsługi protokołu. Inicjalizacja tabeli CRC wymaga 425 milisekund i odbywa

si

ę

w procedurze MBUS_INIT. Generalnie wykonywana jest ona przy pierwszym cyklu

programowym po zał

ą

czeniu sterownika w tryb pracy RUN. Musimy zadba

ć

jednak o to, aby

wykasowa

ć

czas kontroli cyklu programu tzw. Watchdog. Czas cyklu programu wydłu

ż

a si

ę

,

gdy instrukcja MBUS_SLAVE obsługuje zapytania. Powoduje to,

ż

e du

ż

o czasu po

ś

wi

ę

cane

jest na obliczanie sumy CRC, co wydłu

ż

a cykl o około 650

µ

s dla ka

ż

dego bajtu (dla

zapytania i odpowiedzi). Maksymalnie, akcja zapytanie-odpowied

ź

(czytanie i zapis 120

słów) wydłu

ż

a cykl programu o około 165 milisekund.



background image

s

s

s

s

FAQ: 00000008/PL Data: 16/08/2007

Komunikacja sterownika SIMATIC S7-200 w protokole Modbus RTU

www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com

2

Adresacja w protokole Modus RTU Slave

Adresy w protokole Modbus s

ą

zapisywane jako 5-cio lub 6-cio znakowe warto

ś

ci,

zawieraj

ą

ce typ danych i offset. Pierwszy lub dwa kolejne znaki okre

ś

laj

ą

typ danych,

natomiast cztery ostatnie wybieraj

ą

odpowiedni

ą

warto

ść

danego typu. Urz

ą

dzenie Modbus

Master mapuje adresy dla odpowiedniej funkcji.
Nast

ę

puj

ą

ce adresy s

ą

obsługiwane przez instrukcje Modbus RTU Slave:

000001 do 000128 obsługuj

ą

wyj

ś

cia dyskretne dla Q0.0 – Q15.7

010001 do 010128 obsługuj

ą

wej

ś

cia dyskretne dla I0.0 – I15.7

030001 do 030032 obsługuj

ą

rejestry wej

ść

analogowych od AIW0 do AIW62

040001 do 04xxxx obsługuj

ą

rejestry z przestrzeni pami

ę

ci V.


Mapa adresów Modbus dla S7-200:

Adres Modbus

Adres S7-200

000001

Q0.0

000002

Q0.1

000003

Q0.2

000127

Q15.6

000128

Q15.7

010001

I0.0

010002

I0.1

010003

I0.2

010127

I15.6

010128

I15.7

030001

AIW0

030002

AIW2

030003

AIW4

030032

AIW62

040001

HoldStart

040002

HoldStart+2

040003

HoldStart+4

04xxxx

HoldStart+2 x (xxxx-1)



Instrukcja MBUS_INIT

Instrukcja MBUS_INIT wykorzystywana jest do ustawiania i inicjalizacji lub blokowania
komunikacji Modbus. Przed wywołaniem instrukcji MBUS_SLAVE nale

ż

y wykona

ć

instrukcj

ę

MBUS_INIT oraz funkcja ta musi zako

ń

czy

ć

si

ę

bez bł

ę

dów. Po poprawnym zako

ń

czeniu

instrukcji MBUS_INIT ustawiane jest wyj

ś

cie Done i program przechodzi do kolejnej

instrukcji.
Instrukcja wykonywana jest w ka

ż

dym cyklu w momencie, gdy wej

ś

cie EN jest aktywne.

Instrukcja MBUS_INIT powinna zosta

ć

wykonana tylko raz po zał

ą

czeniu zasilania

sterownika (np. za pomoc

ą

bitu SM0.1).

background image

s

s

s

s

FAQ: 00000008/PL Data: 16/08/2007

Komunikacja sterownika SIMATIC S7-200 w protokole Modbus RTU

www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com

3

Biblioteka Modbus Slave wymaga ustalenia obszaru pami

ę

ci danych „V”, z którego b

ę

dzie

korzystała przy komunikacji w protokole Modbus. U

ż

ytkownik musi ustali

ć

adres startowy

obszaru pami

ę

ci „V” tak, aby nie był on w konflikcie z innymi danymi korzystaj

ą

cymi z

pami

ę

ci „V”. Aby przydzieli

ć

obszar pami

ę

ci „V” nale

ż

y prawym klawiszem myszy klikn

ąć

Program Block i z menu kontekstowego wybra

ć

polecenie Library Memory:


W okienku, które si

ę

otworzy nale

ż

y wskaza

ć

pocz

ą

tkowy adres pami

ę

ci lub skorzysta

ć

z

przycisku Suggest Address (rysunek poni

ż

ej), dzi

ę

ki czemu obszar pami

ę

ci zostanie

automatycznie przydzielony. Po naci

ś

ni

ę

ciu przycisku OK wrócimy do okna programu.


Powy

ż

sze przydzielenie pami

ę

ci V mo

ż

na wykona

ć

zaraz po wstawieniu do programu bloku

inicjuj

ą

cego MBUS_INIT. Jednak ze wzgl

ę

du na mo

ż

liwo

ść

wyst

ą

pienia konfliktów z u

ż

ytymi

w programie adresami pami

ę

ci V zaleca si

ę

przydzielanie tej pami

ę

ci po napisaniu całego

programu.

background image

s

s

s

s

FAQ: 00000008/PL Data: 16/08/2007

Komunikacja sterownika SIMATIC S7-200 w protokole Modbus RTU

www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com

4

W programie, w którym chcemy skonfigurowa

ć

komunikacj

ę

w protokole Modbus RTU Slave

nale

ż

y wstawi

ć

blok inicjuj

ą

cy MBUS_INIT oraz blok MBS_SLAVE.

Wej

ś

cie Mode okre

ś

la protokół komunikacyjny: warto

ść

1 ustawia Port 0 na obsług

ę

protokołu Modbus, natomiast warto

ść

0 ustawia ponownie Port 0 na protokół PPI i

blokuje protokół Modbus.

Parametr Baud ustawia pr

ę

dko

ść

transmisji na 1200, 2400, 4800, 9600, 38400, 57600

lub 115200. Pr

ę

dko

ś

ci 57600 oraz 115200 obsługiwane s

ą

tylko przez CPU z wersj

ą

firmware’u V1.2 i pó

ź

niejszymi

Parametr Addr ustawia adres z zakresu 1 do 247 stacji Slave Modbus.

Parametr Parity okre

ś

la parzysto

ść

protokołu Modbus. Wszystkie ustawienia u

ż

ywaj

ą

jeden bit stopu. Dopuszczalne warto

ś

ci tego parametru to:

- 0 – bez parzysto

ś

ci

- 1 – parzysto

ść

odd

- 2 – parzysto

ść

even

Parametr Delay rozszerza standardowy czas przerwy po zako

ń

czeniu nadawania przez

dodanie okre

ś

lonej liczby milisekund do standardowego czasu timeout. Typowo warto

ść

ta ustawiana jest na 0 dla poł

ą

cze

ń

kablowych. Jednak przy poł

ą

czeniu przez modemy z

korekcj

ą

ę

dów nale

ż

y ustawi

ć

warto

ść

opó

ź

nienia od 50 do 100 milisekund. Stosuj

ą

c

poł

ą

czenia radiowe nale

ż

y ustawi

ć

czas ten w zakresie od 10 do 100 milisekund.

Dopuszczalne warto

ś

ci tego parametru mieszcz

ą

si

ę

w zakresie 0 - 32767 milisekund.





background image

s

s

s

s

FAQ: 00000008/PL Data: 16/08/2007

Komunikacja sterownika SIMATIC S7-200 w protokole Modbus RTU

www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com

5

Protokół Modbus Slave pozwala na ograniczenie ilo

ś

ci wej

ść

i wyj

ść

binarnych, wej

ść

analogowych i rejestrów V dost

ę

pnych dla Mastera Modbus.

Parametr MaxIQ ustawia ilo

ść

dost

ę

pnych wej

ść

(I) i wyj

ść

(Q) dla adresów Modbus

00xxxx oraz 01xxxx przez podanie warto

ś

ci liczbowej z zakresu 0 do 128. Warto

ść

0

blokuje odczyt i zapis z wej

ść

i na wyj

ś

cia. Sugerowana warto

ść

to 128, która obejmuje

zakres wszystkich wej

ść

(I) i wyj

ść

(Q) w sterownikach S7-200.

Parametr MaxAI ustawia ilo

ść

dost

ę

pnych słów wej

ść

analogowych (AI) dla adresów

Modbus 03xxxx przez podanie warto

ś

ci liczbowej z zakresu 0 do 32. Warto

ść

0 blokuje

odczyt wej

ść

analogowych. Sugerowana warto

ść

MaxAI, pozwalaj

ą

ca na odczyt

wszystkich wej

ść

analogowych w sterownikach S7-200, wynosi:

- 0 dla CPU 221
- 16 dla CPU 222
- 32 dla CPU 224, CPU 224XP oraz CPU 226

Parametr MaxHold ustawia ilo

ść

rejestrów (słów) w obszarze pami

ę

ci V dost

ę

pnych dla

adresów 04xxxx. Np., aby udost

ę

pni

ć

Masterowi 2000 bajtów pami

ę

ci V nale

ż

y ustawi

ć

MaxHold na warto

ść

1000 słów (rejestrów buforuj

ą

cych).

Parametr HoldStart ustawia adres pocz

ą

tkowy rejestrów (słów) w obszarze pami

ę

ci V.

Warto

ść

ta zasadniczo ustawiana jest na VB0, tak wi

ę

c parametr HoldStart ustawiany

jest na &VB0 (adres VB0). Równie

ż

inne adresy obszaru V mo

ż

na wyspecyfikowa

ć

jako

adres pocz

ą

tkowy. Master ma dost

ę

p do ilo

ś

ci rejestrów (słów) podanej w MaxHold od

adresu pocz

ą

tkowego HoldStart.


Po zako

ń

czeniu instrukcji MBUS_INIT ustawiane jest wyj

ś

cie Done. Wyj

ś

cie bajtowe Error

zawiera rezultat wykonania instrukcji. Tabela poni

ż

ej definiuje warunki wygenerowania bł

ę

du

przy wykonywaniu instrukcji.

Kod bł

ę

du

Opis

0

Bez bł

ę

du

1

ą

d zakresu pami

ę

ci

2

ę

dna pr

ę

dko

ść

transmisji lub parzysto

ść

3

ą

d adres Slave

4

ą

d warto

ś

ci parametrów Modbus

5

Rejestry pokrywaj

ą

si

ę

z symbolami Modbus Slave

6

Odbiór bł

ą

d parzysto

ś

ci

7

Odbiór bł

ą

d CRC

8

ę

dna funkcja/funkcja nie obsługiwana

9

ę

dny adres w zapytaniu

10

Funkcja nie dost

ę

pna w Slave









background image

s

s

s

s

FAQ: 00000008/PL Data: 16/08/2007

Komunikacja sterownika SIMATIC S7-200 w protokole Modbus RTU

www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com

6

Instrukcja MBUS_SLAVE

Instrukcja MBUS_SLAVE u

ż

ywana jest do obsługi zapyta

ń

od Mastera Modbus i musi by

ć

wykonywana w ka

ż

dym cyklu, aby zapewni

ć

poprawno

ść

odpowiedzi.


Instrukcja wykonywana jest w ka

ż

dym cyklu, gdy aktywne jest wej

ś

cie EN i nie ma

parametrów wej

ś

ciowych.

Wyj

ś

cie Done ustawiane jest w momencie wykonania odpowiedzi na zapytanie stacji Master.

Natomiast wyj

ś

cie to ma stan niski, je

ż

eli nie było obsługiwane

ż

adne zapytanie.

Wyj

ś

cie bajtowe Error zawiera rezultat wykonania instrukcji. Wyj

ś

cie to jest wa

ż

ne tylko w

momencie, gdy wyj

ś

cie Done jest ustawione. W przeciwnym wypadku parametr ten nie jest

zmieniany. Mo

ż

liwe warto

ś

ci parametru Error s

ą

identyczne jak dla instrukcji MBUS_INIT.

Modbus RTU Master


Firma Siemens przygotowała bibliotek

ę

, która pozwala poprzez zintegrowane zł

ą

cze

komunikacyjne sterownika SIMATIC S7-200 komunikowa

ć

si

ę

w protokole Modbus RTU

Master z jednym lub wieloma urz

ą

dzeniami pracuj

ą

cymi jako Modbus RTU Slave.


Wymagania biblioteki Modbus Master

Protokół Modbus Master odwołuje si

ę

do Portu 0 lub Portu 1 sterownika S7-200. W

przypadku, gdy Port 0 jest wykorzystany do komunikacji w Modbus Master, port ten nie
mo

ż

e by

ć

u

ż

yty do innych celów wł

ą

cznie z obsług

ą

programu narz

ę

dziowego STEP7-

Micro/Win. Funkcja MBUS_CTRL przyporz

ą

dkowuje Port 0 do protokołu Modbus Master

lub PPI

Biblioteka Modbus Master odwołuje si

ę

do bajtów systemowych SM przyporz

ą

dkowuj

ą

c

tryb Free Port do Portu 0 sterownika SIMATIC S7-200

Biblioteka Modbus Master wykorzystuje 3 podprogramy oraz 1 program przerwania

Biblioteka Modbus Master zajmuje ok. 1620 bajtów pami

ę

ci programu sterownika

SIMATIC S7-200

Biblioteka Modbus Master zajmuje 284 bajtów pami

ę

ci danych V. Istnieje mo

ż

liwo

ść

wyboru adresu pocz

ą

tkowego dla zmiennych

SIMATIC S7-200 CPU musi posiada

ć

wersj

ę

firmware 2.00 lub wy

ż

sz

ą

w celu obsługi

protokołu Modbus Master (CPU o numerach katalogowych: 6ES7 21x-2xx23-0XB0).

background image

s

s

s

s

FAQ: 00000008/PL Data: 16/08/2007

Komunikacja sterownika SIMATIC S7-200 w protokole Modbus RTU

www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com

7

Przerwania, które s

ą

wykorzystywane w bibliotece Modbus Master, nie mog

ą

by

ć

wył

ą

czone przez program u

ż

ytkownika


Czasy wykonywania instrukcji w protokole Modbus Master

Protokół Modbus Master wymaga krótkich czasów wykonywania instrukcji. Czas wykonania
instrukcji protokołu Modbus Master wynosi około 1.11 ms w przypadku gdy instrukcja
MBUS_CTRL inicjalizuje komunikacj

ę

(pierwszy cykl pracy) oraz 0.41 ms w kolejnych

cyklach pracy sterownika SIMATIC S7-200. Czas wydłu

ż

a si

ę

w przypadku gdy wykonywana

jest instrukcja MBUS_MSG. Wi

ę

kszo

ść

tego czasu jest u

ż

ywana na obsług

ę

korekcji bł

ę

dów

CRC (Cyclic Redundancy Check) zwi

ą

zan

ą

z zapytaniem i odpowiedzi

ą

sterownika. Czas

cyklu jest wydłu

ż

any do 1.85 ms dla ka

ż

dego słowa w zapytaniu i odpowiedzi. Maksymalny

czas zapytania i odpowiedzi (odczyt/zapis 120 słów) wydłu

ż

a czas cyklu do 222 ms.


Adresowanie w protokole Modbus

Adresy w protokole Modbus s

ą

zapisywane jako 5 znakowe warto

ś

ci zawieraj

ą

ce typ danych

oraz przesuniecie – offset. Pierwszy znak definiuje typ danych za

ś

kolejne cztery warto

ść

z

uwzgl

ę

dnieniem typu danej. Instrukcje protokołu Modbus Master w zale

ż

no

ś

ci od zakresu

adresu odwołuj

ą

si

ę

do odpowiednich rejestrów sterownika pracuj

ą

cego w trybie Slave.

Protokół Modbus Master obsługuje nast

ę

puj

ą

ce zakresy adresów:

00001 do 09999 wyj

ś

cia binarne (cewki)

10001 do 19999 wej

ś

cia binarne (styki)

30001 do 39999 wej

ś

ciowe rejestry (generalnie wej

ś

cia analogowe)

40001 do 49999 rejestry pami

ę

ci.


Zakres dost

ę

pnych adresów jest uzale

ż

niony od typu konkretnego urz

ą

dzenia Slave. Ró

ż

ne

urz

ą

dzenia Slave obsługuj

ą

ż

ne typy danych oraz ró

ż

ne zakresy adresów.


Instrukcja MBUS_CTRL

Instrukcja MBUS_CTRL (MBUS_CTRL_P1) słu

ż

y do inicjalizacji, monitorowania lub

wył

ą

czenia komunikacji Modbus i powinna by

ć

wywoływana w ka

ż

dym cyklu pracy

sterownika. Zanim instrukcja MBUS_MSG zostanie u

ż

yta, instrukcja MBUS_CTRL musi

zosta

ć

wykonana bezbł

ę

dnie, tzn. po jej wykonaniu powinien by

ć

ustawiony bit Done.

Instrukcja jest przetwarzana za ka

ż

dym cyklem o ile jest aktywny bit EN.


Biblioteka Modbus Master wymaga ustalenia obszaru pami

ę

ci danych „V”, z którego b

ę

dzie

korzystała przy komunikacji w protokole Modbus. U

ż

ytkownik musi ustali

ć

adres startowy

obszaru pami

ę

ci „V” tak, aby nie był on w konflikcie z innymi danymi korzystaj

ą

cymi z

pami

ę

ci „V”. Aby przydzieli

ć

obszar pami

ę

ci „V” nale

ż

y po napisaniu programu prawym

klawiszem myszy klikn

ąć

Program Block i z menu kontekstowego wybra

ć

polecenie Library

Memory:

background image

s

s

s

s

FAQ: 00000008/PL Data: 16/08/2007

Komunikacja sterownika SIMATIC S7-200 w protokole Modbus RTU

www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com

8


W okienku, które si

ę

otworzy nale

ż

y wskaza

ć

pocz

ą

tkowy adres pami

ę

ci lub skorzysta

ć

z

przycisku Suggest Address (rysunek poni

ż

ej), dzi

ę

ki czemu obszar pami

ę

ci zostanie

automatycznie przydzielony. Po naci

ś

ni

ę

ciu przycisku OK wrócimy do okna programu.


Powy

ż

sze przydzielenie pami

ę

ci V mo

ż

na wykona

ć

zaraz po wstawieniu do programu bloku

inicjuj

ą

cego MBUS_CTRL (dla portu 0) lub MBUS_CTRL_P1 (dla portu 1). Jednak ze

wzgl

ę

du na mo

ż

liwo

ść

wyst

ą

pienia konfliktów z u

ż

ytymi w programie adresami pami

ę

ci V

zaleca si

ę

przydzielanie tej pami

ę

ci po napisaniu całego programu.


W programie, w którym chcemy skonfigurowa

ć

komunikacj

ę

w protokole Modbus RTU

Master nale

ż

y wstawi

ć

blok inicjuj

ą

cy MBUS_CTRL lub MBUS_CTRL_P1 (w zale

ż

no

ś

ci od

portu, na którym chcemy u

ż

ywa

ć

protokołu Modbus RTU Master) oraz blok MBUS_MSG

(MBUS_MSG_P1 dla portu 1) słu

żą

cy do odpytywania urz

ą

dzenia Slave.


background image

s

s

s

s

FAQ: 00000008/PL Data: 16/08/2007

Komunikacja sterownika SIMATIC S7-200 w protokole Modbus RTU

www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com

9

Warto

ść

na wej

ś

ciu Mode dokonuje wyboru protokołu komunikacyjnego. Warto

ść

„1”

przyporz

ą

dkowuje dla portu 0 protokół Modbus. Warto

ść

0 ustala na porcie 0 protokół

PPI, tym samym wył

ą

cza Modbus.

Parametr Baud ustala pr

ę

dko

ść

komunikacji: 1200, 2400, 4800, 9600, 19200, 38400,

57600 lub 115200 bitów/s.

Parametr Parity ustala kontrol

ę

parzysto

ś

ci dla urz

ą

dzenia Slave. Sztywno jest ustalony

jeden bit startu oraz jeden bit stopu. Dla parametru Parity dost

ę

pne s

ą

nast

ę

puj

ą

ce

warto

ś

ci:

- 0 – bez kontroli parzysto

ś

ci

- 1 – parzysto

ść

- 2 – nieparzysto

ść

Parametr Timeout jest odpowiedzialny za ustawienie czasu odpowiedzi

(w milisekundach) od urz

ą

dzenia typu Slave. Parametr mo

ż

e by

ć

ustawiany w zakresie

od 1 do 32767 milisekund. Warto

ść

standardowa to 1000 milisekund (1 sekunda).

Parametr Timeout nale

ż

y ustali

ć

tak, aby urz

ą

dzenie typu Slave zd

ąż

yło odpowiedzie

ć

na

zapytanie, przy ustalonej pr

ę

dko

ś

ci komunikacyjnej.

Wyj

ś

cie Error zawiera informacj

ę

o wyst

ą

pieniu bł

ę

du w przetwarzaniu instrukcji

MBUS_CTRL. Mo

ż

liwe s

ą

nast

ę

puj

ą

ce warto

ś

ci parametru Error:

Kod bł

ę

du

Opis

0

Bez bł

ę

du

1

ą

d parzysto

ś

ci

2

ą

d wyboru pr

ę

dko

ś

ci komunikacji

3

ą

d czasu odpowiedzi Timeout

4

ą

d wyboru trybu pracy


Uwaga! Parametry Baud, Parity i Timeout powinny mie

ć

tak

ą

sam

ą

warto

ść

w ustawieniach

urz

ą

dzenia Slave i w powy

ż

szej instrukcji.


background image

s

s

s

s

FAQ: 00000008/PL Data: 16/08/2007

Komunikacja sterownika SIMATIC S7-200 w protokole Modbus RTU

www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com

10

Instrukcja MBUS_MSG

Instrukcja MBUS_MSG inicjuje zapytanie oraz odpowied

ź

z urz

ą

dzenia Slave. Instrukcja

MBUS_MSG wykonuje proces zapytania do urz

ą

dzenia Slave, je

ż

eli na obu wej

ś

ciach EN

oraz First podana jest jedynka logiczna. Proces wysłania i oczekiwania na odpowied

ź

wymaga wykonania kilku cykli programu. Wej

ś

cie EN musi by

ć

aktywne a

ż

do momentu, gdy

wyj

ś

cie Done zostanie ustawione.

W danym momencie mo

ż

e by

ć

aktywna tylko jedna instrukcja MBUS_MSG. Je

ż

eli b

ę

d

ą

uruchomione inne instrukcje to tylko pierwsza z nich zostanie wykonana, pozostałe zwróc

ą

ę

dy wykonania (kod bł

ę

du 6 – zaj

ę

ty kanał komunikacyjny).

Parametr First powinien by

ć

aktywny tylko przez jeden cykl pracy, najlepiej do tego celu

wykorzysta

ć

instrukcje wykrywania zbocza narastaj

ą

cego.

Parametr Slave okre

ś

la adres urz

ą

dzenia Slave. Dost

ę

pne s

ą

adresy od 0 do 247. Adres

0 jest adresem rozgłoszeniowym i mo

ż

e by

ć

u

ż

yty do celów zapisu. Nie wszystkie

urz

ą

dzenia typu Slave obsługuj

ą

adresy rozgłoszeniowe. Biblioteka Modbus Slave dla

SIMATIC S7-200 nie obsługuje adresów rozgłoszeniowych.
Uwaga! W ustawieniach urz

ą

dzenia Slave nale

ż

y ustawi

ć

taki sam adres urz

ą

dzenia jak

w powy

ż

szej instrukcji.

Parametr RW ustala czy zapytanie ma słu

ż

y

ć

do odczytu (warto

ść

0) czy te

ż

do zapisu

(warto

ść

1). Wyj

ś

cia binarne (cewki) oraz rejestry obsługuj

ą

oba zapytania - zapis i

odczyt. Wej

ś

cia binarne (styki) oraz wej

ś

ciowe rejestry obsługuj

ą

tylko odczyt.

Parametr Addr jest adresem startowym. Dost

ę

pne s

ą

nast

ę

puj

ą

ce zakresy adresów:

- 00001 do 09999 dla wyj

ść

(cewki)

- 10001 do 19999 dla wej

ść

(styki)

- 30001 do 39999 dla rejestrów wej

ś

ciowych

- 40001 do 49999 dla rejestrów pami

ę

ci



background image

s

s

s

s

FAQ: 00000008/PL Data: 16/08/2007

Komunikacja sterownika SIMATIC S7-200 w protokole Modbus RTU

www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com

11

Parametr Count okre

ś

la liczb

ę

danych do odczytu lub zapisu. Parametr Count b

ę

dzie

ilo

ś

ci

ą

bitów dla danych typu bitowego oraz ilo

ś

ci

ą

słów dla danych typu Word:

- Adres 0xxxx – Count jest liczb

ą

bitów do odczytu lub zapisu

- Adres 1xxxx – Count jest liczb

ą

bitów do odczytu

- Adres 3xxxx – Count jest liczb

ą

rejestrów wej

ś

ciowych do odczytu

- Adres 4xxxx – Count jest liczb

ą

rejestrów pami

ę

ci do odczytu lub zapisu.

Instrukcja MBUS_MSG mo

ż

e odczyta

ć

lub zapisa

ć

max. 120 słów lub 1920 bitów (240

bajty danych). Ograniczeniem na liczb

ę

podawan

ą

w parametrze Count s

ą

ograniczenia

wnoszone przez samo urz

ą

dzenie typu Slave.

Parametr DataPtr jest wska

ź

nikiem do adresu obszaru danych „V” sterownika SIMATIC

S7-200 zwi

ą

zanego z obsług

ą

zapisu lub odczytu. Dla odczytu DataPtr wskazuje

pocz

ą

tek obszaru pami

ę

ci w sterowniku SIMATIC S7-200, gdzie dane odczytane z

urz

ą

dzenia Slave, b

ę

d

ą

zapisane w pami

ę

ci sterownika. Dla zapisu DataPtr wskazuje

pocz

ą

tek obszaru pami

ę

ci w SIMATIC S7-200, sk

ą

d dane b

ę

d

ą

pobierane do wysłania

do urz

ą

dzenia Slave. Parametr DataPtr jest wska

ź

nikiem, wi

ę

c przykładowo, je

ż

eli dane

do przesłania do urz

ą

dzenia Slave s

ą

umiejscowione od adresu VW200, warto

ść

wska

ź

nika nale

ż

y poda

ć

jako &VB200. Wska

ź

nik musi by

ć

formatu VB nawet, je

ś

li

wskazuje na dan

ą

typu Word. Rejestry pami

ę

ci (adres 4xxxx) oraz rejestry wej

ś

ciowe

(adres 3xxxx) s

ą

warto

ś

ciami typu Word (2 bajty lub 16 bitów). Format zmiennej word

zdefiniowany w sterowniku SIMATIC S7-200 jest taki sam jak rejestrów Modbus.

Parametr Done instrukcji MBUS_MSG przyjmuje warto

ść

zero, gdy zostało wysłane

zapytanie lub oczekiwany jest odbiór danych z urz

ą

dzenia Slave. Jest on ustawiany na

jeden, gdy dane zostały poprawnie odebrane lub gdy instrukcja MBUS_MSG
wygenerowała bł

ą

d komunikacji.

Parametr Error jest ustawiany tylko, gdy bit Done jest jedynk

ą

. Tabela poni

ż

ej opisuje

mo

ż

liwe do wyst

ą

pienia warto

ś

ci oznaczaj

ą

ce odpowiednie bł

ę

dy komunikacji.

Numery bł

ę

dów od 1 do 8 opisuj

ą

ę

dy, które s

ą

wykryte przez instrukcj

ę

MBUS_MSG.

ę

dy te informuj

ą

o problemie z parametrami wej

ś

ciowymi na wej

ś

ciu instrukcji

MBUS_MSG lub opisuj

ą

problemy z odbiorem danych od urz

ą

dzenia Slave. Bł

ę

dy

parzysto

ś

ci oraz CRC informuj

ą

,

ż

e nast

ą

pił odbiór danych, jednak

ż

e dane nie s

ą

odebrane wła

ś

ciwie - przewa

ż

nie jest to problem elektryczny (np. złe poł

ą

czenie

przewodowe).

ę

dy od 101 s

ą

ę

dami przychodz

ą

cymi od urz

ą

dzenia Slave. Oznaczaj

ą

one,

ż

e

urz

ą

dzenie Slave nie obsługuje wymaganej funkcji lub,

ż

e wymagany adres nie jest

osi

ą

galny w urz

ą

dzeniu Slave.

Kod bł

ę

du

Opis

0

Brak bł

ę

dów

1

ą

d parzysto

ś

ci w zapytaniu. Jest to mo

ż

liwe tylko wtedy, gdy został

ustawiony parametr kontroli parzysto

ś

ci even lub odd. Jest to przewa

ż

nie

problem z poł

ą

czeniami kablowymi lub zakłóceniami w transmisji danych.

2

Nieu

ż

ywane

3

Przekroczony czas odpowiedzi Timeout. Brak odpowiedzi z urz

ą

dzenia Slave.

Mo

ż

liwe przyczyny wyst

ą

pienia bł

ę

du to bł

ę

dy ł

ą

czeniowe kabli, ró

ż

ne

nastawione pr

ę

dko

ś

ci w Masterze oraz Slave, inne nastawy korekcji bł

ę

dów

parzysto

ś

ci lub niewła

ś

ciwy adres urz

ą

dzenia Slave.

4

Jeden lub wi

ę

cej parametrów (Slave, RW, Addr, Count) jest ustawiony na

niewła

ś

ciw

ą

warto

ść

. Nale

ż

y sprawdzi

ć

w dokumentacji wymagane nastawy

dla tych parametrów.

background image

s

s

s

s

FAQ: 00000008/PL Data: 16/08/2007

Komunikacja sterownika SIMATIC S7-200 w protokole Modbus RTU

www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com

12

5

Modbus Master nie jest zał

ą

czony do pracy. Nale

ż

y uruchomi

ć

instrukcje

MBUS_CTRL i przetwarza

ć

j

ą

w ka

ż

dym cyklu pracy sterownika.

6

Zaj

ę

ty kanał komunikacyjny. Tylko jedna instrukcja MBUS_MSG mo

ż

e by

ć

aktywna w ustalonym czasie.

7

ą

d dost

ę

pu. Odbiornik nie odpowiada na zapytania. Mo

ż

liwe przyczyna to

uszkodzenie urz

ą

dzenia Slave lub odpowied

ź

przyszła od niewła

ś

ciwego

urz

ą

dzenia Slave.

8

ą

d sumy kontrolnej CRC w zapytaniu. Nast

ą

piło zakłócenie transmisji i

odebrano niewła

ś

ciwe dane. Przyczyn

ą

mog

ą

by

ć

poł

ą

czenia kablowe lub

zakłócenia elektryczne.

101

Urz

ą

dzenie Slave nie obsługuje wymaganej funkcji.

102

Urz

ą

dzenie Slave nie obsługuje zadeklarowanego adresu danych.

Zdefiniowany zakres adresu Addr oraz liczba danych Count znajduj

ą

si

ę

poza

dost

ę

pnym zakresem dla urz

ą

dzenia Slave.

103

Urz

ą

dzenie Slave nie obsługuje tego typu danych. Typ adresu zadeklarowany

w Addr nie jest obsługiwany przez wybrane urz

ą

dzenie Slave.

104

Uszkodzone urz

ą

dzenie Slave.

105

Urz

ą

dzenie Slave akceptuje meldunek, ale opó

ź

niona jest odpowied

ź

.

Powoduje to generacj

ę

ę

du w instrukcji MBUS_MSG. Program u

ż

ytkownika

powinien ponownie wysła

ć

zapytanie w czasie pó

ź

niejszym.

106

Urz

ą

dzenie Slave jest zaj

ę

te i zapytanie zostało odrzucone. Nale

ż

y ponowi

ć

to

zapytanie w pó

ź

niejszym czasie.

107

Urz

ą

dzenie odrzuca zapytanie z nieznanej przyczyny

108

ą

d parzysto

ś

ci pami

ę

ci urz

ą

dzenia Slave. Wykryto wad

ę

w urz

ą

dzeniu

Slave.


Komunikacja w protokole Modbus RTU Master na przykładzie komunikacji sterownika
S7-200 z przepływomierzem SITRANS F M MAGFLO MAG 6000

Wymagane komponenty:

Sterownik SIMATIC S7-200 z dwoma portami RS485 (CPU 224XP lub CPU 226)

Do komunikacji pomi

ę

dzy komputerem a sterownikiem (jedna z poni

ż

szych opcji):

background image

s

s

s

s

FAQ: 00000008/PL Data: 16/08/2007

Komunikacja sterownika SIMATIC S7-200 w protokole Modbus RTU

www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com

13

- PC/PPI MultiMaster (nr kat. 6ES7 901-3DB30-0XA0)
- PC Adapter USB (nr kat. 6ES7 972-0CB20-0XA0)
- CP5512 - karta PCMCIA (nr kat. 6GK1 551-2AA00) i kabel MPI - 6ES7 901-0BF00-

0AA0

- CP5611 - karta PCI (nr kat. 6GK1 561-1AA01) i kabel MPI - 6ES7 901-0BF00-0AA0

Komputer PC z zainstalowanym oprogramowaniem STEP 7-Micro/Win od wersji 4.0 +

SP5 (z bibliotekami Modbus Master)

Przepływomierz SITRANS F M MAGFLO MAG 6000 (nr kat. 7ME6920-1AA10-1AA0)

wraz z modułem MODBUS RTU RS 485 (nr kat. FDK-085U0234) i symulatorem

Do komunikacji pomi

ę

dzy przepływomierzem a sterownikiem S7-200: kabel PROFIBUS

(nr kat. 6XV1 830-0EH10) wraz z wtyczk

ą

(np. nr kat. 6ES7 972-0BB50-0XA0)


W przykładowym zastosowaniu przepływomierz (z zainstalowan

ą

kart

ą

Modbus) wraz z

symulatorem został podł

ą

czony za pomoc

ą

kabla PROFIBUS do sterownika S7-200 (CPU

224XP) do portu 0. Do portu 1 za pomoc

ą

kabla PC/PPI (USB) został podł

ą

czony komputer

PC (programator). Po

żą

danym działaniem programu był odczyt dwóch warto

ś

ci z

przepływomierza: aktualnego poziomu przepływu oraz warto

ś

ci licznika całkowitego

przepływu.

W ustawieniach karty Modbus przepływomierza zostały wprowadzone nast

ę

puj

ą

ce

parametry:
- Adres Slave’a w sieci Modbus: 4
- Pr

ę

dko

ść

transmisji: 9600 baud

- Parzysto

ść

: brak parzysto

ś

ci, 1 bit stopu

- Maksymalny czas odpowiedzi: 0,5 s
- Czas opó

ź

nienia: 0,1 s

Powy

ż

sze ustawienia nale

ż

y uwzgl

ę

dni

ć

podczas parametryzowania instrukcji MBUS_CTRL

i MBUS_MSG.

background image

s

s

s

s

FAQ: 00000008/PL Data: 16/08/2007

Komunikacja sterownika SIMATIC S7-200 w protokole Modbus RTU

www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com

14

W programie umieszczono 3 instrukcje zwi

ą

zane z protokołem Modbus Master. Pierwsza z

nich – MBUS_CTRL inicjuje protokół i jest wywoływana w ka

ż

dym cyklu programu (rysunek

poni

ż

ej).

Parametry Baud, Parity i Timeout (w milisekundach) zostały ustawione zgodnie z
wcze

ś

niejszymi nastawami przepływomierza. Bł

ę

dy s

ą

zapisywane do pami

ę

ci MB1, a

prawidłowa inicjalizacja protokołu jest sygnalizowana stanem wysokim bitu M0.0.

Nale

ż

y uwzgl

ę

dni

ć

odpowiednie opó

ź

nienie czasowe pomi

ę

dzy wysyłanymi wiadomo

ś

ciami,

dzi

ę

ki któremu sterownik b

ę

dzie miał czas na odebranie odpowiedzi na wysłane zapytanie.

W przykładowym programie warto

ść

opó

ź

nienia została zaprogramowana na 6 sekund za

pomoc

ą

dwóch liczników (T37 i T38), dzi

ę

ki czemu mo

ż

liwy był wystarczaj

ą

co płynny odczyt

po

żą

danych warto

ś

ci i brak bł

ę

dów transmisji.














background image

s

s

s

s

FAQ: 00000008/PL Data: 16/08/2007

Komunikacja sterownika SIMATIC S7-200 w protokole Modbus RTU

www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com

15

Pierwsza wysyłana wiadomo

ść

MBUS_MSG ma za zadanie odczyta

ć

warto

ść

aktualnego

przepływu (rysunek poni

ż

ej). Parametr Slave ustawiony na 4 okre

ś

la adres Slave’a –

przepływomierza w sieci Modbus, który wcze

ś

niej został ustawiony w przepływomierzu.

Parametr RW ustawiony na 0 oznacza odczyt warto

ś

ci. Parametr Addr jest ustawiony

zgodnie z adresem rejestru „Modbus register”, do którego zapisywana jest warto

ść

aktualnego przepływu. W parametrze Count wpisano warto

ść

4, poniewa

ż

zgodnie z danymi

technicznymi karty Modbus przepływomierza wła

ś

nie w tylu bajtach zapisywane s

ą

informacje o przepływie. W parametrze DataPtr wpisano wska

ź

nik do pami

ę

ci w sterowniku

S7-200, który wskazuje pocz

ą

tek obszaru pami

ę

ci sterownika, do którego maj

ą

by

ć

zapisywane warto

ś

ci przepływu przesłane z przepływomierza.

ę

dy s

ą

zapisywane do pami

ę

ci MB3, a prawidłowa inicjalizacja protokołu jest

sygnalizowana stanem wysokim bitu M0.1.












background image

s

s

s

s

FAQ: 00000008/PL Data: 16/08/2007

Komunikacja sterownika SIMATIC S7-200 w protokole Modbus RTU

www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com

16

Kolejna przesyłana wiadomo

ść

(rysunek poni

ż

ej) ma za zadanie odczyta

ć

warto

ść

licznika

całkowitego przepływu. Jedyne ró

ż

nice w porównaniu do wcze

ś

niej przesyłanej wiadomo

ś

ci

to adres rejestru Modbus (parametr Addr), z którego odczytywane b

ę

d

ą

aktualne warto

ś

ci

całkowitego przepływu na liczniku oraz wska

ź

nik do pami

ę

ci sterownika S7-200 (parametr

DataPtr), w której b

ę

d

ą

zapisywane odczytane warto

ś

ci.


Po wprowadzeniu programu do sterownika uzyskano mo

ż

liwo

ść

podgl

ą

du aktualnego

poziomu przepływu (pami

ęć

VD200) oraz warto

ś

ci licznika całkowitego przepływu (pami

ęć

VD204). Warto

ś

ci te mo

ż

liwe były do odczytania w oknie Status Chart (patrz: rysunek

poni

ż

ej) w programie STEP 7-Micro/Win po wprowadzeniu w kolumnie Address powy

ż

szych

adresów pami

ę

ci oraz zmianie formatu wy

ś

wietlanych warto

ś

ci na Floating Point.

Dodatkowo, aby warto

ś

ci wy

ś

wietlane były w identycznych jednostkach jak na wy

ś

wietlaczu

przepływomierza, przemno

ż

ono je przez 1000 za pomoc

ą

instrukcji MUL_R i przepisano do

pami

ę

ci odpowiednio VD300 i VD304.

background image

s

s

s

s

FAQ: 00000008/PL Data: 16/08/2007

Komunikacja sterownika SIMATIC S7-200 w protokole Modbus RTU

www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com

17



Komunikacja w protokole Modbus RTU Slave na przykładzie komunikacji pomi

ę

dzy

dwoma sterownikami S7-200


Wymagane komponenty:

2 sterowniki SIMATIC S7-200 z dwoma portami RS485 (CPU 224XP lub CPU 226)

Do komunikacji pomi

ę

dzy komputerem a sterownikiem (jedna z poni

ż

szych opcji):

- PC/PPI MultiMaster (nr kat. 6ES7 901-3DB30-0XA0)
- PC Adapter USB (nr kat. 6ES7 972-0CB20-0XA0)
- CP5512 - karta PCMCIA (nr kat. 6GK1 551-2AA00) i kabel MPI - 6ES7 901-0BF00-

0AA0

- CP5611 - karta PCI (nr kat. 6GK1 561-1AA01) i kabel MPI - 6ES7 901-0BF00-0AA0

Komputer PC z zainstalowanym oprogramowaniem STEP 7-Micro/Win od wersji 4.0 +

SP5 (z bibliotekami Modbus Master)

Do komunikacji pomi

ę

dzy sterownikami S7-200: kabel PROFIBUS (nr kat. 6XV1 830-

0EH10) wraz z wtyczkami (np. nr kat. 6ES7 972-0BB50-0XA0)

background image

s

s

s

s

FAQ: 00000008/PL Data: 16/08/2007

Komunikacja sterownika SIMATIC S7-200 w protokole Modbus RTU

www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com

18

W poni

ż

szym przykładzie jeden sterownik S7-200 pełnił rol

ę

Mastera, a drugi Slave’a w sieci

Modbus RTU. Sterownik S7-200 w trybie Slave działa tylko na porcie 0, tak wi

ę

c kabel

PROFIBUS został podł

ą

czony wła

ś

nie do tego portu. W przypadku sterownika działaj

ą

cego

jako Master numer portu jest dowolny, jednak w zale

ż

no

ś

ci od tego, do którego portu

podł

ą

czymy kabel PROFIBUS nale

ż

y u

ż

ywa

ć

odpowiednich funkcji: MBUS_CTRL i

MBUS_MSG dla portu 0 lub MBUS_CTRL_P1 i MBUS_MSG_P1 dla portu 1.

Program Slave’a


W programie sterownika działaj

ą

cego jako Slave sieci parametr Mode ustawiono na 1 –

przypisanie portu 0 do protokołu Modbus. Slave’owi przydzielono adres 4 w sieci – parametr
Addr równy 4, a pr

ę

dko

ść

transmisji ustawiono na 9600. Parametr Parity ustawiony na 0

oznacza brak parzysto

ś

ci. Program sterownika działaj

ą

cego jako Slave dopuszczał odczyt

wszystkich wej

ść

/wyj

ść

binarnych i wej

ść

analogowych, dlatego te

ż

w instrukcji MBUS_INIT

parametry MaxIQ i MaxAI zostały ustawione na maksymaln

ą

dopuszczaln

ą

warto

ść

, a

parametr MaxHold ustawiono na 1000, dzi

ę

ki czemu Master miał dost

ę

p do 1000 słów w

pami

ę

ci V. Dost

ę

p pocz

ą

tkowy od adresu VD0 uzyskano poprzez wpisanie wska

ź

nika &VB0

w parametrze HoldStart.
Prawidłowe zainicjowanie protokołu jest sygnalizowane w bicie M0.0, a bł

ę

dy w pami

ę

ci

MB1. Instrukcja ta jest inicjowana przy pierwszym uruchomieniu programu za pomoc

ą

bitu

specjalnego SM0.1.

Instrukcja MBUS_SLAVE jest inicjowana w ka

ż

dym cyklu programu, a prawidłowy jej

przebieg jest sygnalizowany bitem M0.1. Ewentualne bł

ę

dy sygnalizowane s

ą

w pami

ę

ci

MB3.






background image

s

s

s

s

FAQ: 00000008/PL Data: 16/08/2007

Komunikacja sterownika SIMATIC S7-200 w protokole Modbus RTU

www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com

19

Program Master’a


W programie działaj

ą

cym jako Master w instrukcji MBUS_CTRL parametr Mode w ka

ż

dym

cyklu programu jest ustawiany na 1 za pomoc

ą

bitu SM0.0, co przypisuje port 0 do protokołu

Modbus. Pr

ę

dko

ść

ustawiono na 9600 (parametr Baud), przy braku parzysto

ś

ci (Parity

ustawione na 0) i opó

ź

nieniu 5 sekund (Timeout równe 5000).

Prawidłowe zainicjowanie instrukcji MBUS_CTRL jest sygnalizowane w bicie M0.0, a bł

ę

dy w

pami

ę

ci MB1.

Instrukcja MBUS_MSG jest inicjowana równie

ż

w ka

ż

dym cyklu programu, jednak zapytanie

jest wysyłane w co drugim przej

ś

ciu programu – parametr First inicjowany jest bitem SM0.5.

Parametr Slave ustawiony na 4 oznacza odpytywanie Slave, który ma przypisany 4-ty adres
w sieci. RW ustawione na 0 umo

ż

liwia odczytywanie danych ze Slave’a. Parametr Addr

oznaczaj

ą

cy adres w rejestrze Slave’a był ustawiony na 10003, co umo

ż

liwiło odczyt stanu

wej

ś

cia I0.2 – zmienianego w Slave’ie za pomoc

ą

przeł

ą

cznika symulacyjnego wej

ść

. Count

ustawiony na 4 oznacza ilo

ść

odczytywanych bajtów. Odczytywane dane były zapisywane do

pami

ę

ci o adresie VD200 – w parametrze DataPtr ustawiono wska

ź

nik na ten adres &VB200.

Prawidłowe wysłanie i odebranie wiadomo

ś

ci jest sygnalizowane ustawieniem bitu M0.2, a

ewentualne bł

ę

dy s

ą

raportowane w pami

ę

ci MB3.


Wyszukiwarka

Podobne podstrony:
MODBUS RTU, PLC Fatek -HMI Weintek, Fatek
Komunikacja Modbus
mFAQ 4 2 Komunikacja MPI xPUT x Nieznany
mFAQ 4 1 Komunikacja MPI GD
Protokół Modbus RTU ADAM
mFAQ 4 4 Komunikacja PROFIBUS DP master slave
mFAQ 4 6 Komunikacja ETHERNET PUT GET
mFAQ 3 4 Komunikacja PROFIBUS S7 200 S7 300
mFAQ 3 3 Komunikacja MPI S7 200 S7 300
mFAQ 4 5 Komunikacja PROFIBUS karty CP342 5
mFAQ 4 3 Komunikacja MPI xSEND xRECEIVE
Biblioteka Modbus master RTU Modbus master e
KOMUNIKACJA I WSPOLPRACA
Style komunikowania się i sposoby ich określania
Diagram komunikacji
Technologia informacji i komunikacji w nowoczesnej szkole

więcej podobnych podstron