Sprawozdanie z zajęć laboratoryjnych realizowanych przez: Świerkosz(!), Wróbel, Kowalski.

Realizacja zadań

Po przyjściu na stanowisko zastaliśmy zbudowanego robota, dzięki czemu mogliśmy od razu przystąpić do realizowania właściwej części laboratorium.
Foto 1. Robot Gienek z kompletem czujników.

Algorytm numer 1

:- consult('plnxt.pl').
 
% uruchamia algorytm
start :-
	nxt_open,
	nxt_light_LED(activate),
	trigger_create(_,check_track,[turn]),
	nxt_go(300).
 
% "patrzy pod koła"
check_track :-
	nxt_light(Light,force),
	Light < 20.
 
% wykonuje obrót i jedzie dalej
turn :-
	nxt_stop,
	Angle is 120 + random(120),
	nxt_rotate(300, Angle),
	trigger_create(_,check_track,[turn]),
	nxt_go(300).
 
% zatrzymuje robota
stop :-
	trigger_killall,
	nxt_stop,
	nxt_close.

Algorytm numer 2

:- consult('plnxt.pl').
 
% uruchamia algorytm
start :-
	nxt_open,
	trigger_create(_,check_distance,[turn]),
	nxt_go(300).
 
% sprawdza odległość od potencjalnej przeszkody
check_distance :-
	nxt_ultrasonic(Distance,force),
	Distance < 20.
 
% wykonuje obrót i jedzie dalej
turn :-
	nxt_stop,
	nxt_rotate(350,90),
	trigger_create(_,check_distance,[turn]),
	nxt_go(300).
 
% zatrzymuje robota
stop :-
	trigger_killall,
	nxt_stop,
	nxt_close.

Uwagi do laboratorium

Uruchomienie robota

Pierwszym napotkanym przez nas problemem była nadgorliwość poprzedniej grupy w edytowaniu źródeł oprogramowania. Na stronie Konfiguracja stanowiska do pracy z NXT brak ostatniej linijki kodu we fragmencie, który należy zmodyfikować może sugerować potrzebę jej usunięcia.

% Specify the device files.
nxt_serial_device(write,'/dev/rfcomm2').
nxt_serial_device(read,'/dev/rfcomm2').
 
nxt_actions_connection_type(bt). % brakująca linijka

Usunięcie wskazanej linijki skutkuje niemożliwością uruchomienia jakiegokolwiek przykładu.

Działanie robota

Robot nie obraca się dokładnie o zadany kąt, dlatego próby realizacji omijania przeszkód kończyły się czasem dziwnym kątem skrętu.

Konsola

Podczas pracy nad poszczególnymi algorytmami wiele prób kończyło się niepowodzeniem. Zatrzymanie algorytmu nie powodowało zakończenia wątków i potrzebny był restart prologa.

Nawigacja po stronach

Działanie menu po lewej stronie nie jest do końca jasne dla nas. Przydałaby się lepsza nawigacja pomiędzy stronami wiki, tak aby nie marnować czasu na szukanie materiałów potrzebnych do realizacji ćwiczenia.

Linkowanie do strony

W instrukcji jest napisane, aby podlinkować niniejsze sprawozdanie na stronie 07-gienek, ale nie jest to możliwe, ze względu na niedostateczny poziom uprawnień na wiki.

pl/dydaktyka/piw/2009/sprawozdania/piw20090408-17c.txt · ostatnio zmienione: 2019/06/27 15:50 (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