[[
✎ pl:dydaktyka:jsi:2009:sprawozdania:jsi20091209-08a
]]
aiWiki
Pokaż stronę
Ostatnie zmiany
Indeks
Zaloguj
Ta strona jest tylko do odczytu. Możesz wyświetlić źródła tej strony ale nie możesz ich zmienić.
====== Sprawozdanie z laboratorium 2 ====== ===== 1. Wstęp ===== Celem drugiego laboratorium dotyczącego LEGO Mindstorms było lepsze zapoznanie się z możliwościami programowania LEGO mindstomrs NXT w środowisku dostarczonym przez LEGO. Za zadanie mieliśmy w związku z tym zrealizowanie kilku bardziej skomplikowanych algorytmów. Robot był już wcześniej zbudowany, więc od razu zaczęliśmy tworzyć algorytmy sterujące nim. Zamiast zdjęć, zamieszczamy linki do filmów z wykonywanych programów. ===== 2. Programowanie robota ===== === 2.1 Patrol === Zrealizowaliśmy program, który polegał na patrolowaniu terenu przez robota. Dwukrotnie jeździł po kwadracie, a dodatkowo reagował na pojawienie się jakiejś przeszkody, tzn. cofał się, wydawał dźwięk, a następnie realizował dalej patrol. {{:pl:dydaktyka:jsi:2009:sprawozdania:lab2_01.jpg|}} Film: http://www.youtube.com/watch?v=cVEEdC8XhSU === 2.2 Uniki === Następny program był bardzo podobny do programów, które zrealizowaliśmy już na pierwszych laboratoriach. Robot jechał prosto, a po napotkaniu przeszkody, skręcał, wydawał dźwięk i jechał dalej. {{:pl:dydaktyka:jsi:2009:sprawozdania:lab2_02.jpg|}} Film: http://www.youtube.com/watch?v=C3B5NJ8hibY Trajektoria, która jechał mogła być różna, nie musiała być to jazda prosto, a reakcja na przeszkodę mogła być taka, jak przy patrolu. {{:pl:dydaktyka:jsi:2009:sprawozdania:lab2_03.jpg|}} Film: http://www.youtube.com/watch?v=3PoEWxPuXLE === 2.3 Śledzenie === Kolejnym programem było zrealizowanie podążania za źródłem, np. dźwięku. Ponieważ robot posiada tylko jeden sensor dźwiękowy, zaproponowaliśmy następujące rozwiązanie: - Robot skręca w prawo, podjeżdża, sprawdza poziom dźwięku, wraca do miejsca rozpoczęcia. - Robot skręca w lewo, podjeżdża, sprawdza poziom dźwięku, wraca do miejsca rozpoczęcia. - Robot wybiera drogę, gdzie poziom dźwięku był wyższy i podjeżdża trochę. Wraca do punktu 1. {{:pl:dydaktyka:jsi:2009:sprawozdania:lab2_04.jpg|}} Jak widać, żeby zrealizować ten program, skorzystaliśmy z nowych funkcji środowiska, tak zwanych linkach, którymi mogą być przekazywane wartości. Na dodatek skorzystaliśmy z bloku COMPARE, który porównuje dwie wartości i wystawia rezultat TRUE albo FALSE. Film: http://www.youtube.com/watch?v=V01mB6sXPaU Na filmie widać, że wydawaliśmy dźwięki tylko wtedy, gdy robot sprawdzał głośność. Nie chcieliśmy używać jednego, ciągłego źródła dźwięku, by nie przeszkadzać innym, ale i w takim przypadku nasz algorytm działałby dobrze. === 2.4 Sterowanie === Ostatnim programem było sterowanie za pomocą sygnałów dźwiękowych. Ponieważ programy, które polegają na prostym reagowaniu na jedno klaśnięcie realizowaliśmy już wcześniej, postanowiliśmy, że nasz robot będzie rozróżniał jeden i dwa sygnały dźwiękowe. Robot wykonywał następujący program: - Wydaje dźwięk, czeka sekundę, sprawdza poziom dźwięku. - Czeka dwie sekundy. - Wydaje dźwięk, czeka sekundę, sprawdza poziom dźwięku. - Dodaje do siebie wartości dźwiękowe i sprawdza czy przekroczyły razem konkretny poziom dźwięku. - Jedzie do przodu, jeśli wartość nie została przekroczona lub do tyłu, jeśli została. - Wraca do punktu 1. {{:pl:dydaktyka:jsi:2009:sprawozdania:lab2_05.jpg|}} Film: http://www.youtube.com/watch?v=zzrnQf0KVV0 ==== 3. Podsumowanie ==== Laboratorium było udaną kontynuacją tego, co zaczęliśmy robić na pierwszym spotkaniu. Niestety, ciągle programowaliśmy w środowisku dostarczonym przez LEGO, które nie wystarcza do realizacji bardziej skomplikowanych programów. Zaczęliśmy używać linków, które pomagają np. przekazywać wartość i modyfikować ją. Nie przerobiliśmy zagadnień dotyczących bluetootha, jednak mamy pomysł, jak można by wykorzystać możliwość komunikacji między Brickami. Jako zmianę w laboratorium (poza zaczęciem programowania w innym środowisku) proponujemy wprowadzenie zadania typu: - Nawiąż komunikację z innym Brickiem. - Napisz program który będzie korzystał z sensorów jednego Bricka, a reagował silnikami na drugim. ==== 4. Spakowane programy ==== {{:pl:dydaktyka:jsi:2009:sprawozdania:lego_lapa_lab2.rar|}}
pl/dydaktyka/jsi/2009/sprawozdania/jsi20091209-08a.txt
· ostatnio zmienione: 2019/06/27 15:50 (edycja zewnętrzna)
Pokaż stronę
Poprzednie wersje
Menadżer multimediów
Do góry