Przykład 1. Komunikacja przez sieć Ethernet: wymiana danych pomiędzy dwoma sterownikami SIMATIC S7-1200

Podobne dokumenty
S i Ethernet. S i Ethernet AUTOMATYKA I MECHATRONIKA

Komunikacja pomiędzy S i S7-300/400 przez Ethernet (1)

Przykład 2. Komunikacja przez sieć Ethernet: wymiana danych pomiędzy sterownikami SIMATIC S i S7-300/400

Ćwiczenia z S Komunikacja S z miernikiem parametrów sieci PAC 3200 za pośrednictwem protokołu Modbus/TCP.

Ćwiczenia z S S jako Profinet-IO Controller. FAQ Marzec 2012

S Instrukcje programowania instrukcje obsługi Ethernetu

Komunikacja w sieci Industrial Ethernet z wykorzystaniem Protokołu S7 oraz funkcji BSEND/BRCV

FAQ: /PL Data: 3/07/2013 Konfiguracja współpracy programów PC Access i Microsoft Excel ze sterownikiem S7-1200

Komunikacja z wykorzystaniem Protokołu TCP oraz funkcji AG_SEND/AG_RECV

Wymagania programowe: STEP 7 STEP 7-Micro/Win

Konfiguracja regulatora PID

Spis treści. Tworzenie projektu z protokołem Modbus TCP w S PLC

Programowanie sterowników

Materiały dodatkowe. Konfiguracja sterownika programowalnego Siemens do obsługi protokołu MODBUS. Opracowali: mgr inż.

Transmisja danych z wykorzystaniem interfejsu Modubs/TCP

Instrukcje programowania instrukcje sterujące wykonywaniem programu i obsługujące komunikację

Ćwiczenia z S Komunikacja S z dotykowymi panelami HMI na przykładzie współpracy sterownika z panelem KTP600 PN.

Komunikacja Master-Slave w protokole PROFIBUS DP pomiędzy S7-300/S7-400

Ćwiczenia z S Komunikacja S z przyciskowym panelem HMI KP300 PN. FAQ Marzec 2012

Instrukcja do oprogramowania ENAP DEC-1

instrukcja instalacji modemu SpeedTouch 605s

FAQ: /PL Data: 2/07/2013 Konfiguracja współpracy programów PC Access i Microsoft Excel ze sterownikiem LOGO!

Rysunek 1: Okno z lista

Rozdział ten zawiera informacje na temat zarządzania Modułem Modbus TCP oraz jego konfiguracji.

Podstawy programowania w środowisku Step 7

Spis treści. 1 Moduł Modbus TCP 4

1 Moduł Diagnostyki Sieci

Moduł Ethernetowy. instrukcja obsługi. Spis treści

Komunikacja master-slave w protokole PROFIBUS DP z wykorzystaniem kart komunikacyjnych CP 342-5

Licznik rewersyjny MD100 rev. 2.48

Synchronizacja czasu S i HMI Basic Panels

Tworzenie projektu z protokołem Modbus w S PLC

1 Moduł Inteligentnego Głośnika

Instrukcja podstawowego uruchomienia sterownika PLC LSIS serii XGB XBC-DR20SU

Poniższy przykład przedstawia prosty sposób konfiguracji komunikacji między jednostkami centralnymi LOGO! w wersji 8 w sieci Ethernet.

FAQ: /PL Data: 16/11/2007 Programowanie przez Internet: Konfiguracja modułów SCALANCE S 612 V2 do komunikacji z komputerem przez VPN

Laboratorium - Podgląd informacji kart sieciowych bezprzewodowych i przewodowych

SEGMENT TCP CZ. II. Suma kontrolna (ang. Checksum) liczona dla danych jak i nagłówka, weryfikowana po stronie odbiorczej

Spis treści. 1 Moduł RFID (APA) 3

1 Moduł Inteligentnego Głośnika 3

Sterowania rozproszone z wykorzystaniem standardu sieci przemysłowej ProfiNet

Dysk CD (z Oprogramowaniem i Podręcznikiem użytkownika)

FAQ: /PL Data: 26/11/2008 Komunikacja w protokole MPI za pomocą Global Data (GD) pomiędzy sterownikami S7-300

Instrukcja instalacji i obsługi modemu ED77 pod systemem operacyjnym Windows 98 SE (wydanie drugie)

SERWER AKTUALIZACJI UpServ

Komunikacja pomiędzy panelem Astraada HMI Panel i sterownikiem Siemens S w sieci ProfiNet

VComNet Podręcznik użytkownika. VComNet. Podręcznik użytkownika Wstęp

Instrukcja konfiguracji funkcji skanowania

NPS-520. Serwer druku do urządzeń wielofukcyjnych. Skrócona instrukcja obsługi. Wersja 1.00 Edycja 1 11/2006

Instrukcja konfiguracji urządzenia Comarch TNA Gateway Plus

Siemens S Konfiguracja regulatora PID

Zdalny podgląd wizualizacji z panelu XV100 przez przeglądarkę internetową (WebServer)

Konfigurowanie modułu BK9050 firmy Beckhoff wprowadzenie

Komunikacja w sterownikach Horner APG w sieci CsCAN

Instalacja sterownika portu USB

Konfiguracja i podłączenie sterownika Horner APG do oprogramowania Cscape po RS232

FAQ: /PL Data: 9/04/2013 WinCC v7 Wymiana danych ze sterownikiem serii S poprzez protokół Modbus TCP

Xesar. Uruchomienie Karta sieciowa

PIERWSZE KROKI S PLC

Bit 11 pierwszego słowa komunikacji acyklicznej ustawny jest na wartość 0 i nie podlega modyfikacji.

SERWER AKTUALIZACJI UpServ

PIERWSZE KROKI S PLC

TwinCAT 3 konfiguracja i uruchomienie programu w języku ST lokalnie

Kurs SIMATIC S7-300/400 i TIA Portal - Podstawowy. Spis treści. Dzień 1. I System SIEMENS SIMATIC S7 - wprowadzenie (wersja 1503)

Product Update Funkcjonalność ADR dla przemienników Częstotliwości PowerFlex 750 oraz 525 6

