====== Wstęp ====== Zespół składa się z następujących osób: - //Szef// - Bartłomiej Tyranowski - //Mechanik// - Bartłomiej Trzciński - //Konstruktor// - Adrian Toboła ====== Implementacja ====== Po starannym przygotowaniu naszego stanowiska pracy, przystąpiliśmy do niewielkiej modyfikacji robota. Zainstalowaliśmy czujnik odległości oraz dobudowaliśmy zderzak: {{:pl:dydaktyka:piw:2010:sprawozdania:lab_5_ttt.jpg|}} Na poprzednim laboratorium implementowaliśmy program Więzień, zatem na tych zajęciach zajęliśmy się algorytmem programu Sprzątacz. ===== Sprzątacz v.1: ===== :- consult('plnxt.pl'). start :- nxt_open, A is 0, trigger_create(_,check_distance,swipe(A)), nxt_rotate(200,30), trigger_create(_,nxt_is_stopped,continue(A)). check_distance :- nxt_ultrasonic(Value, force), Value < 40. swipe(A) :- trigger_killall, nxt_stop, nxt_go_cm(500,40), trigger_create(_,nxt_is_stopped,go_back(A)). go_back(A) :- trigger_killall, nxt_stop, nxt_go_cm(500,-40), trigger_create(_,nxt_is_stopped,continue(A)). continue(A) :- trigger_killall, nxt_stop, A =< 360, A is A + 30, trigger_create(_,check_distance,swipe(A)), nxt_rotate(200,30), trigger_create(_,nxt_is_stopped,continue(A)). ===== Sprzątacz v.2: ===== :- dynamic(angle/1). :- consult('plnxt.pl'). start :- nxt_open, A is 0, trigger_create(_,check_distance,remember(A)), nxt_rotate(200,30), trigger_create(_,nxt_is_stopped,go_on(A)). check_distance :- nxt_ultrasonic(Value, force), Value < 40. remember(A) :- assert(angle(A)). go_on(A) :- A is A + 30, A =< 360, trigger_create(_,check_noise(A),start2), trigger_create(_,check_distance,remember(A)), nxt_rotate(200,30), trigger_create(_,nxt_is_stopped,go_on(A)). check_noise(A) :- nxt_sound(Value,force), Value > 30, A > 360. start2 :- B is 0, trigger_create(_,[check_distance,not(angle(B)],come_closer), nxt_rotate(200,30), trigger_create(_,nxt_is_stopped,go_on2(B)). go_on2(B) :- B is B + 30, B =< 360, trigger_create(_,[check_distance,not(angle(B)],come_closer), nxt_rotate(200,30), trigger_create(_,nxt_is_stopped,go_on2(B)). załączone pliki: {{:pl:dydaktyka:piw:2010:sprawozdania:lab5_tobola_trzcinski_tyranowski.zip|}} ====== Podsumowanie ====== W czasie wykonywania celów laboratorium mieliśmy problemy z połączeniem Bluetooth, środowisko //Xpce// w pewnym momencie odmówiło posłuszeństwa i zawiesiło się na tyle poważnie, że konieczny był restart komputera.