Środa, 06 sierpnia 2008

Technologie bezpieczeństwa-DeviceNet Safety

Zabezpieczanie maszyn i urządzeń technologicznych jest jednym z głównych zagadnień towarzyszących automatyzacji procesów. Wraz z rosnącą szybkością i złożonością produkcji kwestie bezpieczeństwa rozszerzone zostały w ostatnich latach również o przemysłowe sieci komunikacyjne.

Technologie bezpieczeństwa-DeviceNet Safety

W artykule zaprezentowano wymagania funkcjonalne nałożone przez normę IEC 61508 i wynikające z nich zmiany wprowadzone do przykładowej sieci tego typu, którą jest DeviceNet. W szczególności omówiono modyfikacje protokołu, które umożliwiają osiągnięcie odpowiedniego poziomu bezpieczeństwa.

Fot. 1 Kontroler bezpieczeństwa sieci NE1A firmy Omron Electronics

Rosnące zapotrzebowanie konsumentów na produkty wymusza zwiększanie szybkości pracy elementów, umożliwiając osiąganie większej wydajności i efektywności pracy systemów produkcyjnych. Jedynym niezmiennym elementem całego ciągu technologicznego pozostaje człowiek.

O ile w przypadku procesów ciągłych, wymagających pewnego ustalonego czasu, wynikającego przykładowo z reakcji chemicznych, niewiele udało się zmienić, w przypadku procesów dyskretnych, takich jak montaż czy produkcja FMCG, osiągnięto daleko idący postęp. Skrócenie czasu wytwarzania produktów spowodowało, że wszystkie operacje muszą być wykonywane znacznie szybciej. Aby zrealizować zadania maszynowe wymagane było zastosowanie szybszych silników, siłowników i innych elementów wykonawczych.

Wykorzystanie szybkich sterowników PLC wraz z całym zestawem układów serwonapędowych pozwoliło zdjąć z operatorów część obowiązków i funkcji kontrolnych. Obecności człowieka przy maszynie nie udało się jednak do końca wyeliminować.

Konieczne jest nadzorowanie podawania materiałów i składników, kontrola poszczególnych faz produkcji i usuwanie ewentualnych zatorów, przezbrajanie i wymiana zużytych elementów. Każde z tych zadań w większości przypadków wymaga ingerencji do wnętrza maszyny. Właśnie na tym etapie pojawia się problem bezpieczeństwa, który dotyczy zarówno personelu, jak też systemów produkcyjnych.

 

Ewolucja techniki zabezpieczeń

Fot. 2 Skaner 1753-DNSI firmy Rockwell Automation umożliwiający dostęp do sieci DeviceNet

Pierwsze systemy zabezpieczające sprowadzały się do centralnych wyłączników zasilania. W przypadku wystąpienia awarii operator wyłączał zasilanie i czekał, aż układy oraz elementy zatrzymają się bądź wytracą energię. Rozwój technologii PLC w latach 80. zeszłego wieku spowodował, że cała logika procesowa zmieniona została z przekaźników i styczników na rzecz uniwersalnych sterowników, dzięki czemu uzyskano daleko idącą elastyczność systemów sterowania.

Niestety układy bezpieczeństwa zostały w tym okresie rozbudowane jedynie o funkcję odcinania wyjść (sterownik mógł być dalej zasilany) oraz w wielu przypadkach dodawano czujniki zamknięcia osłon. Każda zmiana w układach zabezpieczeń wymagała w dalszym ciągu poprawek sprzętowych.

Kolejne lata przyniosły lawinowy rozwój technik sieciowych. Stworzenie takich technologii jak DeviceNet, Profibus czy ControlNet pozwoliło na rezygnację z doprowadzania wszystkich sygnałów do centralnego sterownika. Osiągnięto to dzięki wykorzystaniu modułów we/wy, które umieszczane były blisko źródeł i odbiorców sygnałów i łączone ze sterownikami poprzez kable magistralowe.

Takie rozwiązanie znacznie obniżyło koszty całości systemu, zwiększyło jego elastyczność i konfigurowalność, ale też pozwoliło na rozbudowę mechanizmów diagnostycznych. Ciągle jednak technologia oraz przepisy nie pozwalały na zastosowanie omawianych sieci w układach bezpieczeństwa.

Rys. 1 Układ warstwowy sieci protokołu CIP

Początek XXI wieku stał się dla techniki zabezpieczeń okresem przełomowym. Wielu dostawców, po ugruntowaniu się na rynku technologii sieciowych, rozpoczęło prace nad stworzeniem rozwiązań przenoszących wyżej wspomniane możliwości do systemów bezpieczeństwa.

