Programowanie robotów przemysłowych

W Laboratorium Zautomatyzowanej Produkcji prowadzone są badania i/lub zajęcia dydaktyczne dotyczące następujących aspektów konwencjonalnego programowania robotów: oraz zastosowania nowoczesnych technik do programowania i sterowania robotów:

Programowanie robota przemysłowego metodą “teach-in"

Ze względu na ograniczony dostęp do robota (jeden robot - wielu studentów) programowanie metodą "teach-in" jest wykorzystywane tylko w ograniczonym zakresie. Z drugiej strony, ponieważ jest to metoda powszechnie znana i mało ciekawa z naukowego punktu widzenia, nie będzie ona tutaj szerzej omawiana. Zainteresowanych odsyłamy do podręczników z podstaw robotyki.


Programowanie off-line z wykorzystaniem pozycji wprowadzonych metodą uczenia

W przypadku niektórych robotów przemysłowych (do których należy robot Movemaster wchodzący w skład elastycznego gniazda zrobotyzowanego EMCO) istnieje możliwość przypisywania etykiet (numerów) poszczególnym pozycjom wprowadzonym metodą uczenia. Dzięki temu sam program sterujący robotem może się odwoływać do tych etykiet (numerów), przy czym dana pozycja może być wykorzystywana wielokrotnie w tym programie. Dla robota Movemaster wchodzącego w skład EMCO zostało zdefiniowanych (tzn. wprowadzonych za pomocą uczenia) kilkaset pozycji związanych z obsługą gniazda. W zasadzie są to wszystkie pozycje jakie mogą być potrzebne przy obsłudze tego gniazda. W ten sposób czasochłonne uczenie pozycji musiało być przeprowadzone tylko jeden raz (patrz diagram pozycji oraz jego opis zawarty w opisie podstaw programowania robota Movemaster). Programy odwołujące się do pozycji zawartych w tym diagramie mogą więc być tworzone off-line i testowane za pomocą symulatora ROB_SYM opracowanego w Laboratorium Zautomatyzowanej Produkcji (rys.1).

teach-in
Rys.1. Symulator ROB_SYM

Symulator ROB_SYM jest dostępny na każdym komputerze znajdującym się w laboratorium. Jego ważną cechą jest z jednej strony możliwość wykorzystywania zbioru pozycji zapisanych w układzie sterowania rzeczywistego robota ("ściąganego" poprzez sieć komputerową), a z drugiej - możliwość ładowania do robota (też za pośrednictwem sieci) programów utworzonych i przetestowanych za pomocą symulatora.

Z powrotem do spisu treści


Współrzędnościowe programowanie robota przemysłowego

Robot Movemaster wchodzący w skład gniazda elastycznego EMCO może być programowany także klasyczną metodą "off-line" (bez konieczności wprowadzania pozycji metodą "teach-in") przy wykorzystaniu instrukcji pozycjonowania pozwalających definiować pozycje chwytaka za pomocą podanych a priori współrzędnych liniowych i kątowych (patrz opis instrukcji MP w dokumentacji programowania robota Movemaster).
Tekstowe programowanie współrzędnościowe jest w ogólnym przypadku zadaniem dość trudnym (w porównaniu z programowaniem przez uczenie) ze względu na następujące problemy: Wyszukanie i poprawienie pomyłek w programach sterującym robotem jest możliwe dzięki opracowanemu w Laboratorium Zautomatyzowanej Produkcji symulatorowi ROB_SYM (opisanemu wyżej). Dopiero po uruchomieniu i przetestowaniu programu na symulatorze jest on ładowany (za pośrednictwem lokalnej sieci komputerowej) do układu sterowania robota.
Trudności związane z obliczeniami współrzędnych opisujących położenia chwytaka robota w poszczególnych pozycjach jego trajektorii zostały częściowo rozwiązane dzięki opracowaniu języka Arlang, którego interpreter jest uruchamiany na zewnętrznym komputerze sterującym, komunikuje się z układem sterowania robota (rys.2).

programowanie współrzędnościowe
Rys.2. Komunikacja robota z aplikacjami w języku Arlang

