====== Sprawozdanie z laboratorium ====== * Robot: **Kajtek** * Data wykonania: **9.06.2010 godz. 15:30** * Autorzy: **Boisse Dawid, Mlaś Paulina, Woliński Krzysztof** ---- ==== Początek ==== Na początku laboratorium zapoznaliśmy się z [[https://ai.ia.agh.edu.pl/wiki/pl:mindstorms:lab:lab_plnxt_multiple|zadaniem do wykonania]]. {{:pl:dydaktyka:piw:2010:sprawozdania:bojza_robot.jpg?450}} {{:pl:dydaktyka:piw:2010:sprawozdania:bojza_plansza.jpg?450}} ==== Kod programów ==== Na początku napisaliśmy program, który korzystał z wątków: :- consult('plnxt.pl'). start :- nxt_goal(kajtek, go_on_buddy). go_on_buddy :- nxt_light_LED(activate), go_go_go. go_go_go :- stop, nxt_go(250), trigger_create(_,sprawdz, check_more). sprawdz :- nxt_light(Value, force), Value > 41. %bialy check_more :- stop, nxt_go_cm(50,2), nxt_light(Value, force), decide(Value). decide(Value) :- Value < 30, %czarny escape. decide(Value) :- Value >= 31, Value < 41. %czerwony escape :- nxt_rotate(100, 120, force), go_go_go. stop :- trigger_killall, nxt_stop. Niestety program nie działał poprawnie, zmodyfikowaliśmy więc kod: :- consult('plnxt.pl'). start :- nxt_goal(kajtek, go_on_buddy). go_on_buddy :- write('[GO ]'), nxt_go_cm(300,1), szukaj. szukaj :- write('szukam - '), nxt_light(Value,force), write(Value), decyzja(Value). decyzja(Value) :- Value < 35, %czarny write(' - czarny'),nl, obrot. decyzja(Value) :- Value > 34, Value < 40, %czerwony write(' - czerwony'),nl, uciekaj. decyzja(Value) :- Value > 39, %bialy write(' - bialy'),nl, nxt_stop, go_on_buddy. obrot :- nxt_rotate(300,120), write('OBROT'),nl, nxt_stop, go_on_buddy. uciekaj :- nxt_go_cm(300,50), write('UCIEKAJ'),nl. Mimo zmian(zrezygnowaliśmy z wątków) robot niepoprawnie reagował na polecenia, główną przyczyną takiego stanu rzeczy były problemy z dobraniem odpowiednich wartości dla poszczególnych kolorów. Czytnik jest wrażliwy na zmiany takie jak: inne oświetlenie, cień, ruch itp., które uniemożliwiały trafne dobranie wartości kolorów. ==== Wartości kolorów ==== pod szafą Z LED: bialy: 63,69,49,46, czerwony: 68 carny: pod szafą BEZ LED: biały: 32,27,33,21 czarny: 11,10 czerwony: 23,21,22,26 pod oknem BEZ LED: biały: 32,25,27,28,33,24 czarny: 16,17,15,16, czerwony: 25,26,14,16 pod oknem Z LED: biały: 69 czarny: czerwony: 67,68,66, ===== Spostrzeżenia, napotkane problemy, wnioski ===== === Napotkane problemy === * Głównym problemem była zbieżność wartości koloru czerwonego i białego, przez co robot czasem na białym polu 'znajdował' czerwony kolor i zaczynał uciekać. Próbowaliśmy zmieniać miejsce, włączać i wyłączać diodę, ale nie dawało to większych rezultatów, gdyż robot sam sobie rzucał cień. Większą część laboratorium spędziliśmy na szukaniu odpowiedniego miejsca, gdzie różnica między kolorami będzie optymalna dla zadania. * Brak dokumentacji do komunikacji między robotami dla PLNXT, przez co nie udało nam się nawiązać połączenia między robotami. ===== Uwagi dotyczące laboratorium ==== * Bardzo przydatne byłoby wprowadzenie do komunikacji między robotami w PLNXT. * Pomocna mogłaby być zmiana koloru klucza dla więźnia na inny, tak by różnice wartości zczytywanych dla różnych kolorów były znaczące.