Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

Nowa wersja
Poprzednia wersja
pl:mindstorms:lab:lab5 [2008/04/22 15:54]
gjn utworzono
pl:mindstorms:lab:lab5 [2019/06/27 15:50] (aktualna)
Linia 1: Linia 1:
 ====== Lab Prolog NXT API ====== ====== Lab Prolog NXT API ======
-FIXME 
  
 +===== Cel =====
 +Celem laboratorium jest wykorzystanie PlNXT (API w języku Prolog) w tworzeniu programów sterujących robotem Mindstorms NXT.
 +
 +===== Wstęp =====
 +PlNXT składa się z czterech modułów:
 +  * {{:​pl:​miw:​miw08_mindstormsapi:​080527:​nxt_actions_icommand.pl|nxt_actions_icommand}}
 +  * {{:​pl:​miw:​miw08_mindstormsapi:​080527:​nxt_sensomoto.pl|nxt_sensomoto}}
 +  * {{:​pl:​miw:​miw08_mindstormsapi:​080527:​nxt_movement.pl|nxt_movement}}
 +  * {{:​pl:​miw:​miw08_mindstormsapi:​080527:​threads.pl|threads}}
 +
 +Proszę pobieżnie zapoznać się z dokumentacją:​
 +  * [[http://​student.agh.edu.pl/​~holownia/​plnxt/​nxt_sensomoto.html|nxt_sensomoto]]
 +  * [[http://​student.agh.edu.pl/​~holownia/​plnxt/​nxt_movement.html|nxt_movement]]
 +  * [[http://​student.agh.edu.pl/​~holownia/​plnxt/​threads.html|threads]]
 +
 +Powinniście mieć Państwo do dyspozycji robota [[http://​mindstorms.lego.com/​Overview/​MTR_Tribot.aspx|TriBot]]. Proszę zapoznać się z jego opisem. Jeśli wszystko jest na miejscu, poprzednia grupa nie przywłaszczyła sobie żadnego klocka i można przystąpić do ćwiczenia. ;)
 +
 +Proszę otworzyć plik {{:​pl:​miw:​miw08_mindstormsapi:​test.pl|test.pl}} i załadować w SWI Prolog. Analizując plik, proszę obserwować wykonanie. W razie potrzeby posiłkować się dokumentacją.
 +
 +===== Przebieg ćwiczenia =====
 +Wykorzystując PlNXT zaimplementujcie Państwo jeden z poniższych algorytmów. Mile widziany swój pomysł (oczywiście odpowiednio skomplikowany).
 +
 +==== Algorytm I - Poszukiwanie piłki ====
 +Robot przeszukuje jakiś obszar w poszukiwaniu piłki. Np. kwadrat o boku 50 cm albo koło o promieniu 75 cm. Jeśli jej nie znajdzie, wraca do punktu początkowego i przeszukuje obszar jeszcze raz. Po znalezieniu zatrzaskuje szczęki i prezentuje "​taniec radości"​. Tutaj można wykazać się artyzmem. ;) Na sygnał dźwiękowy przerywa/​wznawia poszukiwanie.
 +
 +==== Algorytm II - Omijanie przeszkód ====
 +Robot przemieszcza się z punktu A do B. Po napotkaniu przeszkody zatrzymuje się i próbuje ją ominąć. Na sygnał dźwiękowy przerywa/​wznawia ruch.
 +
 +===== Uwagi =====
 +Należy zamykać połączenie po wykonaniu programu przy użyciu predykatu nxt_sensomoto:​nxt_connection_close/​0. Jeśli w wyniku błędu w programie poprawne zamknięcie połączenia nie będzie możliwe, należy wyłączyć i włączyć MindstormsNXT oraz adapter Bluetooth, a także ponownie uruchomić SWI Prolog. W przeciwnym razie mogą wystąpić problemy przy nawiązywaniu ponownego połączenia.
 +
 +===== Sprawozdanie =====
 +W sprawozdaniu należy zawrzeć:
 +  * krótki opis algorytmu (co się udało zrobić, czego nie),
 +  * kod programu,
 +  * uwagi dotyczące funkcjonalności PlNXT.
pl/mindstorms/lab/lab5.1208872440.txt.gz · ostatnio zmienione: 2019/06/27 15:57 (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