S7-200 Modbus cz1.pdf
(
1569 KB
)
Pobierz
AUTOMATYKA PRAKTYCZNA
Biblioteka Modbus Master
dla sterowników SIMATIC
S7–200, część 2
STEP 7–Micro/WIN biblioteka
Modbus RTU Slave zawiera
przygotowane przez firmę
Siemens gotowe podprogramy
oraz programy przerwań,
dzięki którym możliwe jest
zapewnienie komunikacji
z wykorzystaniem protokołu
Modbus. Siemens przygotował
kolejną 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.
Biblioteki Modbus RTU Master
są dostarczane bezpłatnie
wraz z uaktualnieniem SP5 dla
Step7MicroWin V4.0.
Wymagania odnośnie biblioteki Modbus Master
Protocol
• Protokół Modbus master odwołuje sie do
Portu 0 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
Step7Micro/Win. Funkcja MBUS_CTRL
instruction przyporządkowuje Port 0 do
protokołu Modbus master lub PPI.
• Biblioteka Modbus Master Protocol
odwołuje sie 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
MLFB 21x–2xx23–0XB0).
• Przerwania, które są wykorzystywane
w bibliotece Modbus master, nie mogą być
wyłączone przez program użytkownika.
Parametr
DataPtr
jest wskaźni-
kiem do adresu obszaru danych „V”
sterownika SIMATIC S7–200 zwią-
zanego z obsługą zapisu lub odczy-
tu. Dla odczytu
DataPtr
wskazuje
początek obszaru pamięci w sterow-
niku SIMATIC S7–200, gdzie odczy-
tane z urządzenia
slave
dane będą
zapisane w pamięci sterownika. Dla
odczytu
Data Ptr
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ścia-
mi typu Word (2 bajty lub
16 bitów). Format zmiennej
word zdefiniowany w ste-
rowniku SIMATIC S7–200
jest taki sam jak rejestrów
Modbus. Na
rys. 3
poka-
zano w jaki sposób adresy
sterownika SIMATIC S7–
200 odpowiadają adresom
rejestrów Modbus.
Parametr
Done
instruk-
cji MBUS_MSG przyjmuje
S7-200 CPU
pamięć adreso-
wanie bajtowe
VB200 12
VB201 34
VB202 56
VB203 78
VB204 9A
VB205 BC
S7-200
CPU pamięć
adresowanie
Word
VW200 12 34
VW202 56 78
VW204 9A BC
Rejestry pamięci
Modbus
40001 12 34
40002 56 78
40003 9A BC
Rys. 3. Adresy w pamięci danych S7–200 oraz
adresy rejestrów Modbus
Elektronika Praktyczna 8/2007
135
AUTOMATYKA PRAKTYCZNA
Tab. 2. Opisy błędów instrukcji
MBUS_MSG
Kod
błędu
Inicjalizacja I monitorowanie transmisji danych przy
wywołaniu w każdym cyklu instrukcji MBUS_CTRL.
Opis
Ustawienie prędkości 9600 oraz braku kontroli
parzystości. Ustalenie czasu odpowiedzi od slave na
1000 milisekund
(1 sekunda)
0
Brak błędów
Błą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.
1
2
Nie używane
Kasowanie flag (M2.0 oraz M2.1) w pierwszym cyklu
pracy sterownika dla dwóch instrukcji MBUS_MSG.
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.
3
Wykrycie zbocza narastającego na wejściu I0.0
I załączenie flagi (M2.0) dla pierwszej instrukcji
MBUS_MSG.
Jeden lub więcej parametrów (slave,
RW, Addr., Mount) jest ustawiony na
niewłaściwą wartość. Należy sprawdzić
w dokumentacji wymagane nastawy dla
parametrów.
Instrukcja MBUS_MSG zostanie przetwarzana po
załączeniu flagi M2.0
4
Instrukcja MBUS_MSG zapisuje (RW=1) 4 rejestry
pamięci do slave 2. Dane do zapisu są brane od
VB100-VB107 (4 słowa) z pamięci danych sterownika
i zapisywane do urządzenia slave pod adresy 40001-
40004.
Master Modbus nie jest załączony do
pracy. Należy uruchomić instrukcje
MBUS_CTRL i przetwarzać ją
w każdym cyklu pracy sterownika.
5
Zajęty kanał komunikacyjny. Tylko
jedna instrukcja MBUS_MSG może być
aktywna w ustalonym czasie.
6
W przypadku gdy instrukcja MBUS_MSG zostanie
zakończona z sukcesem (bit Done zmiana z 0 na
1), kasowana jest flaga M2.0 tym samym blokowane
jest wykonywanie pierwszej instrukcji MBUS_MSG i
jednocześnie ustawiana jest flaga M2.1 załączająca
drugą instrukcję MBUS_MSG. Jeżeli Error (MB1) nie
jest zerem, ustawiane jest wyjście Q0.1 jako komunikat
o błędzie.
Błą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.
7
Błąd sumy kontrolnej CRC w zapytaniu.
Nastąpiło zakłócenie transmisji
i odebrano niewłaściwe dane.
Przyczyna mogą być połączenia
kablowe lub zakłócenia elektryczne.
Instrukcja jest aktywna wtedy gdy flaga M2.1 jest
aktywna. Parametr First powinien być aktywny tylko
w pierwszym cyklu pracy po aktywacji instrukcji
MBUS_MSG.
8
Urządzenie slave nie obsługuje
wymaganej funkcji.
101
Instrukcja czyta (RW=0) rejestry pamięci z slave 2.
Dane są odczytywane z adresów 40010-40013 ze
urządzenia slave i zapisywane do pamięci sterownika
S7-200 pod adresy V200-V207 (4 słowa).
Urządzenie slave nie obsługuje
zadeklarowanego adresu danych.
Zdefiniowany zakres adresu Adr. Oraz
liczba danych Mount znajdują się poza
dostępnym zakresem dla urządzenia
slave.
102
W przypadku gdy instrukcja MBUS_MSG została
wykonana poprawnie (bit Done zmiana z 0 na 1),
kasowana jest flaga M2.1 dla drugiej instrukcji
MBUS_MSG.
Jeżeli Error (MB1) nie jest zerem, ustawiane jest
wyjście Q0.2 jako komunikat o błędzie.
Urządzenie slave nie obsługuje tego
typu danych. Typ adresu zdeklarowany
w Adr. Nie jest obsługiwany przez
wybrane urządzenie slave.
103
104
Uszkodzone urządzenie slave.
wartość zero gdy zostało wysła-
ne zapytanie lub oczekiwany jest
odbiór danych z urządzenia
slave
.
Bit Done jest ustawiany na jeden,
gdy dane zostały poprawnie ode-
brane lub wysłane, gdy instrukcja
MBUS_MSG wygenerowała błędy
komunikacji. Parametr Error jest
ustawiany (przyjmuje wartość „1”),
gdy bit
Don
jest jedynką. W
tab. 2
opisano możliwe do wystąpienia
błędy komunikacji. Numery błędów
od 1 do 8 opisują błędy przez in-
strukcję MBUS_MSG. Błędy te in-
formują 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
informuja że nastąpił odbiór da-
nych, jednakże dane nie są ode-
brane właściwie. Przeważnie jest
to problem elektryczny, jak np. złe
połączenie przewodowe. Błędy od
101 są to błędy przychodzące od
urządzenia
slave
. Oznaczają one, że
urządzenie
slave
nie obsługuje wy-
maganej funkcji lub że wymagany
Urządzenie slave akceptuje maldunek
ale opóźnione jest odpowiedź.Powoduje
to generację błędu w instrukcji
MBUS_MSG. Program użytkownika
powinien ponownie wysłać zapytanie
w czasie późniejszym.
105
Urządzenie slave jest zajęte i zapytanie
zostało odrzucone. Należy ponowić to
zapytanie w późniejszym czasie.
106
Urządzenie odrzuca zapytanie
z nieznanej przyczyny
107
Błąd parzystości pamięci urządzenia
slave. Wykryto wadę w urządzeniu
slave.
108
136
Elektronika Praktyczna 8/2007
Nowy zasilacz SITOP modular 20A
AUTOMATYKA PRAKTYCZNA
sitop modular
p
Zasilacze SITOP modular to właściwy wybór.Wszystkie zasilacze z tej serii mogą być
uzupełnione o dodatkowe moduły, takie jak: redundancji zasilania, buforowania,
UPS. Zabezpieczają one przed awarią, minimalizują czas postojów oraz umożliwiają
szybką diagnostykę. Nowością jest 3-fazowy SITOP modular 20A. Jest on o połowę
węższy od poprzednika (70 mm szerokości), posiada ok. 93% sprawności, przy
zasilaniu 400-500 VAC i ma możliwość 1,5 krotnego przeciążenia dla urządzeń
o dużym prądzie rozruchowym.
Siemens Sp. z o.o.
tel. 022 870 91 66
www.siemens.pl/simatic
simatic.pl@siemens.com
szkolenia.pl@siemens.com
Autoryzowani dystrybutorzy:
www.allmar.pl, www.aps.pl, www.elteko.com, www.elmark.olsztyn.pl, www.ewpol.com,
www.ferrox-electric.pl, www.impol-1.pl, www.jupro-tajm.pl, www.karoel.com.pl,
www.kuba.com.pl, www.sitaniec.pl, www.stakol.com.pl, www.sternet.pl
Elektronika Praktyczna 8/2007
137
AUTOMATYKA PRAKTYCZNA
Rejestry pamięci
urządzenia slave
adres nie jest osiągalny w urządze-
niu
slave
.
Pamięć S7200 CPU
…
…
Przykładowy program
Program przedstawia jak używać
biblioteki Modbus Master do zapisu
i odczytu 4 rejestrów pamięci z oraz
do urządzenia
slave
za każdym razem
gdy aktywne będzie wejście I0.0. SI-
MATIC S7–200 zapisuje 4 słowa po-
cząwszy od adresu VW100 do urzą-
dzenia
slave
. Dane zostaną zapisane
do 4 rejestrów pamięci w urządzeniu
slave
począwszy od adresu 40001.
SIMATIC S7–200 odczytuje 4 reje-
stry pamięci z urządzenia
slave
. Dane
będą odbierane z rejestrów pamięci od
adresu 40010 – 40013 i umieszczane
w pamięci sterownika SIMATIC S7–
200 począwszy od adresu VW200.
Program ustawia wyjście Q0.1 oraz
Q0.2 w przypadku gdy zostaną wykry-
te błędy w instrukcji MBUS_MSG.
Dzięki przejrzystej strukturze bi-
blioteki, wytworzenie komunikacji
w protokole Modbus RTU nie powin-
no nikomu sprawić kłopotu. Ponie-
VW100
40001
VW102
40002
VW104
40003
VW106
40004
…
….
VW200
40010
VW202
40011
VW204
40012
VW206
40013
…
…
Rys. 4. Przykład wymiany danych pomiędzy S7–200 a urządzeniem Modbus
Slave
waż dostępna jest też dla sterownika
SIMATIC S7–200 biblioteka Modbus
Slave, można na bazie tego protokołu
budować struktury sieciowe na ste-
rownikach SIMATIC S7–200. Jednak
celem stworzenia biblioteki Modbus
Master było umożliwienie komunika-
cji z innymi urządzeniami z poza ofer-
ty firmy Siemens. Protokół Modbus
ze względu na swoja prostotę oraz
dostosowanie do warunków przemy-
słowych znalazł szerokie zastosowanie
w przemyśle. Bazując na tanich ste-
rownikach SIMATIC S7–200 można
przykładowo komunikować się w pro-
tokole Modbus RTU z falownikami,
innymi sterownikami, licznikami ener-
gii elektrycznej, przepływomierzami.
Michał Bereza
Siemens
STACJA LUTOWNICZA XYTRONIC LF-1000
regulacja temperatury grota w zakresie 200-450°C
stabilność temperatury ±3°C
cyfrowy odczyt temperatury - wyświetlacze LED
430.00 zł
STACJA LUTOWNICZA CT-932
temperatura 150-420°C
płynna regulacja temperatury
moc 23W
100.00 zł
STACJA LUTOWNICZA RT-24 SE220-1
jedno gniazdo
moc transformatorowa: 60W
zasilanie lutownicy: 24V/50Hz
odczyt temperatury: analogowy
292.80 zł
tel. 022 568 99 50
z oferty www.sklep.avt.pl – lutownice
handlowy@avt.pl
STACJA LUTOWNICZA RTC-24 SEC220A-1
moc transformatorowa 80W
zasilanie lutownicy 24V/50Hz
odczyt temperatury cyfrowy
451.40 zł
LAB-1 UNIWERSALNY ZESTAW WARSZTATOWY
multimetr
zasilacz
stacja lutownicza
451.00 zł
STACJA LUTOWNICZA ZD-937
odczyt temperatury
moc grzewcza lutownicy 48W
temperatura grota 150–450°C
150.00 zł
138
Elektronika Praktyczna 8/2007
Plik z chomika:
rpuls
Inne pliki z tego folderu:
S7-200 Podrecznik.pdf
(36567 KB)
S7-200 fragmenty lista instrukcji.pdf
(1175 KB)
S7-200 fragmenty szybkie liczniki.pdf
(1018 KB)
S7-200 fragmenty instrukcje sieciowe.pdf
(464 KB)
S7-200 Modbus cz1.pdf
(1569 KB)
Inne foldery tego chomika:
Allen Bradley
Beckhoff
Codesys
EP.Kurs
Fanuc
Zgłoś jeśli
naruszono regulamin