RAPORT Z PRZEBIEGU BADAŃ PIERWSZEJ GRUPY PROBLEMOWEJ



Podobne dokumenty
1. Cel ćwiczenia. Celem ćwiczenia jest zestawienie połączenia pomiędzy dwoma sterownikami PLC za pomocą protokołu Modbus RTU.

Uniwersalny Konwerter Protokołów

DigiPoint mini Karta katalogowa DS 6.00

Sieć przemysłowa Genius Rew. 1.1

DigiPoint Karta katalogowa DS 5.00

INFORMATOR TECHNICZNY GE FANUC. Zalecana konfiguracja systemu gorącej rezerwacji Max-ON

1.1 SCHEMATY DLA PROJEKTANTÓW

Materiały dodatkowe Krótka charakterystyka protokołu MODBUS

Konfigurowanie komunikacji w protokole EGD w sterownikach PLC, kontrolerach PAC i układach wejść/wyjść rozproszonych GE Fanuc

INFORMATOR TECHNICZNY GE IP. Zalecana konfiguracja systemu gorącej rezerwacji Hot-Standby Redundancy w oparciu o kontrolery PACSystems

Zygmunt Kubiak Instytut Informatyki Politechnika Poznańska

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

1.10 MODUŁY KOMUNIKACYJNE

Politechnika Śląska w Gliwicach Instytut Automatyki 2005/2006

Politechnika Gdańska. Gdańsk, 2016

asix4 Podręcznik użytkownika SRTP - drajwer protokołu SRTP Podręcznik użytkownika

swobodnie programowalny sterownik

Komunikacja w mikrokontrolerach Laboratorium

Zadania do ćwiczeń laboratoryjnych Systemy rozproszone automatyki - laboratorium

Moduł Ethernetowy EL-ETH. Instrukcja obsługi

Informator techniczny

Opracował: Jan Front

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

Ethernet. Ethernet odnosi się nie do jednej, lecz do wielu technologii sieci lokalnych LAN, z których wyróżnić należy cztery podstawowe kategorie:

Rozproszony system zbierania danych.

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

Zastosowania mikrokontrolerów w przemyśle

Industrial Ethernet Dokumentacja techniczna połączenia Sterowniki S7-400(300) firmy Siemens - System PRO-2000 firmy MikroB

INFORMATOR TECHNICZNY GE FANUC

Opracowanie ćwiczenia laboratoryjnego dotyczącego wykorzystania sieci przemysłowej Profibus. DODATEK NR 4 Instrukcja laboratoryjna

Ogólne przeznaczenie i możliwości interfejsu sieciowego przepływomierza UniEMP-05 z protokołem MODBUS. ( )

Modularny system I/O IP67

Sterowniki Programowalne (SP) - Wykład #1 Wykład organizacyjny

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

Sterowania rozproszone z wykorzystaniem protokołu EGD (Ethernet Global Data)

SiMod-X-(A1) Przetwornik parametrów powietrza z interfejsem RS485 (MODBUS RTU) oraz wyjściem analogowym (dotyczy wersji -A1)

Akademia Techniczno-Humanistyczna w Bielsku-Białej

JĘZYKI PROGRAMOWANIA STEROWNIKÓW

Konfigurowanie modułu BK9050 firmy Beckhoff wprowadzenie

KARTA KATALOGOWA. Koncentrator komunikacyjny dla zespołów CZAZ ZEG-E EE426063

Ethernet w sterownikach PLC


instrukcja instalacji modemu SpeedTouch 605s

Moduły kontrolno pomiarowe iologik. Marcin Krzewski

Katedra Inżynierii Systemów Sterowania WEiA PG. Przemysłowe Sieci Informatyczne Laboratorium

sterownik programowalny z kolorowym wyświetlaczem

Politechnika Białostocka Wydział Elektryczny Katedra Automatyki i Elektroniki

Konfiguracja sterowników Horner APG do pracy w trybie Modbus RTU Master

MiniModbus 4DO. Moduł rozszerzający 4 wyjścia cyfrowe. Wyprodukowano dla. Instrukcja użytkownika

SM211 RS485 - JBUS/MODBUS dla SM103E. Æ Instrukcja obsługi

Przemysłowe Sieci Informatyczne

dokument DOK wersja 1.0

Kurs Certyfikowany Inżynier Sieci PROFIBUS DP. Spis treści. Dzień 1

Instrukcja do oprogramowania ENAP DEC-1

Funkcje sterownika CellBOX-UxR ModBUS RTU

LEKCJA TEMAT: Zasada działania komputera.

Automatyka przemysłowa na wybranych obiektach. mgr inż. Artur Jurneczko PROCOM SYSTEM S.A., ul. Stargardzka 8a, Wrocław

IV - INSTRUKCJE SIECIOWE SPIS TREŚCI: 1. Charakterystyka protokołu komunikacyjnego PPI Charakterystyka interfejsu MPI...5

Informator techniczny

Instrukcja użytkownika KRISTECH,

Instrukcja MM-717 Tarnów 2010

Serwery OPC UA 1. SERWER OPC UA DLA CONTROL

Konfiguracja i programowanie sterownika GE Fanuc VersaMax z modelem procesu przepływów i mieszania cieczy

Protokoły sieciowe - TCP/IP

Kurs Projektowanie i programowanie z Distributed Safety. Spis treści. Dzień 1. I Bezpieczeństwo funkcjonalne - wprowadzenie (wersja 1212)

SM210 RS485 - JBUS/MODBUS dla SM102E. Æ Instrukcja obsługi

Siemens Simatic S7-300 Informacje podstawowe o sterowniku programowalnym

Wykład I. Podstawowe pojęcia. Studia Podyplomowe INFORMATYKA Architektura komputerów

Instrukcja integracji systemu RACS 4 z centralami alarmowymi INTEGRA firmy SATEL

Konwerter RS-485->Ethernet [TCP/IP] CN-ETH-485 INSTRUKCJA [konfiguracja urządzenia do współpracy z programem MeternetPRO]

