Strona główna ASTOR
Automatyka w praktyce

Jak skonfigurować i uruchomić komunikację EtherNet/IP CIP Safety w robotach Kawasaki Robotics z modułem Cubic-S

Kontakt w sprawie artykułu: Piotr Kaczorowski - 2023-02-09

Z tego artykułu dowiesz się:

  • jak działa protokół CIP Safety w Ethernet/IP,
  • co potrzebujesz do przeprowadzenia konfiguracji komunikacji,
  • jak skonfigurować i podłączyć robota,
  • jak skonfigurować połączenie na sterowniku Safety,
  • jak skonfigurować wejścia i wyjścia modułu bezpieczeństwa Cubic-S,
  • jak stworzyć prosty program testowy,
  • kiedy warto rozważyć zastosowanie Ethernetu/IP z protokołem CIP Safety.

Poznaj podstawy konfiguracji i uruchomienia bezpiecznej komunikacji Ethernet/IP CIP Safety na przykładzie robota Kawasaki Robotics z modułem Cubic-S oraz sterownikiem bezpieczeństwa SICK. Dowiedz się także, jak stworzyć prosty program testowy, by zweryfikować połączenie.

Jak działa protokół CIP Safety w Ethernet/IP?

Protokół CIP Safety jest rozszerzeniem standardu CIP (Common Industrial Protocol) o możliwość przesyłania danych związanych z układami bezpieczeństwa. Protokół jest zaimplementowany w odpowiedniku warstwy aplikacyjnej modelu TCP/IP. Dzięki temu nie jest zależny od niższych warstw tego modelu.  Ten typ architektury pozwolił wykorzystać zdefiniowaną w normie IEC 61508 koncepcję „black channel”. Pozwala ona wykorzystać kanał teoretycznie do tego nie przeznaczony (m.in. brak redundancji) do przesyłania sygnałów bezpiecznych.

Implementacja funkcji bezpieczeństwa tylko w urządzeniach końcowych pozwala na stosowanie dowolnej architektury i sprzętu sieciowego. Sam protokół nie zapobiega powstawaniu błędów w komunikacji, ale ma zaimplementowane mechanizmy, które pozwalają te błędy wykryć. Funkcja wykrywania błędów jest zaimplementowana w końcowych urządzeniach safety, które sprawdzają poprawność i czas otrzymania pakietu danych.  Na podstawie tych parametrów podejmowane są właściwe akcje do ich obsługi.

Kiedy warto rozważyć zastosowanie Ethernetu/IP z protokołem CIP Safety? Zobacz informacje na końcu tego artykułu.

Czego potrzebujesz do przeprowadzenia konfiguracji komunikacji – platforma testowa

Do przeprowadzenia konfiguracji wykorzystano:

1. Robot Kawasaki Robotics BA006L z kontrolerem E01.

2. Moduł bezpieczeństwa Cubic-S z opcją EtherNet/IP CIP Safety (40217-G154).

3. Modułowy sterownik bezpieczeństwa Sick FX3 z modułami.

  • CPU FX3-CPU000000
  • Moduł komunikacyjny FX3- GEPR00010
  • Moduł IO FX3-XTIO84002

4. Oprogramowanie:CS-Configurator v 4.01

  • SICK Safety Designer Engineering Tool 1.11.0.144

Konfiguracja i podłączenie robota Kawasaki Robotics

Połączenie fizyczne

Port obsługujący protokół Ethernet/IP CIP Safety znajduje się na karcie 1VA. Jest to port obsługujący również wbudowany w kontrolerze software EtherNet/IP. Do podłączenia należy użyć przewodu ethernetowego o parametrach cat5E lub wyższej.

Schematyczne oraz rzeczywiste umiejscowienie portu do połączenia EtherNet/IP. Źródło: ASTOR

Konfiguracja robota Kawasaki Robotics

Gdy na robocie zaktywowana została opcja Cubic-S z protokołem EtherNet/IP CIP Safety, należy dokonać konfiguracji adresu sieciowego, na którym będzie odbywała się komunikacja.

W teachpendancie robota Kawasaki Robotics przechodzimy do Menu Aux. Function-> 6. Input/Output Signal:

Następnie przechodzimy do 8. Signal Alocation:

 W kolejnym kroku przechodzimy do Software EtherNet /IP setting.

