s
s
s
s
FAQ: 00000026/PL Data: 12/01/2009
Komunikacja w sieci Industrial Ethernet z wykorzystaniem Protokołu S7 oraz funkcji PUT/GET
www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com
1
Poni
ż
szy dokument zawiera opis konfiguracji programu STEP7 dla sterowników SIMATIC
S7–300/S7–400, w celu stworzenia komunikacji mi
ę
dzy dwoma stacjami S7–300 za pomoc
ą
sieci Industrial Ethernet, protokołu S7 i funkcji PUT/GET.
1. PODSTAWOWE INFORMACJE
Protokół S7 jest obsługiwany przez wszystkie sterowniki i procesory komunikacyjne serii
SIMATIC S7. Do jego zalet nale
ż
y fakt,
ż
e jest niezale
ż
ny od wykorzystywanego medium
transmisji, którym mo
ż
e by
ć
PROFIBUS, Industrial Ethernet lub MPI. Za pomoc
ą
protokołu
S7 mo
ż
na przesyła
ć
do 64kbajtów danych w zale
ż
no
ś
ci od wykorzystywanego sprz
ę
tu i
funkcji u
ż
ytych do obsługi transmisji.
Funkcje komunikacyjne PUT/GET słu
żą
do zapisu i odczytu małej ilo
ś
ci danych z
oddalonego CPU. S
ą
one funkcjami asynchronicznymi co oznacza,
ż
e mog
ą
wykonywa
ć
rozpocz
ę
te zadanie przez kilka cykli programu sterownika. Istnieje kilka rodzajów bloków
funkcyjnych PUT/GET w zale
ż
no
ś
ci od wykorzystywanego sprz
ę
tu:
•
SFB14/SFB15 – bloki funkcyjne zintegrowane w systemie sterownika dla
niektórych CPU z serii S7-300 oraz wszystkich CPU serii S7-400
•
FB14/FB15 – dodatkowe bloki funkcyjne ładowane wraz z programem
sterownika w przypadku wykorzystania jednostki S7-300, w której nie s
ą
one
zintegrowane w systemie operacyjnym sterownika
•
FB14/FB15 – bloki funkcyjne, które s
ą
cz
ęś
ci
ą
dodatkowej biblioteki
SIMATIC_NET_CP
zawieraj
ą
cej
funkcje
do
obsługi
procesorów
komunikacyjnych CP300/400. Stosuje si
ę
je w przypadku gdy do komunikacji
wykorzystuje si
ę
moduł SIMATIC CP300/400.
Poni
ż
sza tabela pokazuje najwa
ż
niejsze parametry transmisji danych z wykorzystaniem
funkcji PUT_GET.
S7-300
S7-400
Maks. długo
ść
przesyłanych danych
160 bajtów
400 bajtów
Spójno
ść
danych
8 – 32 bajtów
32 bajty - maks. długo
ść
Maks. ilo
ść
poł
ą
cze
ń
Patrz parametry CPU
Patrz parametry CPU
s
s
s
s
FAQ: 00000026/PL Data: 12/01/2009
Komunikacja w sieci Industrial Ethernet z wykorzystaniem Protokołu S7 oraz funkcji PUT/GET
www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com
2
2. ZAŁO
ś
ENIA PROJEKTU
Zało
ż
eniem projektu jest transmisja danych pomi
ę
dzy CPU 315-2 PN/DP posiadaj
ą
cym
zintegrowany port Ethernet i CPU 315-2 DP z doł
ą
czonym procesorem komunikacyjnym,
słu
żą
cym do wymiany danych w sieci Ethernet, CP 343-1. Wymiana danych odbywa si
ę
poprzez zastosowanie funkcji komunikacyjnych PUT/GET.
Jednostka CPU 315-2 PN/DP za pomoc
ą
funkcji PUT (SFB15) zapisuje dane do pami
ę
ci
jednostki CPU 315-2 DP. Natomiast jednostka 315-2 DP wykorzystuj
ą
c funkcj
ę
GET (FB15)
pobiera dane z pami
ę
ci jednostki CPU 315-2 PN/DP.
s
s
s
s
FAQ: 00000026/PL Data: 12/01/2009
Komunikacja w sieci Industrial Ethernet z wykorzystaniem Protokołu S7 oraz funkcji PUT/GET
www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com
3
3. WPROWADZENIE KONFIGURACJI SPRZ
Ę
TOWEJ DO PROJEKTU STEP7
3.1 W projekcie tworzymy nowe poł
ą
czenie sieciowe. W tym celu w oknie programu Simatic
Manager klikamy prawym przyciskiem myszy i z menu wybieramy kolejno
Insert New Object
Industrial Ethernet. Rys.1.
Rys.1
3.2 Korzystaj
ą
c z programu HW Config podł
ą
czamy sterownik CPU 315-2 PN/DP do
umieszczonej w projekcie sieci o nazwie Ethernet(1). W tym celu otwieramy okno Properties
– PN-IO dwukrotnie klikaj
ą
c odpowiedni slot w konfiguracji CPU. Nast
ę
pnie wybieramy
polecenie Properties. Rys. 2.
s
s
s
s
FAQ: 00000026/PL Data: 12/01/2009
Komunikacja w sieci Industrial Ethernet z wykorzystaniem Protokołu S7 oraz funkcji PUT/GET
www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com
4
3.3 W otwartym oknie Properties – Ethernet interface PN-IO wybieramy sie
ć
, do której
chcemy podpi
ąć
jednostki bior
ą
ce udział w komunikacji (w tym wypadku jest to dodana do
projektu sie
ć
o nazwie Ethernet(1)) oraz przypisujemy adres IP pod którym konfigurowane
CPU b
ę
dzie dost
ę
pne w sieci. Potwierdzamy dwukrotnie klikaj
ą
c OK. Rys. 3.
Rys. 2
Rys. 3
s
s
s
s
FAQ: 00000026/PL Data: 12/01/2009
Komunikacja w sieci Industrial Ethernet z wykorzystaniem Protokołu S7 oraz funkcji PUT/GET
www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com
5
3.4 Zapisujemy i kompilujemy ustawienia sprz
ę
towe stacji. Rys. 4.
3.5 Nast
ę
pnie do sieci podł
ą
czamy drug
ą
jednostk
ę
bior
ą
c
ą
udział w wymianie danych, w
tym celu za pomoc
ą
programu HW Config otwieramy jej konfiguracj
ę
sprz
ę
tow
ą
.
Podł
ą
czamy sterownik CPU 315-2 DP do utworzonej sieci Ethernet(1), wykorzystuj
ą
c
procesor komunikacyjny CP 343-1. W tym celu dwukrotnie klikamy slot, w którym
umieszczony jest procesor komunikacyjny. W otwartym oknie Properties – CP 343-1
wybieramy polecenie Properties. Rys. 5.
Rys. 4
Rys. 5
s
s
s
s
FAQ: 00000026/PL Data: 12/01/2009
Komunikacja w sieci Industrial Ethernet z wykorzystaniem Protokołu S7 oraz funkcji PUT/GET
www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com
6
3.6 W otwartym oknie Properties - Ethernet interface CP 343-1 wybieramy sie
ć
do, której ma
by
ć
podł
ą
czona konfigurowana jednostka (w tym przypadku jest to sie
ć
o nazwie
Ethernet(1)). Nast
ę
pnie mo
ż
emy samodzielnie przypisa
ć
adres IP, pod którym jednostka
b
ę
dzie dost
ę
pna w sieci lub pozostawi
ć
adres wpisany automatycznie po wyborze sieci.
Potwierdzamy klikaj
ą
c OK Rys. 6.
3.7 Zapisujemy i kompilujemy ustawienia sprz
ę
towe stacji. Rys. 7.
Rys. 6
Rys. 7
s
s
s
s
FAQ: 00000026/PL Data: 12/01/2009
Komunikacja w sieci Industrial Ethernet z wykorzystaniem Protokołu S7 oraz funkcji PUT/GET
www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com
7
3.8 W nast
ę
pnej kolejno
ś
ci trzeba uruchomi
ć
program NetPro, w tym celu w głównym oknie
programu STEP7 wybieramy polecenie Configure Network. Rys. 8.
3.9 W otwartym oknie programu NetPro tworzymy poł
ą
czenie niezb
ę
dne do wymiany
danych, które jest logicznym przypisaniem dwóch partnerów komunikacji. W tym celu
wybieramy jedn
ą
z pary jednostek CPU maj
ą
cych bra
ć
udział w wymianie danych i prawym
przyciskiem myszy wywołujemy okno menu. Nast
ę
pnie wybieramy polecenie Insert New
Connection. Rys. 9.
Rys. 8
Rys. 9
s
s
s
s
FAQ: 00000026/PL Data: 12/01/2009
Komunikacja w sieci Industrial Ethernet z wykorzystaniem Protokołu S7 oraz funkcji PUT/GET
www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com
8
3.10 W otwartym oknie Insert New Connection wybieramy CPU maj
ą
ce by
ć
partnerem
komunikacji i typ poł
ą
czenia. Potwierdzamy klikaj
ą
c OK. Rys. 10.
3.11 Po potwierdzeniu polecenia utworzenia nowego poł
ą
czenia zostaje wy
ś
wietlone okno
Properties S7 – connection, w którym pokazane s
ą
podstawowe parametry utworzonego
poł
ą
czenia. Potwierdzamy klikaj
ą
c OK. Rys. 11.
Rys. 10
Rys. 11
s
s
s
s
FAQ: 00000026/PL Data: 12/01/2009
Komunikacja w sieci Industrial Ethernet z wykorzystaniem Protokołu S7 oraz funkcji PUT/GET
www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com
9
Po prawidłowo zako
ń
czonej konfiguracji nowego poł
ą
czenia, w dole okna programu NetPro
w tabeli poł
ą
cze
ń
pojawi si
ę
nowy wiersz zawieraj
ą
cy parametry utworzonego poł
ą
czenia.
Rys. 12.
3.12 Nast
ę
pnie, za pomoc
ą
polecenia Save and Compile nale
ż
y zapisa
ć
i skompilowa
ć
wprowadzone do projektu ustawienia zwi
ą
zane z utworzeniem nowego poł
ą
czenia. Po
pomy
ś
lnie zako
ń
czonej kompilacji w otwartym oknie Outputs of consistency check for: pojawi
si
ę
komunikat o braku bł
ę
dów. Rys. 13.
Rys. 12
Rys. 13
s
s
s
s
FAQ: 00000026/PL Data: 12/01/2009
Komunikacja w sieci Industrial Ethernet z wykorzystaniem Protokołu S7 oraz funkcji PUT/GET
www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com
10
4. WYWOŁANIE I PARAMETRYZACJA BLOKÓW FUNKCYJNYCH OBSŁUGUJ
Ą
CYCH
WYMIAN
Ę
DANYCH
4.1 Zgodnie z zało
ż
eniami projektu w programie sterownika CPU 315-2 PN/DP nale
ż
y
wywoła
ć
funkcj
ę
PUT (SFB15). W tym celu w oknie programu Simatic Manager wybieramy
kolejno Simatic 315-2PN/DP
CPU 315-2 PN/DP
S7 Program(2)
Blocks. Rys.14.
4.2 W otwartym oknie bloku OB1 z listy lewego menu wybieramy kolejno Libraries
Standard Library
Communication Blocks
System Function Blocks
SFB 15 (PUT).
Klikamy dwukrotnie symbol funkcji w celu umieszczenia jej w programie Rys.15.
Rys. 14
Rys. 15
s
s
s
s
FAQ: 00000026/PL Data: 12/01/2009
Komunikacja w sieci Industrial Ethernet z wykorzystaniem Protokołu S7 oraz funkcji PUT/GET
www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com
11
4.3 W nagłówku funkcji umieszczamy nazw
ę
bloku danych, w którym b
ę
d
ą
przechowywane
jej parametry. Nast
ę
pnie klikaj
ą
c YES potwierdzamy polecenie utworzenia nowego bloku
danych. Rys. 16.
Poni
ż
ej został umieszczony opis parametrów funkcji PUT (SFB15)
PARAMETR
TYP
OPIS
REQ
BOOL
Zmienna odpowiedzialna za rozpocz
ę
cie zapisu danych do partnera
komunikacji. Wysyłanie jest rozpoczynane za ka
ż
dym razem kiedy
na wej
ś
ciu pojawi si
ę
narastaj
ą
ce zbocze, nawet je
ś
li poprzednie
zadanie wysyłania danych nie zostało zako
ń
czone.
ID
WORD
Zmienna okre
ś
laj
ą
ca ID poł
ą
czenia, z którego ma korzysta
ć
funkcja
przy wysyłaniu zmiennych.
Patrz: Rys. 12, tabela poł
ą
cze
ń
, komórki Local ID i Partner ID
S7-300:
ADDR_1
S7-400:
ADDR_i
(1
≤
i
≤
4)
ANY
Wska
ź
nik do przestrzeni pami
ę
ci, do której maj
ą
by
ć
przesłane i
zapisane dane.
S7-300:
SD_1
S7-400:
SD_i
(1
≤
i
≤
4)
ANY
Wska
ź
nik do przestrzeni pami
ę
ci lokalnego CPU zawieraj
ą
cej dane,
które maj
ą
zosta
ć
wysłane.
Rys. 16
s
s
s
s
FAQ: 00000026/PL Data: 12/01/2009
Komunikacja w sieci Industrial Ethernet z wykorzystaniem Protokołu S7 oraz funkcji PUT/GET
www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com
12
DONE
BOOL
Parametr statusowy:
0 – wysyłanie nie rozpocz
ę
te lub w trakcie
1 – wysyłanie zako
ń
czone bezbł
ę
dnie
ERROR
BOOL Sygnalizuje pojawienie si
ę
bł
ę
du 0: brak bł
ę
du, 1: bł
ą
d
STATUS
WORD Podaje ewentualny kod bł
ę
du.
4.4 Na rysunku poni
ż
ej pokazana jest przykładowo sparametryzowana funkcja PUT (SFB15).
Parametrom, które nie zostały zdefiniowane, przy wywołaniu funkcji zostan
ą
przypisane
warto
ś
ci przechowywane w bloku danych DB15. Rys. 17.
Rys. 17
s
s
s
s
FAQ: 00000026/PL Data: 12/01/2009
Komunikacja w sieci Industrial Ethernet z wykorzystaniem Protokołu S7 oraz funkcji PUT/GET
www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com
13
4.5 Nast
ę
pnie w programie sterownika CPU 315-2 DP wywołujemy funkcj
ę
GET (FB14). W
tym celu w oknie programu Simatic Manager wybieramy kolejno Simatic 315-2DP
CPU
315-2 DP
S7 Program(2)
Blocks. Rys. 18.
4.6 W otwartym oknie bloku OB1 z listy lewego menu wybieramy kolejno Libraries
SIMATIC_NET_CP
CP300
FB 14 (GET). Klikamy dwukrotnie symbol funkcji w celu
umieszczenia jej w programie Rys.19.
Rys. 18
Rys. 19
s
s
s
s
FAQ: 00000026/PL Data: 12/01/2009
Komunikacja w sieci Industrial Ethernet z wykorzystaniem Protokołu S7 oraz funkcji PUT/GET
www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com
14
4.7 W nagłówku funkcji umieszczamy nazw
ę
bloku danych, w którym b
ę
d
ą
przechowywane
jej parametry. Nast
ę
pnie klikaj
ą
c YES potwierdzamy polecenie utworzenia nowego bloku
danych. Rys. 20.
Poni
ż
ej został umieszczony opis parametrów funkcji GET (FB14)
PARAMETR
TYP
OPIS
REQ
BOOL
Zmienna odpowiedzialna za rozpocz
ę
cie pobierania danych od
partnera komunikacji. Pobieranie jest rozpoczynane za ka
ż
dym
razem, gdy na wej
ś
ciu pojawi si
ę
narastaj
ą
ce zbocze, nawet je
ś
li
poprzednie zadanie pobierania danych nie zostało zako
ń
czone.
ID
WORD
Zmienna okre
ś
laj
ą
ca ID poł
ą
czenia, z którego ma korzysta
ć
funkcja
przy wysyłaniu zmiennych.
Patrz: Rys. 12, tabela poł
ą
cze
ń
, komórki Local ID i Partner ID
ADDR_1
ANY
Wska
ź
nik do przestrzeni pami
ę
ci partnera komunikacji, z której maj
ą
by
ć
pobrane dane.
RD_1
ANY
Wska
ź
nik do przestrzeni pami
ę
ci lokalnego CPU, w której maj
ą
by
ć
zapisane pobrane dane.
NDR
BOOL
Parametr statusowy:
0 – wysyłanie nie rozpocz
ę
te lub w trakcie
1 – wysyłanie zako
ń
czone bezbł
ę
dnie
ERROR
BOOL Sygnalizuje pojawienie si
ę
bł
ę
du 0: brak bł
ę
du, 1: bł
ą
d
STATUS
WORD Podaje ewentualny kod bł
ę
du.
Rys. 20
s
s
s
s
FAQ: 00000026/PL Data: 12/01/2009
Komunikacja w sieci Industrial Ethernet z wykorzystaniem Protokołu S7 oraz funkcji PUT/GET
www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com
15
4.8 Na rysunku poni
ż
ej pokazana jest przykładowo sparametryzowana funkcja GET (FB14).
Parametrom, które nie zostały zdefiniowane, przy wywołaniu funkcji zostan
ą
przypisane
warto
ś
ci przechowywane w bloku danych DB14. Rys. 21.
Rys. 21
s
s
s
s
FAQ: 00000026/PL Data: 12/01/2009
Komunikacja w sieci Industrial Ethernet z wykorzystaniem Protokołu S7 oraz funkcji PUT/GET
www.siemens.pl/simatic
Doradztwo techniczne: simatic.pl@siemens.com
16
4.9 Nast
ę
pnie nale
ż
y załadowa
ć
ustawienia sprz
ę
towe oraz program do wszystkich CPU
zawartych w projekcie. W tym celu wracamy do głównego okna projektu SIMATIC Managera
i w oknie struktury projektu zaznaczamy jednostk
ę
, do której chcemy załadowa
ć
program.
Nast
ę
pnie naciskamy przycisk Download na pasku narz
ę
dzi. Identycznie post
ę
pujemy dla
innych jednostek zawartych w projekcie. Rys. 22a, 22b.
Rys. 22a
Rys. 22b