Informator techniczny

Podręcznik użytkownika

Bezprzewodowy ruter kieszonkowy/punkt dostępowy DWL-G730AP. Dysk CD z Podręcznikiem użytkownika. Kabel ethernetowy kat. 5 UTP

KONWERTER DVB ASI -> DVB IP DELTA-1

Instrukcja EQU Kantech

Instalacja sterownika portu USB

Moduł Ethernetowy EL-ETH. Instrukcja obsługi

Laboratorium Elektrycznych Systemów Inteligentnych

1 Moduł Neuronu Cyfrowego SM

Konwerter Transmisji KT-02

Sterowniki Programowalne (SP) Siemens S Pierwsze Kroki

Rozdział ten zawiera informacje o sposobie konfiguracji i działania Modułu OPC.

HDM I DTM KRÓTKI PRZEWODNIK INSTALACJI OPROGRAMOWANIA

Artykuł : Aktualizacja ( Cscape 9.70 )

Projekt Komputerowych Systemów Sterowania Wymiana danych pomiędzy dwoma sterownikami Siemens S7-300 po sieci Profibus DP

INSTRUKCJA OBSŁUGI. Przekaźnik czasowy ETM ELEKTROTECH Dzierżoniów. 1. Zastosowanie

INSTRUKCJA OBSŁUGI Program konfiguracji sieciowej Net configuration Drukarka A11

Autorzy. Zespół SABUR Sp. Z o.o. Wydanie Data. Sierpień SABUR Sp. Z o. o. Wszelkie prawa zastrzeżone

USB 2.0 SERWER DRUKARKI ETHERNETU

Przywracanie parametrów domyślnych. Przycisnąć przycisk STOP przez 5 sekund. Wyświetlanie naprzemienne Numer parametru Wartość parametru

Konfigurowanie sterownika CX9000 firmy Beckhoff wprowadzenie

SERWER AKTUALIZACJI UpServ

DWL-2100AP g/108Mbps Bezprzewodowy punkt dostępowy D-Link AirPlus XtremeG

Ważne: Przed rozpoczęciem instalowania serwera DP-G321 NALEŻY WYŁACZYĆ zasilanie drukarki.

INFORMATOR TECHNICZNY HORNER. Konfiguracja komunikacji GPRS pomiędzy sterownikiem XLe i oprogramowaniem Proficy HMI/SCADA Cimplicity

tel fax

Politechnika Warszawska. Temat: Układ ważący. Opiekun: mgr inż. Marek Peryt

S P I S T R E Ś C I. Instrukcja obsługi

Instrukcja użytkownika ARsoft-CFG WZ1 4.0

Przesyłania danych przez protokół TCP/IP

Kod produktu: MP-W7100A-RS232

FAQ: /PL Data: 19/11/2007 Programowanie przez Internet: Przekierowanie portu na SCALANCE S 612 w celu umo

Przewodnik połączenia (dla aparatu COOLPIX)

TREND 250 H.264 DVR Central Management System

Konfiguracja programu Merz OPC Server AS511 i oprogramowania InTouch do komunikacji ze sterownikiem Siemens Simatic S5

Transkrypt:

SIMATIC S7-1200 w przykładach SIMATIC S7-1200 w przykładach Wydanie 1 Egzemplarz bezpłatny Przykłady i Aplikacje www.siemens.pl/s7-1200

Przykład 1 Komunikacja przez sieć Ethernet: wymiana danych pomiędzy dwoma

Przykład 1. Komunikacja przez sieć Ethernet: wymiana danych pomiędzy dwoma 1. Realizowane zadanie Podział na zadania Przez sieć Ethernet przesyłamy dane między dwoma sterownikami S7-1200 CPU. Rozpatrujemy dwa przypadki: Zadanie A Niezależnie od typu danych, należy przesłać dane o określonej długości z jednego S7-1200 CPU (PLC 1) do drugiego (PLC 2). Zadanie B Należy przesłać dane o dynamicznie zmiennej długości z jednego S7-1200 CPU (PLC 1) do drugiego (PLC 2). 1.2. Metody komunikacji Sterownik S7-1200 obsługuje następujące bloki komunikacyjne T przeznaczone do obsługi wymiany danych: TSEND_C i TRCV_C (z zintegrowanymi funkcjami połączenia i rozłączenia) TCON, TSEND, TRCV oraz TDISCON (z ręcznym łączeniem i rozłączaniem) Urządzenie S7-1200 obsługuje następujące protokoły ethernetowe: TCP (RFC 793) ISO-on-TCP (RFC 1006) Dane mogą być przesyłane do bloków komunikacyjnych z adresowaniem: bezwzględnym lub symbolicznym. Sposób rozwiązania zadania A Dane są wysyłane przez urządzenie PLC 1 i odbierane przez urządzenie PLC 2 za pośrednictwem: bloków komunikacyjnych T z integralnym zarządzaniem połączeniem (TSEND_C /TRCV_C), protokołu TCP, dwóch bajtów danych adresowanych bezwzględnie. Sposób rozwiązania zadania B Dane są wysyłane przez urządzenie PLC 1 i odbierane przez urządzenie PLC 2 za pośrednictwem: bloków komunikacyjnych T z ręcznym zarządzaniem połączeniem (TCON, TSEND, TRCV, TDISCON), protokołu ISO-on-TCP, trzyelementowej tablicy danych adresowanych symbolicznie. Sterowniki S7-1200 CPU 1214C są konfigurowane za pomocą pakietu STEP7 Basic V10.5. 42

