Professional Documents
Culture Documents
Wydanie 1
Egzemplarz bezpatny
Przykady i Aplikacje
www.siemens.pl/S7-1200
Przykad 1
Komunikacja przez sie Ethernet:
wymiana danych pomidzy dwoma
sterownikami SIMATIC S7-1200
Cz II. Przykady i aplikacje
Przykad 1. Komunikacja przez sie Ethernet: wymiana danych pomidzy dwoma
sterownikami SIMATIC S7-1200
1. Realizowane zadanie
Podzia na zadania
Przez sie Ethernet przesyamy dane midzy dwoma sterownikami S7-1200 CPU.
Rozpatrujemy dwa przypadki:
Zadanie A
Niezalenie od typu danych, naley przesa dane o okrelonej dugoci z jedne-
go S7-1200 CPU (PLC 1) do drugiego (PLC 2).
Zadanie B
Naley przesa dane o dynamicznie zmiennej dugoci z jednego S7-1200 CPU
(PLC 1) do drugiego (PLC 2).
42
Cz II. Przykady i aplikacje
1. Realizowane zadanie
Rys. 1.1.
43
Cz II. Przykady i aplikacje
Przykad 1. Komunikacja przez sie Ethernet: wymiana danych pomidzy dwoma
sterownikami SIMATIC S7-1200
2. Rozwizanie zadania
2.1. Schemat pocze
List niezbdnych komponentw zamieszczono w rozdziale 1.4.
Rys. 2.1.
Wersje protokou
Bloki komunikacyjne T zapewniajce komunikacj w sieci Ethernet obsuguj na-
stpujce protokoy:
Transport Connection Protocol (TCP): identykacja partnera poczenia za
pomoc adresowania portw,
ISO Transport over TCP (ISO-on-TCP): identykacja partnera poczenia za
pomoc usugi Transport Service Access Point (TSAP).
Za pomoc obu protokow moliwa jest transmisja do 8192 bajtw na jedno za-
danie.
Podstawowa rnica midzy tymi protokoami polega na tym, e protok ISO-
-on-TCP umoliwia przesyanie danych o dynamicznie zmiennej dugoci danych,
natomiast protok TCP pozwala przesya tylko dane o staej dugoci.
W nastpnych punktach przedstawiono bloki ze zintegrowan oraz rczn obsu-
g pocze na podstawie przykadowych zada.
44
Cz II. Przykady i aplikacje
2. Rozwizanie zadania
Rys. 2.2.
Informacja o poczeniu jest pamitana w jednym bloku danych dla TSEND_C
i w jednym bloku danych dla TRCV_C (zaadresowanych poprzez parametr CON-
NECT). Zdeniowany jest tu adres IP partnera komunikacji oraz uywany proto-
k. Po stronie partnera komunikacji dane poczenia s pamitane w analogiczny
sposb. W razie wybrania innego protokou, ustawienia powinny zosta zmienio-
ne take w bloku komunikacyjnym drugiego sterownika, co wymaga odpowied-
niej modykacji w programie sterujcym. Polecenia TSEND_C oraz TRCV_C s
wykonywane asynchronicznie poprzez REQ lub EN_R. Podczas wykonywania
zadania nadawania przy dodatnim zboczu sygnau REQ, nie jest wymagana go-
towo bloku TRCV_C do odbioru (EN_R = 1), poniewa dane s buforowane.
45
Cz II. Przykady i aplikacje
Przykad 1. Komunikacja przez sie Ethernet: wymiana danych pomidzy dwoma
sterownikami SIMATIC S7-1200
Dane te mog by odebrane pniej w wyniku zezwolenia na odbir (ustawienia
EN_R = 1) (ale tylko ostatnio wysane dane). Parametr DATA okrela dane do wy-
sania lub skrzynk odbiorcz za pomoc bezwzgldnego adresu pocztkowego
i dugoci. Zakoczenie poczenia nastpuje po zresetowaniu parametru CONT.
Rys. 2.3
46
Cz II. Przykady i aplikacje
2. Rozwizanie zadania
Blok nadawania (TSEND), blok odbioru (TRCV) oraz blok rozczania TDISCON
otrzymuj informacj o poczeniu jedynie przez przypisanie parametru ID po-
czenia do odpowiedniego parametru wejciowego ID bloku danych poczenia.
Na dodatnim zboczu sygnau REQ blok TSEND wysya symbolicznie zaadreso-
wane dane DATA o dugoci LEN do partnera transmisji o identykatorze ID (zde-
niowanym w bloku poczenia TCON przez parametr CONNECT). Przesyane
dane s buforowane.
Przy aktywnym zezwoleniu na odbir (EN_R = 1) blok TRCV odbiera i zapami-
tuje w parametrze DATA dane odebrane od partnera transmisji o identykatorze
ID (zdeniowanym w bloku poczenia TCON przez parametr CONNECT). Na
dodatnim zboczu sygnau REQ blok TDISCON zamyka poczenie z partnerem
transmisji scharakteryzowanym przez parametr poczenia ID. TDISCON musi
by wykonany zarwno po stronie nadawania, jak i odbioru.
47
Cz II. Przykady i aplikacje
Przykad 1. Komunikacja przez sie Ethernet: wymiana danych pomidzy dwoma
sterownikami SIMATIC S7-1200
Zapisywanie parametrw wyjciowych
Parametry wyjciowe DONE, NDR, BUSY, ERROR, STATUS i RCVD_LEN s
uaktualniane cyklicznie bez zapamitywania. W celu sprawdzenia poczenia
zalecane jest zapamitanie wartoci tych parametrw. W przykadowych progra-
mach informacja o statusie jest zapamitywana w razie wystpienia komunikatu
bdu.
Na rysunku 2.4 pokazano sposb zapamitania danych STATUS przy uaktyw-
nionym wyjciu ERROR sygnalizacji bdu w bloku odbiorczym TRCV_C (MW6:
TRCV_C_ERROR_STATUS). Po uaktywnieniu komunikatu DONE w blokach od-
biorczych TRCV_C i TRCV zapamitywana jest take dugo ostatnio odebra-
nych danych oraz zliczane s wystpienia komunikatu Done.
Na rysunku 2.5 przedstawiono konguracj licznika komunikatw DONE TRCV_
C_DONE_count oraz dugoci ostatnio odebranych danych TRCV_C_last_RCVD_
Rys. 2.4.
Rys. 2.5.
48
Cz II. Przykady i aplikacje
2. Rozwizanie zadania
LEN dla bloku TRCV_C. Poza tym zliczane s take komunikaty BUSY dla ka-
dego bloku.
Na rysunku 2.6 pokazano licznik TRCV_C_BUSY_count w bloku TRCV_C.
Wszystkie zapamitane wartoci i zawarto licznika mona wyzerowa za po-
moc zmiennej Reset.
Na rysunku 2.7 przedstawiono funkcj resetu dla bloku TRCV_C. Znacznik RE-
SET_edge wyzwalania zboczem jest wykorzystany do zerowania zawartoci licz-
nika (patrz rysunki 2.5 i 2.6). Funkcja Reset pozostaje aktywna przez tylko jeden
cykl.
Rys. 2.6.
Rys. 2.7.
49
Cz II. Przykady i aplikacje
Przykad 1. Komunikacja przez sie Ethernet: wymiana danych pomidzy dwoma
sterownikami SIMATIC S7-1200
Rys. 2.8.
Przy adresowaniu bezwzgldnym w parametrze DATA jest ustalany wskanik do
adresu pocztkowego wraz z informacj o dugoci danych. Dla adresowania
bezwzgldnego istotne jest ustawienie parametru LEN = 0. Jest to moliwe bez-
porednio przez wskanik w bloku parametrw DATA lub przy konguracji bloku
(tutaj: TSEND_C_DB) w specykacji dugoci danych. Wprowadzona warto jest
nastpnie wykorzystana w reprezentacji wskanika.
W tabeli 2.2 pokazano protokoy obsugujce transmisj danych o dugoci bez-
wzgldnej.
Tab. 2.2.
Porwnanie dugoci danych
Obsugiwany protok
(TSEND_C/TSEND x TRCV_C/TRCV)
> TCP
< ISO_on_TCP
= TCP/ISO_on_TCP
50
Cz II. Przykady i aplikacje
2. Rozwizanie zadania
Rys. 2.9.
Przykad
Transmisja danych, przy ktrej bezwzgldna dugo danych przeznaczonych do
wysania przez bloki TSEND_C lub TSEND jest wiksza od rozmiaru skrzynki
odbiorczej skongurowanej w bloku TRCV_C lub TRCV jest moliwa tylko dla
protokou TCP. Warto bezwzgldna dugoci wyspecykowana w bloku odbior-
czym ogranicza objto trasmitowanych danych.
Jednake protok TCP umoliwia jedynie transmisj danych o statycznej dugo-
ci.
Transmisja danych o dugoci dynamicznie zmiennej jest moliwa tylko za pomo-
c adresowania symbolicznego obsugiwanego przez protok ISO-on-TCP.
51
Cz II. Przykady i aplikacje
Przykad 1. Komunikacja przez sie Ethernet: wymiana danych pomidzy dwoma
sterownikami SIMATIC S7-1200
Rys. 2.10.
wyboru elementw uzyskuje si po wpisaniu znaku kropki za nazw symboliczn
bloku danych.
Dugo wysyanych danych mona zmienia za pomoc parametru LEN. War-
to LEN dugoci danych mona parametryzowa w postaci wartoci staej lub
zmiennej. Przy modykacji dugoci wyraonej w bajtach (parametr LEN) naley
zapewni transmisj tylko caych elementw. Gdy warto LEN = 0 nastpuje
przesanie caego obszaru danych struktury lub tablicy wyspecykowanej w pa-
rametrze DATA.
Przy transmisji tablic i struktur istnieje dodatkowa opcja dynamicznego deniowa-
nia dugoci w bloku nadawczym TSEND_C lub TSEND poprzez przypisanie pa-
rametrowi LEN wartoci zmiennej. Naley wtedy wybra warto LEN = 0 w bloku
odbiorczym TRCV_C lub TRCV.
UWAGA
Przy transmisji struktur danych (typ danych STRUCT) z dynamiczn dugoci
danych i wykorzystaniem protokou ISO-on-TCP, obszarem odbioru (parametr
DATA bloku odbiornika TRCV lub TRCV_C ) powinien by blok danych bez w-
czonej waciwoci Symbolic access only.
52
Cz II. Przykady i aplikacje
3. Konguracja
3. Konguracja
3.1. Instalacja i okablowanie sprztu (warianty A i B)
Tab. 3.1.
Nr Instrukcja Uwaga/rysunek
1. Zamontuj zasilacz, urzdzenia S7-1200 CPU oraz
przecznik na szynie DIN
2. Pocz kablami Ethernet RJ45 sterowniki i jednostk Patrz rozdzia Schemat pocze
programatora do przecznika CSM 1277
3. Pocz wszystkie zaciski masy z uziemieniem Patrz rozdzia Schemat pocze
4. Pocz sterownik i przecznik CSM 1277 z zasilaczem 24 Patrz rozdzia Schemat pocze
V DC PM1207
5. Pocz zasilacz PM1207 z sieci zasilajc 230 V AC Patrz rozdzia Schemat pocze
6. Zainstaluj STEP 7 BASIC V10.5 w jednostce programatora
53
Cz II. Przykady i aplikacje
Przykad 1. Komunikacja przez sie Ethernet: wymiana danych pomidzy dwoma
sterownikami SIMATIC S7-1200
Tab. 3.2. cd.
Nr Instrukcja Uwagi/rysunek
3. Przejd do widoku
Devices & Networks
i wybierz Congure
networks
4. W celu wprowadzenia
urzdzenia PLC 1
z katalogu sprztu
wybierz Unspecic CPU
1200 o numerze 6ES7
2XX-XXXX-XXXX
podwjnym klikniciem.
Powtrz t procedur
w celu wprowadzenia
PLC2.
Przejd do widoku
Device
54
Cz II. Przykady i aplikacje
3. Konguracja
55
Cz II. Przykady i aplikacje
Przykad 1. Komunikacja przez sie Ethernet: wymiana danych pomidzy dwoma
sterownikami SIMATIC S7-1200
56
Cz II. Przykady i aplikacje
3. Konguracja
57
Cz II. Przykady i aplikacje
Przykad 1. Komunikacja przez sie Ethernet: wymiana danych pomidzy dwoma
sterownikami SIMATIC S7-1200
3.3.2. Konguracja sterownika odbierajcego dane
Tab. 3.4.
Nr Instrukcja Uwagi/rysunek
1. Otwrz blok operacyjny Main
[OB1] sterownika PLC 2
w folderze Program Blocks
podwjnym klikniciem.
W polu Instructions >
Extended instructions >
Communications otwrz folder
Open user communication
i przecignij blok TRCV_C do
sieci 1.
Nastpuje automatyczna
generacja bloku danych typu
instance dla funkcji TRCV_
C. Potwierd OK
2. Otwiera si okno Connection
parameter(s) bloku danych
typu instance TRCV_C_DB.
Wybierz PLC 1 jako partnera,
blok danych PLC_1_
Conection_DB jako dane
poczenia partnera oraz TCP
jako typ poczenia
58
Cz II. Przykady i aplikacje
3. Konguracja
59
Cz II. Przykady i aplikacje
Przykad 1. Komunikacja przez sie Ethernet: wymiana danych pomidzy dwoma
sterownikami SIMATIC S7-1200
3.3.3. Zaadowanie projektu do sterownika
Tab. 3.5.
Nr Instrukcja Uwagi/rysunek
1. Otwrz pole Network.
Wybierz obydwa sterowniki.
Kliknij prawym klawiszem
i wybierz Download to device >
All aby zaadowa cay projekt do
sterownikw
2. Uaktywnij wywietlanie
wszystkich dostpnych urzdze.
Wybierz jeden z wywietlanych
sterownikw i uyj przycisku
Load.
Nastpuje kolejno zaadowanie
blokw programu do obu
sterownikw. Wybr CPU nie ma
tutaj znaczenia
5. Po przeniesieniu wszystkich
blokw programu do obu
sterownikw pojawia si okno Load
results.
Wybierz pola Start all aby ustawi
obydwa sterowniki w trybie Run.
Zakocz adowanie wybierajc
pole Finish
60
Cz II. Przykady i aplikacje
3. Konguracja
61
Cz II. Przykady i aplikacje
Przykad 1. Komunikacja przez sie Ethernet: wymiana danych pomidzy dwoma
sterownikami SIMATIC S7-1200
Tab. 3.6. cd.
Nr Instrukcja Uwagi/rysunek
3. Podobnie jak w kroku 1.,
utwrz tablic nadzoru
TRCV_C dla PLC_2.
Wybierz nastpujce
elementy:
Wszystkie parametry bloku
odbiorczego TRCV_C
Zapamitany status bdu
TRCV_C_ERROR_STATUS
Dugo w bajtach
ostatniego odebranego
komunikatu LAST_RCVD_
LEN, Done (TRCV_C_
DON_count)
Licznik Busy TRCV_C_
BUSY_count
Reset do zerowania tych
wartoci oraz element Word
bloku odbiorczego Dest
4. Uaktywnij tablic nadzoru
dla kadego sterownika za
pomoc przyciskw Go online
oraz Monitor all
62
Cz II. Przykady i aplikacje
3. Konguracja
63
Cz II. Przykady i aplikacje
Przykad 1. Komunikacja przez sie Ethernet: wymiana danych pomidzy dwoma
sterownikami SIMATIC S7-1200
Tab. 3.7. cd.
Nr Instrukcja Uwaga/rysunek
3. Bit Busy TSEND_C_BUSY
jest ustawiony i blok
nadawania TSEND_C ma
teraz status hex 7001
(waiting for connection
partner).
Ustaw take warto
parametru kontroli odbioru
TRCV_C_CONT na 1
(patrz krok 2)
4. Po krtkiej fazie
synchronizacji (status hex
7001), obydwa bloki
komunikacyjne maj status
hex 7004 (poczenie
nawizane). Dziki
nawizaniu poczenia,
zarwno blok nadajnika, jak
i blok odbiorczy maj jedno
wyjcie w trybie Busy oraz
jeden komunikat Done:
TSEND_C_DONE_count
TSEND_C_BUSY_count
TRCV_C_DONE_count
TRCV_C_Busy_count.
Nastpnie ustaw parametr
kontrolny TRCV_C_EN_R
rwny 1 (patrz krok 2)
64
Cz II. Przykady i aplikacje
3. Konguracja
65
Cz II. Przykady i aplikacje
Przykad 1. Komunikacja przez sie Ethernet: wymiana danych pomidzy dwoma
sterownikami SIMATIC S7-1200
66
Cz II. Przykady i aplikacje
3. Konguracja
67
Cz II. Przykady i aplikacje
Przykad 1. Komunikacja przez sie Ethernet: wymiana danych pomidzy dwoma
sterownikami SIMATIC S7-1200
3.4.2. Blok TSEND
Po nawizaniu poczenia z partnerem transmisji, blok TSEND rozpoczyna prze-
syanie danych. Po stronie odbiorczej TSEND wymaga bloku TRCV.
Wymaganym protokoem jest ISO-on-TCP. W przeciwiestwie do TCP, protok
ten pozwala na dynamiczn zmian dugoci transmitowanych danych.
Tab. 3.9.
Nr Instrukcja Uwagi/rysunek
1. W bloku danych Source utwrz
tablic o trzech elementach typu
Int z przypisanymi wartociami
pocztkowymi w postaci danych do
wysania
68
Cz II. Przykady i aplikacje
3. Konguracja
69
Cz II. Przykady i aplikacje
Przykad 1. Komunikacja przez sie Ethernet: wymiana danych pomidzy dwoma
sterownikami SIMATIC S7-1200
3.4.4. Blok TDISCON
Blok TDISCON, sucy do rozczania transmisji ethernetowej z rcznym na-
wizywaniem poczenia, musi by wywoany zarwno po stronie nadawczej, jak
i odbiorczej.
Tab. 3.11.
Nr Instrukcja Uwaga/rysunek
1. Otwrz blok operacyjny Main
[OB1] dla PLC_1 w folderze
Program Blocks podwjnym
klikniciem.
W menu Instructions >
Extended instructions >
Communications > Open
user communications otwrz
folder Others i przecignij
blok TDISCON do bloku
operacyjnego.
Nastpuje automatyczna
generacja bloku danych
typu instance dla funkcji
TDISCON, co naley
potwierdzi OK
2. Sparametryzuj blok
rozczania TDISCON.
Wybierz ponownie jako ID
poczenia 2 ustawione
w tabeli 3.8.
Powtrz poprzednie dwa
kroki dla PLC_2.
Jeszcze raz zaaduj
zmodykowany projekt
do sterownikw (patrz
tabela 3.5) oraz utwrz dla
kadego sterownika now
tablic nadzoru transmisji
ethernetowej S7-1200 z
rczn obsug poczenia
(tu: TSEND i TRCV)
70
Cz II. Przykady i aplikacje
3. Konguracja
71
Cz II. Przykady i aplikacje
Przykad 1. Komunikacja przez sie Ethernet: wymiana danych pomidzy dwoma
sterownikami SIMATIC S7-1200
Tab. 3.12. cd.
Nr Instrukcja Uwagi/rysunek
4. Po zakoczeniu krtkiej fazy
synchronizacji (status: hex
7002) wyjcia TCON_DONE
przyjmuj warto 1.
Bloki TCON maj status hex
0000 (poczenie zostao
nawizane pomylnie)
6. Rozpocznij wykonywanie
zadania nadawania ustalajc
warto TSEND_REQ na 1
(patrz krok 2).
Ustawiajc wyjcie TSEND_
DONE, blok nadajnika
sygnalizuje status hex 0000
(zadanie nadawania zakoczone
bez bdu), mimo e blok
odbiornika TRCV nie zosta
jeszcze uaktywniony.
Dane do przesania zostay
zapamitane w buforze,
z ktrego funkcja TRCV bdzie
czyta dane po zezwoleniu na
odbir.
Ustaw zezwolenie na odbir
TRCV_EN_R
72
Cz II. Przykady i aplikacje
3. Konguracja
73
Cz II. Przykady i aplikacje
Przykad 1. Komunikacja przez sie Ethernet: wymiana danych pomidzy dwoma
sterownikami SIMATIC S7-1200
Tab. 3.12. cd.
Nr Instrukcja Uwagi/rysunek
9. Dodatkowo, tym razem zosta
wysany take trzeci element
Dest.Array[3] tablicy.
Parametr TRCV_Last_RCVD_
LEN pokazuje liczb odebranych
bajtw 6. Liczniki TRCV_NDR_
count i TRCV_BUSY_count
zostay inkrementowane o jeden.
Blok TRCV jest gotowy do
odbioru nastpnego komunikatu
(status: hex 7002).
4. Elementy programu
W prezentowanym przykadzie s uywane kody programw przedstawione w ta-
beli 4.1. Mona je cign w postaci skompresowanej z miejsca, w ktrym znaj-
duje si dokumentacja, a nastpnie otworzy w opisanym programie.
Tab. 4.1.
Nr Nazwa pliku Zawarto
CE-X17_EthernetCom_S7-1200_ S7-1200_A.zip Plik zip zawiera projekt STEP 7 Basic
1.
CE-X17_EthernetCom_S7-1200_S7-1200_A.ap10 V10.5 dla zadania A
CE-X17_EthernetCom_S7-1200_ S7-1200_B.zip Plik zip zawiera projekt STEP 7 Basic
2.
CE-X17_EthernetCom_S7-1200_S7-1200_B.ap10 V10.5 dla zadania B
74