• Nie Znaleziono Wyników

Dynamiczne dostosowywanie programu

W dokumencie W POLITECHNIKA POZNAŃSKA (Stron 71-75)

4. Dostosowanie programu robota do pozycji obiektów technologicznych

4.3. Dynamiczne dostosowywanie programu

Opracowanie programu, który dynamicznie dostosowuje się do położenia obiektów w przestrzeni pracy robota nie jest trudniejsze niż napisanie typowego programu dla obiektu umieszczonego w sztywnym oprzyrządowaniu. Programista umieszcza obiekt w dowolnym miejscu wspólnej przestrzeni pracy manipulatora i kamery. Może również zdefiniować własne układy współrzędnych (ang. User Coordinate System, UCS) ułatwiające pisanie programu, jak na rys. 4.6.

Po zakończeniu powinna zostać uruchomiona procedura zapisu programu. Wraz z instrukcjami zostaje zapisane zdjęcie obiektu w przestrzeni pracy. Na podstawie zdjęcia i danych z wcześniejszej kalibracji można wyznaczyć transformację pomiędzy kodem matrycowym QR, a układem współrzędnych użytkownika. Jeżeli programista zdefiniował więcej niż jeden układ współrzędnych, obliczenia powtarza się.

TQRUCSi=(TCQR)−1⋅(TRK)−1TUCSR i (4.7) Przekształcenie TCR jest wynikiem kalibracji, a TCQR jest wynikiem algorytmu określającego położenie i orientację znacznika względem kamery na podstawie lokalizacji naroży na obrazie, TUCSR

Rys. 4.6. Definiowanie programu dopasowującego się do pozycji obiektu

to przesunięcie i obrót zdefiniowanego przez programistę układu współrzędnych względem układu bazowego robota. W opracowanym systemie obliczenia te przeprowadzane są na komputerze PC, a komunikacja z kamerą i robotem, to jest przesyłanie obrazów oraz parametrów układów współrzędnych odbywa się przez protokół TCP/IP.

Istnieje możliwość oznaczenia oprzyrządowania utrzymującego obiekty procesu technologicznego w stabilnej pozycji przy pomocy kilku kodów matrycowych. Proponuje się arbitralnie wybrać wirtualny układ znaczników. W fazie opracowywania programu wykonuje się zdjęcie oprzyrządowania i określa położenie znaczników względem układu wirtualnego. W trakcie wykonywania programu położenie układu wirtualnego można określić nawet po wykryciu tylko jednego znacznika. W przypadku rozpoznania większej liczby znaczników stosuje się określenie położenia układu wirtualnego na podstawie każdego z wykrytych markerów osobno.

TCQRi=TCQRiTQRiQR (4.8)

Następnie transformacja TCQR jest uśredniana stosując podejście opisane w [111]. W przypadku użycia tylko jednego znacznika, wirtualny układ znaczników jest tożsamy z układem jedynego stosowanego znacznika. Opracowane rozwiązanie nie wymaga zaangażowania od operatora, automatyzuje uruchamianie programu ze zmiennym położeniem obiektu.

Uruchomiony przez operatora manipulator kierowany jest na pozycję bazową, która nie prowadzi do zasłaniania kodów matrycowych na obrazie. Gotowość manipulatora jest sygnalizowana przez ustawienie dyskretnego sygnału cyfrowego. Wyzwolona kamera wykonuje zdjęcie i przesyła je do przetworzenia w komputerze PC. Tam następuje wyszukanie położenia kodu QR oraz odczytanie informacji o typie oprzyrządowania znajdującego się na stole roboczym.

Następnie zostaje rozwiązany problem perspektywy z 4 punktów dla każdego odnalezionego kodu, czego wynikiem jest macierz reprezentująca położenie kodu matrycowego względem kamery. Na podstawie danych kalibracyjnych kamery i transformacji TQRUCS, można określić położenie nowego, przetransformowanego układu współrzędnych użytkownika według następującej zależności.

