To jest stara wersja strony!
Sprawozdanie 5
Robot: Czesław
Data wykonania: 2.06.2010 godz. 9:30
Autorzy: Martyka Łukasz, Stereńczak Agata, Szczurek Joanna
Budowa robota
Pierwszym robotem którego otrzymaliśmy na laboratorium był robot Dyzio. Niestety po dosłownie kilku minutach mieliśmy z nim problemy. Nie wykonywał naszych poleceń. Dlatego poprosiliśmy o wymianę robota. W zamian za niego otrzymaliśmy Czesława, który był już w pełni zbudowany i współpraca z nim przebiegała bezproblemowo.
Algorytm Sprzątacz
Na tym laboratorium zajęliśmy się algorytmem sprzątacz. Z powodu niewielkiej dostępnej przestrzeni, zmieniliśmy odległość wykrywania przeszkód przez robota z 40 cm na 20 cm.
Sprzątacz działa w ten sposób, w pętli zwiększamy wartość kąta obrotu o 10 stopni aż do 360 stopni. Po obrocie o kąt 10 stopni robot sprawdza czy na jego drodze w promieniu 20 cm nie znajduje się jakiś przedmiot ( funkcja badaj_ultra). Jeśli nie, to obraca się dalej, a jeśli znajdzie przedmiot to podjeżdża o 40 cm do przodu a następnie o 40 cm w tył (funkcja podjedz).
Kod algorytmu:
:- consult('plnxt.pl').
start :- Angle is 0,
my_loop(Angle).
my_loop(Angle) :- Angle < 360,
write(Angle),
badaj_ultra,
NewAngle is Angle + 10,
my_loop(NewAngle).
obrot :- write('obrot'),
nxt_rotate(360, 10, force).
badaj_ultra :-
nxt_ultrasonic(Ultra,force),
Ultra < 20,
podjedz,
obrot.
badaj_ultra :-
nxt_ultrasonic(Ultra,force),
Ultra >= 20,
obrot.
podjedz :- nxt_go_cm(400, 40),
sleep(1),
nxt_go_cm(-400, 40).
stop :-
nxt_stop,
nxt_close.
Filmik obrazujący działanie sprzątacza Sprzątacz!
Wnioski
Plik z algorytmem