Robotyczne systemy wizyjne ? w którym miejscu jesteśmy?

Chociaż aplikacje robotyczne systemów wizyjnych nieustannie ewoluują, nadal istnieje luka technologiczna pomiędzy tym, co widzi człowiek, a tym, co jest w stanie dostrzec robot. Czy rozwiązaniem tych problemów może być technologia wizyjna 3D dla aplikacji maszynowych?
Gdy nie ma się doświadczenia w robotyce, łatwo źle zrozumieć możliwości wykorzystania w tej dziedzinie wizji maszynowej. Sposób, w jaki robot postrzega przedmioty, pozostaje prawdopodobnie najbardziej złożoną częścią całego procesu robotycznego. Wprawdzie nowoczesna technologia powoli likwiduje lukę między maszyną a człowiekiem w kategoriach elastyczności czy zdolności chwytania przedmiotów, ale nadal istnieją duże różnice pomiędzy tym, co widzi i jak to interpretuje robot, a tym, co widzi i rozumie człowiek. Systemy wizyjne dla aplikacji robotycznych nieustannie jednak ewoluują.
Ocena robotycznych systemów wizyjnych
Kilka lat temu rozmawiałem z pewnym klientem na temat aplikacji wizyjnych dla robotów. Zauważyłem u niego zdystansowanie do tego tematu i nieufność. Nic dziwnego. Kamery przemysłowe nie były tak zaawansowane technologicznie jak teraz, a i logika aplikacji robotycznych pozostawiała wiele do życzenia, więc większość klientów ?aplikacji marzeń? uważało, że satysfakcjonującej robotycznej aplikacji wizyjnej nie da się zrealizować. Obecnie jednak ? wraz z upowszechnieniem technologii robienia zdjęć i kręcenia filmów zwykłym smartfonem oraz postępami w dziedzinie ?inteligentnych kamer? przyjaznych dla użytkownika ? coraz łatwiej wprowadzać technologie wizyjne wprost do celi robota.
Niemniej wciąż występują w tej kwestii rozmaite ograniczenia. Sprawdźmy je w kilku kluczowych obszarach.
-> Adaptowalność. Większość aplikacji dla robotycznych systemów wizyjnych opiera się na bardzo dobrze zdefiniowanych rozwiązaniach ze wstępnie zaprogramowanymi funkcjami. Potrafią one wykrywać poszczególne wzorce i robią to naprawdę dobrze. Jednak jeżeli przed kamerą pojawi się coś nieoczekiwanego, może zostać pominięte przez aplikację. Przykładem choćby całkowicie zautomatyzowany publiczny test Turinga, czyli popularne CAPTCHA (Completely Automated Public Turing Test), pokazane na fot. 1. W teście tym wyświetlane są lekko zdeformowane litery, których wciąż nie potrafi wykryć ani system wizyjny, ani system do analizy znaków. Prawdopodobnie test zostanie za jakiś czas przez robotyczne systemy wizyjne złamany, ale to jednak kwestia przyszłości.

