SYSTEMY STEROWANIA ROBOTÓW – INTERFEJSY,
PLANOWANIE ZADAŃ Z ZASTOSOWANIEM INFORMACJI WIZYJNEJ, BADANIE STEROWAŃ

1. Streszczenie tematu badawczego ( krótkie ) i pojęcia kluczowe:

W ramach tematu przedstawiono wyniki badań obejmujące podstawowe problemy robotyki. Badania te zawierają zagadnienia modelowania kinematyki, dynamiki, planowania ruchu, programowania i sterowania robotów przemysłowych. Do modelowania zastosowano macierze jednorodne. Opracowanie to zawiera także algorytm rozwiązywania zadania odwrotnego kinematyki manipulatorów robotów KUKA KRC3, umożliwiający sterowanie tymi robotami z zastosowaniem informacji wizyjnej o stanie otoczenia.
Ponadto przedstawiono system do manualnego sterowania i monitorowania stanu czteroosiowego manipulatora AX-12 Robotic Arm z chwytakiem siłowym i efektorem laserowym, oraz systemem wizyjnym opartym o kamerę wysokiej rozdzielczości GoPro Hero HD i frame grabberem. Zarządzanie urządzeniami multimedialnymi, oraz przechwytywanie strumienia video zostało zrealizowane z wykorzystaniem bibliotek DirectShow.NET.
Przedstawiono również opracowane podstawowe elementy języka programowania robota eksperymentalnego, graficzny interfejs użytkownika ułatwiający programowanie robota eksperymentalnego przy użyciu stworzonego języka programowania oraz moduł rozpoznawania i wyznaczania parametrów ruchu obiektów poruszających się na przenośniku taśmowym.

2.    Dyscyplina naukowa:

Automatyka i Robotyka

3.    Symbol pracy:

BK 214/Rau1/2011, zadanie nr 2

4.    Jednostka Uczelni realizująca temat:

Instytut Automatyki Politechniki Śląskiej

5.    Termin realizacji:

02.01.2010-31.12.2011

6.    Zespół wykonujący:

Dr hab. inż. Tadeusz Szkodny
Dr inż. Aleksander Staszulonek
Mgr inż. Michał Mikulski

Opis projektu badawczego

Wynikiem realizacji tego projektu są między innymi publikacje książki i 4 artykułów. W niniejszej pracy przedstawiono książkę i kserokopie tych artykułów.

Rozdział 1. stanowi książka „Podstawy robotyki”. Ksiązka stanowi ilustrację wykładów z podstaw robotyki prowadzonych przez autora na kierunku automatyka i robotyka na Wydziale Automatyki, Elektroniki i Informatyki Politechniki Śląskiej w Gliwicach. Pozwala czytelnikowi na zapoznanie się z podstawowymi problemami związanymi z opisem robotów stacjonarnych dla potrzeb ich programowania i projektowania układów sterowania. Zawiera oryginalne ujęcie geometrycznych warunków realizowalności zadanego położenia i orientacji obiektu manipulacji przez manipulatory. Algorytmy obliczeń współrzędnych naturalnych, opisujących wzajemne położenie i orientację członów manipulatora, umożliwiających osiąganie przez manipulator zadanych położeń i orientacji obiektu manipulacji, przedstawiono w postaci schematów blokowych. W prosty sposób ilustruje ideę dynamicznego odprzężenia manipulatorów dla potrzeb sterowania oraz metody obliczania nastaw regulatorów układów sterowania pozycyjnych i siłowych. Omawia podstawowe charakterystyki robotów przemysłowych. Charakteryzuje języki programowania współczesnych robotów przemysłowych za pomocą przykładów. Ponadto charakteryzuje problematykę związaną z tworzeniem systemów programowania off-line współczesnych robotów przemysłowych.