1. Realizowane zadanie 1.3. Konfiguracja demonstracyjna Podstawową konfigurację przykładowego systemu przedstawiono na rysunku 1.1. Dwa komunikujące się ze sobą moduły CPU oraz komputer wykorzystywany do programowania sterowników z zainstalowanym oprogramowaniem STEP7 Basic V10.5 dołączono do przełącznika za pomocą kabli ethernetowych. Listę niezbędnych komponentów zamieszczono w rozdziale 1.4. Rys. 1.1. 1.4. Lista komponentów wykorzystanych w przykładzie Tab. 1.1. Wyroby firmy Siemens Nr Komponent Liczba MLFB/nr katalogowy Uwagi 1. S7-1200 PM1207 POWER SUPPLY 1 6EP1332-1SH71 2. S7-1200 CPU1214C 1 6ES7214-1AE30-0XB0 DC/DC/DC 3. CSM 1277 COMPACT SWITCH MODULE 1 6GK7277-1AA00-0AA0 4. S7-1200 CPU1214C 1 6ES7214-1HE30-0XB0 DC/DC/Relais 5 STEP 7 BASIC V10.5 1 6ES7822-0AA00-0YA0 Tab. 1.2. Akcesoria Nr Komponent Liczba Nr katalogowy Uwagi 1. PC/PG 1 Z interfejsem Ethernet 2. Kabel ethernetowy RJ45 2 Dostawca specjalistyczny 43

Przykład 1. Komunikacja przez sieć Ethernet: wymiana danych pomiędzy dwoma 2. Rozwiązanie zadania 2.1. Schemat połączeń Listę niezbędnych komponentów zamieszczono w rozdziale 1.4. Rys. 2.1. 2.2. Komunikacja ethernetowa S7-1200 Bloki komunikacyjne T sterownika S7-1200 umożliwiają nawiązanie jednocześnie do 8 połączeń w sieci Ethernet. Wersje protokołu Bloki komunikacyjne T zapewniające komunikację w sieci Ethernet obsługują następujące protokoły: Transport Connection Protocol (TCP): identyfikacja partnera połączenia za pomocą adresowania portów, ISO Transport over TCP (ISO-on-TCP): identyfikacja partnera połączenia za pomocą usługi Transport Service Access Point (TSAP). Za pomocą obu protokołów możliwa jest transmisja do 8192 bajtów na jedno zadanie. Podstawowa różnica między tymi protokołami polega na tym, że protokół ISO- -on-tcp umożliwia przesyłanie danych o dynamicznie zmiennej długości danych, natomiast protokół TCP pozwala przesyłać tylko dane o stałej długości. W następnych punktach przedstawiono bloki ze zintegrowaną oraz ręczną obsługą połączeń na podstawie przykładowych zadań. 44

2. Rozwiązanie zadania 2.2.1. Zintegrowana obsługa połączeń (zadanie A) Połączenie w sieci Ethernet z zintegrowaną obsługą połączeń: oprócz funkcji nadawania i odbioru każdy z bloków TSEND_C oraz TRCV_C realizuje dodatkowo funkcje łączenia i rozłączania. Na rysunku 2.2 jest widoczna struktura połączeń sieci Ethernet przy komunikacji z zintegrowaną obsługą połączeń dla zadania A. Sterownik PLC 1 wysyła dane z adresowaniem bezwzględnym do sterownika PLC 2 za pośrednictwem protokołu TCP (identyfikacja partnera komunikacyjnego za pomocą adresowania portów). Połączenie jest nawiązywane przy użyciu parametru CONT w trybie serwer-klient. Sterownik PLC 2 pasywnie oferuje swoje usługi (serwer), a sterownik PLC 1 aktywnie żąda nawiązania połączenia (klient). Po pomyślnym nawiązaniu połączenia jest ono podtrzymywane. Rys. 2.2. Informacja o połączeniu jest pamiętana w jednym bloku danych dla TSEND_C i w jednym bloku danych dla TRCV_C (zaadresowanych poprzez parametr CON- NECT). Zdefiniowany jest tu adres IP partnera komunikacji oraz używany protokół. Po stronie partnera komunikacji dane połączenia są pamiętane w analogiczny sposób. W razie wybrania innego protokołu, ustawienia powinny zostać zmienione także w bloku komunikacyjnym drugiego sterownika, co wymaga odpowiedniej modyfikacji w programie sterującym. Polecenia TSEND_C oraz TRCV_C są wykonywane asynchronicznie poprzez REQ lub EN_R. Podczas wykonywania zadania nadawania przy dodatnim zboczu sygnału REQ, nie jest wymagana gotowość bloku TRCV_C do odbioru (EN_R = 1), ponieważ dane są buforowane. 45

Przykład 1. Komunikacja przez sieć Ethernet: wymiana danych pomiędzy dwoma Dane te mogą być odebrane później w wyniku zezwolenia na odbiór (ustawienia EN_R = 1) (ale tylko ostatnio wysłane dane). Parametr DATA określa dane do wysłania lub skrzynkę odbiorczą za pomocą bezwzględnego adresu początkowego i długości. Zakończenie połączenia następuje po zresetowaniu parametru CONT. 2.2.2. Ręczna obsługa połączenia (zadanie B) Połączenie w sieci Ethernet z ręczną obsługą połączenia: wymiana danych za pośrednictwem bloków nadawania (TSEND) i odbioru (TRCV) wymaga nawiązania połączenia przez blok TCON, a do zakończenia transmisji jest wymagany blok TDISCON po każdej stronie kanału transmisyjnego. Rys. 2.3 Na rysunku 2.3 pokazano sposób realizacji transmisji ethernetowej z ręczną obsługą połączenia dla zadania B. Sterownik PLC 1 wysyła dane zaadresowane symbolicznie do sterownika PLC 2 za pośrednictwem protokołu ISO-on-TCP (identyfikacja partnera połączenia za pomocą TSAP). Na dodatnim zboczu sygnału REQ blok TCON próbuje nawiązać połączenie z partnerem (zdefiniowanym w bloku danych CONNECT, identyfikowanym przez ID). Po wykonaniu przez obydwu partnerów transmisji rozkazu REQ połączenie zostaje nawiązane i utrzymywane. Informacja o połączeniu (partner transmisji, wybrany protokół i ID połączenia) jest pamiętana w bloku danych połączenia (zaadresowanym przez parametr CON- NECT w bloku połączenia TCON). 46