TRnewUCS=TCR⋅TCQRTQRUCS (4.9)

Nowy układ współrzędnych wraz z informacją o rodzaju oprzyrządowania znajdującego się w przestrzeni pracy jest przesyłany do kontrolera robota. Tam zostaje wybrany odpowiedni program, który realizowany jest przy nowym, zmodyfikowanym układzie współrzędnych. Czas trwania obliczeń i przesyłu danych nie przekracza sekundy i jest pomijalny przy typowych programach technologicznych robotów przemysłowych.

4.4. Weryfikacja rozwiązania

W celu weryfikacji zastosowanych rozwiązań zaplanowano eksperyment, jak na rys. 4.7.

Sześcienny obiekt o boku o wymiarze 40 mm oznaczono kodem matrycowym wydrukowanym na standardowym papierze przy użyciu biurowej drukarki laserowej. Rozdzielono badanie powtarzalności w kierunku normalnym do płaszczyzny kodu od badania w płaszczyźnie znacznika, gdyż ich wartości różnią się znacząco ze względu na zastosowaną metodykę określania położenia obiektu. Napisano program robota według opisanej procedury. W kiści robota zamontowano adapter pozwalający na zamocowanie czujnika pomiarowego. Pozwala to bezpośrednio mierzyć odchyłkę względem bazowej realizacji programu. Wykonano 10 prób statycznych. Pomiary przeprowadzano przy pomocy kamery wyposażonej sensor o rozdzielczości 1600 na 1200 pikseli. Pole widzenia w płaszczyźnie pomiaru wynosi 340 na 250 mm. Powtarzalność uzyskiwania poszczególnych pozycji w układzie obiektu obrazuje się jako odchylenie standardowe odczytywanych przy pomocy czujnika wartości. Odchylenia te zestawiono w tabeli 4.1.

Tabela 4.1. Powtarzalność pozycji określonej na podstawie obrazu z kamery

sx, sy [mm] sz [mm] sA, sB [º] sC [º]

0,32 1,77 2,23 0,50

Rozrzut wyników pozycjonowania w kierunku normalnym do znacznika jest większy, ale w zagadnieniach praktycznych, często precyzja wymagana w tym kierunku jest mniejsza. Można to zauważyć w przypadku manipulowania przedmiotami, gdzie odchylenia są kompensowane przez chwytak. W przypadku chwytaków podciśnieniowych kompensacja wynika z elastyczności przyssawki, w przypadku chwytaków mechanicznych, kompensacja może być konsekwencją poślizgu na szczękach. W przypadku spawania, niedokładność pozycji w kierunku normalnym do kodu QR i tym samym w kierunku dyszy spawalniczej, zwykle skompensowana jest przez układ automatycznej regulacji długości łuku i automatyczną regulację parametrów spawania.

Rys. 4.7. Badanie powtarzalności określania pozycji przy pomocy systemu wizyjnego

Zastosowanie kodowanych znaczników do oznaczenia obiektów pozwala jednocześnie wybrać odpowiedni program dla danego obiektu oraz dopasować układ współrzędnych do jego położenia w przestrzeni pracy robota. Przedstawiono algorytmy niezbędne do określania położenia obiektów, przy pomocy kodów matrycowych rozpoznawanych przez stacjonarną kamerę współpracującą z robotem przemysłowym. Zaproponowano uproszczoną, stabilną kalibrację dla robotów i kamer.

Przedstawiono działania geometryczne, które powinny zostać przeprowadzone przy definiowaniu programu robota przemysłowego oraz przy jego realizacji. Przedstawiono wyniki badań powtarzalności rozwiązania. Zaproponowane rozwiązania są prostym, niedrogim sposobem na zwiększenie uniwersalności stanowisk zrobotyzowanych.

5. Sterowanie robotem przemysłowym

W dokumencie W POLITECHNIKA POZNAŃSKA (Stron 71-75)