Sprawozdanie z laboratorium 3

1. Wstęp

Naszym zadaniem było wymyślenie i implementacja kilku zadanych algorytmów które miał realizować robot Czesław. Był on już w pełni zbudowany, więc zajęliśmy się wyłącznie częścią programistyczną.

2. Algorytmy

Magazynier

Opis

Pierwszym zadaniem było podniesienie piłki. Następnie robot miał wykonać obrót o 180 stopni i przenieść piłeczkę pod ścianę. Dodatkowo na klaśniecię Czesław miał zakończyć swoją pracę.

Realizacja

Ciekawym rozwiązaniem było zastosowanie rozgałęzienia od „punktu startowego”, które umożliwiło równoległą pracę algorytmu ( robot kończył działanie po zarejestrowaniu dźwięku przewyższającego wartość progową). W pętli while zastosowaliśmy bloczek „switch”, który porównuje wartość natężnia dźwięku. Dzięki temu uzyskujemy możliwość warunkowego wykonywania programu.

Film: http://www.youtube.com/watch?v=FXE70JaJuRQ

Magazynier2

Opis

Kolejnym zadaniem było podniesienie piłki. Następnie robot miał wykonać obrót o 180 stopni i opuścić piłkę pod najechaniu na białą kartkę. Dodatkowo na klaśniecię Czesław miał zakończyć swoją pracę.

Realizacja

Algorytm jest bardzo podobny do Magazyniera, jedyną różnicą jest wykorzystanie sensora do pomiaru natężenia światła, zamiast sonaru. Pomocne okazało się wykorzystanie sterownika robota w celu zbadania wartości poziomu natężenia światła dla różnych powierzchni.

Film: http://www.youtube.com/watch?v=tjPYmoc-p_4

Złodziej

Opis

Zadaniem było podjechanie dostatecznie blisko kulki i podniesienie jej. Następnie robot miał się cofnąć, wykonać obrót o 180 stopni. Robot kończył ucieczkę po zarejestrowaniu okrzyku „Stój Policja”

Realizacja

Kluczową rzeczą do zrealizowania tego algorytmu było ustalenie odległości, po której miało nastąpić zatrzymanie Czesława i złapanie piłeczki. Odległość ustaliśmy metodą prób i błędów. Przy wykonywaniu zadania, stwierdziliśmy że sonar nie reaguje na piłeczkę ( jest za wysoko zawieszony). Omineliśmy tą niedogodność ustawiająć przeszkodę na drodze robota.

Film: http://www.youtube.com/watch?v=p3BP2x3Wsig

Złodziej2

Opis

Zadaniem było podjechanie dostatecznie blisko kulki i podniesienie jej. Następnie robot miał się cofnąć, wykonać obrót o 180 stopni. Robot po zarejestrowaniu okrzyku „Stój Policja” ma uciekać.

Realizacja

W porównaniu do „Złodzieja” dodatkowo wstawiliśmy pętlę, w której umieściliśmy bloki „move” odpowiadające za ucieczkę Czesława przed policją. Z powodu braku czasu, nie udało się zrealizować ucieczki w losowym kierunku.

Film: http://www.youtube.com/watch?v=H0iJOgzfoXY

3. Podsumowanie i sugestie

Podczas wykonywania laboratorium poznaliśmy kolejne elementy składowe środowiska Lego. Dużą niedogodnością były problemy z komunikacją bluetooth, przez co traciliśmy czas na przenoszenie Czesława z miejsca na miejsce i podłączanie go. W środowisku Lego brakuje funkcji zoomout, która umożliwiłaby łatwiejsze zarządzanie programem. Atutem jest dostępnośc w środowisku Lego NXT podlągu do aktualnych wartości sensorów, możliwe jest również odczytanie tych wartości z konsoli wbudowanej w robota. Plusem jest również możliwość rozgałęzienia algorytmu z „punktu startowego”, dzięki temu uzyskujemy możliwość równoległego wykonywaniu czynności robota. Uważamy że laboratorium jest dobrym wstępem, przed zaawansowanym programowaniem robotów. Myślimy że ciekawym urozmaiceniem laboratorium byłaby możliwośc komunikowania się robotów między sobą. Wtedy np. jeden robot mógłby pełnić rolę czujnika, który kontrolowałby czy piłka jest w właściwym miejscu. Po złapaniu kulki przez złodzieja, robot „czujnik” powiadomiłby policjanta o kradzieży.

4. Spakowane programy

pl/dydaktyka/jsi/2009/sprawozdania/jsi20091216-09b.txt · ostatnio zmienione: 2019/06/27 15:50 (edycja zewnętrzna)
www.chimeric.de Valid CSS Driven by DokuWiki do yourself a favour and use a real browser - get firefox!! Recent changes RSS feed Valid XHTML 1.0