2. Rozwiązanie zadania Blok nadawania (TSEND), blok odbioru (TRCV) oraz blok rozłączania TDISCON otrzymują informację o połączeniu jedynie przez przypisanie parametru ID połączenia do odpowiedniego parametru wejściowego ID bloku danych połączenia. Na dodatnim zboczu sygnału REQ blok TSEND wysyła symbolicznie zaadresowane dane DATA o długości LEN do partnera transmisji o identyfikatorze ID (zdefiniowanym w bloku połączenia TCON przez parametr CONNECT). Przesyłane dane są buforowane. Przy aktywnym zezwoleniu na odbiór (EN_R = 1) blok TRCV odbiera i zapamiętuje w parametrze DATA dane odebrane od partnera transmisji o identyfikatorze ID (zdefiniowanym w bloku połączenia TCON przez parametr CONNECT). Na dodatnim zboczu sygnału REQ blok TDISCON zamyka połączenie z partnerem transmisji scharakteryzowanym przez parametr połączenia ID. TDISCON musi być wykonany zarówno po stronie nadawania, jak i odbioru. 2.2.3. Parametryzacja bloku T W tabeli 2.1 zawarto przegląd wszystkich parametrów bloku komunikacyjnego T sterownika S7-1200. Więcej informacji można znaleźć w podręczniku systemowym S7-1200 (numer publikacji 36932465) oraz w pomocy dla STEP 7 Basic V10.5. Tab. 2.1. Typ parametru IN IN_ OUT OUT Parametr Typ danych TSEND_C TRCV_C TCON TSEND TRCV TDISCON Opis EN_R BOOL x Gotowość do odbioru (EN_REQ = 1) REQ BOOL x x x x Wykonanie zadania (dodatnie zbocze) ID połączenia ID WORD x x x x (przypisanie danych transmisji przez parametr CONNECT) Sterowanie CONT BOOL x x połączeniem (0: zakończ, 1: nawiąż i podtrzymuj) LEN INT x x x x Długość danych w bajtach CONNECT ANY x x x Wskaźnik do opisu połączenia Obszar danych (dane do wysłania lub DATA ANY x x x x odebrane z adresem początku i ew. długością) COM_RST BOOL x x Restart połączenia (dodatnie zbocze) DONE BOOL x x x x x Komunikat zakończenia NDR BOOL x (DONE/NDR = 1) BUSY BOOL x x x x x x Komunikat zajętości (BUSY = 1) ERROR BOOL x x x x x x Komunikat błędu (ERROR = 1) STATUS WORD x x x x x Status bloku RCVD_ Długość odebranych INT x x LEN danych w bajtach 47

Przykład 1. Komunikacja przez sieć Ethernet: wymiana danych pomiędzy dwoma Zapisywanie parametrów wyjściowych Parametry wyjściowe DONE, NDR, BUSY, ERROR, STATUS i RCVD_LEN są uaktualniane cyklicznie bez zapamiętywania. W celu sprawdzenia połączenia zalecane jest zapamiętanie wartości tych parametrów. W przykładowych programach informacja o statusie jest zapamiętywana w razie wystąpienia komunikatu błędu. Na rysunku 2.4 pokazano sposób zapamiętania danych STATUS przy uaktywnionym wyjściu ERROR sygnalizacji błędu w bloku odbiorczym TRCV_C (MW6: TRCV_C_ERROR_STATUS). Po uaktywnieniu komunikatu DONE w blokach odbiorczych TRCV_C i TRCV zapamiętywana jest także długość ostatnio odebranych danych oraz zliczane są wystąpienia komunikatu Done. Na rysunku 2.5 przedstawiono konfigurację licznika komunikatów DONE TRCV_ C_DONE_count oraz długości ostatnio odebranych danych TRCV_C_last_RCVD_ Rys. 2.4. Rys. 2.5. 48

2. Rozwiązanie zadania LEN dla bloku TRCV_C. Poza tym zliczane są także komunikaty BUSY dla każdego bloku. Na rysunku 2.6 pokazano licznik TRCV_C_BUSY_count w bloku TRCV_C. Wszystkie zapamiętane wartości i zawartość licznika można wyzerować za pomocą zmiennej Reset. Na rysunku 2.7 przedstawiono funkcję resetu dla bloku TRCV_C. Znacznik RE- SET_edge wyzwalania zboczem jest wykorzystany do zerowania zawartości licznika (patrz rysunki 2.5 i 2.6). Funkcja Reset pozostaje aktywna przez tylko jeden cykl. Rys. 2.6. Rys. 2.7. 49

Przykład 1. Komunikacja przez sieć Ethernet: wymiana danych pomiędzy dwoma 2.3. Przesyłanie danych Bloki komunikacyjne T zapewniają adresowanie bezwzględne lub symboliczne przesyłanych danych DATA. 2.3.1. Adresowanie bezwzględne Adresowanie bezwzględne bloków danych wymaga braku zaznaczenia właściwości Symbolic access only podczas tworzenia bloku PLC > Add new block oraz Data block (patrz rysunek 2.8). Rys. 2.8. Przy adresowaniu bezwzględnym w parametrze DATA jest ustalany wskaźnik do adresu początkowego wraz z informacją o długości danych. Dla adresowania bezwzględnego istotne jest ustawienie parametru LEN = 0. Jest to możliwe bezpośrednio przez wskaźnik w bloku parametrów DATA lub przy konfiguracji bloku (tutaj: TSEND_C_DB) w specyfikacji długości danych. Wprowadzona wartość jest następnie wykorzystana w reprezentacji wskaźnika. W tabeli 2.2 pokazano protokoły obsługujące transmisję danych o długości bezwzględnej. Tab. 2.2. Porównanie długości danych Obsługiwany protokół (TSEND_C/TSEND x TRCV_C/TRCV) > TCP < ISO_on_TCP = TCP/ISO_on_TCP 50

