Lokalizacja robota Lego Mindstorms NXT przy użyciu odometrii



Podobne dokumenty
Laboratorium Podstaw Robotyki I Ćwiczenie Khepera dwukołowy robot mobilny

Konrad Słodowicz sk30792 AR22 Zadanie domowe satelita

Badanie oddziaływania pola magnetycznego na przewodnik z prądem

W NACZYNIU WIRUJĄCYM WOKÓŁ OSI PIONOWEJ

Laboratorium Podstaw Robotyki ĆWICZENIE 3

Geometria. Rozwiązania niektórych zadań z listy 2

KGGiBM GRAFIKA INŻYNIERSKA Rok III, sem. VI, sem IV SN WILiŚ Rok akademicki 2011/2012

9. Podstawowe narzędzia matematyczne analiz przestrzennych

Manipulatory i roboty mobilne AR S1 semestr 5

Zależność prędkości od czasu

Wykład 2. Kinematyka. Podstawowe wielkości opisujące ruch. W tekście tym przedstawię podstawowe pojecia niezbędne do opiosu ruchu:

Politechnika Poznańska Instytut Technologii Mechanicznej. Laboratorium MASZYN I URZĄDZEŃ TECHNOLOGICZNYCH. Nr 2

Za rozwiązanie wszystkich zadań można otrzymać łącznie 45 punktów.

Rysowanie precyzyjne. Polecenie:

13. WYZNACZANIE CHARAKTERYSTYK ORAZ PRZEŁOŻENIA UKŁADU KIEROWNICZEGO

D l. D p. Rodzaje baz jezdnych robotów mobilnych

Projekt i wykonanie robota klasy Micromouse

Dmuchając nad otworem butelki można sprawić, że z butelki zacznie wydobywać się dźwięk.

Kinematyka robotów mobilnych

Ruch Demonstracje z kinematyki i dynamiki przeprowadzane przy wykorzystanie ultradźwiękowego czujnika połoŝenia i linii powietrznej.

Manewry w ruchu drogowym

Matematyka I. Bezpieczeństwo jądrowe i ochrona radiologiczna Semestr zimowy 2018/2019 Wykład 12

ĆWICZENIE 41 POMIARY PRZY UŻYCIU GONIOMETRU KOŁOWEGO. Wprowadzenie teoretyczne

WIBROIZOLACJA określanie właściwości wibroizolacyjnych materiałów

Definicja obrotu: Definicja elementów obrotu:

KRYTERIA OCENIANIA ODPOWIEDZI Próbna Matura z OPERONEM. Matematyka Poziom rozszerzony

Nazwisko i imię: Zespół: Data: Ćwiczenie nr 1: Wahadło fizyczne. opis ruchu drgającego a w szczególności drgań wahadła fizycznego

Geometryczne podstawy obróbki CNC. Układy współrzędnych, punkty zerowe i referencyjne. Korekcja narzędzi

Wstęp. Ruch po okręgu w kartezjańskim układzie współrzędnych

Ćwiczenie 42 WYZNACZANIE OGNISKOWEJ SOCZEWKI CIENKIEJ. Wprowadzenie teoretyczne.

Ćw. nr 31. Wahadło fizyczne o regulowanej płaszczyźnie drgań - w.2

Ruch jednowymiarowy. Autorzy: Zbigniew Kąkol Kamil Kutorasiński

lim Np. lim jest wyrażeniem typu /, a

Informatyka I Lab 06, r.a. 2011/2012 prow. Sławomir Czarnecki. Zadania na laboratorium nr. 6

1 Równania różniczkowe zwyczajne o rozdzielonych zmiennych

ARKUSZ ĆWICZENIOWY Z MATEMATYKI MARZEC 2012 POZIOM PODSTAWOWY. Czas pracy: 170 minut. Liczba punktów do uzyskania: 50

Wstęp Pierwsze kroki Pierwszy rysunek Podstawowe obiekty Współrzędne punktów Oglądanie rysunku...

Wyrównanie ciągu poligonowego dwustronnie nawiązanego metodą przybliżoną.

INSTRUKCJA DO ZAJĘĆ LABORATORYJNYCH

LUBELSKA PRÓBA PRZED MATURĄ klasa 2b