Ustawiamy adres IP Sieci EtherNet /IP Safety w polu oznaczonym czerwoną ramką. Ustawiony adres IP musi być z tej samej podsieci, co adres z lewej strony.  Zapisujemy ustawienia poprzez potwierdzenie ich przyciskiem Enter na klawiaturze teachpendanta robota Kawasaki Robotics. Po zmianie adresów należy zrestartować kontroler.

Okno konfiguracji adresowej dla protokołu Ethernet/IP. Źródło: ASTOR

Konfiguracja połączenia na sterowniku SICK

Parametry sieciowe robota Kawasaki Robotics

Parametry niezbędne do skonfigurowania połączenia ze strony robota są następujące:

Tabela parametrów konfiguracyjnych EtherNet/IP. Źródło: ASTOR

Zostanie omówiona tylko podstawowa konfiguracja i dodawanie urządzenia do projektu. W celu zgłębienia zagadnienia należy sięgnąć po instrukcję do serii produktów Flexi Soft na stronie www firmy SICK.

Dodanie urządzenia sieciowego EtherNet/IP CIP Safety (robota) do projektu

Gdy utworzymy projekt i nawiążemy połączenie z sterownikiem bezpieczeństwa, należy dodać moduł bezpieczeństwa robota Kawasaki Robotics do projektu.

Okno dodawania urządzeń do projektu. Źródło: ASTOR

Dodajemy do projektu (poprzez dwukrotne kliknięcie) urządzenie Generic EtherNet/IP CIP Safety.

Dwuklikiem otwieramy urządzenie i wpisujemy dane jak poniżej.

Okno konfiguracji zewnętrznego urządzenia EtherNet/IP. Źródło: ASTOR

W polu Adres IP wprowadzamy adres ustawiony w Menu robota w zakładce Input/Output -> Signal Allocation -> Software EtherNet/IP settings.

Nazwa urządzenia jest nazwą identyfikacyjną – nie ma wpływu na połączenie.

Poniższe parametry należy wpisać do okna konfiguracyjnego:

  • Dostawca = 601
  • Typ produktu = 100
  • Kod Produktu = 1
  • Wersja główna = 1
  • Wersja dodatkowa = 1
  • Sprawdzenie wersji: „Kompatybilny moduł”

W kolejnej zakładce programu (Standardowe wymagania) ustawiamy zalecane RPI na 20 ms.

Okno Standardowe Wymagania do ustalenia czasu generowania pakietów danych. Źródło: ASTOR

W zakładce połączenia ustawiamy następujące parametry:

  • Ścieżka połączenia: „jest generowana automatycznie”
  • Wejście bezpieczeństwa sterownika: Producing Assembly = 772, Consuming Assembly = 1024, Wielkość zespołu = 4
  • Wyjście bezpieczeństwa sterownika: Producing Assembly = 1024, Consuming Assembly = 900, Wielkość zespołu = 4
  • Zespół konfiguracyjny = 1024
Konfiguracja nowego modułu. Źródło: ASTOR

Konfiguracja nowego modułu została ukończona. Należy jeszcze skonfigurować moduł komunikacyjny GEPR sterownika.

Konfiguracja modułu komunikacyjnego GEPR

Z poziom okna głównego projektu otwieramy konfigurację sterownika i przechodzimy do zakładki modułu komunikacji (GEPR).

Nazwa znacznika to nazwa pozwalająca rozróżnić urządzenie w projekcie.

Generujemy lub wstawiamy z projektu (w zależności, czy wartość była wcześniej ustalona) wartość sieci SSN (Safety Network Number). Wszystkie urządzenia należące do jednej sieci EtherNet/IP pełniące funkcje bezpieczeństwa mają ten sam numer SSN.

Ustawiamy adres sieciowy modułu komunikacyjnego i przepisujemy go do urządzenia. Urządzenie musi być w tej samej podsieci, co sieć na module Cubic-S.

W zakładce Connection creation alokujemy sygnały z modułu Cubic-S do sterownika bezpieczeństwa.

Przeciągamy żółte elementy na znaczniki + w module CPU. W ten sposób zostanie stworzone połączenie pomiędzy modułami.

W Connection overview ustalamy cykliczność pakietów i dopuszczalne straty.  Wynikowo uzyskujemy czas odpowiedzi, który wliczamy do czasu reakcji systemu.

RPI (requested packed interval) – określa częstotliwość wysyłania danych, Kawasaki Robotics zaleca wymianę danych nie częściej niż co 20 ms.