-> Wykrywanie trendów. Dopóki system wizyjny robota nie zostanie zaprogramowany do wykrywania trendów lub wzorców, nie będzie w stanie tego robić. Robotycznym systemom wizyjnym wciąż daleko do ludzkiej zdolności interpretowania i kojarzenia ze sobą różnych rzeczy. Wykryta cecha przedmiotu jest często traktowana przez maszynę indywidualnie, bez włączenia jej w kontekst, trafia więc do raportu okresowego, który musi zostać potem przeanalizowany przez człowieka. Tak więc np. po przeprowadzeniu testów kontroli jakości wyświetla się lista błędów, która dopiero po przejrzeniu przez pracownika obsługującego urządzenie stanowić może podstawę do dalszych działań ? to człowiek zdecyduje, czy w procesie produkcji wystąpił jakiś problem. Systemy wizyjne wciąż nie potrafią np. ustalić, czy frezarka ma uszkodzony frez i wydać decyzji o zatrzymaniu linii produkcyjnej.
-> Niezawodność. Tu już wkraczamy na obszar robotycznych plusów, bo główną zaletą systemu wizyjnego jest właśnie jego stałość i niezawodność. Jeśli będzie on obserwował właściwe miejsce, dostrzeże ewentualne nieprawidłowości. Co więcej, nigdy nie zmęczy mu się wzrok i zawsze będzie stosować te same parametry. Człowiek jest zdecydowanie bardziej podatny na błędy ? zwłaszcza w miarę upływu dnia roboczego staje się mniej uważny. Stałość parametrów pracy oraz dokładność działania jest jedną z głównych przyczyn wprowadzania robotów do fabryk przez producentów ? sensowne staje się więc wyposażanie maszyn w systemy wizyjne mające takie same atrybuty.
Lokalizacja kamery
Zależnie od aplikacji system wizyjny umieszczany jest w różnych miejscach celi robota. Istnieje wiele typów robotów, kamer i aplikacji, więc liczba miejsc usytuowania kamery i jej wykorzystania pozostaje praktycznie nieskończona. Warto pamiętać przy tym o kilku ważnych aspektach.
-> Końcówka ramienia robota. Ponieważ różne aplikacje wymagają monitorowania tego, co chwyta robot, niektórzy producenci robotów montują kamery bezpośrednio na ich nadgarstku. Pozwala to na ruch kamery w wielu kierunkach, lokalizowanie części i uchwycenie ich zgodnie z kinematyką maszyny. Kamera często znajduje się blisko chwytaka, może więc sprawdzać prawidłowość chwytania części lub wykrywać ich upuszczenie podczas manipulowania. Umieszczenie kamery na końcu ramienia oznacza, że pozostaje ona w ciągłym ruchu, więc jeśli potrzebne jest zrobienie zdjęcia obszaru chwytania części, należy zatrzymać robota we właściwym położeniu, upewnić się, że kamera jest stabilna i dopiero wtedy wykonać fotografię. Jeśli jakaś aplikacja wymaga naprawdę krótkiego cyklu roboczego, być może trzeba przemyśleć na nowo opcję usytuowania kamery.
-> Aplikacje związane ze sceną roboczą. Niektóre rodzaje systemów wizyjnych są instalowane na robocie i nakierowane na przenośnik taśmowy, po którym przesuwają się różnie zorientowane części. Gdy dana część znajduje się przed kamerą, ta wykonuje zdjęcie służące do analizy położenia i orientacji części w stosunku do robota (fot. 2). Wtedy robot jest w stanie ją uchwycić.