Wyznaczanie stosunku e/m elektronu

MECHANIKA 2 RUCH POSTĘPOWY I OBROTOWY CIAŁA SZTYWNEGO. Wykład Nr 2. Prowadzący: dr Krzysztof Polko

Zad.3. Jakub Trojgo i Jakub Wieczorek. 14 grudnia 2013

PANEL SŁONECZNY NXT. Rozpocznij

Mechatronika i inteligentne systemy produkcyjne. Modelowanie systemów mechatronicznych Platformy przetwarzania danych

Analiza Matematyczna F1 dla Fizyków na WPPT Lista zadań 4, 2018/19z (zadania na ćwiczenia)

y(t) = y 0 + R sin t, t R. z(t) = h 2π t

Geometria analityczna

Manewry w ruchu drogowym

Część I. MECHANIKA. Wykład KINEMATYKA PUNKTU MATERIALNEGO. Ruch jednowymiarowy Ruch na płaszczyźnie i w przestrzeni.

Arkusz maturalny nr 2 poziom podstawowy ZADANIA ZAMKNIĘTE. Rozwiązania. Wartość bezwzględna jest odległością na osi liczbowej.

Efekt Halla. Cel ćwiczenia. Wstęp. Celem ćwiczenia jest zbadanie efektu Halla. Siła Loretza

KINEMATYKA I DYNAMIKA CIAŁA STAŁEGO. dr inż. Janusz Zachwieja wykład opracowany na podstawie literatury

WYDZIAŁ LABORATORIUM FIZYCZNE

ARKUSZ ĆWICZENIOWY Z MATEMATYKI MARZEC 2012 POZIOM PODSTAWOWY. Czas pracy: 170 minut. Liczba punktów do uzyskania: 50

Metody numeryczne. materiały do wykładu dla studentów. 7. Całkowanie numeryczne

Kinematyka: opis ruchu

Piotr Targowski i Bernard Ziętek WYZNACZANIE MACIERZY [ABCD] UKŁADU OPTYCZNEGO

Badanie ruchu złożenia

Zagadnienia brzegowe dla równań eliptycznych

Prawa ruchu: dynamika

przy warunkach początkowych: 0 = 0, 0 = 0

Ćwiczenie: "Ruch po okręgu"

KATEDRA AUTOMATYKI, BIOMECHANIKI I MECHATRONIKI. Laboratorium Mechaniki technicznej

Wykład FIZYKA I. 10. Ruch drgający tłumiony i wymuszony. Dr hab. inż. Władysław Artur Woźniak

KATEDRA AUTOMATYKI, BIOMECHANIKI I MECHATRONIKI. Laboratorium Mechaniki technicznej

1. Opis aplikacji. 2. Przeprowadzanie pomiarów. 3. Tworzenie sprawozdania

Wyznaczanie przyspieszenia ziemskiego za pomocą wahadła prostego

Zakres na egzaminy poprawkowe w r. szk. 2013/14 /nauczyciel M.Tatar/

INSTRUKCJA DO ĆWICZENIA NR 7

PAiTM - zima 2014/2015

Przykładowe zadanie egzaminacyjne w części praktycznej egzaminu w modelu d dla kwalifikacji B.35 Obsługa geodezyjna inwestycji budowlanych

Metody systemowe i decyzyjne w informatyce

2. Zmienne i stałe. Przykłady Napisz program, który wypisze na ekran wynik dzielenia 281 i 117 w postaci liczby mieszanej (tj. 2 47/117).

Politechnika Wrocławska, Wydział Informatyki i Zarządzania. Modelowanie

Programowanie i uruchamianie serwo-kontrolera w napędowym układzie wykonawczym z silnikiem skokowym. Przebieg ćwiczenia

Regulacja dwupołożeniowa.

Pojęcie funkcji. Funkcja liniowa

Laboratorium z Krystalografii specjalizacja: Fizykochemia związków nieorganicznych

Wstęp do równań różniczkowych

Z poprzedniego wykładu:

3. KINEMATYKA Kinematyka jest częścią mechaniki, która zajmuje się opisem ruchu ciał bez wnikania w jego przyczyny. Oznacza to, że nie interesuje nas

SYSTEMY CZASU RZECZYWISTEGO (SCR)