Tytuł: Instrukcja obsługi Modułu Komunikacji internetowej MKi-sm TK / 3001 / 016 / 002. Wersja wykonania : wersja oprogramowania v.1.

HYDRO-ECO-SYSTEM. Sieciowe systemy monitoringu pompowni wykonane w technologii

Podstawy Projektowania Przyrządów Wirtualnych. Wykład 9. Wprowadzenie do standardu magistrali VMEbus. mgr inż. Paweł Kogut

Instrukcja użytkownika KRISTECH, 2016

MODEL WARSTWOWY PROTOKOŁY TCP/IP

Przesyłania danych przez protokół TCP/IP

2.7 MODUŁY KOMUNIKACYJNE

5R]G]LDï %LEOLRJUDğD Skorowidz

Podstawy Informatyki. Inżynieria Ciepła, I rok. Wykład 13 Topologie sieci i urządzenia

ht25 PRZYKŁAD ZASToSoWAnIA P18S rs-485 ARCH Ethernet www/ ftp / smtp Ethernet TCP IP Ethernet/ sieć wewnętrzna magazyn IP:

IC200UDR002 ASTOR GE INTELLIGENT PLATFORMS - VERSAMAX NANO/MICRO

Dodawanie kamer w rejestratorach z PoE

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

Mini Modbus 1AI. Moduł rozszerzający 1 wejście analogowe, 1 wyjście cyfrowe. Wyprodukowano dla

INSTRUKCJA OBSŁUGI. KONWERTERA USB/RS232 - M-Bus

Sieci Komputerowe Modele warstwowe sieci

1. Protokoły komunikacyjne w sieciach przemysłowych

SIEĆ ETHERNET INDUSTRIAL

Architektura komputerów. Układy wejścia-wyjścia komputera

Artykuł : Aktualizacja ( Cscape 9.70 )

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

AST-CON-485E Konwerter Modbus TCP - Modbus RTU

Katedra Systemów Cyfrowego Przetwarzania Sygnałów

Warstwy i funkcje modelu ISO/OSI

RS485 MODBUS Module 6RO

Spis treści. 1 Moduł Modbus TCP 4

Wprowadzenie. Dariusz Wawrzyniak. Miejsce, rola i zadania systemu operacyjnego w oprogramowaniu komputera

asix4 Podręcznik użytkownika CtSNPX - drajwer protokołu SNPX sterowników GE Fanuc Podręcznik użytkownika

Magistrala. Magistrala (ang. Bus) służy do przekazywania danych, adresów czy instrukcji sterujących w różne miejsca systemu komputerowego.

Transkrypt:

RAPORT Z PRZEBIEGU BADAŃ PIERWSZEJ GRUPY PROBLEMOWEJ Temat zadania problemowego Wyznaczenie czasu realizacji transakcji wymiany danych w rozproszonych systemach sterowania czasu rzeczywistego z uwzględnieniem technologii IT w oparciu o model sieciowy typu Klient-Serwer. Raport opracował dr inż. Marcin Sidzina Zakład Mechatroniki Katedra Podstaw Budowy Maszyn Akademia Techniczno-Humanistyczna w Bielsku-Białej ul. Willowa 2 43-300, Bielsko-Biała mail: msidzina@ath.bielsko.pl Pomiary wykonywano w Laboratorium Zakładu Mechatroniki, Katedry Podstaw Budowy Maszyn przez uczestników projektu : Paweł Sadlik, Bartłomiej Tomczyk, Marcin Sidzina W ramach projektu przeprowadzono pomiary czasu trwania transakcji wymiany danych na zaproponowanym systemie monitoringu i sterowania. Wynikiem tych badań są czasy trwania transakcji oraz wnioski dotyczące zmian w zaproponowanym rozwiązaniu. Pozostałe elementy raportu są fragmentami innych opracowań (patrz literatura), z których korzystali wykonawcy projektu.

SPIS TREŚCI SPIS TREŚCI... 2 1. Zadanie problemowe... 3 2. Komunikacja typu MASTER-SLAVE protokół MODBUS/RTU... 7 2.1. Moduły do komunikacji szeregowej w PACSystems RX3I... 8 2.1.1. Konfiguracja stacji Master dla sieci MODBUS.... 8 3. Pomiary dla MODBUS/RTU... 11 3.1. Metoda pomiaru czasu trwania transakcji wymiany danych.... 11 3.2. Wyniki pomiaru dla stanowiska z Rys. 2... 12 4. Komunikacja typu KLIENT -SERWER protokół MODBUS/TCP... 15 4.1. Moduł komunikacyjne ETM001 dla sieci ETHERNET... 19 4.1.1. Bity statusowe dla interfejsu sieci... 20 4.1.2. Stanowisko badawcze... 20 4.1.3. Programy uruchamiający komunikację w protokole MODBUS/TCP dla modułu ETM001 w PACSystems RX3I... 22 4.2. Wyniki pomiaru dla stanowiska z Rys. 2... 25 4.3. Pomiary dla urządzenia posiadającego dwa porty komunikacyjne RS-485 oraz 26 4.4. Testy GATEWAY pomiędzy MODBUS/RTU a MODBUS/TCP... 27 5. Podsumowanie... 30 6. DODATEK A badania oscyloskopem (MODBUS/RTU)Błąd! Nie zdefiniowano zakładki. 7. Literatura... 35 2