Wychodząc temu naprzeciw organizacje normujące stworzyły międzynarodowy standard określany jako IEC 61508. Zdefiniowano w nim m.in. generalne zasady zabezpieczania urządzeń przy pomocy programowalnych układów elektronicznych, a w szczególności połączonych za pomocą sieci. Jednym z jej elementów jest określenie wiarygodności systemu jako układu bezpieczeństwa.

Wyraża się on poziomem nienaruszalności bezpieczeństwa SIL (Safety Integrity Level), który zależny jest od prawdopodobieństwa wystąpienia błędu wewnętrznego w czasie pracy systemu. Podstawowym zadaniem dla sieciowego systemu bezpieczeństwa nie jest przy tym wyeliminowanie możliwości awarii układu, ale spowodowanie, że w przypadku wystąpienia awarii wszystkie wskazane urządzenia przełączone zostaną w odpowiedni stan bezpieczny. Dla zdecydowanej większości aplikacji przemysłowych zaleca się stosowanie poziomu SIL 3, co oznacza że w trakcie pracy w pełni obciążonego systemu niezauważony lub źle zidentyfikowany błąd może się pojawić raz na 150 lat ciągłej pracy.

Spełnienie powyższego warunku nie jest łatwe, stąd większość dostawców zdecydowała się na stworzenie oddzielnych, dedykowanych sieci, wewnątrz których możliwa jest komunikacja wyłącznie z urządzeniami bezpieczeństwa. Dzięki uniwersalnemu protokołowi CIP, stanowiącemu definicję warstw wyższych sieci DeviceNet, udało się również dodać do istniejącej od 1994 roku technologii sieciowej nowe funkcje, tworząc DeviceNet Safety.

Nowe elementy w starej sieci

Rys. 2 Hybrydowy system bezpieczeństwa złożony z kiku sieci

Podstawą do zapewnienia pełnej funkcjonalności wymaganej przez normę IEC 61508 jest uniwersalny protokół CIP Safety (Common Industrial Protocol Safety). Jest on niezależną od warstwy fizycznej definicją właściwości urządzeń przemysłowych i metod ich komunikowania. Na rys. 1 przedstawione zostały warstwy sieciowe w odniesieniu do trzech typów sieci – DeviceNet, ControlNet oraz Ethernet/IP.

We wszystkich przypadkach odwołanie do poszczególnych atrybutów (np. stan wejścia czy przyspieszenie falownika) jest takie samo, niezależnie od zastosowanej sieci. Rozszerzając opis funkcji o dodatkowe elementy związane z bezpieczną komunikacją możliwe stało się zachowanie poprzednich właściwości i w ten sposób w 2005 roku powstała sieć określana jako DeviceNet Safety.

Następnie ukończone zostały też prace i testy nad drugim systemem sieciowym – Ethernet/IP Safety. Pozwoliło to na budowanie układów hybrydowych, integrujących różne media, czego przykład pokazano na rys. 2. W ten możliwe jest również dzielenie układów na fragmenty przy zapewnieniu integralności całego systemu bezpieczeństwa.

Protokół CIP Safety

Rys. 3 Struktura obiektowa wymiany danych w protokole CIP Safety

Warstwa aplikacyjna protokołu CIP Safety określana jest przez obiekt Safety Validator (SV). Jest on odpowiedzialny za zarządzanie połączeniami (CIP Safety Connections) i pracuje jako pośrednik pomiędzy obiektami aplikacji oraz warstwy łącza (patrz rys. 3). W trakcie przesyłania danych pomiędzy producentem (z lewej strony rysunku) i konsumentem (z prawej strony) obiekty SV pełnią następujące funkcje:

  • aplikacja generująca dane (PSA) wykorzystuje fragment klienta SV do utworzenia bezpiecznych danych oraz do zapewnienia koordynacji czasu,
  • klient SV wykorzystuje tradycyjne medium DeviceNet do przesłania wszystkich informacji (dane, czas) do odbiorcy,
  • aplikacja odbierająca dane (CSA) wykorzystując fragment serwera SV odbiera i sprawdza poprawność danych,
  • server SV wykorzystując nawiązane połączenie zwraca informację o czasie przyjęcia wiadomości do klienta SV.

Należy zwrócić uwagę, że podczas wymiany danych elementy łącza (w środku rysunku) nie uczestniczą w procesach związanych z bezpieczeństwem. Integralność danych i detekcję błędów zapewniają obiekty SV.

 

Sposoby wykrywania błędów

Rys. 4 Przykład wyliczania wieku danych

Jak wspomniano wcześniej, zadaniem CIP Safety nie jest 100% ochrona czy zapobieganie pojawianiu się błędów. Jedną z głównych funkcji obiektów SV jest ich wykrywanie i podejmowanie odpowiedniej akcji. W tabeli 1 wymienione zostało 9 błędów, które muszą być wykrywane przy pomocy jednej, bądź kilku z pięciu metod.