MECHANIKA 2. Wykład Nr 3 KINEMATYKA. Temat RUCH PŁASKI BRYŁY MATERIALNEJ. Prowadzący: dr Krzysztof Polko

LABORATORIUM ELEKTROAKUSTYKI. ĆWICZENIE NR 1 Drgania układów mechanicznych

Równania dla potencjałów zależnych od czasu

Walec na równi pochyłej

Korzystając z różniczki funkcji obliczyć przybliżone wartości wyrażeń: cos 8. XX LO (wrzesień 2016) Matematyka elementarna 1 / 5

LABORATORIUM ELEKTROTECHNIKI POMIAR PRZESUNIĘCIA FAZOWEGO

Pojęcie funkcji. Funkcja liniowa

Pierwsze kolokwium z Mechaniki i Przyległości dla nanostudentów (wykład prof. J. Majewskiego)

Wymagania na egzamin poprawkowy z matematyki dla klasy I C LO (Rok szkolny 2015/16) Wykaz zakładanych osiągnięć ucznia klasy I liceum

O ruchu. 10 m. Założenia kinematyki. Najprostsza obserwowana zmiana. Opis w kategoriach przestrzeni i czasu ( geometria fizyki ).

R o z d z i a ł 2 KINEMATYKA PUNKTU MATERIALNEGO

Wojewódzki Konkurs Matematyczny dla uczniów gimnazjów. Etap Wojewódzki 12 lutego 2015 Czas 90 minut

Wydział Inżynierii Środowiska; kierunek Inż. Środowiska. Lista 2. do kursu Fizyka. Rok. ak. 2012/13 sem. letni

Ćwiczenie M-2 Pomiar przyśpieszenia ziemskiego za pomocą wahadła rewersyjnego Cel ćwiczenia: II. Przyrządy: III. Literatura: IV. Wstęp. l Rys.

Prawa fizyki wyrażają związki między różnymi wielkościami fizycznymi.

Wstęp do równań różniczkowych

Transkrypt:

Uniwersytet Zielonogórski Instytut Sterowania i Systemów Informatycznych Laoratorium Sterowania Rootów Lokalizacja roota Lego Mindstorms NXT przy użyciu odometrii Uwagi wstępne 1. Wszystkie przykłady i zadania wykonujemy w środowisku Matla z użyciem skrzynki narzędziowej RWTHMindstormsNXT.. Komunikację z rootem rozpoczynamy od podłączenia poprzez kael USB. Następnie wykorzystujemy połączenie poprzez Bluetooth, zgodnie z zaleceniami prowadzącego. 3. Poniższy opis został przygotowany na podstawie informacji umieszczonych na stronach: (a) http://www.mindstorms.rwth-aachen.de/. () http://www.inpharmix.com/jps/pid Controller For Lego Mindstorms Roots.html Budowa i oprogramowanie roota 1. Celem ćwiczenia jest określenie pozycji roota lu zmian jego pozycji, czyli współrzędnych x, y oraz orientacji (kąt θ) w odniesieniu do czasu. Najważniejsze ędzie jednak określenie pozycji i orientacji roota na podstawie znanych prędkości kół.. Wszystkie poniższe równania matematyczne zawierają poniższe zmienne x, y - współrzędne początkowe roota (pozycja początkowa), x(t), y(t) - współrzędne roota jako funkcje czasu, θ, θ(t) - początkowa orientacja roota i orientacja jako funkcja czasu, v R, v L - prędkość odpowiednio prawego i lewego koła, s R, s L - odległość pokonana odpowiednio przez kolo prawe i lewe (np.: oliczona na podstawie odczytu z enkoderów i danego owodu koła), - odległość pomiędzy kołami (ich środkami), r - promień skrętu roota, t - czas w sekundach, 3. W każdej chwili czasu, współrzędne roota zmieniają się w zależności od prędkości roota i jego orientacji. 4. Przy poruszaniu się do przodu z pozycji (x, y, θ) o dystans d, nowe współrzędne roota ędą opisane równaniem x nowy x + d cos(θ) y nowy θ nowy = y + d sin(θ) θ 5. Przy orocie roota z pozycji (x, y, θ) o kąt α, nowe współrzędne roota ędą opisane równaniem x nowy x y nowy = y θ nowy θ + α 6. Ponieważ używamy dwóch niezależnie sterowanych kół napędowych to przy wykonaniu skrętu o promieniu r każde z kół pokona następujące odległości s R =(r + )θ s L =rθ Powyższe wyrażenia odnoszą się do sytuacji przedstawionej na rysunku (czyli skrętu w lewą stronę) 1