Maksymalna liczba utraconych pakietów – określa dopuszczalną ilość kolejno utraconych pakietów danych. Przyczyną utraty pakietów może być przepełnienie sieci pozostałymi danymi.

Opóźnienie sieci – tolerancja na odchylenie pomiędzy przewidywanym czasem dostarczenia pakietu, a rzeczywistym czasem dostarczenia pakietu.

Czas odpowiedzi za pośrednictwem sieci – to maksymalny czas, jaki mija pomiędzy kolejnymi aktualizacjami danych wejściowych i wyjściowych. Jest wyliczany z następującego wzoru.

Przechodzimy do zakładki EtherNet/IP services. Na górze okna wybieramy usługi dla urządzeń zewnętrznych.

Ustawiamy adres IP taki jak w module Cubic-S na robocie Kawasaki Robotics.

Następnie klikamy Wczytaj z urządzenia (uwaga, sterownik SICK i robot Kawasaki Robotics muszą być ze sobą podłączone bezpośrednio lub przez switch).

Teraz możemy nacisnąć Zapisz TUNID na xxx.xxx.xxx.xxx (w tym miejscu jest adres sieciowy EtherNet/IP CIP Safety robota Kawasaki Robotics).

Po tej operacji restartujemy robota Kawasaki Robotics i wgrywamy konfigurację do sterownika bezpieczeństwa SICK.

TUNID (Target Unique Node Identifier) – jest to unikalne ID urządzenia adapter (slave) w sieci EtherNet/IP CIP safety, które jest nadawane przez scanner (master) sieci. ID jest wykorzystywane jak jeden z mechanizmów kontrolnych przesyłania pakietów danych protokołu komunikacyjnego.

Konfiguracja wejść i wyjść Robota Kawasaki Robotics

Do skonfigurowania wejść i wyjść sieciowych dla modułu Cubic-S wykorzystujemy oprogramowanie CS-Configurator.

Po połączeniu się z modułem Cubic-S przy pomocy przewodu USB przechodzimy do Panel Tree View, a następnie Safety I/O.

Drzewko funkcji modułu Cubic-S. Źródło: ASTOR

W tym miejscu alokujemy poszczególne funkcje bezpieczeństwa do wejść i wyjść bezpiecznych. Pełen opis, jak to zrobić, znajdziesz w instrukcji Cubic-S Instruction Manual dostępnej na stronach wsparcia technicznego ASTOR.  

W programie testowym wejścia i wyjścia z robota Kawasaki Robotics skonfigurowano następująco:

1. Do pierwszego wejścia sieciowego przypisano funkcję monitorowania przestrzeni.

2. Aby to wykonać naciśnij dwukrotnie pole przy network input 1. W prawym oknie wybierz interesującą Cię funkcję bezpieczeństwa, a następnie naciśnij Allocate.  Funkcja bezpieczeństwa zostanie powiązana z wejściem nr 1.  Zatwierdź wybór przyciskiem Apply.

Alokowanie monitorowania strefy pierwszej do wejścia nr 1. Źródło: ASTOR
Monitorowanie strefy pierwszej alokowane do wejścia pierwszego. Źródło: ASTOR

Po tej operacji zatwierdź zmiany w alokacji wejść przyciskiem Update w prawym dolnym rogu ekranu. Podobne operacje zostały wykorzystane do alokacji monitorowania stałej strefy do wyjścia nr 1.

(Najpierw należy przeprowadzić ocenę ryzyka, względem której należy odpowiednio sparametryzować wybrane funkcje).

Weryfikacja poprawności połączenia

Weryfikacja połączenia po stronie robota Kawasaki Robotics

Aby zweryfikować poprawność połączenia, należy uruchomić monitor parametrów dodatkowych i wybrać opcję 93 network Safety Input Signal.

Menu monitora na Teachpendancie. Źródło: ASTOR

Gdy kontrolki przy parametrach Network oraz Module świecą się światłem zielonym ciągłym, oznacza to, że udało uzyskać się stabilne połączenie pomiędzy sterownikiem SICK, a robotem Kawasaki Robotics. W przypadku innego stanu kontrolek należy sprawdzić instrukcję „Manual for Cubic-S Network Safety Input/Output”.

Program testowy na sterowniku bezpieczeństwa

Przechodząc do zakładki Edytora logiki w programie Safety Designer możemy stworzyć prosty program mający na celu wymianę po jednej funkcji bezpieczeństwa z i do robota Kawasaki Robotics.

