• Nie Znaleziono Wyników

R3 - Definiowanie układów kinematycznych manipulatorów

N/A
N/A
Protected

Academic year: 2021

Share "R3 - Definiowanie układów kinematycznych manipulatorów"

Copied!
10
0
0

Pełen tekst

(1)

1

Definiowanie układów kinematycznych

manipulatorów

Definicja Robota

Według Encyklopedii Powszechnej PWN:

robotem nazywa się urządzenie służące do wykonywania niektórych funkcji manipulacyjnych, lokomocyjnych, informacyjnych i intelektualnych człowieka.

Według Amerykańskiego Instytutu Robotyki (Robot Institute of America):

robot jest programowanym wielofunkcyjnym manipulatorem, przeznaczonym do operowania materiałami, częściami lub wyspecjalizowanymi urządzeniami, poprzez różne programowane ruchy, w celu wykonania różnych zadań.

Podstawowym aspektem wymienionej definicji jest programowalność robota, możliwość zmiany programu. Dzięki ternu robot ma zdolność przystosowania się do zmiennych wymagań zadania. [1]

Roboty pierwszej generacji (pierwszy etap rozwoju)

Przeznaczone do cyklicznego powtarzania tych samych operacji. Wyposażone w pamięć

zaprogramowaną przez operatora (w procesie programowania pamięci umieszcza się w niej rozkazy). Wykonują samodzielnie zaprogramowane czynności. Sterowanie ruchem odbywa się w układzie otwartym, bez sprzężenia zwrotnego od rzeczywistego położenia.

Druga generacja

Nazywane są adaptacyjnymi ponieważ potrafią dostosowywać się do otoczenia; wyposażone w odpowiednie czujniki są zdolne korygować swoje ruchy w zależności od położenia i kształtu obiektu.

(2)

2

Trzecia generacja

Ta generacja robotów ma możliwość uczenia się na podstawie własnych doświadczeń w tym możliwość modyfikacji programu działania, dostosowując się do zmiennych warunków otoczenia.

Elementy i swoboda

Manipulatory przemysłowe są złożone z członów połączonych przegubami w otwarty łańcuch

kinematyczny. Przeguby są zwykle obrotowe (rotacyjne) lub pryzmatyczne (liniowe).

Przeguby obrotowe umożliwiają obrót jednego członu względem drugiego.

Przeguby pryzmatyczne umożliwiają ruch liniowy jednego członu względem drugiego. Przeguby manipulatora mogą być napędzane elektrycznie, hydraulicznie lub pneumatycznie.

Liczba przegubów określa liczbę stopni swobody manipulatora. Manipulator powinien mieć, na ogół, co najmniej sześć stopni swobody — trzy do tzw. pozycjonowania oraz trzy do tzw. orientowania. Jeżeli ma mniej stopni swobody, to manipulator nie może osiągnąć każdego punktu przestrzeni z zadaną orientacją.

Niektóre zadania wymagają większej niż sześć liczby stopni swobody (sięganie za przeszkodę, wokół niej). Ze wzrostem liczby stopni swobody zwiększają się trudności sterowania manipulatora.

Jakość (sterowania) manipulatora

Dokładność manipulatora jest miara określająca, jak blisko manipulator może dotrzeć do zadanego

punktu przestrzeni.

Powtarzalność jest miarą określającą jak blisko manipulator może ponownie dotrzeć do wcześniej

osiągniętego punktu przestrzeni. Na ogół manipulatory maja. dobrą powtarzalność, lecz niezbyt dobrą dokładność. Najczęściej pozycję narzędzia oblicza się na podstawie pomiaru kątów lub przesunięć w przegubach zakładając geometrię manipulatora i jego sztywność. Nie stosuje się ani bezpośredniego pomiaru pozycji narzędzia, ani jego orientacji.

Na dokładność wpływają więc błędy obliczeniowe, dokładność wykonania (obróbki) elementów, efekt elastyczności elementów, luzy w przekładniach itp. Dlatego wymagana jest duża sztywność robotów.

Na powtarzalność wpływa w tych warunkach tzw. rozdzielczość układu sterowania, rozumiana jako najmniejsza zmiana ruchu, którą układ sterowania może rozpoznać. Jest ona obliczana jako iloraz całkowitej drogi przebywanej przez dany człon oraz liczby 2n. gdzie n jest liczbą bitów tzw. enkodera sterującego ruchem danego członu.

(3)

3

Układ sterowania robota

Pod względem sterowania roboty dzieli się na działające w układzie otwartym (bez sprzężenia zwrotnego) i działające w układzie zamkniętym.

Roboty działające w układzie otwartym były używane, przede wszystkim, do przenoszenia materiałów.

Roboty działające w układzie ze sprzężeniem zwrotnym dzieli się na dwa rodzaje:

1) PTP (point to point) — przechodzi od punktu do punktu przestrzeni roboczej według programu, bez narzucania trajektorii,

2) CP (continuous path — ciągła ścieżka), kontrolowana jest cała droga końcówki roboczej.

Parametry członu – podsumowanie

Kinematykę każdego robota można opisać przez podanie dla każdego członu wartości czterech parametrów. Pierwsze dwa opisują sam człon, a dwa następne — połączenie członu z sąsiednim członem.

W zazwyczaj spotykanym przypadku pary obrotowej, i jest zmienną konfiguracyjną, a pozostałe trzy wielkości są ustalonymi parametrami członu. Dla par przesuwnych d1 jest zmienna, konfiguracyjną, a pozostałe trzy wielkości są ustalonymi parametrami członu.

Określanie mechanizmów za pomocą tych wielkości odpowiada konwencji, znanej pod nazwą notacji Denavita-Hartenberga (Można stosować również inne metody opisu mechanizmów). Określanie parametrów Denavita-Hartenberga: Pełny opis stałych parametrów kinematyki sześcioczłonowego manipulatora wymaga podania 18 liczb. W przypadku manipulatora sześcioczłonowego z wszystkimi parami obrotowymi te 18 liczb podaje się w postaci sześciu zbiorów (ai, i, di).

Długość członu

Na rys. przedstawiono człon i-1 oraz prostą obustronnie prostopadłą do osi, wzdłuż której mierzy się długość członu ai-1.

(4)

4

Inny sposób ułatwiający znalezienie parametru ai-1 polega na wyobrażeniu sobie cylindra o zwiększającej się średnicy, o osi pokrywającej się z osią pary obrotowej i-1. W momencie zetknięcia powierzchni cylindra z osią przegubu i promień cylindra odpowiada odległości ai-1.

Kąt skręcenia członu

• Drugi parametr, niezbędny do zdefiniowania względnego usytuowania dwóch osi, nazywany jest kątem skręcenia członu. Jeśli wyobrazimy sobie płaszczyznę, której normalna odpowiada dopiero co znalezionej obustronnie prostopadłej do osi połączeń ruchowych, a następnie zrzutujemy obie osie i-1 oraz i na tę płaszczyznę, to możemy zmierzyć kąt zawarty między nimi.

Kąt ten jest mierzony w kierunku od osi i-1 do osi i, zgodnie z regułą prawej ręki wokół prostej ai-1.

Długość a i kąt 

Na rys. kąt i-1 odpowiada kątowi między osiami i-1 oraz i (gdzie linie równoległe oznaczono trzema kreskami).

W przypadku przecinania się osi kąt skręcenia jest mierzony w płaszczyźnie zawierającej obie osie. Jednak nie można określić znaku W tym specjalnym przypadku znak kąta można przyjąć dowolnie.

Odsunięcie

Połączenie członu i-1 z członem i (ai-1 jest prostą obustronnie prostopadłą do obu osi członu i-1; ai jest prostą obustronnie prostopadła, do osi członu i-1).

Pierwszy parametr połączenia, tzn. odsunięcie członu di, określa odległość ze znakiem, mierzoną wzdłuż osi połączenia i od punktu, w którym ai-1 przecina tę oś, do punktu przecięcia prostej ai ze wspólną osią.

Odsunięcie di pokazano na rys.

(5)

5

Kąt

Drugim parametrem połączenia jest kąt zawarty między przedłużeniem ai-1 oraz ai, mierzony wokół osi połączenia i.

• Pokazano to na poprzednim rys., przy czym dwoma kreskami oznaczono linie równoległe. • Parametr ten oznaczono i. Jest on zmlenną konfiguracyjną dla pary obrotowej.

Odsunięcie oraz kąt

Odsunięcie członu d oraz kąt  konfiguracji pary obrotowej są wystarczającymi parametrami, za pomocą których można opisać istotę połączenia dwóch sąsiednich członów

(6)

6

A. Przygotowanie stanowiska

Ze strony http://controlsystemslab.com/rtsx/download/ ściągnąć plik RTSX_beta1.zip

Utworzyć katalog i rozpakować

RTSX_beta1.zip

Następnie w programie Scilab wskazać go jako „bieżący katalog”

Rys. 1 Wskazywanie katalogu roboczego w programie Scilab W konsoli Scilab wpisać polecenie:

exec("startup_rtsx.sce",-1); aby uruchomić program. Następnie

(7)

7

Robot 1

W konsoli Scilab wpisać:

Definicje członów i przegubów:

L(1)=Link([0 1 0 -pi/2]);

L(2)=Link([-pi/2 1 0 -pi/2]);

Rob00=SerialLink(L);

PlotRobot(Rob00, [0 0]);

Robot 2

L(2)=Link([-pi/2 1 0 0]);

L(3)=Link([-pi/2 1 0 –pi/2]);

rob01=SerialLink(L);

PlotRobot(rob01, [0 0 0]);

Robot Puma

-->L(1)=Link([0 1 0 -pi/2]);