2. Rozwiązanie zadania Rys. 2.9. Przykład Transmisja danych, przy której bezwzględna długość danych przeznaczonych do wysłania przez bloki TSEND_C lub TSEND jest większa od rozmiaru skrzynki odbiorczej skonfigurowanej w bloku TRCV_C lub TRCV jest możliwa tylko dla protokołu TCP. Wartość bezwzględna długości wyspecyfikowana w bloku odbiorczym ogranicza objętość trasmitowanych danych. Jednakże protokół TCP umożliwia jedynie transmisję danych o statycznej długości. Transmisja danych o długości dynamicznie zmiennej jest możliwa tylko za pomocą adresowania symbolicznego obsługiwanego przez protokół ISO-on-TCP. 2.3.2. Adresowanie symboliczne Przesyłanie danych adresowanych symbolicznie wymaga zgodności struktur w zakresie nadawania i odbioru. Ustawienia dotyczące bloków danych (Symbolic access only włączone lub nie) nie mają znaczenia przy adresowaniu symbolicznym. Na rysunku 2.10 widać, że blok danych do wysłania można wybrać przez podwójne kliknięcie i otwarcie przyciskiem menu wyboru nazw symbolicznych. Menu 51

Przykład 1. Komunikacja przez sieć Ethernet: wymiana danych pomiędzy dwoma Rys. 2.10. wyboru elementów uzyskuje się po wpisaniu znaku kropki za nazwą symboliczną bloku danych. Długość wysyłanych danych można zmieniać za pomocą parametru LEN. Wartość LEN długości danych można parametryzować w postaci wartości stałej lub zmiennej. Przy modyfikacji długości wyrażonej w bajtach (parametr LEN) należy zapewnić transmisję tylko całych elementów. Gdy wartość LEN = 0 następuje przesłanie całego obszaru danych struktury lub tablicy wyspecyfikowanej w parametrze DATA. Przy transmisji tablic i struktur istnieje dodatkowa opcja dynamicznego definiowania długości w bloku nadawczym TSEND_C lub TSEND poprzez przypisanie parametrowi LEN wartości zmiennej. Należy wtedy wybrać wartość LEN = 0 w bloku odbiorczym TRCV_C lub TRCV. UWAGA Przy transmisji struktur danych (typ danych STRUCT) z dynamiczną długością danych i wykorzystaniem protokołu ISO-on-TCP, obszarem odbioru (parametr DATA bloku odbiornika TRCV lub TRCV_C ) powinien być blok danych bez włączonej właściwości Symbolic access only. 52

3. Konfiguracja 3. Konfiguracja 3.1. Instalacja i okablowanie sprzętu (warianty A i B) Tab. 3.1. Nr Instrukcja Uwaga/rysunek 1. Zamontuj zasilacz, urządzenia S7-1200 CPU oraz przełącznik na szynie DIN 2. Połącz kablami Ethernet RJ45 sterowniki i jednostkę Patrz rozdział Schemat połączeń programatora do przełącznika CSM 1277 3. Połącz wszystkie zaciski masy z uziemieniem Patrz rozdział Schemat połączeń 4. Połącz sterownik i przełącznik CSM 1277 z zasilaczem 24 Patrz rozdział Schemat połączeń V DC PM1207 5. Połącz zasilacz PM1207 z siecią zasilającą 230 V AC Patrz rozdział Schemat połączeń 6. Zainstaluj STEP 7 BASIC V10.5 w jednostce programatora 3.2. Konfiguracja sprzętowa/sieci (warianty A i B) Tab. 3.2. Nr Instrukcja Uwagi/rysunek 1. Otwórz SIMATIC STEP 7 Basic V10.5 wybierając Start > Totally Integrated Automation Portal V10 2. Utwórz nowy projekt podając odpowiednią nazwę oraz katalog i potwierdzając w polu Create 53

Przykład 1. Komunikacja przez sieć Ethernet: wymiana danych pomiędzy dwoma Tab. 3.2. cd. Nr Instrukcja Uwagi/rysunek 3. Przejdź do widoku Devices & Networks i wybierz Configure networks 4. W celu wprowadzenia urządzenia PLC 1 z katalogu sprzętu wybierz Unspecific CPU 1200 o numerze 6ES7 2XX-XXXX-XXXX podwójnym kliknięciem. Powtórz tę procedurę w celu wprowadzenia PLC2. Przejdź do widoku Device 5. Wybierz PLC_1 w celu detekcji konfiguracji sprzętu Wykryj konfigurację dołączonych urządzeń wybierając detect 54

3. Konfiguracja Tab. 3.2. cd. Nr Instrukcja Uwagi/rysunek 6. Wybierz odpowiedni model CPU z listy dostępnych urządzeń w docelowej podsieci. W celu identyfikacji, porównaj adres MAC lub włącz wskaźnik w postaci migającego wskaźnika LED ( Flash LED ). Rozpocznij wykrywanie sprzętu dla PLC 1 wybierając Load. Powtórz krok 5. dla PLC 2 oraz krok 6. wybierając następne dostępne urządzenie 7. Przejdź do widoku Network w celu skonfigurowania połączenia sieciowego 8. Użyj metody drag-anddrop do połączenia interfejsów sieci Ethernet obu CPU 55

Przykład 1. Komunikacja przez sieć Ethernet: wymiana danych pomiędzy dwoma 3.3. Komunikacja przez sieć Ethernet ze zintegrowanym zarządzaniem połączeniem (dla wariantu A) 3.3.1. Konfiguracja sterownika wysyłającego dane Tab. 3.3. Nr Instrukcja Uwagi/rysunek 1. Otwórz blok operacyjny Main [OB1] sterownika PLC 1 w folderze Program Blocks podwójnym kliknięciem. W polu Instructions > Extended instructions > Communications otwórz folder Open user communication i przeciągnij blok TSEND_C do sieci 1. Następuje automatyczna generacja bloku danych typu instance dla funkcji TSEND_ C, co należy potwierdzić OK 2. Otwiera się okno Connection parameter(s) TSEND_C_DB bloku danych. Wybierz PLC 2 jako partnera. Jako dane połączenia partnera wybierz <new> w celu utworzenia nowego bloku danych o nazwie PLC_2_ Conection_DB. Wybierz typ połączenia TCP 3. Utwórz blok danych źródłowych dla PLC 1 w następujący sposób: Wybierz Add new block Wybierz Data block Określ nazwę (tu: Source) Odznacz Symbolic access only Potwierdź przez OK 56