Interpreter języka ARLANG umożliwia wysyłanie do układu sterowania robota krótkich sekwencji instrukcji sterujących, realizowanych natychmiast przez robota. W ten sposób punkt ciężkości realizacji sterowania robota został przesunięty z układu sterowania robota na program w języku Arlang uruchamiany na komputerze zewnętrznym. Język Arlang umożliwia realizację dowolnie złożonych algorytmów obliczeniowych oraz wykorzystywanie wyników tych obliczeń do generowania współrzędnościowo zorientowanych instrukcji pozycjonowania (patrz opis procedury "IR" w dokumentacji języka Arlang). W ten sposób programowanie współrzędnościowe zostało znacznie ułatwione.
Również symulator ROB_SYM ma wbudowany interpreter języka Arlang, dzięki czemu można testować programy w tym języku zanim zostaną one uruchomione na komputerze sterującym rzeczywistym robotem.

Z powrotem do spisu treści


Modelowanie struktury geometryczno-ruchowej robotów i rozwiązywanie odwrotnego zadania kinematyki

W Laboratorium Zautomatyzowanej Produkcji opracowany został graficzny program symulacyjny umożliwiający modelowanie struktur geometryczno-ruchowych i symulację działania dowolnych robotów i maszyn technologicznych. Znajduje on zastosowanie przede wszystkim w dydaktyce. Studenci projektują struktury geometryczno-ruchowe prostych robotów i modelują je korzystając ze środowiska programistycznego symulatora SYM_PROC (rys.3).

modelowanie robotów
Rys.3.Modelowanie robotów w programie symulacyjnym SYM_PROC

Korzystając ze specjalnie w tym celu opracowanych procedur języka Arlang opisuje się następnie algorytm rozwiązywania odwrotnego zadania kinematyki dla zaprojektowanego robota oraz definiuje dla niego język programowania (patrz dokumentacja systemu SYM_PROC). Następnie można w tym zdefiniowanym języku programowania napisać przykładowe programy sterujące robotem i przetestować ich działanie, sprawdzając w ten sposób prawidłowość zaprojektowanej struktury i opracowanego algorytmu rozwiązywania odwrotnego zadania kinematyki.

odwrotne zadanie kinematyki
Obejrzyj klip video pokazujący symulator SYM_PROC realizujący symulację działania programu sterującego modelem robota

Z powrotem do spisu treści


Programowanie trajektorii przemieszczania części niesztywnych

W przypadku przemieszczania części niesztywnych (np. blach, prętów) znaczenie ma nie tylko trajektoria przemieszczania chwytaka robota ale także jego prędkość i przyspieszenie. Odpowiedni dobór prędkości i przyspieszeń może wpłynąć na minimalizację odkształceń i drgań przenoszonych części. Z drugiej strony ograniczanie wartości tych parametrów wpływa na zmniejszenie wydajności zrobotyzowanego stanowiska. Konieczna jest więc wielokryterialna optymalizacja.
W Laboratorium Zautomatyzowanej Produkcji opracowany został program symulacyjny FLEXIBLE, który jest wykorzystywany w zajęciach dydaktycznych, podczas których studenci rozwiązują problemy z tego zakresu (rys.4).

przemieszczanie części niesztywnych
Rys.4. Interfejs użytkownika programu symulacyjnego FLEXIBLE

Podczas zajęć laboratoryjnych studenci otrzymują do rozwiązania zadanie polegające na obliczeniu parametrów trajektorii chwytaka manipulatora, który ma przenieść w możliwie krótkim czasie części niesztywne o zadanych parametrach geometrycznych i materiałowych. Części te mają nie kolidować ze znajdującymi się po drodze przeszkodami. Prawidłowość obliczeń parametrów ruchu (prędkości i przyspieszeń) można przetestować za pomocą graficznego programu symulacyjnego FLEXIBLE (rys.5)

przemieszczanie części niesztywnych
Rys.5. Symulacja graficzna przemieszczania części niesztywnych

Z powrotem do spisu treści