7. W celu wyznaczenia trajektorii roota na podstawie znajomości prędkości jego kół, możemy posłużyć się następującymi równaniami gdzie v(t) jest funkcją prędkości roota. =v(t) cos(θ(t)) dt dy =v(t) sin(θ(t)) dt 8. Zmiana orientacji roota, gdy mamy różne ale stałe prędkości kół, jest opisana następującym równaniem różniczkowym dθ dt = (v R v L ) Całkując powyższe równanie i iorąc pod uwagę początkową orientację roota θ() = θ otrzymujemy równanie do oliczania pozycji roota θ(t) = (v R v L )t Opisana tutaj sytuacja jest przedstawiona na poniższym rysunku (1) + θ () 9. Znając orientację roota (czyli wzór ()), możemy wyznaczyć jego pozycję na podstawie poniższych równań różniczkowych (przyjmujemy, że punkt odniesienia znajduje się w połowie odległości pomiędzy kołami, dlatego jego prędkość to (v R+v L ) ) dt =(v R + v L ) cos(θ(t)) dt =(v R + v L ) sin(θ(t)) 1. Równanie (3) ma taką samą postać jak (1). Wykonując teraz operację całkowania i przyjmując, że początkowa pozycja roota to x() = x i y() = y otrzymujemy x(t) =x + (v ( ( ) ) R + v L ) (vr v L )t sin + θ sin(θ ) (v R v L ) y(t) =y (v ( ( ) ) (4) R + v L ) (vr v L )t cos + θ cos(θ ) (v R v L ) 11. Korzystając z równania (4) mamy możliwość określenia aktualnej pozycji roota. Podstawiając za v R i v L odpowiednio s R i s L oraz opuszczając zmienną t (czyli czas, gdyż s R i s L przechowują aktualnie pokonany dystans przez koła a nie ich prędkości) możemy otrzymać dore przyliżenie pozycji roota. 1. W programie komputerowym symulującym równania (4) musimy oddzielnie zaimplementować przypadek gdy v R = v L lu s R = s L (czyli gdy mianownik dąży do zera). W takim przypadku root musi poruszać się po linii prostej. (3)

13. Ponieważ w wyranych aplikacjach nie mamy dostępu do oliczeń zmiennoprzecinkowych lu moc oliczeniowa pokładowego sterownika jest ograniczona to wtedy do oliczeń możemy używać uproszczonych wyrażeń. Jednym z najczęściej stosowanych przyliżeń są wzory przedstawione poniżej s = (s R+s L ) θ = (s R s L ) +θ x =s cos(θ)+x (5) y =s sin(θ)+y 14. W powyższych rozważaniach przyjmowaliśmy, iż prędkości kół są stałe alo wolno zmienne. Jeśli jednak taka sytuacja nie ma miejsca, musimy dodatkowo rozważyć wpływ przyspieszenia. W najprostszym przypadku prędkości poszczególnych kół mozemy zapisać jako v R (t) =α R t + w R v L (t) =α L t + w L (6) gdzie α R, α L są stałymi przyspieszeniami odpowiednio koła prawego i lewego, a w R i w L są wartościami początkowych prędkości. 15. Podstawiając wzór (6) w odpowiednie miejsca otrzymujemy A = (α R + α L ) B = (w R + w L ) C = (α R α L ) D = (w R w L ) Teraz, wzory na połozenie i orientację roota ędą miały następującą postać θ(t) =Ct + Dt + θ dt =(At + B) cos(ct + Dt + θ ) dy dt =(At + B) sin(ct + Dt + θ ) Oczywistym jest, że łatwo jest wyznaczyć orientację roota. Jednak analityczne rozwiązanie równań różniczkowych pozycji roota jest ardzo skomplikowane. Dlatego musimy rozwiązać je w sposó numeryczny. W programie komputerowym skorzystamy metod całkownia numerycznego (np. metody Simpsona). Zadania do wykonania 1. Zudować roota według wskazówek umieszczonych w instrukcji oraz przekazanych przez prowadzącego.. Napisać program do pomiaru charakterystyki silnika. Istotne jest ay zmierzyć prędkość orotową silnika (licza orotów na minutę) w zależności do zadanej mocy silnika. Następnie wyznaczyć odległość pokonywaną przez roota w zadanej jednostce czasu (przyjąć, że średnica koła napędowego to 56 [mm]). 3. Sprawdzić czy dla zadanych, stałych prędkości kół, gdzie prędkość jednego koła różni się od prędkości drugiego koła, root ędzie poruszał się po okręgu o promieniu (/) (v R+v L ) v R v L. 4. Napisać program do sterowania roorem tak ay poruszał się według danej trajektorii położenia lu prędkości.przyjąć, że root ma się poruszać po trajektorii której segmenty są tylko liniami prostymi i wycinkami koła. 5. Napisać program umożliwający wizualizację aktualnej pozycji roota na ekranie komputera dla zadanych trajektorii prędkości kół. 6. Porównać wyniki określania pozycji roota na podstawie wzorów (4) i (5). (7) 3