W standardowej sieci DeviceNet wysyłanie danych odbywa się metodą typu broadcast. Oznacza to, że nadawca nie otrzymuje bezpośrednio potwierdzenia odebrania danych. Protokół nakłada na urządzenia typu slave obowiązek przesyłania co określony czas informacji o stanie lub odpowiedź taka udzielana jest na żądnie.

Taki sposób weryfikacji jest niewystarczający do zapewnienia pracy na poziomie SIL 3. W sieci DeviceNet Safety każda informacja jest przesyłana z dołączonym stemplem czasowym. Jest to forma bardzo precyzyjnego licznika pozwalającego odbiorcy określić wiek otrzymanych danych. W przypadku przekroczenia dopuszczalnego czasu mogą być podejmowane dodatkowe działania, jak np. żądanie ponownego transferu lub przełączenie w tryb bezpieczny. Szczegóły takiej komunikacji pokazano na rys. 4.

Rys. 5 Krótka ramka DeviceNet Safety

Po nawiązaniu połączenia następuje synchronizacja zegarów poprzez komendę ping. Wszystkie dalsze komunikaty opierają się na czasie liczonym na bazie offsetów określonych podczas nawiązywania połączenia. Każde przesłanie danych jest łączone z przesłaniem stempla (oznaczone jako Time Stamp na rysunku). Z uwagi na możliwy dryft układów nadawczych i odbiorczych ramka ping jest przesyłana co jakiś czas, aby zapewnić synchronizację zegarów.

Oprócz stempla czasowego do detekcji błędów wykorzystywany może być identyfikator PID (Production IDentifier). Podczas konfiguracji systemu każdy potencjalny nadawca danych (producent) tworzy specjalny numer będący kombinacją numeru seryjnego, numeru połączenia CIP oraz klucza produktu.

Odbiorca podczas analizy danych (poprzez obiekt SV) porównuje identyfikatory i w przypadku niezgodności odrzuca informację i/lub przechodzi w stan bezpieczny. Mechanizm taki jest szczególnie ważny w przypadku układów hybrydowych łączących kilka podsieci, w których może wystąpić błąd złego przekierowania pakietów.

Rozdzielność funkcjonalna, Safety CRC i redundancja

Kolejną cechą omawianego protokołu jest tzw. rozdzielność funkcjonalna. Jest to cecha DeviceNet Safety blokująca tworzenie obiektów SV w urządzeniach, które nie mają charakteru układów bezpieczeństwa. Mechanizm ten pozwala na uniemożliwienie hipotetycznego podszywania się – np. w wyniku błędu – standardowych urządzeń pod elementy typu safety.

Wykrywanie błędów wspomaga również suma kontrolna. Zapewniać ma ona kontrolę integralności i niezmienności danych. Modyfikacja standardowego algorytmu na potrzeby układów bezpieczeństwa pozwoliło na osiągnięcie odstępu Hamminga na poziomie 4. Dzięki temu wszelkie problemy wynikające zarówno z zakłóceń jak i błędów przy fragmentacji mogą zostać szybko wykryte. Dzięki umiejscowieniu Safety CRC wewnątrz obszaru danych w komunikatach osiągnięto niezależność od warstwy łącza dodającej własną, wynikającą z sieci sumę kontrolną.

Aby dodatkowo zwiększyć wartość odstępu powyżej 4, zdecydowano się na redundantny transfer danych i sum kontrolnych. Oznacza to iż w każdym komunikacie przekazywane informacje są dublowane w postaci właściwych danych i ich negacji. Zadaniem obiektu SV jest więc ich wydzielenie, porównanie logiczne i następnie – o ile wynik jest pozytywny – przekazanie do analizy sumy safety CRC.

Przesyłanie danych i nawiązywanie połączeń

Rys. 6 Długa ramka DeviceNet Safety

Przesyłanie danych, w przypadku podstawowej formy protokołu DeviceNet, opiera się o wykorzystanie ramki CAN. W przypadku sieci bezpiecznej wszelkie zmiany w protokole wprowadzone zostały w obszarze danych, co pozwala zachować niezależność od typu łącza i umożliwić współpracę różnych urządzeń.

W sieci DeviceNet Safety wyróżnia się dwa rodzaje komunikatów – krótkie i długie. Pierwszy z nich (patrz rys. 5) pozwala na przesłanie do dwóch bajtów informacji, co jest bardzo przydatne dla prostych urządzeń, takich jak wyłączniki bezpieczeństwa czy zabezpieczenia osłon. Taki rodzaj komunikacji minimalizuje też ruch sieciowy.