Przykładowy program wysyłający i odbierający po jednym sygnale może wyglądać w sposób przedstawiony poniżej (Uwaga, aby sygnał bezpieczny w robocie Kawasaki Robotics był uważany za właściwy, należy przypisać dwa kolejne bity na wejścia robota np. dla wejścia bezpiecznego robota nr 1 wystawiamy bit 0.0 oraz 0.1).

Przykładowy program testowy. Źródło: ASTOR

Kiedy warto rozważyć zastosowanie Ethernetu/IP z protokołem CIP Safety

Wykorzystanie modułu Cubic-S z protokołem CIP Safety zwiększa nam dostępną pulę bezpiecznych wejść i wyjść robota Kawasaki Robotics o kolejne 16 sygnałów.

Uzyskujemy również zredukowanie okablowania i uproszczenie podłączania – moduł bezpieczeństwa Cubic-S oraz sterownik bezpieczeństwa wystarczy połączyć przewodem ethernetowym. Zmniejszenie ilości i długości przewodów jest istotne zwłaszcza przy dużych maszynach i rozległych stanowiskach.

Opisywane rozwiązanie zapewnia wysoki poziom bezpieczeństwa i niezawodności systemu – protokół CIP Safety jest certyfikowany w następujących kategoriach:

  • SIL 3
  • Cat 4
  • PL e

Dodatkową korzyścią jest możliwość stosowania tradycyjnych wyłączników bezpieczeństwa, rygli i krańcówek poprzez wpięcie ich do wyspy EtherNet/IP z CIP Safety. Nie trzeba prowadzić przewodów od każdego wyłącznika bezpieczeństwa do wejść sterownika Safety, wystarczy wpięcie do istniejącej infrastruktury sieciowej stanowiska.

Zastosowanie haseł przy wprowadzaniu modyfikacji, a także indywidualnych numerów identyfikacyjnych urządzeń wykonawczych bezpieczeństwa sprawia, że nie jest możliwa nieuprawniona ingerencja w układ bezpieczeństwa.  

Do ochrony przed manipulacją służą m.in.:

  • SNN – każda sieć ma niepowtarzalny nr id, dzięki któremu urządzenia mogą być jednoznacznie przypisane do sieci, w której pracują.
  • Numer TUNID – pozwala na przypisanie i powiązanie konkretnego egzemplarza urządzenia do pracy w sieci.  Brak możliwości celowej podmiany urządzenia na takie bez np. wgranego projektu.
  • Ochrona hasłem – osoby nieuprawnione nie zmienią ustawień projektu i funkcji bezpieczeństwa.
  • Blokowanie konfiguracji – przed uruchomieniem systemu każde urządzenie powinno mieć przetestowaną i zweryfikowaną konfigurację. Dopiero po zatwierdzeniu jest możliwe uruchomienie systemu bezpieczeństwa.

Do zastosowania opisywanego protokołu nie są potrzebne dedykowane urządzenia sieciowe – zastosowanie „black channel” i implementacja funkcji bezpieczeństwa tylko w urządzeniach końcowych pozwala na stosowanie dowolnej architektury i sprzętu sieciowego.­­

Ten typ architektury jest niezależny od medium przesyłu, co pozwala na zastosowanie nawet transmisji bezprzewodowej, jak np. WiFi czy 5G. Dzięki temu roboty mobilne mogą być w prosty sposób wpięte w układy bezpieczeństwa stanowisk. Można też stosować bezprzewodowe rozproszone wyspy wejść/wyjść na odległych częściach stanowisk, upraszczając okablowanie stanowisk.

Istnieje możliwość łatwej rozbudowy układu bezpieczeństwa wraz z rozbudową aplikacji. Dodanie kolejnego urządzenia polega na jego wpięciu do sieci i konfiguracji w projekcie. Nie są wymagane zmiany w projekcie elektrycznym. 

Chcesz wiedzieć więcej? Skontaktuj się z autorem artykułu.

Newsletter Poradnika Automatyka

Czytaj trendy i inspiracje, podstawy automatyki, automatykę w praktyce

Please wait...

Dziękujemy za zapis do newslettera!

Czy ten artykuł był dla Ciebie przydatny?

Średnia ocena artykułu: 5 / 5. Ilość ocen: 2

Ten artykuł nie był jeszcze oceniony.

Zadaj pytanie

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *