Algorytm Taylora

Z testwiki
Przejdź do nawigacji Przejdź do wyszukiwania

Algorytm Taylora został zaproponowany jako sposób na przeprowadzenie z zadaną dokładnością manipulatora robotycznego z położenia początkowego do położenia końcowego wzdłuż zadanej ścieżki.

Wymagania

Algorytm wymaga podania szeregu danych wejściowych:

położenia początkowego x0,
położenia końcowego xf,
dokładności śledzenia ścieżki δ,
wzoru na kinematykę manipulatora.

Dodatkowo określamy współrzędne wewnętrzne q0,qf takie, że:

k(q0)=x0,
k(qf)=xf,
odległość pomiędzy q0 i qf najmniejsza.

Ostatni warunek zapewnia zużycie małej ilości energii.

Taylor zaproponował prosty sposób na określenie jak powinien poruszać się manipulator. Zauważył on, że ramię robota porusza się najczęściej po łuku. Kolejnym spostrzeżeniem był sposób ... wieszania firan. Na początku chwytane są dwa krańce firany (zauważmy, że powoduje to powstanie łuku), następnie chwytany jest środek (powstają dwa mniejsze łuki) itd. Sposób ten zastosowany został w algorytmie.

Algorytm

Określamy zakres w jakim należy sprawdzić dokładność śledzenia (początkowo będzie to xl=x0, xp=xf), a następnie wyznaczamy położenie punktu próbnego xp:

xp=k(qp)

gdzie qp=ql+qp2 (ql oraz qp to współrzędne wewnętrzne odpowiadające odpowiednio xl oraz xp).

Ostatnim wyznaczanym punktem jest punkt środkowy xm leżący pośrodku punktów xl i xp. Kiedy już mamy informacje o wszystkich potrzebnych nam punktach określamy odległość pomiędzy punktem próbnym xp, a punktem środkowym xm. Jeśli odległość ta jest większa niż zadana dokładność δ to powtarzamy całą procedurę dla dwóch nowych zakresów: (xl,xm) oraz (xm,xp). Natomiast jeśli błąd znajduje się w podanym zakresie, to dla danego zakresu nic nie robimy.

Jak widać algorytm jest rekurencyjny i działa na zmniejszających się coraz bardziej zakresach. Należy także zauważyć, że wartość nastawy wewnętrznej dla punktu xm uzyskujemy ze wzoru qm=k1(xm).

Modyfikacje

Do algorytmu można zastosować dodatkowe modyfikacje poprawiające sposób realizacji.

  1. Wszystkie punkty pośrednie znalezione przez algorytm będą leżały zawsze dokładnie na linii prostej łączącej punkt początkowy oraz punkt końcowy. W przestrzeni współrzędnych wewnętrznych mogą odpowiadać im punkty, które będą połączone linią łamaną. Podczas sterowania manipulatorem takie szybkie zmiany nie są zbyt korzystne dla silników, które w krótkim czasie muszą przykładowo zatrzymać się, a następnie zacząć kręcić w drugą stronę (przy obserwacji robota zauważyć można szarpnięcie pojawiające się w takim momencie). Z tego też powodu można kosztem dokładności wygładzić przejścia pomiędzy kolejnymi współrzędnymi wewnętrznymi.
  2. Możliwe jest także zmniejszenie liczby punktów pośrednich (również kosztem dokładności), co daje przyspieszenie całego procesu sterowania.