Podstawowe wymagania stawiane sieciom przemysłowym:
- Niezawodność podnoszona głównie z wykorzystaniem mechanizmu redundancji.
- Możliwość pracy w trudnych warunkach przemysłowych, w obecności zaburzeń.
- Determinizm czasowy umożliwiający przewidywanie i powtarzalność czasu od wysłania do odbioru informacji.
Rywalizowanie o dostęp do łącza w Ethernecie
W sieciach Ethernet urządzenia rywalizują o dostęp do łącza fizycznego. Odbywa się to z użyciem mechanizmu CSMA/CD będącego jednym z ważniejszych aspektów komunikacji w sieciach Ethernet i który w zasadzie nie zmienił się od wynalezienia Ethernetu. W sieciach używających CSMA/CD nie istnieje centrum kontroli przydzielające czasy dostępu poszczególnym urządzeniom sieciowym, co powoduje niedeterministyczny czas dostępu do łącza.
- CSMA (Carrier Sense with Multiple Access) polega na wykrywaniu wykrywanie „nośnej” obecnej we wspólnym medium transmisyjnym. W sieciach Ethernet, gdy urządzenie chce rozpocząć nadawanie sprawdza czy żadne inne urządzenie nie przesyła danych i jeśli medium transmisyjne jest wolne, to rozpoczyna nadawanie. Jeśli zajęte, czeka na jego zwolnienie.
- CD (Collision Detect) polega na wykrywaniu kolizji, która może wystąpić, jeśli więcej niż jedno urządzenie rozpocznie nadawanie. Ze względu na różnice w przesyłanych pakietach danych zachodzi nakładanie się sygnałów elektrycznych zwane kolizją. Po wystąpieniu kolizji urządzenia wstrzymują nadawanie przez losowy czas, a następnie ponawiają próbę transmisji. Jeśli ponownie wystąpi kolizja, czas jest podwajany i z nowego zakresu jest losowany nowy czas opóźnienia przed kolejną transmisją
Sieci cyfrowe najczęściej są budowane w oparciu o Ethernet. Transmisja danych zgodnie z tym standardem odbywa się na zasadzie tak częstego powtarzania prób transmisji pakietu, aż ta powiedzie się. Czas potrzebny na dotarcie informacji od nadawcy do odbiorcy jest trudny do określenia, ponieważ zależy od opóźnienia dostępu do łącza, a może ono wystąpić w każdym urządzeniu pośredniczącym w transmisji pakietu. Urządzenia pracujące w sieci rywalizują o dostęp do niej, a ich prawa dostępu do łącza są równorzędne w warstwie fizycznej.
Standard Ethernet powstał w latach siedemdziesiątych i był projektowany do zastosowań typowo „cywilnych”. Bazuje na idei węzłów dołączonych do wspólnego medium, wysyłających i odbierających specjalne komunikaty zwane ramkami. Wszystkie węzły mają niepowtarzalny adres MAC. W oryginalnej wersji Ethernet nie uwzględnia potrzeb przemysłowych i próba jego użycia do zarządzania procesami przemysłowymi może prowadzić do niepowodzenia. Mówiąc inaczej, typowy Ethernet stosowany przez użytkowników komputerów pozwala na szybką transmisję dużych ilości danych, ale czas potrzebny na przesłanie pojedynczego, niewielkiego pakietu informacji jest zbyt długi i trudny do określenia, co uniemożliwia zastosowanie tego standardu w przemyśle.
Pomimo wspomnianych wad Ethernetu w zastosowaniach przemysłowych, wielu niezależnych producentów urządzeń dla automatyki wprowadziło różne modyfikacje standardu i obowiązujących w nim protokołów komunikacyjnych, aby umożliwić niezawodną komunikację spełniającą potrzeby urządzeń przemysłowych i umożliwić wymianę danych pomiędzy nimi, a komputerami biurowymi i serwerami plików. Poszczególne rozwiązania różnią się pomiędzy sobą, ale wszystkie zostały zaprojektowane w taki sposób, aby bez większych trudności można było połączyć ze sobą w ramach tej samej sieci serwery plików, komputery biurowe oraz maszyny wymagające transmisji danych w rygorystycznych ramach określanych przez wymagania procesów przemysłowych. Nowoczesny Ethernet przemysłowy pozwala na bezpośrednie dołączanie do sieci takich urządzeń, jak pojedyncze czujniki i moduły wykonawcze. Pomimo tego bardzo często używa się w tym obszarze podsieci związanych w wyrobami konkretnego producenta, a samego Ethernetu używa się przede wszystkim do wymiany danych pomiędzy panelami operatorskimi, serwerami, robotami, sterownikami PLC i komputerami w przedsiębiorstwie.
Profinet
Jednym z rozwiązań Ethernetu przemysłowego, które zyskały największą popularność jest Profinet. Jest to sieć opracowana przez konsorcjum Profibus International, które dawniej zajmowało się rozwojem sieci Profibus łączącej automatykę procesową z automatyką typowo przemysłową. Obecnie ta firma zmieniła nazwę na Profibus i Profinet International, co podkreśla znaczenie nowej sieci w pracach tej organizacji.
Profinet łączy cechy sieci Profibus DP z uniwersalnością Ethernetu, utrzymując duży stopień kompatybilności z typowymi urządzeniami ethernetowymi oraz stosowanymi dawniej urządzeniami automatyki przemysłowej. Wprowadzono w nim również mechanizmy zwiększające niezawodność komunikacji i możliwość wykonywania niektórych operacji w czasie rzeczywistym. Czas transmisji podzielono na cyklicznie i występujące po sobie naprzemiennie okresy, przeznaczone dla komunikacji zgodnej z zasadami typowego Ethernetu, tj. z użyciem protokołów TCP/IP oraz na okresy przeznaczone dla komunikatów czasu rzeczywistego. Komunikacja z użyciem protokołu TCP/IP świetnie sprawdza się do transmisji danych pomiędzy serwerami, panelami operatorskimi i sterownikami oraz aplikacjami uruchamianymi na komputerach PC dołączonymi do infrastruktury przedsiębiorstwa. Pozwala na dostęp do serwerów z użyciem popularnych protokołów, takich jak: HTTP, FTP, SSH i SMTP. Opóźnienia występujące w tym trybie transmisji wynoszą około 100 ms, a kolejność docierania pakietów do odbiorcy nie zawsze musi być identyczna z kolejnością ich nadawania.
Pakiety czasu rzeczywistego są przesyłane w specjalnie wyznaczonych oknach czasowych, co zależnie od trybu gwarantuje zmniejszenie opóźnień do 10 ms lub 1 ms. 10-milisekundowe opóźnienia mają pakiety synchronicznego czasu rzeczywistego (RT lub SRT), przesyłane bez zastosowania enkapsulacji warstw IP i wyższych. Ponadto, wg standardu IEEE802.1Q są oznaczone priorytetem 6, dzięki czemu szybciej docierają do odbiorcy i potrzeba mniej czasu na ich przygotowanie oraz odczytanie.
Opóźnienia nieprzekraczające 1 ms uzyskiwane są dzięki transmisji izochronicznego trybu rzeczywistego (IRT), która prowadzona jest bezpośrednio w warstwie sprzętowej, z pominięciem wyższych protokołów. Wszystkie urządzenia z niej korzystające muszą być zsynchronizowane ze sobą z dokładnością do 1 ms, dzięki czemu są w stanie rozpoznać moment, w którym rozpoczyna się okno transmisji trybu IRT.
Z protokołu Profinet korzystają m.in. takie firmy, jak: Siemens, Beckhoff, Danfoss, Bosch Rexroth, Phoenix Contact itd.1)
Ethernet/IP
W opracowanym przez Rockwell Automation standardzie Ethernet/IP (Ethernet Industrial Protocol) zastosowano protokół CIP (Common Industrial Protocol) znany z sieci DeviceNet, CompoNet i ControlNet oraz dwa tryby transmisji danych. Zwykłe pakiety i dane konfiguracyjne przesyłane są za pomocą protokołu TCP w trybie nazwanym Explicit Messages. Dane krytyczne czasowo (Implicit Messages) transmitowane są z użyciem protokołu UDP, a ich szybką transmisję zapewnia obsługa priorytetyzacji ruchu sieciowego. Ważna jest również synchronizacja, którą w sieciach Ethernet/IP realizuje się za pomocą rozbudowanego protokołu PTP pod postacią standardu CIPSync.
Protokół Ethernet/IP jest promowany przez m.in. takie firmy jak: Rockwell Automation, Sick, Phoenix Contact, Parker Hannifin, Omron i Bosch.1)
Zapewnianie jakości i niezawodności
W sieci przemysłowej transmitującej wiele krytycznych informacji konieczne jest zapewnienie odpowiedniej klasy CoS (Class of Service), między innymi poprzez nadawanie priorytetów. Zapewnienie danym krytycznym pierwszeństwa wewnątrz przełącznika nie jest problemem, staje się nim natomiast po wyjściu na port i jest uzależnione od obsługi etykiet priorytetów przez urządzenia końcowe.
Istnieje kilka mechanizmów kolejkowania danych priorytetowych. Część z nich polega na obsłudze ruchu na poszczególnych poziomach priorytetów w pewnym powtarzalnym cyklu. Zwykle najlepszym rozwiązaniem jest jednak mechanizm kolejkowania – nadawanie priorytetów bezpośrednio danym przy zachowaniu zasady, że wyższy priorytet ma bezwzględnie pierwszeństwo. Jet to realizowane w warstwie 2 i 3 modelu OSI.
Mechanizmy odpowiedzialne za gwarantowanie odpowiedniego poziomu CoS (Class of Service) odpowiadają za niezawodność transmisji danych krytycznych przez nadawanie ramkom priorytetów. Przy kolejlowaniu powinien on zapewnić zarządzanie danymi o różnych priorytetach na drodze od źródła do odbiorcy. Mechanizmy mające gwarantować odpowiednią jakość usługi – QoS (Quality of Service) odpowiadają, między innymi, za integralność danych oraz wymuszanie odpowiednich preferencyjnych warunków dla transmisji danych krytycznych. Zapewnia takie usługi, jak stała przepustowość dla danej serii pakietów (CBR – Constant Bit Rate), przewidywalność opóźnień i rezerwację pasma.
Dostępne na rynku przełączniki zalecane do rozwiązań w sieciach przemysłowych zapewniają obsługę więcej niż jednej wyjściowej kolejki priorytetów na port. Kolejki o wysokim priorytecie rezerwowane są dla danych krytycznych czasu rzeczywistego, oferując odpowiedni poziom QoS. Dodatkowo, przełączniki powinny mieć zaimplementowany mechanizm HoL blocking prevention, pozwalający na poprawną pracę przełącznika w przypadku częściowego przeciążenia.
Praca w trybie rozgłoszeniowym
Wiele aplikacji jest opartych na komunikacji w trybie grupowym multicast lub rozgłoszeniowym broadcast. Dane są tu wysyłane tylko raz, mimo że są przeznaczone dla więcej niż jednego odbiorcy. Pakiety grupowe multicast będą jednak traktowane jak ruch rozgłoszeniowy, tj. wysyłane na każdy port w sieci, jeśli przełączniki nie będą w stanie filtrować ruchu grupowego.
Jednym z najbardziej popularnych protokołów filtrowania ruchu grupowego jest protokół IGMP. Przełączniki obsługujące ten protokół przechowują zgłoszenia join lub leave wysyłane przez klientów. Filtry grupowe są tworzone w przełącznikach na bazie informacji o porcie, z którego takie zgłoszenia nadeszły. Żądania IGMP join/leave są przekazywane do jednego lub więcej serwerów/routerów IGMP, które odpowiadają za dalsze zarządzanie filtrami. Wiele przełączników ma zaimplementowany mechanizm IGMP snooping, który „podgląda” filtry warstwy trzeciej oraz jest częściowo niezależny od obecności serwera IGMP w sieci. Jest to bardzo ważna cecha z punktu widzenia niezawodności, ponieważ oznacza, że filtrowanie grupowe będzie aktywne nawet wtedy, gdy połączenie do serwera IGMP zostanie utracone. Dodatkowo, połączenie do takiego serwera nie zostanie przeciążone ani nie powstanie na nim zator. W przypadku specjalnych implementacji IGMP przełącznik może pełnić rolę serwera IGMP – IGMP Querier. Protokół IGMP filtruje ruch oparty o IP i inny ruch traktowany jako rozgłoszeniowy. Pakiety konfiguracyjne protokołu IGMP odpowiadające za tworzenie filtrów grupowych w sieci są domyślnie przesyłane na wszystkie porty typu trunk przełącznika. Adresowanie grupowe w skrócie można uznać za formę adresowania pośredniego.
Synchronizacja czasowa
Jednym z kluczowych zagadnień związanych z sieciami komunikacyjnymi, szczególnie w przemyśle, jest zapewnienie odpowiedniej synchronizacji i zagwarantowanie nieprzekraczalnych czasów przesyłania informacji. Przykładem może być sytuacja, gdy dane czasowo krytyczne zbierane są z kilku niezależnych punktów i muszą być porównywane ze sobą w innym miejscu. Różne opóźnienia tras spowodują, że bezpośrednie ich porównanie nie da pożądanych rezultatów. Rozwiązaniem jest oznakowanie poszczególnych danych znacznikami czasowymi, które następnie będą mogły być przeanalizowane i uszeregowane w celu poprawnego porównania w punkcie centralnym.
Synchronizacja czasowa w sieci jest niezwykle skomplikowanym zagadnieniem, między innymi ze względu na trudność przewidywania opóźnień poszczególnych tras. Te ostatnie zależne są od komponentów sieci, jej obciążenia, przepustowości łączy, architektury przełączników sieciowych, metody przełączania, ilości danych krytycznych i kolejek priorytetów oraz innych czynników. Rekomendowane są rozwiązania oparte na protokołach SNTP/NTP (RFC2030/RFC1305) i P1588 (IEEE 1588) ze względu na ich niezawodność oraz fakt, że są to ogólnoświatowe otwarte standardy.
Nadawanie priorytetów pakietom
W celu minimalizacji negatywnego wpływu kolizji na transmisję stosuje się kilka rozwiązań:
- Metodę dostępu do medium CSMA/CD wykorzystywaną w wypadku pracy w trybie półdupleks; takie podejście znacznie utrudnia predykcję opóźnień; metoda ta wykorzystywana jest w koncentratorach (ang. hub), ale implementowana powinna być (jako część standardu IEEE 803.3) nadal we wszystkich urządzeniach sieciowych.
- Kontrolę przepływu 802.3x wraz z pracą w trybie FDX (Full Duplex Mode).
- Nadawanie priorytetów pakietom, które może odbywać się wg wielu schematów, np.: round-robin weighting (wysyłanie N pakietów o wyższym priorytecie, następnie 1 o niższym, itd.) lub strict priority (pakiet o wyższym priorytecie ma zawsze pierwszeństwo).
W celu szacowania możliwych opóźnień przełączników sieciowych jednym z często stosowanych sposobów jest metoda worst case switch latency. Przy liczeniu opóźnienia dla najgorszego przypadku, pomimo wprowadzenia priorytetyzacji oraz zastosowania trybu pracy FDX, należy uwzględnić fakt, że pakiet o niższym priorytecie może być akurat transmitowany przez przełącznik. Nadejście pakietu o wyższym priorytecienie spowoduje przerwania tej transmisji, co oznacza, że pakiet o wyższym priorytecie będzie opóźniony o czas transmisji reszty poprzedniego pakietu. Zakładając najgorszą ewentualność – początek transmisji pakietu o maksymalnej długości (1518 bajtów, w niektórych wypadkach nawet 1522 bajty), otrzymujemy odpowiednio: 1,22 ms dla 1 Gb/s, 122 ms dla 100 Mb/s oraz 1,22 ms dla 10 Mb/s. Oczywiście pakiet o wysokim priorytecie może być również opóźniony przez inne pakiety o tym samym priorytecie, jeżeli takie znajdują się w kolejce. Znając jednak przydział priorytetów dla poszczególnych danych i przepustowość łączy, obliczenie takich opóźnień najgorszego przypadku nie stanowi większego problemu. Typowo dla 100 Mb/s wynosi on kilkaset mikrosekund. Wyliczenia dla przykładowego podano w ramce.
Ethernet gigabitowy
W okresie przed pojawieniem się sieci gigabitowych szybkość transmisji danych w sieciach Ethernet wzrastała od 10 do 100 Mbit/sek. (Mbps). Sieci te nazywano Fast Ethernet. Rodzina sieci Ethernetu gigabitowego opracowana została w celu przekroczenia bariery 1000 Mbit/sek. Pierwsze standardy takich sieci pojawiły się w roku 1998 (IEEE 802.3z) dla połączeń światłowodowych i w roku 1999 (IEEE 802.3ab) dla miedzianych połączeń UTP. Oba te standardy są dziś bardziej znane jako 1000BASE-X.
Standard Fast Ethernet okazał się bardzo wydajną technologią, ogólnie zaakceptowaną przez użytkowników. Mogą z niego korzystać niemal wszystkie urządzenia automatyki i teleinformatyki. Choć przyjęto go jako podstawę do tworzenia sieci gigabitowych, można zauważyć kilka istotnych różnic. Na przykład w standardowych kablach sieciowych kategorii piątej znajduje się 8 przewodów (4 pary). W sieciach Ethernet 10baseT (10 Mbps10 Mb/s) i Fast Ethernet 100BaseT (100 Mbps) wykorzystuje się tylko cztery przewody (2 pary), jedną do transmisji danych, a drugą do ich odbioru.
W standardzie Ethernet 10 Mbps pojedynczy bit danych jest kodowany do postaci jednego symbolu, przy użyciu dwóch poziomów napięć. W standardzie Fast Ethernet zastosowano już schemat kodowania 4B/5B MLT-3 z trzema poziomami napięć. Natomiast w sieci gigabitowej 1000Base-T dwa bity danych kodowane są w pojedynczy symbol PAM5, zaś w linii kablowej wykorzystane są wszystkie cztery pary przewodów. I chociaż sieć Ethernetu gigabitowego ma tę samą szybkość transmisji symboli kodowanych – tzw. bodów (125 Mbodów), co sieci standardu Fast Ethernet, uzyskuje wyższą szybkość transmisji danych na poziomie 1000 Mbps. Stało się to możliwe dzięki jednoczesnej transmisji 8 bitów danych i przy wykorzystaniu 5 poziomów napięć oraz wszystkich dostępnych przewodów w kablu transmisyjnym.
To oczywiste, że wzrost szybkości transmisji danych i stosowanie zaawansowanych, wielopoziomowych schematów ich kodowania zwiększy wymagania dotyczące jakości sieciowych kabli transmisyjnych. Ma to miejsce przede wszystkim ze względu na większe częstotliwości sygnałów i powstające zaburzenia oraz szumy. Tradycyjne kable kategorii piątej były tworzone dla standardów Fast Ethernetu. Dlatego też przy tworzeniu sieci gigabitowych użytkownicy korzystać będą najpewniej z nowszych kabli kategorii 5e lub 6e. Tak, aby uniknąć problemów z interferencją sygnałów. Kable kategorii 5e są wystarczające do budowania sieci gigabitowych, podobnie zresztą jak kable kategorii 6e, które wykorzystać będzie można również w tworzonych standardach sieci 10-gigabitowych. Jednak podstawową kwestią do rozważenia jest zawsze odpowiedź na pytanie: czy stosować kable ekranowane (STP), czy nieekranowane (UTP).
Podstawową zaletą kabli ekranowanych STP jest odporność na interferencję sygnałów pomiędzy parami w kablu oraz całego kabla na zaburzenia z zewnątrz. Jednak są one droższe i mniej popularne niż kable UTP. Kable UTP są także łatwiejsze w instalacji, jednak w przypadku najnowszych sieci gigabitowych osiągają kres swoich możliwości fizycznych (kategoria 6e i standard sygnału 500 MHz). W przypadku sieci gigabitowych interferencja sygnałów nabiera większego znaczenia, niż to miało miejsce w przypadku sieci Fast Ethernet. Dlatego czynnik ten należy każdorazowo wziąć pod uwagę opracowując architekturę sieci, szczególnie w środowiskach zaszumionych, gdzie występują zewnętrzne sygnały elektryczne itp. Jeżeli tylko to możliwe, warto zastosować jedną z najbezpieczniejszych opcji w takich aplikacjach, czyli światłowodów. Dobrze sprawdzają się zarówno w sieciach Fast, jak też gigabitowego Ethernetu.
Dla sieci gigabitowych dostępne są cztery standardy realizacji warstwy fizycznej – ze światłowodami oraz trzema opcjami kabli miedzianych. Nie należy jednak ulegać przekonaniu, że zastosowanie światłowodów to doskonałe rozwiązanie na każdą sytuację, ponieważ użycie niektórych rozwiązań światłowodowych działających w sieciach Fast Ethernet nie jest możliwe w przypadku sieci gigabitowych. Dzieje się tak ze względu na efekt rozproszenia wewnętrznego.
Niezależnie od tego, czy sieć będzie realizowana na światłowodach, czy też za pomocą kabli miedzianych, należy zwrócić również uwagę na poprawność wykonania samych czynności instalacyjnych, które mają wpływ na osiągi sieci. Niestaranne wykonanie prostego połączenia kabla kategorii 5e może znacznie zredukować parametry sieci i ograniczyć jej niezawodność. Jeżeli jednak połączenie będzie prawidłowe, kabel tego typu można spokojnie wykorzystać do aplikowania sieci Ethernetu gigabitowego. Powinna ona pracować bez zakłóceń i oczywiście szybciej niż poprzedni standard. Trzeba również sprawdzić, czy proponowane do użycia switche oraz inne elementy infrastruktury sieciowej są przystosowane do obsługi sieci o wyższych szybkościach transmisji danych. Każdy port switcha powinien obsłużyć szybkości 10, 100 i 1000 Mbps. Są jednak dostępne switche, które zawsze mają zostawiony przynajmniej jeden port z obsługą standardów 10 i 100 Mbps.
Na rynku pojawiły się również switche obsługujące jedynie standard 1 000 Mbps. Przed podjęciem decyzji o ich zastosowaniu trzeba mieć jednak świadomość, że niemożliwe będzie ewentualne podpięcie do sieci starszych urządzeń, działających w sieciach Fast Ethernet.
Dobrą praktyką jest zastosowanie w sieciach gigabitowych switchy z taką liczbą portów, aby możliwe było zwiększenie przepustowości sieci w dwóch kierunkach transmisji do sumarycznego poziomu 2000 Mbps (1000 Mbps w każdym kierunku).
Kolejna kwestia to dobre złącza kablowe. Na przykład w aplikacjach przemysłowych, w środowiskach zapylonych, nie można zastosować klasycznych złączek RJ45. Konieczne jest ich dodatkowe zabezpieczenie mechaniczne. W tego typu aplikacjach dobrze jest użyć np. złączek M-12. Standardowo są one oferowane tylko z czterema doprowadzeniami. Dla sieci gigabitowych konieczne jest więc zastosowanie nowych łączy M-12 z ośmioma doprowadzeniami.
Standard Ethernetu gigabitowego jest w pełni kompatybilny z większością współczesnych komputerów klasy PC. W znacznym stopniu może przyczynić się do poprawy osiągów i parametrów komunikacji danych w przemysłowych sieciach sterowania. Na przykład w aplikacji składającej się z 20 urządzeń sieć gigabitowa może w znaczący sposób przyczynić się do eliminacji ewentualnych zatorów magistrali poprzez 10-krotną redukcję czasu potrzebnego na przejście pakietów danych przez switche i magistrale. Fakt ten ma szczególne znaczenie w tzw. aplikacjach krytycznych, zwłaszcza tzw. czasu rzeczywistego.3)
Jacek Bogusz, EP
Literatura:
- AutomatykaOnline.pl „Ethernet Przemysłowy: Profinet i Ethernet/IP”, https://goo.gl/YNbdgt
- Zuzanna Wieczorek, Marcin Karbowniczek „Internet Protocol w komunikacji przemysłowej”, „Elektronika Praktyczna+” nr 3/2010
- Ralf Captur „Ethernet gigabitowy w zastosowaniach przemysłowych”, Control Engineering Polska, https://goo.gl/KKuPtR
- Jarosław Tarnawski „Przemysłowe Sieci Informatyczne. Ethernet przemysłowy”