201501_PSpaw.pdf 41Przegląd sPawalnictwa Vol. 87  1/2015 Metody wizyjne w automatyzacji spawania Vision methods in automation of welding Mgr inż. Grzegorz Sypniewski – Katedra Automatyki Przemysłowej i Robotyki, Wydział Elektryczny Zachodniopomorskiego Uniwersytetu Technologicznego w Szczecinie. Autor korespondencyjny/ Corresponding author: grzegorz.sypniewski@zut.edu.pl Wstęp Nikogo, kto zetknął się ze spawaniem łukowym nie trzeba przekonywać o twardo przemysłowym charakterze tej czynności. Nie bez podstaw proces ten zalicza się do grupy 3D dirty, dull, dangerous, lub jeszcze inaczej 3H hazardous, hot, heavy [1]. Ilość zagrożeń, a także dość trudny i wymagający charakter tej pracy sprawia, iż w krajach wysokoro- zwiniętych coraz trudniej o młodych ludzi chętnych do wykonywania tej ważnej pracy. Z pomocą przy- chodzi automatyzacja i robotyzacja. Bardzo wiele robotów pracujących w przemyśle wyposażonych jest w urządzenia do cięcia termicznego lub spawa- nia. Łatwo to zauważyć w branży motoryzacyjnej Streszczenie W artykule omówiono problematykę wdrożenia sys- temu wizyjnego do sterowania procesem spawalniczym. Zaprezentowano podstawowe sposoby usuwania zakłó- ceń oraz algorytmy rozpoznawania obrazu. Przetestowa- no dostępne na rynku czujniki. Słowa kluczowe: Śledzenie złącza,filtrowanie zakłóceń, metody wykrywania krawędzi Abstract The article discusses the issues of implementation of the vision system to control the welding process. The basic methods of removing noises and image rec- ognition algorithms were presented. Commercially avail- able sensors were tested. Keywords: Seam tracking, noise filtering, edge detection Grzegorz Sypniewski i wszędzie tam gdzie liczy się duży wolumen pro- dukcji, powtarzalność, prostota operacji, niewielkie rozmiary detalu lub spoiny. Sytuacja komplikuje się w momencie, gdy do wykonania jest pojedynczy de- tal, lub krótka seria. W przypadku złożonych kształ- tów nie obejdzie się bez zbudowania dodatkowego oprzyrządowania, uchwytów, mocowań, itd. Chyba największą bolączką robotyzacji spawania jest to- lerancja wymiarów elementów dostarczonych na stanowisko zautomatyzowane. Robot działa według zaprogramowanego schematu. Od punktu do punk- tu. Standardowo nie jest wyposażony w „oczy”, ani inne zmysły, tak aby mógł samodzielnie skorygować 42 Przegląd sPawalnictwa Vol. 87 1/2015 ścieżkę narzędzia, jakim jest palnik. Ratunkiem w takich okolicznościach jest dopilnowanie wymia- rów detali, sposobu montażu. Skorzystanie z obróbki maszynami CNC. Nie zawsze jest to możliwe i opła- calne. W przypadku dużych powierzchni wręcz nie- możliwe. Bardzo często, pracownicy przed spawa- niem, szlifując ręcznie przygotowują powierzchnię, co wprowadza dodatkowo pewien faktor losowości. W klasycznych rozwiązaniach można się ratować techniką „touch and sense”, w której to, w metodzie MIG/MAG dotyka się końcówką drutu spawalniczego lub łuską obrabiany materiał [2]. Przy kontakcie na- stępuje przepływ prądu o małym natężeniu. Badając w ten sposób element w kilku charakterystycznych miejscach można wprowadzić korekty do programu i zmodyfikować teoretyczne położenie detalu na rze- czywiste. Nie uchroni nas to przed odkształceniami termicznymi, jakie niechybnie pojawią się w trakcie spawania. Nie zawsze jest możliwe zastosowanie funkcji „touch and sense”. Nie uda się w przypad- ku złącza typu I, oraz w ciasnych miejscach. Pew- nym wyjściem z opresji jest kontrola długości łuku. Nie jest mi znany producent robotów, który nie miał- by w ofercie takiej opcji programowej. Bardzo dobrze sprawdza się to, gdy konieczne jest korygowanie wy- sokości palnika w trakcie kładzenia długich spoin, gdyż materiał ma tendencję do falowania. Trudniej- szym zadaniem jest śledzenie spoiny horyzontalnie. Palnik musi oscylować wewnątrz wyraźnego rowka, najlepiej zbliżonego kształtem do litery V. Spoina pachwinowa również mieści się w tej kategorii. Pod- stawą tej metody jest wychwycenie zmiany długości łuku elektrycznego wewnątrz złącza, co przekłada się na zmiany prądu. Widać wyraźnie, że sposób ten jest ograniczony, co do metody spawania, rodzaju i długości spoiny. Celem niniejszej publikacji jest omówienie popularnych algorytmów rozpoznawania obrazu, w tym przypadku krawędzi rowków spawal- niczych. Zaznaczono istnienie praktycznych proble- mów i sposobów radzenia sobie z nimi w aplikacjach wykorzystujących kamery lub czujniki wizyjne w ro- botyzacji spawania. Rys historyczny Na przestrzeni lat było wiele pomysłów na rozwią- zanie kwestii kierowania palnikiem w spoinie. Często pojawiały się czujniki taktylne, czyli rodzaj palca wę- drującego wewnątrz rowka. Testowano także czujniki ultradźwiękowe[3], indukcyjne[4], radarowe[5]. Dosyć dawno na scenie pojawiły się metody wizyjne. Pierwsze rozwiązania [6,7] pojawiły się na począt- ku lat 80-tych ubiegłego wieku. Prace Kawahary miały wielki wpływ na kolejne rozwiązania. Dużo działo się w latach 90 i na przełomie wieku. Największy rozwój obserwujemy jednak w chwili obecnej, gdy na targach poświęconych robotom, jedną halę można przezna- czyć na systemy wizyjne. Wciąż pojawiają się nowe pomysły na realizację śledzenia rowka spawalnicze- go, pomimo obfitości rozwiązań nie powstał jeszcze system na tyle tani i uniwersalny by trafić z marszu pod strzechy. Przed spawaniem Przygotowując się do rozwiązania aplikacji wi- zyjnej trzeba odpowiedzieć na kilka ważnych pytań, które ograniczą zakres możliwych rozwiązań. Jedne z nich dotyczą technologii, inne systemów sterowa- nia. Oba te wątki przenikają się. Najważniejsza jest odpowiedź na pytanie: jakie materiały będziemy łą- czyć. Czy detale są duże, małe, w jakiej tolerancji wykonane. W skrajnych przypadkach nawet najlep- szy spawacz może mieć problem. Jaki jest charak- ter złącza. Inne metody detekcji są przewidziane dla połączenia pachwinowego, inne dla typu I, zakładka także ma swoją specyfikę. Istotne jest, w jaki spo- sób materiał odbija światło. Jednym z kryteriów jest technologia spawania. Inaczej podchodzi się do spa- wania laserowego, gdzie potrzebna jest rewelacyjna dokładność i szybkość śledzenia. Inaczej do TIG, gdzie jasność łuku jest stosunkowo niska, jeszcze inaczej do metody MAG, z dużą ilością odprysków, silnym łukiem elektrycznycznym, niższą pożądaną dokładnością. Kluczowe jest ustalenie, czy w danej aplikacji lep- szy będzie skaner laserowy zakupiony od wyspecja- lizowanej firmy (można go zbudować we własnym zakresie), czy może system wizyjny składający się z jednej lub kilku kamer. Używając czujnika laserowego jest się z automa- tu zobligowanym do zamocowania go w przestrzeni roboczej narzędzia [8]. Jest to tzw. podejście eye-in- hand. Kamery również mogą być mocowane w ten sam sposób, ale zależnie od aplikacji, mogą one pra- cować w układzie „hand to eye”. Ma to bezpośrednie przełożenie na to czy pracujemy w układzie współ- rzędnych globalnych albo narzędzia. Konieczne jest ustalenie, w jaki sposób czujnik (kamera) będzie chroniona, przed środowiskiem. Kry- tyczne jest dobranie odpowiednich filtrów przepusz- czających tylko odpowiednie pasmo światła, oraz do- branie obiektywu. Dobierając kamerę warto skorzystać z uwag zamieszczonych w artykule [9]. Należy się zde- cydować czy skuteczniejsze będzie zastosowanie ma- trycy CMOS lub CCD. Przetwarzanie obrazu Zasadniczo wyszukiwanie rowka spawalniczego można przeprowadzić na dwa sposoby. Z użyciem zewnętrznego silnego źródła światła, typu paski lase- rowe (rys. 1) Jest to metoda aktywna. Polega to na 43Przegląd sPawalnictwa Vol. 87  1/2015 zastosowaniu źródła laserowego emitującego świa- tło. Odbity promień trafia na matrycę światłoczułą. Kształt odbitego promienia niesie oczekiwane przez nas informację. Zdarzają się systemy ze światłem la- serowym w postaci owalu lub kilku pasków. Rys. 1. Zasada działania skanera laserowego Fig. 1. Laser scanner working principle Pasywne: w których wykorzystuje się światło po- chodzące od łuku elektrycznego. Można obserwować kształt i zachowanie jeziorka roztopionego metalu oraz rowek [10]. Innym sposobem klasyfikacji systemów wizyjnych jest tryb pracy 2D lub 3D. W pewnych przypadkach jest możliwe skuteczne rozwiązanie problemu, wy- korzystując tylko dwa wymiary. Najczęściej spotyka się systemy 3D. Naturalną przewagę mają skanery la- serowe. Ich sposób działania powoduje, iż korzystając z triangulacji w łatwy sposób można określić głębo- kość lub szerokość rowka (rys. 2) Rys. 2. Pole działania czujnika laserowego, z dokumentacji MEL Fig. 2. Area of scanning, from MEL textbook Sprawą, która nie może umknąć w trakcie budowa- nia systemu jest kalibracja optyki. O ile w przypadku rozwiązań komercyjnych nie stanowi to większego pro- blemu, gdyż producent dostarcza gotowe narzędzia. To w przypadku systemów własnych konieczne jest przeprowadzenie odpowiednich procedur. Powsta- ło wiele opracowań dotyczących tego zagadnienia. [11÷13]. Bardzo często w tej operacji wykorzystuje się wzorce typu szachownica, lub inne symetryczne obrazy. Kolejnym tematem do podjęcia jest sposób wizyj- nego sterowania manipulatorem. Załóżmy, że mamy już kamerę i spawany element. Teraz dążymy do tego by redukować odchyłkę pal- nik-kamera od środka rowka. Do wyboru jest jedna z trzech opcji: – PBVS (position based visual servoing), sygnały wej- ściowe i odpowiedzi są obliczane w trójwymiarowej przestrzeni kartezjańskiej. – IBVS (Image based visual servoing), sygnały wej- ściowe i odpowiedzi znajdują się w przestrzeni 2D. – HVS (hybrid visual servoing), W tym mieszanym systemie dane o orientacji prezentowane są w prze- strzeni 3D, natomiast reszta informacji, w tym pozy- cja w 2D. Układy PBVS oraz HVS są wrażliwe na niedoskona- łość kalibracji kamery. Lepiej z błędami kalibracji ra- dzi sobie układ IBVS, lecz pojawiają się inne problemy związane z koniecznością zapewnienia odpowiedniej orientacji kamery i ręcznego ustawienia obiektu polu widzenia [14,15]. Przegląd literatury i rozwiązań wska- zuje na większą popularność metody PBVS. Niezależnie od tego, jakim sensorem, bądź kame- rą dysponujemy algorytm postępowania jest bardzo podobny. Pokrywa się także wiele metod filtrowa- nia obrazów. Temat jest bardzo rozległy. Nie sposób w krótkiej publikacji przedstawić wszystkie sposoby na przefiltrowanie pożądanej informacji. Rys. 3. Etapy rozpoznawania obrazu Fig. 3. Stages of image processing 44 Przegląd sPawalnictwa Vol. 87 1/2015 Bazując na metodach podstawowych naukowcy rozwijają własne implementacje. Moim zamierzeniem jest przedstawienie ogólnego schematu działania, oraz przedstawienie i omówienie najczęściej wykorzystywanych operacji matematycz- nych na obrazach. Na rysunku 3 pokazane są kolejne kroki prowadzące do zakończenia skutecznej analizy obrazu. To, co dla ludzi jest łatwo interpretowalnym obra- zem musi być przetłumaczone na zrozumiały dla kom- putera ciąg zero-jedynkowy. Kolorowe obrazy są, więc przetwarzane na takie z poziomami szarości. Obraz jest klasą funkcji dwuwymiarowej. Przedstawia się ją za pomocą macierzy (1) [16]. Rozmiar macierzy jest taki jak rozdzielczość kame- ry, więc może to być przykładowo 640x480 punktów. Każdy punkt ma wartość od 0 do 255 co stanowi wagę. Dla wartości 255 punkt jest biały, dla wartości 0 punkt jest czarny. Współczynniki x i y określają położenie punktu, natomiast zmienna t jego zmianę w czasie. Stąd widać jasno, iż duża rozdzielczość kamery skutkować będzie dużą macierzą, co zajmuje dużo pamięci. Warto o tym fakcie pamiętać. Na rysunku 4 zaprezentowany jest obraz 640x480 punktów w skali szarości przechwycony przez przemysłową kamerę BVS Universal. Rys. 4. Obraz przechwycony z kamery Fig. 4. Captured image Do wygenerowania tego i następnych sub-obrazów użyty został pakiet SCILAB w wersji 5.5.1 oraz bi- blioteki SIVP, IPD. Zdecydowałem się na użycie tego środowiska ze względu na powszechną dostępność, rozpowszechniane jest na licencji open source oraz niskie wymagania sprzętowe. Używając poziomu szarości na osi odciętych (OX) oraz ilości punktów na osi rzędnych (OY) można wyrysować diagram zwany histogramem rozkładu szarości. Na rysunku 5 zaprezentowany jest taki wy- kres dla rysunku 4. Z wykresu tego można odczytać współczynnik kontrastu, poziom rozkładu szarości itp. Są to bardzo przydatne informacje, gdy zachodzi po- trzeba rozjaśnienia lub ściemnienia obrazu [16]. Rys. 5. Histogram Fig. 5. Histogram Jedną z pierwszych operacji, jakie można zasto- sować jest przekształcenie liniowe (linear transfor- mation) [17]. Światło otoczenia może silnie wpływać na obraz widziany przez kamerę, prowadzi to do nie- równomiernego oświetlenia próbki, co dobrze widać na rysunku 1. Aby zminimalizować ten problem moż- na posłużyć się następującą zależnością (2): Gdzie I (i, j) jest wagą szarości (i, j), i są wartościa- mi progowymi, do dobrania odpowiedniego poziomu. Innym dosyć prostym zabiegiem jest operacja „AND” [13]. Sprawdza się dobrze tam gdzie jest dużo rozprysków. Na przykład w trakcie spawania w osło- nie CO2. Rozpryski dają silne zakłócenie, na szczęście są krótkotrwałe. W związku z tym, iskry, które widać na jednej klatce, znikają w następnym ujęciu lub znajdują się w innym miejscu. Z matematycznego punktu pre- zentuje się to tak (3): I(i,j) reprezentuje poziom szarości punktów i,j w danej chwili t. i oraz j są liczbami całkowitymi 0