-->L(2)=Link([-pi/2 0.2 1 0]);

-->L(3)=Link([-pi/2 0.2 1 0]);

-->L(4)=Link([-pi/2 0.2 0 -pi/2]);

-->rob02=SerialLink(L);

-->PlotRobot(rob02, [0 0 0 0]);

Wykorzystano materiały z książki Domachowski ”Automatyka i robotyka” Industrial Robot: An International Journal,

(8)

8

Zadanie 1:

Korzystając z dokumentacji programu RTSX (http://controlsystemslab.com/rtsx/online-help/) uzupełnić układ kinematyczny, aby uzyskać model robota Puma 562

Rys. 2 Robot Puma 562 [2]

Zadanie 2:

Zbudować model robota o konstrukcji jak na rys. i następujących długościach i przesunięciach kolejnych członów: 0: (80, 15); 1: (75,10); 3 (55) [cm]

(9)

9

Opisy wybranych poleceń

Link() – definiowanie przegubu robota

Składnia L = Link(lparam, jtype,options)

parametry: lparam – wektor [1x4] lub [1x5] zawierający odstępy i kąty w następującej kolejności: [ theta d a alpha (offset)], gdzie offset jest opcjonalny.

jtype — typ przegubu (domyśłnie) ‘R’ = obrotowy (revolute), ‘P’ = (prismatic) sigma, (RP) — typ połączenia: 0 (‘R’) = revolute, 1 (‘P’) = prismatic

theta — kąt przegubu d — odsunięcie członu a — długość członu

alpha — kąt skręcenia członu offset — odsunięcie przegubu

Przykłady: L = Link([0 1 1 pi/2]); // tworzy pojedynczy obrotowy człon, d=1, a=1, alpha=pi/2 // theta jest zmienną przegubu (połączenia)

// tworzenie łańcucha członów L(1) = Link([0 0 1 0]);

L(2) = Link([pi/2 1 0 0],'P'); // człon jest liniowy d=zmienna o początkowej wartości 1 L(3) = Link([0 0 2 pi],'R','m',0.43,'r',[0, 0.018, 0],'qlim',[-pi/2 pi/2]);

SerialLink( )

SerialLink( ) – funkcja składania członów robota w łańcuch na podstawie z członów zdefiniowanych za pomocą polecenia Link( ).

Robotinfo ()

Robotinfo — wyświetla informacja na temat struktury kinematycznej robota

PlotRobot()

PlotRobot() - otwiera okno graficzne zawierające scenę, na której umieszczany jest model kinematyczny robota

Składnia: T=PlotRobot(robot, q, options) robot –model robota

q –wektor [1 x nq] zmiennych określających pozycje członów w przegubach, gdzie nq = liczba zmiennych przegubów.

(10)

10

AnimateRobot()

AnimateRobot() wyświetla poruszającego się robota według sekwencji wartości opisujących zmienne przegubów (kąty lub przesunięcia).

Przykład:

clear L;

a1 = 1.2; a2 = 1;

L(1)=Link([0 0 a1 0]);

L(2)=Link([0 0 a2 0]);

twolink=SerialLink(L); // a 2-członowy manipulator

// generowane są zbiory punktów trajektorii ruchów, które obejmują tutaj ruch po pełnych okręgach

t = [0:0.01:1]'; // szereg czasowy do obliczenia zbiór

punktów trajektorii

qs = [2*pi*t 2*pi*t];

Cytaty

Powiązane dokumenty

Cel pracy: Celem pracy jest analiza oraz implementacja przykładowego algorytmu sterowania zda- rzeniowego dla wybranego systemu bezpieczeństwa.. Syntetyczny opis: Praca

Opis regulatora PID, właściwości układu regulacji z regulatorem PID 14. Identyfikacja układów LTI

Regulator proporcjonalny P charakteryzuje się tym, Ŝe wartość sygnału wyjściowego regulatora jest proporcjonalna do wartości uchybu regulacji. Zakres proporcjonalności jest

Poniżej zostanie przedstawiony przykład symulacji sterowania ruchem manipulatora robota przemysłowego IRb-6 wykorzystujący drugą z koncepcji sterowania przedstawionych

W efekcie pierwszego etapu tej reorganizacji powstała w październiku 1969 roku Katedra Elektroenergetyki (kierownik - prof. Bogucki), w której skład weszły trzy byłe

• Przeprowadzając tę procedurę poza Kreator próby morskiej na ploterze nawigacyjnym, wybierz kolejno Ustawienia > Moja łódź > Konfiguracja instalacji autopilota

Zastosowanie manipulatora mechatronicznego w zakładach przemysłowych, na liniach produkcyjnych, wyposażonych w pulpit sterowniczy, zapewni dostęp do systemu sterowania

Przede wszystkim kierowcę wspomaga układ sterujący nadzorujący pracę silnika oraz skrzyni biegów, w którym wybór biegu zależy od chwilowej wartości prędkości