7. Podstawiając v = v L+v R oraz ω = v R v L model kinematyki roota o napędzie różnicowym można zapisać jako: ẋ cos(θ) [ ẏ = sin(θ) v (8) ω] θ 1 Przy założeniu, że v oraz ω są stałe, root powinien poruszać się po okręgu o promieniu R = v/ω z okresem T = π/ω. Korzystając ze środowiska Simulink zaimplementować model kinematyki roota i dorać sterowania (v, ω) w taki sposó, żey w okresie T = 5 s root wykreślił okrąg o promieniu R =, 5 m. Następnie dokonać korekt sterowań tak ay root poruszał się po: (a) spirali Archimedesa o równaniu (współrzędne iegunowe) θ = a/r,, r = x + y, a = const (rys. 1(a)), () spirali hiperolicznej o równaniu θ = a r (rys. 1()), (c) spirali logarytmicznej o równaniu θ = ln(r/a) (rys. 1(c)). Częstotliwość ojazdu ieguna spirali w każdym przypadku powinna wynosić, Hz. Następnie zaimplementować wyrany przypadek spirali (a) (c) na roocie LEGO i sprawdzić praktycznie realizację zaplanowanej trajektorii..5 (a) () (c).5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5.5 Rysunek 1: Trajektorie do zadania 8. 8. (*) Droga roota zakręca o 9 o po łuku okręgu. Promienie wewnętrznej i zewnętrznej krawędzi jezdni wynoszą odpowiednio 8 i 1. Korzystając z modelu kinematyki z poprzedniego zadania, zaprojektować sterownik, który dokona przejazdu pojazdu po trajektorii minimalizującej siłę odśrodkową w trakcie jazdy po zakręcie. Wskazówka 1 (dla dociekliwych): przy założeniu stałej prędkości jazdy maksymalna siła odśrodkowa występuje w szczycie zakrętu, Wskazówka (dla mniej dociekliwych): minimalizacja maksymalnej siły odśrodkowej prowadzi do trajektorii hiperolicznej, przechodzącej przez szczyt zakrętu. 9. W klasycznym teście Borensteina na łąd lokalizacji w odometrii root wykonuje zaprogramowany przejazd po kwadracie o ustalonym promieniu (patrz rys. ), przy czym mierzy się łędy odległości i kąta w każdym wierzchołku kwadratu. Błąd ma źródła deterministyczne (np. niedokładne wymiary roota) oraz stochastyczne (np. łędy pomiaru enkoderów roota). Teoretycznie kluczowy wpływ w odometrii ma pomiar azymutu roota, który wpływa nieliniowo na pomiar odległości. Sprawdzić czy i na ile użycie żyroskopu do dokładniejszego ezpośredniego pomiaru zmian kąta (zamiast pomiaru pośredniego z enkoderów, np. we wzorze 5) poprawi dokładność jazdy po zadanej trajektorii kwadratu. Bok kwadratu ustalić jako 1m, a łędy lokalizacji (czysta odometria vs odometria+żyroskop) przedstawić na wykresach. 4

Rysunek : Test łędu odometrii 5