-> Monitoring celi robota. Robotyczne widzenie może być wykorzystywane dla celów bezpieczeństwa. Kamera lub zestaw kamer są wtedy instalowane na robocie lub obserwują go, aby wykryć wejście człowieka do przestrzeni roboczej maszyny. Ponieważ przy większości robotów współpracujących nie montuje się zewnętrznych osłon bezpieczeństwa, za pomocą tej metody można regulować prędkość maszyny, w zależności od odległości pomiędzy nią a pracownikiem. Każda integracja celi robota wymaga oceny ryzyka, zgodnie z przepisami i regulacjami obowiązującymi w danym kraju czy regionie.
Różnice pomiędzy kamerami 2D a 3D
Technologia wizyjna szybko ewoluuje. Przez ostatnie lata wzrastała popularność filmów 3D ze względu na realizm efektów odbieranych przez widzów. To samo dzieje się w przypadku aplikacji przemysłowych. Technologia wizji 3D jest krokiemnaprzód, mogącym dostarczyć więcej informacji na temat obiektu, którym ma manipulować robot. Jednak wymaga wciąż sporych ulepszeń.
Póki co systemy wizji dwuwymiarowej oferują lepszy od opcji 3D zapis ścieżki ruchu robota i są prostsze w użyciu. Wiele kamer 2D prezentuje naprawdę dobre parametry, a na skutek powszechnego wykorzystywania tej technologii (szczególnie w smartfonach) ceny modeli wysokiej jakości mocno spadają.
W dwuwymiarowych systemach wizyjnych występują jednak problemy z pojawiającymi się cieniami. Aby je ograniczyć, większość aplikacji wykorzystuje lampy błyskowe lub źródła światła umieszczone w tej samej orientacji co kamery. W niektórych aplikacjach montowane części są instalowane na oświetlonych stołach, kamera widzi więc dokładnie ich kontury. Popularne aplikacje wizyjne 2D obejmują: kontrolę jakości, lokalizowanie części, odczyt kodów QR i kreskowych.
Opanowanie trójwymiarowej wizji maszynowej oznaczać będzie naprawdę wielkie osiągnięcie, jednak technologia ta nadal nie jest gotowa na szerokie wykorzystanie w przemyśle. Pozostaje wciąż zbyt złożona ? zarówno odnośnie stosowania, jak i programowania, aby można ją było wprowadzić do celi robota. Na rynku jest już dostępnych kilka bibliotek wizyjnych oraz modeli kamer 3D, ale ich ceny oraz niezawodność nadal znajdują się daleko w tyle za kamerami 2D. Póki co systemy wizyjne 3D są więc najczęściej wykorzystywane do obserwacji scen roboczych, lokalizowania i modelowania części oraz w złożonych aplikacjach wizyjnych.
Integracja systemów wizji maszynowej
Integrowanie systemu wizji maszynowej zależy od zadań, które mają być wykonywane przez robota. Poniżej zamieszczamy wskazówki, o których trzeba pamiętać, chcąc wprowadzić system wizyjny do celi robota.
-> Dokumentuj proces wykonywany przez operatora. Jeśli np. nigdzie w wytycznych dla operatora nie jest wymienione ?dmuchanie na części?, ale wykonuje on to codziennie, bo odbierane elementy są zawsze zakurzone, to z systemem zautomatyzowanym powinna zostać zintegrowana dmuchawa powietrzna.
-> Zdefiniuj ograniczenia numeryczne między tym, co akceptowalne, a co nie ? określ maksymalną tolerancję długości części, którymi operuje robot, ich dopuszczalne kolory itd. Jeżeli nie można tego zdefiniować numerycznie, będzie potrzebna większa liczba przykładów do nauki systemu.
-> Włącz operatora do procesu automatyki. Operatorzy znają specyfikacje części, definicje wad produkcyjnych oraz inne zmienne, które wpływają na wygląd produkowanych części. Należy wykorzystać ich wiedzę.
-> Pamiętaj, że robot nie potrafi się przystosować tak jak człowiek do zmiennego wyglądu powierzchni części. Aby więc ułatwić mu proces widzenia, należy rozważyć zmianę etapów procesu technologicznego.
-> Ucz i ćwicz system ? za pomocą części pochodzących z różnych partii produkcyjnych zapoznawaj system wizyjny z różnymi dopuszczalnymi wyglądami powierzchni. W efekcie zostanie on dostrojony tak, aby je tolerował. Ostatecznie pożądane jest posiadanie dokładnego systemu, który może być zarówno elastyczny, jak i odpowiednio czuły. 
Jaki jest poziom akceptacji i elastyczności, wymagany dla aplikacji systemów wizyjnych? Aby to określić, należy rozpocząć od małych kroków i budować swój system na podstawie doświadczenia. Dobrze jest przejść się po hali fabrycznej, przyjrzeć się istniejącym aplikacjom i wybrać tę, która będzie najłatwiejsza do zautomatyzowania za pomocą systemu wizyjnego. Po dokonaniu wyboru i przeprowadzeniu instalacji możemy wyciągnąć odpowiednie wnioski, a następnie przejść do bardziej złożonych aplikacji. Zawsze należy się upewnić, że doceli robota przydzielono operatora. Gwarantuje to właściwą identyfikację każdej części procesu technologicznego. A co najważniejsze ? pamiętajmy, aby kontrolować proces przed jego zautomatyzowaniem.
Autor: Mathieu Bélanger-Barrette pracuje jako inżynier produkcji w kanadyjskiej firmie Robotiq.
Tekst pochodzi z nr 5/2017 magazynu "Control Engineering". Jeśli Cię zainteresował, ZAREJESTRUJ SIĘ w naszym serwisie, a uzyskasz dostęp do darmowej prenumeraty w formie drukowanej i/lub elektronicznej.