Algorytm Taylora

Z Wikipedii, wolnej encyklopedii

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[edytuj | edytuj kod]

Algorytm wymaga podania szeregu danych wejściowych:

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

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

odległość pomiędzy i 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[edytuj | edytuj kod]

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

gdzie ( oraz to współrzędne wewnętrzne odpowiadające odpowiednio oraz ).

Ostatnim wyznaczanym punktem jest punkt środkowy leżący pośrodku punktów i Kiedy już mamy informacje o wszystkich potrzebnych nam punktach określamy odległość pomiędzy punktem próbnym a punktem środkowym Jeśli odległość ta jest większa niż zadana dokładność to powtarzamy całą procedurę dla dwóch nowych zakresów: oraz 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 uzyskujemy ze wzoru

Modyfikacje[edytuj | edytuj kod]

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.