1. Zadanie problemowe Wyznaczenie czasu realizacji transakcji wymiany danych w rozproszonych systemach sterowania czasu rzeczywistego z uwzględnieniem technologii IT w oparciu o model sieciowy typu Klient-Serwer. Stale wzrastająca niezawodność i moc obliczeniowa systemów komputerowych skłania do szerszego ich stosowania w przemyśle. Systemy komputerowe realizują bardzo odpowiedzialne zadania a współczesna technologia stawia coraz poważniejsze wymagania związane przede wszystkim z gwarantowanym i nieprzekraczalnym czasem realizacji pojedynczego cyklu sterowania bądź regulacji. To właśnie zmusza do przeprowadzania bardzo szczegółowej analizy możliwości systemów IT do pełnienia roli systemów nadzorczo monitorujących. Tym bardziej, że owe systemy z punktu widzenia informatyki, są klasycznymi systemami rozproszonymi wykorzystującymi sieć komputerową jako podstawowe medium wymiany informacji, zaś typowe systemy czasu rzeczywistego zawierają podsystemy kontrolująco-sterujące, do których zalicza się na przykład specjalizowane kontrolery komputerowe, a także podsystemy kontrolowane i sterowane. Obie grupy podsystemów podlegają silnej interakcji, którą można opisać trzema operacjami; zbieranie danych z warstwy fizycznej obiektu, natychmiastowe przetwarzanie zebranych danych i ewentualne uruchamianie procesów obliczeniowych (algorytmów). Odpowiedź systemu jest skierowana do warstwy fizycznej obiektu. W ramach projektu przeprowadzono badania, wynikiem których powstała wiedza ekspercka dotycząca czasu realizacji transakcji wymiany danych w systemie sterowania opartym o technologię oraz RS-485 dla zaproponowanego stanowiska badawczego, będącego systemem monitoringu i sterowania dla szaf sterowniczych w rozdzielnicach niskiego i średniego napięcia. Wynikiem pomiarów jest również zaproponowanie odpowiedniej konfiguracji scenariusza wymian w systemie oraz zaproponowane modyfikacje w budowie nowych projektowanych systemów nadzorczo-kontrolnych. Rozproszone systemy monitoringu i sterowania znajdują szerokie zastosowanie w różnego rodzaju rozdzielnicach elektrycznych. Rozdzielnice elektryczne są elementami sieci elektrycznej (instalacji). Zawierają one urządzenia, które służą do załączania, rozłączania obwodów elektrycznych. Często elementy te współpracują z urządzeniami sterowniczymi np. takimi jak styczniki oraz elementami pomiarowymi czy ochronnymi (różnego rodzaju bezpieczniki i wyłączniki różnicowoprądowe). W niektórych przypadkach w rozdzielnicach stosowane są układy regulacyjne. Omawiany problem dotyczy wyznaczeniu czasu transakcji wymiany danych w systemie monitoringu i sterowania dla rozdzielnic elektrycznych. System ten musi być systemem czasu rzeczywistego. Zadaniem takiego systemu jest ciągłe i cykliczne przetwarzanie zdarzeń. Zdarzenia te pojawiają się na wejściu systemu, którego zadaniem jest wygenerowanie odpowiedzi (zdarzenia) na wyjściu. Czas reakcji systemu na zdarzenie zewnętrzne jest ściśle uwarunkowany czasowo [9], [21], [22]. Można rozróżnić trzy podgrupy systemów czasu rzeczywistego: - Hard Real-Time System o ostrych wymaganiach czasowych. - Firm Real-Time System o mocnych ograniczeniach czasowych. - Soft Real-Time System o łagodnych ograniczeniach czasowych.. 3

Każdy system, który jest w stanie wykonać zadanie w pewnym nieprzekraczalnym czasie, może być nazwany systemem czasu rzeczywistego. Oznacza to, że systemy takie muszą gwarantować nieprzekraczalność czasu reakcji, niezależnie od ciągu zdarzeń obiektowych. Dotrzymanie determinizmu czasowego jest podstawą do poprawnego funkcjonowania każdego systemu czasu rzeczywistego, niezależnie czy jest to pojedynczy sterownik PLC, czy też ich grupa połączona w rozproszony system sterowania. Wiadomym jest [6], [7], że rozproszone systemy sterowania są systemami składającymi się z grupy niezależnych urządzeń, pracujących pod kontrolą własnych systemów operacyjnych. Urządzenia te mogą być w pełni autonomiczne, wykonują własny (wbudowany) algorytm sterowania, na tych samych lub różnych obiektach sterowania. System ten może być rozległy terytorialnie np.: huty, elektrownie, oczyszczalnie ścieków, budynki,. Mogą one zajmować niewielki obszar np.: robot mobilny, samochód, rozdzielnice elektryczne itp. [21], [24], [25]. Głównym warunkiem istnienia rozproszonego systemu sterowania jest podłączenie wszystkich urządzeń do szyny komunikacyjnej (sieci komputerowej), umożliwiającej nawiązywanie komunikacji i przesyłanie danych pomiędzy nimi. Komunikacja w rozproszonym systemie sterowania służy zarówno do wymiany istotnych danych procesowych (dyskretnych i analogowych) pomiędzy urządzeniami sterującymi i wykonawczymi, jak również do wymiany danych pomiędzy aparaturą sterującą oraz urządzeniami sterującymi i stacjami kontrolno nadzorczymi [7]. Głównym zadaniem wykonywanym w grupie problemowej, było wyznaczenie czasu trwania transakcji wymiany danych, (czyli czasu reakcji poszczególnych urządzeń na żądanie zapisu lub odczytu danych, pochodzące z systemu komunikacyjnego) pomiędzy urządzeniami wyposażonymi w odpowiednie interfejsy komunikacyjne. Firma AF SEKO Sp. z o.o zgłosiła wcześniej zainteresowanie współpracą z naukowcami, zajmującymi się szeroko rozumianymi sieciami komputerowymi, w celu rozwiązania problemu dotyczącego określenia czasu trwania transakcji wymiany danych w projektowanym systemie komputerowym. Przedstawiony system był systemem rozproszonym, w którym urządzenia komunikowały się w oparciu o protokół MODBUS/RTU poprzez interfejs RS-485. Układ wyposażony był w sterowniki PLC (ang. Programmable Logic Controller) GE Fanuc serii VersaMax jako urządzenia nadrzędne (MASTER). Wprowadzenie na rynek nowych systemów sterowania GE Fanuc PACSystems, wprowadziło możliwość zastosowania nowych rozwiązań sprzętowych w układach kontrolno pomiarowych dla rozdzielnic elektrycznych. W trakcie trwania projektu przedstawiono rozwiązanie rozproszonego systemu monitoringu (Rys. 1), zbudowanego w oparciu o sterowniki automatyki PAC (ang. Programmable Automation Controllers). 4

