[[
✎ pl:mindstorms:studenci:przedmioty:jsi:jsi2008:jsi20090121-09a
]]
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 nr 5 ===== ---- Robot: **?** Data wykonania: **21.01.2009, godz. 9.30** Autorzy: **Damian Dudziński, Maciej Fabia, Szymon Frenkel** ---- Budowa naszego robota: {{:pl:mindstorms:studenci:przedmioty:jsi:jsi2008:franek14-01-09.jpg?220|}} {{:pl:mindstorms:studenci:przedmioty:jsi:jsi2008:franek2_14-01-09.jpg?220|}} Franek korzystał z dwóch sensorów: * czujnika dźwięku * czujnika dotyku Najpierw zapoznaliśmy się z podstawowymi poleceniami API robota: * otwieranie i zamykanie połączenia Bluetooth - nxt_open, nxt_close, * poruszanie się z daną prędkością i zatrzymywanie - nxt_go(n), nxt_stop, * pobieranie danych z czujników - nxt_sound, nxt_touch, * reagowanie na zdarzenie - trigger_create. Następnie zaimplementowaliśmy algorytm "panikarz". Robot jechał powoli do przodu. Po usłyszeniu klaśnięcia przez chwilę szybko się cofał, a następnie ponownie zaczynał powoli poruszać się do przodu. <code prolog> :- consult('plnxt.pl'). fakt. start:- nxt_open, krecenie, trigger_create(_,pushed,[nxt_stop,nxt_close]). krecenie :- nxt_rotate(150,360), sleep(1), % Chwila przerwy trigger_create(_,przeszkoda,wypychanie). wypychanie :- nxt_stop, nxt_go_cm(300,40), sleep(10), nxt_go_cm(-300,40), sleep(10). trigger_create(_,fakt,krecenie). % Sprawdzenie, czy znaleziono przeszkodę przeszkoda :- nxt_ultrasonic(Value,force), Value < 20. % Sprawdzenie, czy sensor dotyku jest wciśnięty. pushed :- nxt_touch(Value,force), Value=1. :- start. </code> {{:pl:mindstorms:studenci:przedmioty:jsi:jsi2008:panikarz_14-01-09.pl|}} === Wnioski === Po zatrzymaniu algorytmu kilkukrotnie musieliśmy restartować SWIPL, ponieważ robot blokował się w momencie, kiedy po ucieczce miał znów jechać do przodu. Nie reagował wtedy na próby ponownego nawiązania połączenia - przyczyną były prawdopodobnie wątki stworzone przez trigger_create. Mimo to naszym zdaniem PLNXT daje większe możliwości niż standardowe środowisko graficzne LEGO.
pl/mindstorms/studenci/przedmioty/jsi/jsi2008/jsi20090121-09a.1233175939.txt.gz
· ostatnio zmienione: 2019/06/27 15:57 (edycja zewnętrzna)
Pokaż stronę
Poprzednie wersje
Menadżer multimediów
Do góry