Drugi rodzaj komunikatu umożliwia przesyłanie większych ilości danych – aż do 250 bajtów. Warto tutaj zwrócić uwagę, że standard CAN dopuszcza przesyłanie do 8 bajtów w ramce, a więc do przesłania takiej ilości danych konieczna będzie ich fragmentacja. Jest to jednak własność łącza, a więc z punktu widzenia DeviceNet Safety i obiektu SV ciągle operuje się na pojedynczym, długim komunikacie (patrz rys. 6).

Warto zauważyć, że w przypadku danych podlegających redundancji, wydłużeniu ulega zarówno suma kontrolna, jak i właściwe dane. Wydłuża to treść komunikatu, a co za tym idzie czas jego przesyłania, ale zapewnia również bardzo dużą integralność danych.

Ponieważ wykorzystanie wyłącznie komunikatów z danymi jest niewystarczające do poprawnej pracy sieci, stworzono cały szereg dodatkowych form pozwalających na synchronizację, diagnostykę i konfigurację. Wcześniej omówiony został układ obiektów przy połączeniu typu singlecast czyli jeden-do-jednego.

Ciekawsze wydaje się wykorzystanie komunikatów typu multicast, a więc takich, w przypadku których nadawca wysyła informacje do kilku odbiorców jednocześnie. Schemat takiego połączenia przedstawiony został na rys. 7. W ten sposób możliwe jest przesłanie danych do 15 urządzeń. Klient SV tworzy w tym przypadku trzy połączenia – danych, koordynacji czasu i korekty czasu.

Dwa pierwsze są wspólne dla wszystkich odbiorców, natomiast korekta czasu odbywa się, z uwagi na wymogi bezpieczeństwa, indywidualnie dla każdego odbiorcy. Każdemu z powyższych mechanizmów towarzyszy inna, pod względem budowy ramki, forma komunikatu.

Konfiguracja urządzeń

Rys. 7 Schemat obiektowy połączenia typu multicast

Bardzo ważnym elementem pracy sieci jest konfiguracja urządzeń. Obecnie praktycznie wszystkie elementy systemów bezpieczeństwa są wyposażane w układy procesorowe z pamięciami typu Flash, dzięki czemu projektant może wykorzystać szereg narzędzi umożliwiających swobodną konfigurację urządzeń przez sieć.

Przesłanie typowych ustawień czy parametrów nie jest niczym nowym, więc w tym miejscu pokazane zostaną jedynie elementy związane z podniesieniem bezpieczeństwa.

Sieć DeviceNet Safety zapewnia kilka mechanizmów zabezpieczających system przed zmianami konfiguracji:

  • Safety Network Number – specjalny numer określający sieć, który jest modyfikacją PID związaną z wersją skanera sieci. Każde urządzenie pracujące ze skanerem przechowuje jego identyfikator w celu sprawdzenia, czy zmiany w konfiguracji prowadzone automatycznie przez program sterownika pochodzą z właściwego skanera.
  • Password Protection – zabezpieczenie odpowiadające powyższemu identyfikatorowi, które przeznaczone jest dla operatorów sieci i umożliwia autoryzowanie dostępu.
  • Configuration Ownership – możliwość wyeliminowania na poziomie komunikatów nieautoryzowanego dostępu; każde urządzenie (sterownik, karta sieciowa, urządzenie zdalne, itp.) może mieć określone dozwolone źródło zmian w konfiguracji.
  • Configuration Locking – możliwość przełączenia sieci w stan blokujący wszelkie zmiany, ale umożliwiający odczyt wszystkich parametrów. Dzięki temu po zakończeniu testów i dopuszczeń systemu do pracy użytkownik ma możliwość podglądu stanu sieci.

Podsumowanie

W przedstawionym przykładzie omówiono przykładowy protokół bezpieczeństwa, który rozszerza wykorzystywany w przemyśle standard komunikacyjny. Chociaż obecny jest on na rynku dopiero od kilku lat, wielu znaczących producentów automatyki ma w swojej ofercie wspierające go urządzenia i systemy.

Niemniej szczególnie ważne jest zrozumienie zasad jego działania przed rozpoczęciem wykorzystywania urządzeń oferujących omawianą funkcjonalność, gdyż z poziomu oprogramowania narzędziowego (które jest najczęściej przedmiotem szkoleń i prezentacji) wielu omawianych elementów protokołu nie widać. Autorzy zachęcają do udziału w różnego typu spotkaniach i szkoleniach jako kontynuację poznawania sieciowych systemów bezpieczeństwa opartych o DeviceNet Safety.

Rafał Tutaj, Zbigniew Piątek

Tabele

  • Metody wykrywania błędów
Zapytania ofertowe
Unikalny branżowy system komunikacji B2B Znajdź produkty i usługi, których potrzebujesz Katalog ponad 7000 firm i 60 tys. produktów
Dowiedz się więcej
Przejdź do kompendium