Master RS-485 MODBUS/RTU Slave Master RS-485 MODBUS/RTU Slave Slave Slave Slave Slave - MODBUS/TCP Rys. 1. Rozproszony system monitoringu i sterowania, przeznaczony do badań czasu trwania transakcji wymiany danych. 5

Do badań przeznaczono następujące elementy systemu: - GE Multilin F650NPC Bay Controller, - GE Multilin F650 MAB Bay Controller, - GE Multilin MIF II Feeder Managment Relay - Diris A20 - NIU PACSystems RX3i z modułem IC695CMM004 dla transmisji szeregowej oraz z modułem IC695ETM001 dla komunikacji w sieci. W celu przeprowadzenia badań stanowisko zostało podzielone na mniejsze elementy. Pomiary zostały wykonane z urządzeniami wyposażonymi wyłącznie w komunikację po RS-485 w protokole MODBUS/RTU, następnie kontynuowano pomiary z urządzeniami posiadającymi możliwość komunikacji w standardzie z protokołem MODBUS/TCP. 6

2. Komunikacja typu MASTER-SLAVE protokół MODBUS/RTU W sieciach MASTER-SLAVE, których podstawową cechą jest możliwość bezpośredniej wymiany informacji pomiędzy stacją MASTER a stacją SLAVE, istnieją dwa podstawowe typy wymian wyzwalanych [7]: - zapytanie/polecenie odpowiedź, jest to wymiana informacji z wybraną stacją abonencką SLAVE; w tym przypadku, jeśli wymiana zawiera żądanie musi jej towarzyszyć odpowiedź, - rozgłoszenie bez odpowiedzi ; jednostka MASTER wysyła ramkę rozgłoszenia do wszystkich abonentów. Istotną cechą sieci o dostępie MASTER-SLAVE jest to, że realizacja wszystkich wymian konfigurowania jest w stacji MASTER. W stacji tworzony jest tak zwany scenariusz wymian, który następnie jest realizowany przez koprocesor. Należy przyjąć, że czas trwania transakcji wymiany danych można wyliczyć z zależności [18]: TW ZPO ZM PM T PR TTR TDT TAR TAS T T 2, (1) gdzie: T - W ZPO czas wykonania wymiany zapytanie/polecenie-odpowiedź, T ZM T AS T PM T PR T TR T DR T AR - czas od momentu zgłoszenia wymiany w trakcie trwania fazy cyklu T AP do momentu rozpoczęcia fazy komunikacji T K, - czas trwania cyklu stacji SLAVE. - czas od momentu rozkodowania informacji przez koprocesor stacji MASTER do momentu przyjęcia i jej wykorzystania w aplikacji stacji MASTER. - czas trwania przygotowania ramki, - czas trwania transmisji ramki, - czas trwania detekcji ramki, - czas trwania analizy ramki. 7

2.1. Moduły do komunikacji szeregowej w PACSystems RX3I PACSystems RX3i posiadają dwa moduły IC695CMM002 i IC695CMM004 do komunikacji szeregowej. Moduł IC695CMM002 dostarcza dwa niezależne izolowane porty komunikacyjne (RJ-45). W systemie może być zamontowanych do sześciu modułów zainstalowanych w głównej kasecie sterownika. Każdy port może być konfigurowany jako MODBUS Master, MODBUS Slave lub Serial I/O protocol. Drugi moduł IC695CMM004 dostarcza cztery niezależne porty komunikacyjne (RJ-45) do komunikacji szeregowej. [32] Moduły te muszą być umieszczone w uniwersalnej kasecie RX3i z CPU z wersją firmware 3.83 lub wersji późniejszej. Pracuje również z NIU (interfejs komunikacyjny sieci ). Konfigurację można wykonać z Proficy Machine Edition od wersji 5.5 z Service Pack 2 SIM 4. [32] Każdy port komunikacyjny modułu może pracować w standardach RS-232, RS- 422 oraz RS-485. Dla każdego portu można skonfigurować nie więcej niż 64 wymiany zapytanie/polecenie odpowiedź. [32] Na płycie czołowej modułu znajdują się diody sygnalizujące pracę modułu: - Dioda MODULE OK jest wskaźnikiem działania modułu. Kolor zielony wskazuje, że moduł jest skonfigurowany. Dioda jest wyłączona, jeśli moduł nie jest zasilany lub jest uszkodzony. Jeśli wystąpi jakiś problem dioda mruga w kolorze bursztynowym. - Dioda PORT FAULT świeci kolorem zielonym, jeżeli komunikacja w module wykonywana jest bez błędu lub wszystkie błędy komunikacji zostały usunięte. Kolor bursztynowy sygnalizuje wystąpienie błędu na którymkolwiek z portów komunikacyjnych. - Każdy port posiada diodę statusu, która świeci kolorem zielonym, jeżeli port jest aktywny, [32] 2.1.1. Konfiguracja stacji Master dla sieci MODBUS. W konfiguracji Proficy Machine Edition moduły IC695CMM002 IC695CMM004 wybieramy z zakładki Communications. Po wybraniu odpowiedniego modułu dwu lub cztero portowego pojawi się okno konfiguracji. W zależności od wybranego modułu okno to posiada cztery lub sześć zakładek: - dla modułu z dwoma portami; Settings, Port 1 Port 2, Power Consumption, - dla modułu z czterema portami; Settings, Port 1,Port 2, Port 3, Port 4, Power Consumption 8

