Część druga ..
Sygnały bezpieczne
Wspomniane wcześniej tryby pracy ręcznej i automatycznej różnią się przede wszystkim kontrolą przez robota czy drzwi są otwarte. Przyciski bezpieczeństwa działają zawsze i w każdym trybie (w poprawnie wykonanej instalacji elektrycznej).
Ten krótki poniższy opis w żadnym wypadku nie powinien być stosowany jako wyłączne źródło wiedzy o układach bezpieczeństwa. Wszystkie analizy oraz projekty układów powinny zostać wykonane przez wykwalifikowanych specjalistów. W tym artykule staramy się tylko przybliżyć najważniejsze punkty, tak aby poszerzyć świadomość sposobu działania tego systemu.
Informacje o wszystkich sygnałach związanych z bezpieczeństwem można przekazywać do robota na dwa główne sposoby – poprzez tradycyjne złącza elektryczne oraz – coraz bardziej popularne – sieci komunikacyjne z opcją safety.
Zacznijmy od starszej formy. Sygnały elektryczne zawsze są opisane w dokumentacji producenta do szafy sterowniczej robota. Notacja może być różna, zasada działania zawsze taka sama. Potrzebujemy dwóch niezależnych obwodów, żeby sprawdzić każdy układ (tzw. „dwukanałowość sygnałów”). Informacje w otwartych drzwiach powinny zostać wpięte w sygnały opisane najczęściej jako ‘fence’ lub ‘gate’ (przywołuje materiały anglojęzyczne). Sygnały ze sterownika bezpieczeństwa o stanie obwodu przycisków awaryjnych powinny zostać podłączone w przygotowane na to kanały (najczęściej zawierające słowa „emergency stop”)
Niestety częstym błędem jaki widzimy u niektórych integratorów to podpinanie informacji o otwartych drzwiach do układu wyłączników awaryjnych. Chociaż z pozoru może się to wydawać podwyższeniem bezpieczeństwa to w rzeczywistości powoduje problem nie do ominięcia w czasie przeuczania punktów. Gdy drzwi zostaną otworzone, na robocie pojawi się informacja o przerwaniu obwodu bezpieczeństwa. Tego komunikatu nie da się skasować ani nadpisać. Przez to nie da się w sposób bezpieczny skorygować pozycji robota. Albo drzwi do stacji będą zamknięte – więc programista nie będzie widział dokładnie jak porusza robotem; albo gdy wejdzie do stacji sprawdzić jak daleko znajdują się przeszkody – nie będzie w stanie poruszać robotem. Sprawdzajcie swoich elektryków i firmy integratorskie! W takich stacjach, gdzie nie przewidziano procedury przeuczania może dojść do bardzo poważnych wypadków! Pamiętajmy, że pod żadnym pozorem nie możemy pozwolić na zamknięcie jakiejkolwiek osoby w środku w stacji zrobotyzowanej! Robot musi wiedzieć, że drzwi są otwarte na podstawie rzeczywistych sygnałów!
Sieci komunikacyjne safety
Dzięki rozwojowi protokołów komunikacyjnych coraz częściej możemy ułatwić sobie projektowanie bezpieczeństwa wykorzystując sieci przemysłowe. Aby spełniały wymogi bezpieczeństwa muszą zostać odpowiednio przygotowane przez producentów. Najczęściej ich nazwy mają w sobie słówko safety. Do najbardziej powszechnych w naszych fabrykach należą: PROFIsafe, Safety over EtherCAT (FSoE) czy też CC-Link IE Safety. Niewątpliwą zaletą jest fakt, że sygnały te są najczęściej zdefiniowane zarówno po stronie sieci jak i robota, co znacznie eliminuje możliwości błędów.
Przypatrzmy się na przykład z PLC Siemens z konfiguracją PROFIsafe oraz odpowiadającej mu konfiguracji po stronie robota FANUC:
Warto też pamiętać o pewnych niuansach. Na przykład, jeśli z jakiegoś powodu będziemy mieć linię przemysłową na której będą np. roboty FANUC oraz Kuka (np. w różnych oddziałach firmy), to aby zachować jednolity sposób definiowania kolejności sygnałów bezpieczeństwa po stronie PLC, lepiej zacząć od przygotowania jej w stacjach z Kuką. Dzieje się tak dlatego, że obsługa sygnałów po stronie tego robota jest narzucona kolejnością przez producenta. FANUC natomiast daje nam możliwość dowolnego zdefiniowania następowania po sobie tych sygnałów. Przemyślenie tego na początku projektu pozwoli nam na lepsze zarządzanie standardami i ich rozszerzaniem.
Samomonitorowanie się robota
Kilku producentów posiada w swojej ofercie możliwość dokupienia modułów nadzorujących pracę robota zgodnych z wymogami bezpieczeństwa. Rozwiązania takie jak SafeOperation z Kuki, DCS z FANUC lub SafeMove z ABB pozwalają między innymi na (szczegółowe zakresy paczek muszą zawsze zostać sprawdzone przez planowanym zakupem):
– Monitorowanie pozycji i prędkości osi – zdefiniowanie np. ograniczenie poruszania się osią A1 robota.
– Monitorowanie pozycji i prędkości kartezjańskiej – ustalenie maksymalnej prędkości TPC podczas ruchu.
– Kontrola stref pracy – ograniczenie robota dodatkową klatką, z której nie może wyjechać lub wjechać nawet w trybie ręcznym.
– Kontrola zdefiniowanego narzędzia.
– Kontrola własnych osi – uniemożliwia przypadkowe wyjechanie poza strefy przez np. tylną częścią 3 osi
– Mapowanie sygnałów safety.
– Monitorowanie dodatkowych sygnałów bezpieczeństwa – np. dodanie czujnika pozycji robota.
– Tworzenie logiki sygnałów bezpiecznych.
Głównym zadaniem jest chronienie operatora i innych osób znajdujących się w pobliżu. Natomiast czasami przy okazji jest wykorzystywane do ochrony maszyn. Właściwe ułożenie dodatkowych stref zabraniających robotowi na wjazd może uchronić przed kolizją, spowodowaną błędnym poleceniem ruchowym robota lub nieodpowiednim wybraniem kierunku ruchu przy sterowaniu ręcznym.
Bezpieczeństwo innych maszyn
Symulacje
Na wstępnym etapie do sprawdzania czy robot nie spowoduje kolizji swoją trajektorią doskonale nadają się systemy symulacji (o nich przygotujemy oddzielny artykuł). W środowisku wirtualnym, przy odpowiednio odwzorowanej rzeczywistości, możemy szybko wyłapać potrzebę np. dodatkowych punktów pośrednich. Część programów zaznaczy nam te kolizje na czerwono. Kluczowym elementem jest jak najdokładniejsze odzwierciedlenie rzeczywistej stacji.
Tak przygotowany program musimy oczywiście dokładnie sprawdzić na miejscu. Może się okazać, że na przykład słup do podtrzymywania stropu nie został uwzględniony w modelu 3D stacji lub jakaś maszyna została inaczej przykotwiona.
Strefy robocze
Do monitorowania zakresów pracy robota w celu ochrony innych urządzeń, może być wykorzystana funkcja definiowana stref roboczych (Uwaga! Te zabezpieczenie nie mogą być nigdy używane w celu ochrony ludzi). Zazwyczaj producenci określają to nazwami typu WorkZone (ABB), WorkSpace (Kuka). Polega to na zdefiniowaniu sześcianu i nadanie mu parametrów np. wystaw wyjście, gdy TCP jest w środku (używane często jako dodatkowe zabezpieczenie, żeby maszyna nie zamknęła się, gdy robot jest w środku), albo nie wjeżdżaj w strefę (ochrona przed nieumiejętnym sterowaniem ręcznym robota). Strefy te zazwyczaj nie monitorują całej jednostki mechanicznej robota, a tylko bieżące TCP.
Przykład kodu z Kuki:
$WORKSPACE[2]={X 0.0,Y 0.0,Z 0.0,
A 0.0,B 0.0,C 0.0,
X1 314.000,Y1 -250.000,Z1 -100.000,
X2 172.000,Y2 -455.000,Z2 450.000, MODE #OUTSIDE}
Opis: strefa druga ma układ współrzędnych zawieszony w układzie globalnym (XYZABC), w tym układzie wyznaczony jest sześcian, którego pierwszy punkt wyznaczają współrzędne (X1, Y1, Z1), a drugi (X2, Y2, Z3).
Czasami tworzy się samemu takie strefy wykorzystując po prostu ciągłe sprawdzanie bieżącej pozycji robota i porównując ją z jakąś wartością.
if ($ACT_TOOL == 1) AND ($ACT_BASE == 5) AND ($POS_ACT.Z > bezp_wys_mm) then
$FLAG[FlagaWysokosci] = true
ELSE
$FLAG[FlagaWysokosci] = false
endif
W tym kodzie sprawdzana jest pozycja wysokości, gdy wybrany jest jeden z układów współrzędnych i odpowiednie TCP, tak aby flaga pokazywała stanem wysokim, gdy robot znajduje się powyżej tej wysokości.
Następnym zabezpieczeniem wzajemnej bezkolizyjnej pracy urządzeń jest wypracowanie procedury „zapytań” o pozwolenie na wjazd do danych stref. Zazwyczaj dialog maszynowy wygląda tak:
Istotne sygnały wysyłane przez robota to: zapytanie o możliwość wjazdu (zazwyczaj zapisywane jako request). Informuje on PLC o oczekiwaniu robota na możliwość wjazdu do strefy. Sterownik PLC pozwala na wjazd udzielając wysokiego stanu na sygnale „pozwolenia” (czasami ten sygnał dodatkowo monitoruje się w całym obszarze przebywania w strefie).
Drugim sygnałem jest ustawiany programowo lub poprzez np. wspomniane workzony sygnał „Rob_poza_strefa_P”, który sygnalizuje sterownikowi PLC przebywanie poza monitorowanym obszarem. Dobrym nawykiem i zabezpieczeniem jest stosowanie tego sygnału, tak aby stan wysoki występował w sytuacji gdy robot jest w pozycji poza kolizyjnej. Ma to na przykład znaczenie gdy sygnały te są przesyłane elektrycznie i mogłoby dojść do przecięcia przewodu. Wtedy do sterownika PLC nie dochodziłby ten sygnał, co logicznie przekładałoby się na informację że robot może być w strefie.
Zagadnienia związane z bezpieczeństwem są bardzo rozległe. Ten artykuł traktujcie tylko jako pobieżne poruszenie kilku istotnych kwestii – ale w żadnym wypadku nie wyczerpuje on tematu. Czy macie jakieś refleksje na poruszone tematy? Czy coś chcielibyście, żebyśmy dodatkowo omówili? Dawajcie znać w komentarzach!
Autor: Dobromiła Włodarska