3. Konfiguracja Tab. 3.3. cd. Nr Instrukcja Uwagi/rysunek 4. W bloku danych Source utwórz dane do wysłania (tu: Byte i Char) z nazwą, typem danych oraz wartością początkową 5. Sparametryzuj blok nadawania TSEND_C. Dla bloków danych bez opcji Symbolic access only i LEN = 0 można określić DATA dane do wysłania w formie wskaźnika i długości. Kliknij dwukrotnie na TSEND_ C aby otworzyć blok danych TSEND_C_DB. Przejdź do pola wprowadzania DATA wybierając Configuration > Block parameter > Properties. Zainicjalizuj wskaźnik do skrzynki nadawczej DATA podając adres początkowy bloku danych Source (P#DB3. DBX0.0) oraz długość 2 BYTE 57

Przykład 1. Komunikacja przez sieć Ethernet: wymiana danych pomiędzy dwoma 3.3.2. Konfiguracja sterownika odbierającego dane Tab. 3.4. Nr Instrukcja Uwagi/rysunek 1. Otwórz blok operacyjny Main [OB1] sterownika PLC 2 w folderze Program Blocks podwójnym kliknięciem. W polu Instructions > Extended instructions > Communications otwórz folder Open user communication i przeciągnij blok TRCV_C do sieci 1. Następuje 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 połączenia partnera oraz TCP jako typ połączenia 3. Utwórz blok danych docelowych dla PLC 2 w następujący sposób: Add new block Wybierz Data block Określ nazwę (tu: Dest) Odznacz też Symbolic access only oraz potwierdź przez OK 58

3. Konfiguracja Tab. 3.4. cd. Nr Instrukcja Uwagi/rysunek 4. W bloku danych Dest utwórz dane do odbioru złożone z nazwy i typu danych (tu: Word) przesyłamy dane nadawane Byte i Char do pojedynczego słowa. 5. Sparametryzuj blok odbiorczy TRCV_C. Parametr LEN określający długość danych musi być równy 0. Zainicjalizuj wskaźnik do odebranych danych DATA podając adres początkowy bloku danych odebranych Dest oraz długość 1 słowa (P#DB3.DBX0.0 WORD 1) 59

Przykład 1. Komunikacja przez sieć Ethernet: wymiana danych pomiędzy dwoma 3.3.3. Załadowanie projektu do sterownika Tab. 3.5. Nr Instrukcja Uwagi/rysunek 1. Otwórz pole Network. Wybierz obydwa sterowniki. Kliknij prawym klawiszem i wybierz Download to device > All aby załadować cały projekt do sterowników 2. Uaktywnij wyświetlanie wszystkich dostępnych urządzeń. Wybierz jeden z wyświetlanych sterowników i użyj przycisku Load. Następuje kolejno załadowanie bloków programu do obu sterowników. Wybór CPU nie ma tutaj znaczenia 3. Połączenie wymaga, żeby adres IP jednostki PG/PC należał do tej samej podsieci co sterowniki. Można przypisać taki adres IP w programie STEP 7 BasicV10.5. W celu przypisania odpowiedniego adresu IP należy potwierdzić ten komunikat przez Yes 4. Następuje potwierdzenie przyporządkowania adresu IP jednostce PC/PG. Zamknij ten komunikat przez kliknięcie na OK 5. Po przeniesieniu wszystkich bloków programu do obu sterowników pojawia się okno Load results. Wybierz pola Start all aby ustawić obydwa sterowniki w trybie Run. Zakończ ładowanie wybierając pole Finish 60

3. Konfiguracja 3.3.4. Tworzenie tablic nadzoru Tab. 3.6. Nr Instrukcja Uwagi/rysunek 1. W oknie nawigacji projektu PLC_1 > Watch tables wybierz opcję Add new Watch Table 2. W tablicy nadzoru TSEND_C utwórz wszystkie parametry bloku nadawczego TSEND_C. Ponadto tablica ta zawiera zapamiętaną informację o statusie ostatniego błędu TSEND_C_ERROR_STATUS, liczników Done i Busy TSEND_C_BUSY_count, a także bit Reset służący do zerowania tych wartości. Utwórz dane Source. Byte oraz Source.Char do wysłania oraz kompletne słowo do wysłania o adresie %DB3.DW0 61

Przykład 1. Komunikacja przez sieć Ethernet: wymiana danych pomiędzy dwoma Tab. 3.6. cd. Nr Instrukcja Uwagi/rysunek 3. Podobnie jak w kroku 1., utwórz tablicę nadzoru TRCV_C dla PLC_2. Wybierz następujące elementy: Wszystkie parametry bloku odbiorczego TRCV_C Zapamiętany status błędu TRCV_C_ERROR_STATUS Długość w bajtach ostatniego odebranego komunikatu LAST_RCVD_ LEN, Done (TRCV_C_ DON_count) Licznik Busy TRCV_C_ BUSY_count Reset do zerowania tych wartości oraz element Word bloku odbiorczego Dest 4. Uaktywnij tablicę nadzoru dla każdego sterownika za pomocą przycisków Go online oraz Monitor all 62

3. Konfiguracja 3.3.5. Konfiguracja bloków komunikacyjnych Tab. 3.7. Nr Instrukcja Uwaga/rysunek 1. Początkowo wszystkie bloki komunikacyjne PLC_1 (górna tablica nadzoru TSEND_C) PLC_2 (dolna tablica nadzoru TRCV_C) mają status hex 7000 (brak aktywnych zadań), a zawartość elementów nadawania (%DB3.DW0) oraz odbierania (Dest.Word) jest różna 2. Kliknij prawym klawiszem i wybierz Modify > Modify to 1 aby ustalić parametr kontrolny TSEND_C_CONT 63

Przykład 1. Komunikacja przez sieć Ethernet: wymiana danych pomiędzy dwoma 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 także wartość parametru kontroli odbioru TRCV_C_CONT na 1 (patrz krok 2) 4. Po krótkiej fazie synchronizacji (status hex 7001 ), obydwa bloki komunikacyjne mają status hex 7004 (połączenie nawiązane). Dzięki nawiązaniu połączenia, zarówno blok nadajnika, jak i blok odbiorczy mają jedno wyjście w trybie Busy oraz jeden komunikat Done: TSEND_C_DONE_count TSEND_C_BUSY_count TRCV_C_DONE_count TRCV_C_Busy_count. Następnie ustaw parametr kontrolny TRCV_C_EN_R równy 1 (patrz krok 2) 64

3. Konfiguracja Tab. 3.7. cd. Nr Instrukcja Uwaga/rysunek 5. Bit Busy TRCV_C_BUSY jest znowu ustawiony i blok TRCV_C jest teraz gotowy do odbioru (status: hex 7002 ). Rozpocznij zadanie transmisji ustawiając TSEND_C_REQ na wartość 1 (patrz krok 2) 6. Wartość FF5A (hex) słowa %DB3.DW0 w bloku nadajnika Source jest przekazywana do Dest. Obszar odbioru słowa i parametr Last_RCVD_LEN pokazują odebraną liczbę bajtów 2. Każdy z następujących liczników jest inkrementowany o jedynkę: TSEND_C_DONE_count TSEND_C_BUSY_count TRCV_C_DONE_count TRCV_C_BUSY_count Blok TRCV_C jest teraz gotowy do odbioru następnego komunikatu (status: hex 7002 ) 65

Przykład 1. Komunikacja przez sieć Ethernet: wymiana danych pomiędzy dwoma 3.4. Komunikacja przez sieć Ethernet z ręczną obsługą połączenia (dla wariantu B) 3.4.1. Blok TCON Blok połączenia TCON dla komunikacji w sieci Ethernet z ręcznym nawiązywaniem połączenia musi zostać wywołany zarówno po stronie nadajnika, jak i odbiornika. Tab. 3.8. Nr Instrukcja Uwagi/rysunek 1. Otwórz blok operacyjny Main [OB1] dla PLC_1 w folderze Program blocks podwójnym kliknięciem. W menu Instructions > Extended instructions > Communications > Open user communications otwórz folder Others i przeciągnij blok TCON do bloku operacyjnego. Następuje automatyczna generacja bloku danych typu instance dla funkcji TCON, co należy potwierdzić OK 2. Otwiera się okno Connection Parameter(s) dla bloku danych typu instance TCON_DB. Wybierz PLC_2 jako partnera. Wybierz poprzednio wygenerowany blok danych jako dane połączenia partnera. Jako ID połączenia lokalnego i partnera wybierz 2, aby uniknąć nałożenia się ID połączonych bloków komunikacyjnych. Określ nazwy bloków danych dla połączenia następująco: o PLC_1_Connection_DB_ Others o PLC_2_Connection_DB_ Others Wybierz jako typ połączenia ISO-on-TCP 66

3. Konfiguracja Tab. 3.8. cd. Nr Instrukcja Uwagi/rysunek 3. Sparametryzuj blok połączenia TCON. Przy ID i CONNECT automatycznie są uaktywniane opcje z bloku danych typu instance parametrów połączenia TCON_DB (ID = 2 oraz CONNECT = PLC_1_ Connection_DB_Others) 4. W OB1 dla PLC_2, wywołaj blok połączenia TCON zgodnie z krokami 1 3. TCON jest identycznie sparametryzowany (ID = 2), ale parametry połączenia dla bloku danych PLC_2_Connection_DB_ Others są podane na wejście CONNECT 67

Przykład 1. Komunikacja przez sieć Ethernet: wymiana danych pomiędzy dwoma 3.4.2. Blok TSEND Po nawiązaniu połączenia z partnerem transmisji, blok TSEND rozpoczyna przesyłanie danych. Po stronie odbiorczej TSEND wymaga bloku TRCV. Wymaganym protokołem jest ISO-on-TCP. W przeciwieństwie do TCP, protokół ten pozwala na dynamiczną zmianę długości transmitowanych danych. Tab. 3.9. Nr Instrukcja Uwagi/rysunek 1. W bloku danych Source utwórz tablicę o trzech elementach typu Int z przypisanymi wartościami początkowymi w postaci danych do wysłania 2. Sparametryzuj blok TSEND nadajnika. Jako wartość ID wybierz 2 ustalone w tabeli 3.8. W celu dynamicznej zmiany długości danych, wybierz zmienną (tu TSEND_ LEN) dla LEN. W polu DATA wybierz Array tablicę utworzoną w bloku danych Source (oznaczenie: Source. Array). 68

3. Konfiguracja 3.4.3. Blok TRCV Za pomocą bloku TRCV następuje odbiór danych przekazywanych przez istniejące połączenie komunikacyjne. Blok TRCV jest wykonywany asynchronicznie. Tab. 3.10. Nr Instrukcja Uwaga/rysunek 1. Otwórz blok operacyjny Main [OB1] dla PLC_2 w folderze Program Blocks podwójnym kliknięciem. W menu Instructions > Extended instructions > Communications > Open user communications otwórz folder Others i przeciągnij blok TRCV do bloku operacyjnego. Następuje automatyczna generacja bloku danych typu instance dla funkcji TRCV, co należy potwierdzić OK 2. W bloku danych docelowych Dest utwórz tablicę taką samą jak w bloku danych Source 3. Sparametryzuj blok odbiorczy TRCV. Jako ID wybierz wartość ustaloną w tabeli 3.8. Jako długość danych odebranych LEN wybierz 0. Długość transmitowanych danych jest wtedy określona w bloku TSEND. W polu DATA wybierz Array tablicę utworzoną w bloku danych Dest (oznaczenie: Dest.Array) 69

Przykład 1. Komunikacja przez sieć Ethernet: wymiana danych pomiędzy dwoma 3.4.4. Blok TDISCON Blok TDISCON, służący do rozłączania transmisji ethernetowej z ręcznym nawiązywaniem połączenia, musi być wywołany zarówno po stronie nadawczej, jak i odbiorczej. Tab. 3.11. Nr Instrukcja Uwaga/rysunek 1. Otwórz blok operacyjny Main [OB1] dla PLC_1 w folderze Program Blocks podwójnym kliknięciem. W menu Instructions > Extended instructions > Communications > Open user communications otwórz folder Others i przeciągnij blok TDISCON do bloku operacyjnego. Następuje automatyczna generacja bloku danych typu instance dla funkcji TDISCON, co należy potwierdzić OK 2. Sparametryzuj blok rozłączania TDISCON. Wybierz ponownie jako ID połączenia 2 ustawione w tabeli 3.8. Powtórz poprzednie dwa kroki dla PLC_2. Jeszcze raz załaduj zmodyfikowany projekt do sterowników (patrz tabela 3.5) oraz utwórz dla każdego sterownika nową tablicę nadzoru transmisji ethernetowej S7-1200 z ręczną obsługą połączenia (tu: TSEND i TRCV) 70

3. Konfiguracja 3.4.5. Kontrola bloków komunikacyjnych Tab. 3.12. Nr Instrukcja Uwagi/rysunek 1. Początkowo wszystkie bloki komunikacyjne PLC_1 (lewa tablica nadzoru TSEND): TCON TSEND TDISCON PLC_2 (prawa tablica nadzoru TRCV): TCON TRCV TDISCON mają status hex 7000 (brak aktywnych zadań) i zawartość elementów tablic nadawania (Source.Array) oraz odbioru (Dest.Array) jest różna 2. W celu nawiązania połączenia musi zostać wykonany blok TCON u obu partnerów transmisji za pośrednictwem dodatniego zbocza sygnału na wejściu REQ. Kliknij prawym klawiszem myszy i wybierz Modify > Modify to 1 aby ustawić parametr kontrolny TCON_REQ 3. Zostaje ustawiony bit Busy TCON_BUSY i blok połączenia TCON przechodzi do stanu hex 7002 (connection is being established). Teraz ustaw także żądanie nawiązania transmisji TCON_ REQ w tablicy nadzoru TRCV sterownika odbiorczego PLC_2 (patrz krok 2) 71

Przykład 1. Komunikacja przez sieć Ethernet: wymiana danych pomiędzy dwoma Tab. 3.12. cd. Nr Instrukcja Uwagi/rysunek 4. Po zakończeniu krótkiej fazy synchronizacji (status: hex 7002 ) wyjścia TCON_DONE przyjmują wartość 1. Bloki TCON mają status hex 0000 (połączenie zostało nawiązane pomyślnie) 5. Wybrany protokół komunikacyjny ISO-on-TCP obsługuje transmisję z dynamiczną długością danych. Przesłane będą dwa pierwsze elementy (dane typu integer = 2 bajty) tablicy źródłowej Source_ sym.array. Wstaw 4 bajty jako wartość kontrolną dla TSEND_LEN i potwierdź tę wartość kliknięciem prawego klawisza myszy Modify >Modify now 6. Rozpocznij wykonywanie zadania nadawania ustalając wartość TSEND_REQ na 1 (patrz krok 2). Ustawiając wyjście TSEND_ DONE, blok nadajnika sygnalizuje status hex 0000 (zadanie nadawania zakończone bez błędu), mimo że blok odbiornika TRCV nie został jeszcze uaktywniony. Dane do przesłania zostały zapamiętane w buforze, z którego funkcja TRCV będzie czytać dane po zezwoleniu na odbiór. Ustaw zezwolenie na odbiór TRCV_EN_R 72

3. Konfiguracja Tab. 3.12. cd. Nr Instrukcja Uwagi/rysunek 7. Dane 1 i 2 zawarte w pierwszych dwóch elementach tablicy zostały przesłane do tablicy Dest.Array odbiornika, a parametr TRCV_Last_RCVD_ LEN pokazuje liczbę odebranych bajtów równą 4. Licznik TRCV_NDR_count sygnalizuje wartością 1 pomyślne odebranie danych, zawartość TRCV_BUSY_count wynosi 2, a bieżący tryb Busy (TRCV_BUSY). Blok TRCV jest gotowy do przyjęcia następnego komunikatu (status: hex 7002 ) 8. W celu przesłania całej tablicy Source_sym.Array można wpisać całkowitą długość (tu: 6 bajtów) do TSEND_LEN lub po prostu ustawię wartość na 0. Dalej zrestartuj zadanie nadawania dodatnim zboczem TSEND_REQ (ponowne resetowanie i ustawianie). 73

Przykład 1. Komunikacja przez sieć Ethernet: wymiana danych pomiędzy dwoma Tab. 3.12. cd. Nr Instrukcja Uwagi/rysunek 9. Dodatkowo, tym razem został wysłany także trzeci element Dest.Array[3] tablicy. Parametr TRCV_Last_RCVD_ LEN pokazuje liczbę odebranych bajtów 6. Liczniki TRCV_NDR_ count i TRCV_BUSY_count zostały inkrementowane o jeden. Blok TRCV jest gotowy do odbioru następnego komunikatu (status: hex 7002 ). 10. Aby zakończyć połączenie komunikacyjne z ręczną obsługą połączeń należy ustawić bit TDISCON_REQ w obu sterownikach. Połączenie może zostać wznowione przez TCON tylko po pomyślnym jego zakończeniu (TDISCON_DONE). Przy aktywnych połączeniach bloków TCON_REQ, TSEND_ REQ lub TRCV_EN_R, bloki te generują komunikaty błędów, gdy połączenie jest zakończone. 4. Elementy programu W prezentowanym przykładzie są używane kody programów przedstawione w tabeli 4.1. Można je ściągnąć w postaci skompresowanej z miejsca, w którym znajduje się dokumentacja, a następnie otworzyć w opisanym programie. Tab. 4.1. Nr Nazwa pliku Zawartość 1. 2. CE-X17_EthernetCom_S7-1200_ S7-1200_A.zip CE-X17_EthernetCom_S7-1200_S7-1200_A.ap10 CE-X17_EthernetCom_S7-1200_ S7-1200_B.zip CE-X17_EthernetCom_S7-1200_S7-1200_B.ap10 Plik zip zawiera projekt STEP 7 Basic V10.5 dla zadania A Plik zip zawiera projekt STEP 7 Basic V10.5 dla zadania B 74