W zakładce Settings znajdują się dane statusowe oraz dane kontrolne dla każdego portu komunikacyjnego. Tabele z opisem danych statusowych Port Status Input Data oraz danych kontrolnych Port Control Output Data. Dokładny opis w dokumentacji technicznej GFK-2460B. Po wybraniu protokołu można przystąpić do ustawienia parametrów transmisji. Wybranie protokołu transmisji MODBUS/RTU Master dla danego portu powoduje pojawienie się zakładki PortData_ModbusMaster n (gdzie n oznacza numer portu). W zakładce tej konfigurowane są transakcje wymiany danych. Moduły IC695CMM002 i IC695CMM004 posiadają po trzy tryby wywoływania komunikacji dla funkcji odczytu i funkcji zapisu: - Read/Write Continuous; ciągłe wykonywanie komunikatu, - Read/Write Continuous Bit-Control; ciągłe wykonywanie komunikatu, jeżeli bit kontrolny jest ustawiony na jeden., - Read/Write Single Bit-Control; wykonanie komunikatu w przypadku zmiany stanu bitu kontrolnego. Uwaga!!! pierwsze 64 bity kontrolne Port Control Output Data są odpowiedzialne za wykonywanie funkcji Single Bit-Control oraz Cotinuous Bit-Control. Status poprawności komunikacji znajduje się na pierwszych 64 bitach Port Status Input Data. Bit ustawiony na jeden sygnalizuje poprawne wykonywanie komunikacji. Dane ustawiane w zakładce PortData_ModbusMaster : - Operation rodzaj wykonywanej operacji - Station Address unikalny numer ID stacji Slave 9

- Target Type rodzaj pamięci w stacji Slave - Target Address adres pamięci w stacji Slave - Ref Address adres i rodzaj pamięci w stacji Master - Ref Length długość bloku danych Wykonywane przez moduły IC695CMM002 i IC695CMM004 funkcje protokołu MODBUS Kod Opis funkcji funkcji 1 odczyt stanu grupy wyjść dwustanowych, 2 odczyt stanu grupy wejść dwustanowych 3 odczyt zawartości grupy rejestrów 4 odczyt zawartości wejść analogowych 5 ustawienie stanu jednego wyjścia dwustanowego 6 zapis pojedynczego rejestru 7 odczyt statusu urządzenia 8 test diagnostyczny (Return Query Data) 15 zapis stanu grupy wyjść dwustanowych 16 zapis wartości do grupy rejestrów 10

3. Pomiary dla MODBUS/RTU W celu przeprowadzenia weryfikacji doświadczalnej zbudowano stanowisko laboratoryjne dla sieci MODBUS/RTU (Rys. 2). MODBUS/RTU jest rozwiązaniem firmy Modicon. Protokół powstał w 1980 r. Jest to sieć typu Master-Slave, standardowe prędkości transmisji to 9,6 Kb/s, 19,2 Kb/s, stosowane medium transmisyjne RS-232, RS-422, RS-485, sieć deterministyczna, wykonywane funkcje: nawiązanie połączenia (otwarcie portu do komunikacji) zapytanie-odpowiedź, polecenie-odpowiedź, rozgłoszenie do wszystkich, [literatura] Master Slave Slave Slave Rys. 2. Stanowisko pomiarowe dla sieci MODBUS/RTU 3.1. Metoda pomiaru czasu trwania transakcji wymiany danych. Przystępując do weryfikacji doświadczalnej czasu trwania wymiany danych w rozproszonych węzłach komunikacyjnych, zastosowano opracowane w trakcie poprzednich prac badawczych oprogramowanie, które nawiązywało komunikację pomiędzy węzłami systemu, a następnie realizowało pomiar czasu trwania wymiany danych. Oprogramowanie to wykorzystuje wbudowane funkcje odczytu czasu ze 11

sterownika PLC. Czas ten jest od załączenia zasilania jednostki centralnej aż do chwili pomiaru. Dokładność zegara czasu rzeczywistego w rozważanych systemach wynosi 0,0001 s. Istotnym problemem jest proces załączenia oraz wyłączenia pomiaru czasu trwania konkretnej wymiany [18]. W przypadku komunikacji po RS-485 moduł CMM004 wykonuje pomiar czasu realizacji transakcji wymiany pomijając czas trwania pętli automatu (sterownika PLC). 3.2. Wyniki pomiaru dla stanowiska z Rys. 2 1. Pierwszy scenariusz wymian; Pojedyncze odpytywanie wywoływane bitem. Stacja MASTER odpytuje stacje SLAVE. Odczytywana liczba rejestrów 1, 32 (30 maksymalny spójny blok danych dla DIRIS), 64 Lp. Nazwa urządzenia 1 2 3 Diris A20 odczyt rejestru typu dword MIF II odczyt rejestru typu word F650 odczyt rejestru typu word Liczba odczytywanych rejestrów Adres rejestru początkowego Czas minimalny, programem [ms] Czas maksymalny programem [ms], w nawiasie w (CMM004) Liczba odczytów. 1 512 (513) 16.8 89.2 5000 30 (wpisywać parzyste) 768 (769) 53.5 126.4 5000 1 296 19.9 31.9 (29) 1500 32 296 60.4 72.6 2500 64 296 102.8 114.8 1000 1 1 27.2 43.5 (41) 1500 32 1 59.8 76.7 2500 64 1 93.7 110.2 2500 2. Drugi scenariusz wymian; Odpytywanie pętli złożonej z 4 urządzeń wywoływane bitem. Stacja MASTER odpytuje 4 stacje SLAVE (DIRIS A20, MIFII, F650, Sterownik PLC GE Fanuc 90-Micro). Odczytywana liczba rejestrów = 1. Razem 4 wymiany, Wymiany inicjowane razem Lp. Maksymalny czas z CMM004 [ms] Czas minimalny programem [ms] Czas maksymalny programem [ms] Liczba powtórzeń 1 164 84.4 166.3 1000 3. Trzeci scenariusz wymian; Dziesięciokrotne odpytanie jednego urządzenia wywoływane bitem. Stacja MASTER odpytuje 10 razy stacje SLAVE ( Sterownik PLC GE Fanuc 90- Micro). Odczytywana liczba rejestrów = 1. Razem 10 wymian, Wymiany inicjowane razem Lp. Maksymalny czas z CMM004 [ms] Czas minimalny programem [ms] Czas maksymalny programem [ms] Liczba powtórzeń 1 221 208.3 221.9 500 12

4. Czwarty scenariusz wymian; Odpytywanie pętli złożonej z 4 urządzeń wywoływane bitem. Stacja MASTER odpytuje 10 razy stacje SLAVE4 (Sterownik PLC GE Fanuc 90-Micro) oraz po jednym razie pozostałe SLAVE (DIRIS A20, MIFII, F650,). Odczytywana liczba rejestrów = 1. Razem 13 wymian, Wymiany inicjowane razem Lp. Maksymalny czas z CMM004 [ms] Czas minimalny programem [ms] Czas maksymalny programem [ms] Liczba powtórzeń 1 348 273.1 350.3 500 5. Piąty scenariusz wymian; Odpytywanie pętli złożonej z 3 urządzeń wywoływane bitem. Stacja MASTER odpytuje 10 razy każdą stację SLAVE (DIRIS A20, MIFII, F650,). Odczytywana liczba rejestrów = 1. Razem 30 wymian, Wymiany inicjowane razem Lp. Maksymalny czas z CMM004 [ms] Czas minimalny programem [ms] Czas maksymalny programem [ms] Liczba powtórzeń 1 842 703.5 843.8 500 2 873 726.1 874.8 500 Każde urządzenie pytane 10 razy pod rząd (niejednorodny obszar rejestrów) Różna kolejność odpytywania urządzeń (niejednorodny obszar rejestrów) 6. Szósty scenariusz wymian; Odpytywanie pętli złożonej z 3 urządzeń wywoływane bitem. Stacja MASTER odpytuje 2 razy każdą stację SLAVE (DIRIS A20, MIFII, F650,). Odczytywana liczba rejestrów = 1. Razem 6 wymian, Wymiany inicjowane razem Lp. Maksymalny czas z CMM004 [ms] Czas minimalny programem [ms] Czas maksymalny programem [ms] Liczba powtórzeń 1 225 137.2 221.2 500 Różna kolejność odpytywania urządzeń (niejednorodny obszar rejestrów) 7. Siódmy scenariusz wymian; Odpytywanie pętli złożonej z 3 urządzeń wywoływane bitem. Stacja MASTER odpytuje 3 razy każdą stację SLAVE (DIRIS A20, MIFII, F650,). Odczytywana liczba rejestrów = 1. Razem 9 wymian. Wymiany inicjowane razem. Lp. Maksymalny czas z CMM004 [ms] Czas minimalny programem [ms] Czas maksymalny programem [ms] Liczba powtórzeń 1 85 222.9 320.8 500 Różna kolejność odpytywania urządzeń (niejednorodny obszar rejestrów) 8. Ósmy scenariusz wymian; Odpytywanie pętli złożonej z 3 urządzeń wywoływane bitem. Stacja MASTER odpytuje 2 razy każdą stację SLAVE (DIRIS A20, MIFII, F650,). Odczytywana liczba rejestrów = 1. Razem 6 wymian. Każda wymiana inicjowana oddzielnie. Lp. Maksymalny czas z CMM004 [ms] Czas minimalny programem [ms] Czas maksymalny programem [ms] Liczba powtórzeń 1 82 136.7 239.2 500 Różna kolejność odpytywania urządzeń (niejednorodny obszar rejestrów) 13

9. Dziewiąty scenariusz wymian; Odpytywanie pętli złożonej z 3 urządzeń wywoływane bitem. Stacja MASTER odpytuje 2 razy każdą stację SLAVE (DIRIS A20, MIFII, F650,). Odczytywana liczba rejestrów = 1. Razem 6 wymian. Urządzenie oddalone o 70 m, Przerwanie komunikacji poprzez rozpięcie przewodu lub wyłączenie zasilania jednego z urządzeń. Lp. Timeout w [ms] Wskazywany czas wymiany wyzwalane osobno Wskazywany czas wymiany wyzwalane jednoczesnie 1 1000 3065 3252 2 500 1590 1762 przy 2 błędach czas opóźnienia jest sumowany 10. Dziesiąty scenariusz wymian; Odpytywanie w pętli złożonej z 3 urządzeń wymiany wywoływane bitem. Stacja MASTER odpytuje 1 raz stację SLAVE F650. Odczytywana liczba rejestrów wg. tabeli. Razem 1 wymiana. Urządzenie F650 oddalone o 70 m Lp. Liczba przesyłanych rejestrów Czas minimalny programem [ms] Czas maksymalny programem [ms] Maksymalny czas z CMM004 [ms] Liczba powtórzeń Terminacja (T) lub brak terminacji *NT) 1 1 27.6 42.7 41 3500 T 2 32 62 75.3 73 1000 T 3 64 94 109.7 108 1000 T 4 64 93.7 110.1 108 1000 NT 5 32 60 75.5 74 1000 NT 14

4. Komunikacja typu KLIENT -SERWER protokół MODBUS/TCP Obecnie najczęściej stosowanym standardem sieci komputerowych jest standard i Fast. Fenomen jej nagłego rozprzestrzenienia się we wszelkich instalacjach biurowych dla sieci LAN oraz adaptacji dla sieci przemysłowej najniższego poziomu, wiąże się zarówno z łatwością dostępu do urządzeń korzystających z wyżej wymienionego standardu, łatwość obsługi oraz popularność sieci globalnej, jaką jest Internet. W przemysłowych systemach rozproszonych, oprócz potrzeby wymiany informacji, jednym z najważniejszych elementów jest determinizm czasowy. Szereg prac [1], [2], [3], zawiera informacje dotyczące adaptacji standardu sieci dla rozwiązań przemysłowych. Dość często spotyka się opinie, że mechanizm wykrywania i rozstrzygania kolizji CSMA/CD w sieci Etheret nie gwarantuje determinizmu czasowego. [4], [8],: Mechanizm wykrywania i rozstrzygania kolizji dla sieci CSMA/CD (ang. Carrier Sense Multiple Access / with Collision Detect ) przez długi czas dyskwalifikował ten standard do zastosowań przemysłowych. Jednym z możliwych rozwiązań przystosowania u do zastosowań przemysłowych, jest zarządzanie transmisją wymian w warstwie aplikacji, stosując zdeterminowany w dostępie i czasie protokół transmisji. Rozwiązanie to wymusza programowo zmianę funkcjonowania sieci. Ramka protokołu deterministycznego jest enkapsulowana w ramce ethernetowej [1], [2], [4]. Przejęcie kontroli w warstwie aplikacji nad wymianą danych wymusza logiczne wyłączenie mechanizmu rozstrzygania kolizji. Mechanizm ten działa, ale jest niejako uśpiony. W ten sposób powstają protokoły pracujące na stosie protokołów TCP/IP np: MODBUS/TCP [22], SRTP, [26], [28], Protokół MODBUS/TCP jest protokołem bazującym na stosie protokołów TCP. W ramce TCP/IP zawarta jest ramka protokołu MODBUS/RTU (szeregowy, Master-Slave). Protokół ten pracuje w architekturze klient/serwer. Stacją inicjalizującą komunikację jest stacja Klient (równoważna ze stacją Master z sieci szeregowych). Standardowe prędkości transmisyjne 10 Mb/s, 100 Mb/s. Medium transmisyjne to skrętka. W niektórych konfiguracjach możliwy jest determinizm. Wykonywane funkcje: otwarcie portu do komunikacji (sprawdzenie czy stacja serwer jest dostępna), odczytodpowiedź, zapis-odpowiedź. Jak wspomniano w pracy [4], w momencie, gdy konfiguracja sieci umożliwia inicjowanie wymiany komunikatów w tym samym czasie przez więcej niż jedną stację klient, może wystąpić kolizja przesyłanych ramek, a w jej wyniku opóźnienie wysłania komunikatów przez stację Klient. (Rys. 3). 15

KLIENT- Master TCP/IP KLIENT- Master TCP/IP HUB SERVER- Slave TCP/IP SERVER - Slave TCP/IP SERVER - Slave TCP/IP Rys. 3. Przykład błędnej konfiguracji sieci dla protokołu SRTP lub MODBUS/TCP [18] Z punktu widzenia determinizmu czasowego taką konfigurację sieci należy uznać za błędną. MODBUS/TCP umożliwia komunikację poprzez kilka gniazd jednocześnie. Wykonywanie wymian jednocześnie przez kilka portów komunikacyjnych, również dostarcza w sieci wiele możliwości powstania opóźnień transmisji lub kolizji. Kolizje mogą powstać, gdy kilka stacji SERVER w danej chwili chce wysłać ramki odpowiedzi lub kilka stacji KLIENT chce nawiązać połączenie ze stacjami SERVER (Rys. 4). KLIENT- Master TCP/IP Port 1 Port 2 HUB SERVER - Slave TCP/IP SERVER- Slave TCP/IP SERVER - Slave TCP/IP SERVER - Slave TCP/IP Rys. 4. Przykład błędnej konfiguracji z transmisją wykorzystującą kilka portów w stacji KLIENT [18] W trakcie konfiguracji sieci działającej w oparciu o protokół zdeterminowany na bazie stosu protokołów TCP/IP, należy pamiętać o wyżej wymienionych pułapkach. Protokół MODBUS/TCP bazowany jest na protokole MODBUS/RTU pracującym w oparciu o zasadę dostępu do łącza MASTER-SLAVE. Zasada ta dotyczy konfiguracji jednej stacji Master z wieloma stacjami Slave. Postępując analogicznie i konfigurując sieć jeden KLIENT i wiele stacji SERWER otrzymujemy możliwość logicznego wyłączenia mechanizmu CSMA/CD (Rys. 5). 16

KLIENT- Master TCP/IP SERVER - Slave TCP/IP HUB SERVER- Slave TCP/IP SERVER - Slave TCP/IP SERVER - Slave TCP/IP Rys. 5. Prawidłowa konfiguracja dla sieci SRTP oraz MODBUS/TCP [18] Model wymiany danych dla protokołu MODBUS/TCP Omawiana implementacja protokołu MODBUS/TCP zawiera rozdzielone operacje zapisu i odczytu od operacji otwarcia portu. Każde polecenie otwarcia portu jest wywoływane z poziomu aplikacji i zawiera informacje z jakim urządzeniem będzie wykonywana transakcja. Wszystkie komunikaty wywoływane są z poziomu aplikacji sterownika PLC (ang. Programmable Logic Controller). Aby połączyć się z innym urządzeniem należy otworzyć port do komunikacji, wywołać funkcję odczytu lub zapisu, a po zakończeniu komunikacji użyć funkcji zamknięcia połączenia. Dla protokołu MODBUS/TCP dostępne są cztery funkcje generujące ruch w sieci. Są nimi: - otwarcie kanału do odczytu lub zapisu, - zapis do stacji serwer, - odczyt ze stacji serwer, - zamknięcie kanału odczytu lub zapisu. Zależność (2) opisuje funkcję otwarcia portu [18]. T MOP T T ( T T T T ), (2) ZM PM 3 PR TR DR AR gdzie: T MOP czas trwania operacji otwarcia portu. 3 stała dobrana na podstawie własnych badań doświadczalnych określających liczbę przesłanych w sieci komunikatów w formie oddzielnych ramek. T ZM - czas od momentu zgłoszenia wymiany w trakcie trwania fazy cyklu T AP do momentu rozpoczęcia fazy komunikacji T K, T PM - czas od momentu rozkodowania informacji przez koprocesor stacji MASTER do momentu przyjęcia i jej wykorzystania w aplikacji stacji MASTER. - czas trwania przygotowania ramki, T PR T TR T DR - czas trwania transmisji ramki, - czas trwania detekcji ramki, T AR - czas trwania analizy ramki. [15] 17

Zależność (3) opisuje wymianę danych odczytu lub zapisu [18] T MZO T T 4 ( T T T T ) T, (3) ZM PM PR TR DR AR AS gdzie: T MZO czas trwania wymiany zapis lub odczyt. 4 stała dobrana na podstawie własnych badań doświadczalnych określających liczbę przesłanych w sieci komunikatów w formie oddzielnych ramek [15]. Czas zamknięcia portu dla protokołu MODBUS/TCP można wyliczyć z zależności [18]: T MZP T T 4 ( T T T T ) T, (4) ZM PM PR TR DR AR AS gdzie: T MZP czas trwania operacji zamknięcia portu. 4 stała zmierzona na podstawie własnych badań doświadczalnych określających liczbę przesłanych w sieci komunikatów w formie oddzielnych ramek. [15] Z powyższego wynika, że czas trwania wymian dla protokołu MODBUS/TCP w danym przedziale czasu wynosi [18]: N 1 i1 1 2 i2 1 2 T T T T, (5) WM MOPi1 N MZOi2 N i3 1 MZPi3 gdzie: T WM N 1 N 2 N 3 czas trwania wymian w protokole MODBUS/TCP w określonym przedziale czasu, liczba wykonanych operacji otwarcia portu, liczba wykonanych operacji zapisu i odczytu, liczba wykonanych operacji zamknięcia portu. EW ZM PM T PR TTR TDT TAR TAS T ZPO T T 15 (6) gdzie: TEW ZPO - czas wykonania wymiany zapytanie/polecenie-odpowiedź dla sieci w protokole MODBUS/TCP, T ZM T AS - czas od momentu zgłoszenia wymiany w trakcie trwania fazy cyklu T AP do momentu rozpoczęcia fazy komunikacji T K, w stacji KLIENT (MASTER) - czas trwania cyklu stacji SERWER (SLAVE). T PM - czas od momentu rozkodowania przez koprocesor stacji KLIENT (MASTER) informacji do momentu przyjęcia i wykorzystania jej w aplikacji. 15 - stała zmierzona na podstawie własnych badań doświadczalnych określających liczbę przesłanych w sieci komunikatów w formie 18

oddzielnych ramek [15]. Należy przyjąć, tak samo jak w sieci o dostępie MASTER-SLAVE, że czas trwania wszystkich wymian w scenariuszu jest równy cyklowi sieci [18]: T ECS T ECW N i 1 T EW i ZPO, (7) gdzie: T ECS - cykl sieci dla sieci opartej o protokół MODBUS/TCP T ECW T ZPO i EW - cykl wymiany danych dla sieci opartej o protokół MODBUS/TCP - czas wykonania wymiany zapytanie/polecenie-odpowiedź dla sieci z protokołem MODBUS/TCP. 4.1. Moduł komunikacyjny ETM001 dla sieci ETHERNET Moduł IC695ETM001 jest wykorzystywany do podłączania kontrolera RX3i do sieci. Umożliwia on komunikację z innymi urządzeniami. Interfejs sieci lokalnej zapewnia komunikację TCP/IP z innymi sterownikami programowalnymi oraz interfejsami sieci (NIU). Pozwala na komunikację z komputerami z uruchomionym oprogramowaniem komunikacyjnym lub narzędziowym, oraz z komputerami z uruchomioną wersją TCP/IP pakietu do programowania. Powyższe sposoby komunikacji korzystają z protokołów SRTP oraz EGD lub MODBUS/TCP, opierających się na czterowarstwowym stosie protokołów TCP/IP. [32] Właściwości modułu komunikacyjnego : - Usługi dotyczące programowania i konfiguracji sterowników PLC - Okresowa wymiana danych EGD ( Global Data) - Polecenia EGD do odczytu i zapisu danych w sterowniku, zmiany zawartości pamięci za pośrednictwem sieci. - Usługi komunikacyjne TCP/IP korzystające z protokołu SRTP - Kompleksowe zarządzanie stacją i narzędzia diagnostyczne - Rozszerzone możliwości komunikacyjne portów zgodnych IEEE 802.3 CSMA/CD 10Mbps i100mbps LAN - Wbudowany switch owy z automatyczną negocjacją, wykrywaniem szybkości transferu danych i skrzyżowania przewodów. - Bezpośrednie połączenie (z wykorzystaniem skrętki) z przełącznikiem sieciowym, koncentratorem, lub z repeater em, z pominięciem zewnętrznego nadajnika. [32] 19

4.1.1. Bity statusowe dla interfejsu sieci Moduły sieci wymagają zarezerwowania 80 bitów statusowych. Jako obszar pamięci może tu być wykorzystany: %I, %Q, %R, %AI, %AQ, %W. Bit statusu Opis 1 Port 1A full duplex 2 Port 1A 100 Mbps 3 Port 1B full duplex 4 Port 1B 100 Mbps 5 Zarezerwowane (zawsze 0) 1 6 Tylko RX7i aktywna redundancja adresu IP 7 Zarezerwowane (zawsze 0) 8 Zarezerwowane (zawsze 0) 9 Wystąpił błąd w dowolnym kanale 10-12 Zarezerwowane (zawsze 0) 13 Sieć LAN w porządku ( LAN OK. ) 14 Problem zasobów 15 Tylko RX3i - Przekroczenie temperatury pracy modułu 16 Interfejs sieci LAN w porządku 17 Transmisja danych przez kanał 1 18 Błąd w kanale 1...... 79 Transmisja danych przez kanał 32 80 Błąd w kanale 32 4.1.2. Stanowisko badawcze Podstawowe stanowisko badawcze dla MODBUS/TCP składało się z dwóch stacji (Rys. 6): NIU PACSystems RX3i (KLIENT) wyposażonej w moduł ETM001 oraz F650 (SERWER). Każdy węzeł posiadał nadany unikalny numer IP. Ze względu na pomiar czasu trwania wymian danych w systemie o deterministycznym dostępie do łącza, tylko jeden węzeł pełnił rolę stacji klient oraz wysyłał dane tylko przez jeden kanał komunikacyjny. 20