To jest stara wersja strony!
JSI - laboratorium 2 - Paweł Grzesiak, Rafał Dyrda
1. Cel ćwiczenia
Celem ćwiczenia było skonstruowanie robota oraz odpalenie na nim prostych algorytmów sterowania zbudowanych w środowisku LEGO NTX.
2. Realizacja ćwiczenia
2.1. Budowa robota
Zbudowany przez nas robot oparty jest o model zawarty w instrukcji Quickstart dołączonej do zestawu. Dodatkowo wyposażyliśmy go w następujący zestaw czujników i manipulatorów pozwalających realizacje ciekawych zadań:
Poniżej przedstawiono zdjęcia zbudowanego robota:
Rysunek 1. Widok z przodu
Rysunek 2. Widok z boku
Rysunek 2. Robot z ładunkiem
2.2. Projektowanie algorytmu
Algorytmy tworzone były przy pomocy środowiska NXT, gdzie metodą drag-and-drop mogliśmy szybko skonstruować działający algorytm z gotowych bloczków. Ze względu na znikomą ilość czasu spowodowaną koniecznością złożenia robota od postaw, a następnie rozebrania go, zrealizowaliśmy i przetestowaliśmy jedynie 2 algorytmy:
2.2.1. Unik
Robot jedzie przed siebie aż do momentu napotkania przeszkody (wciśnięcie czujnika dotyku znajdującego się na specjalnie skonstruowanym wysięgniku) po czym cofa się (1 obrót kół napędowych), wykonuje zwrot o 90° w lewo i znów rusza przed siebie - od tego momentu algorytm jest powtarzany od początku.
2.2.2. Ładunek
Robot wyposażony w podnośnik ma za zadanie podjechać do rampy i zatrzymać się (czujnik odległości reagujący na specjalny pałąk na rampie), następnie podnieść ładunek (kulkę), wycofać (praca silników przez 2 sekundy), wykonac zwrot o 180° i odjechać.
3. Integracja i testy
Kompilacja i załadowanie plików do bricka były bardzo proste dzięki pomocy środowiska NXT - pliki przesyłaliśmy przy pomocy interfejsu USB. System umożliwia również komunikację między autonomicznymi brickami (robotami) za pośrednictwem protokołu Bluetooth – niestety ze względu na ograniczony czas trwania laboratorium, nie zdążyliśmy zaimplementować i przetestować tego rozwiązania. W zrealizowanych testach okazało się, że przygotowane algorytmy działają poprawnie, jakkolwiek pewne problemy sprawiał sensor ultradźwiękowy, który przy każdej próbie inaczej oceniał odległość, w związku z czym występowały problemy z odpowiednim hamowaniem przed przeszkodą. Odpowiednia kalibracja sensora powinna poprawić zachowanie robota. Mimo opisanych powyżej problemów, udało się przeprowadzić kilka, zakończonych pełnym sukcesem, prób podjęcia i przeniesienia ładunku.
4.Wnioski
Budowa robotów z zestawu LEGO Mindstorms i tworzenie algorytmów przy pomocy środowiska NXT jest bardzo proste i daje dużo frajdy – algorytmy tworzy się na zasadzie intuicyjnego łączenia gotowych bloczków, przy czym nie ma jakichkolwiek problemów z komunikacją i niekompatybilnymi czujnikami – jedyne problemy na jakie możemy natrafić to, wspomniana w poprzednim punkcie, nieoprawna kalibracja czujników). Ponadto, podczas zajęć z zestawem można choć na chwilę powrócić do czasów dzieciństwa…
5.Załączniki
Plik do środowiska NXT - ladunek.rbt zawierający algorytm z punktu 2.2.1.
ladunek.rbt