Rozdział 2. zawiera kserokopie 4 artykułów.
W artykułach “Basic Component of Computational Intelligence for KUKA KRC3 Robots” oraz „Solution Algorithm of Inverse Kinematics Problem for Kuka KRC3 Robots” przedstawiono algorytm rozwiązania zadania odwrotnego kinematyki robotów KUKA KRC3. Roboty te wyposażone są w manipulatory będące łańcuchami kinematycznymi szeregowymi otwartymi, o sześciu stopniach swobody. Wyprowadzono formuły opisujące położenie i orientację członu roboczego względem podstawy manipulatora. Następnie wyprowadzono formuły analityczne na współrzędne naturalne członów, zależne od zadanych współrzędnych zewnętrznych członu roboczego. W formułach tych uwzględniono rozwiązania wielokrotne skończone. Przeanalizowano konfiguracje osobliwe i dla nich wyprowadzono formuły na współrzędne naturalne członów, dające nieskończoną liczbę rozwiązań. Ten algorytm rozwiązywania zadania odwrotnego kinematyki może stanowić podstawowy składnik przyszłej inteligencji komputerowej tych robotów. Rozwiązywanie zadania odwrotnego kinematyki polega na obliczaniu współrzędnych naturalnych siłowników dla zadanych współrzędnych zewnętrznych obiektu manipulacji. Algorytm ten może być dołączony do algorytmów sterowania, zaimplementowanych do sterowników tych robotów. Umożliwi to na usunięcie wad oprogramowania sterowników. Wady te polegają na zawieszaniu się programów sterujących w położeniach osobliwych manipulatorów, napisanych z zastosowaniem komend programowania w przestrzeni zewnętrznej, dostarczonych przez producentów tych robotów. Algorytm ten pozwoli sterować tymi robotami z zastosowaniem systemu wizyjnego. System będzie wyznaczał współrzędne zewnętrzne zauważonego obiektu manipulacji. Wyznaczone przez system współrzędne zewnętrzne obiektu manipulacji umożliwią manipulatorowi osiąganie go, bez wcześniejszego fizycznego doprowadzenia go do tego obiektu, jak to jest przy programowaniu robotów uczeniem, bez systemu wizyjnego i bez algorytmu rozwiązywania zadania odwrotnego kinematyki.
Artykuł „Remote Control and Monitoring of AX-12 Robotics Arm Based on Windows Communication Foundation” przedstawia na przykładzie manipulatora AX-12 Robotic Arm zastosowanie nowoczesnych technologii do sterowania różnych klas robotów Wraz z dynamicznym rozwojem programowania w chmurze, oraz aplikacji sieciowych, sterowanie i wymiana informacji z wykorzystaniem Internetu staje się coraz bardziej popularna. Nowoczesne sektory takie jak medyczny sięgają coraz częściej po oprogramowanie rozproszone, często z wykorzystaniem Internetu. Rozwój robotyki i integracja rozwiązań w systemach z architekturą zorientowaną na serwisy pozwala manipulatorom medycznym wykonywanie operacji i zabiegów na znaczące odległości. W artykule prezentowane jest zrobotyzowane stanowisko kontrolowane Joytickiem przez Internet. Oprogramowanie rozproszone pisane w języku C# umożliwia integracje nowoczesnych technologii, takich jak DirectShow.NET, DirectX, oraz Windows Communication Foundation. Odpowiednio DirectShow.NET jest wykorzystywany do przechwytywania strumieni wideo, oraz analizę obrazu, DirectX służy do detekcji i obsługi urządzeń multimedialnych, takich jak kontrolery ruchu, a Windows Communication Foundaion zapewnia bezpieczną i łatwą w użyciu komunikację obiektową w systemach rozproszonych. W szczególności przedstawione rozważania mogą być wykorzystane do sterowania zaawansowanymi robotami przemysłowymi takimi jak Adept Six-300.

Rozdział 3. zawiera charakterystykę podstawowych funkcji języka programowania robota eksperymentalnego. Język ten został zaprojektowany i oprogramowany w ramach tej pracy i jest częścią procesu modernizacji i rozwoju eksperymentalnego stanowiska do projektowania i badania systemów sterowania zaawansowanych robotów przemysłowych. W trakcie realizacji tej części zadania opracowano podstawowe funkcje języka programowania robota, został zaprojektowany i oprogramowany graficzny interfejs użytkownika wspomagający programowanie zadań dla robota eksperymentalnego, opracowano moduł rozpoznawania przy użyciu wzorca obiektu manipulacji oraz zmodernizowano sterownik przemysłowy MVME162 stanowiący centralny element warstwy koordynacji i sterowania ruchem poszczególnych stopni swobody. Oprogramowano zestaw komend służących do komunikacji z dedykowanymi sterownikami serwomechanizmów, inicjalizacji nastaw regulatorów, zadawania kolejnych położeń manipulatora, monitorowania trajektorii oraz uchybów regulacji a także wykrywania i diagnozowania stanów awaryjnych. Komunikację użytkownika z systemem ułatwia nowy interfejs graficzny który może pracować w trybie ręcznym, automatycznym, diagnostycznym oraz w trybie programowania. Komunikacja między konsolą operatorską a systemem sterowania może być prowadzona przy użyciu łącza szeregowego lub poprzez sieć Ethernet. Prezentowany interfejs wykorzystuje przedstawiony wyżej język programowania robota. Dla systemu wizyjnego robota eksperymentalnego zaprojektowano i oprogramowano moduł rozpoznawania poruszającego się obiektu manipulacji przy użyciu zadanych wzorców. Moduł umożliwia prawidłowe rozpoznanie zadanego obiektu spośród kilku różnych obiektów niezależnie od jego orientacji.
W rozdziale czwartym przedstawiono podsumowanie.


Publikacje będące wynikiem projektu badawczego:

1.  Szkodny T.: Podstawy robotyki. Skrypt nr. 2468.
     Wydawnictwo Pol. Śl. Gliwice 2011.
2. Szkodny T., Mikulski: Solution Algorithm of Inverse Kinematics Problem for Kuka KRC3 Robots. Advances in Intelligent and Soft Computing 59, Man-Machine Interactions. Springer-Verlag p.67-75. Berlin 2011.
3. Szkodny T.: The Basic Component of Computational Intelligence for KUKA KRC3 Robots. Proc. 4th International Conference on Intelligent Robotics and Applications (ICIRA2011) Aachen 2011. Springer-Verlag p.?. Berlin 2011.
4. Mikulski M., Szkodny T.: Remote Control and Monitoring of AX-12 Robotics Arm Based on Windows Communication Foundation. Advances in Intelligent and Soft Computing 59, Man-Machine Interactions. Springer-Verlag p.77-83. Berlin 2011.