Spis treści

Zapoznanie z PLNXT

Celem ćwiczenia było zapoznanie się z interfejsem programistycznym w prologu do Lego Mindstorms.

Przebieg Ćwiczenia

Implementacja Algorytmu

:- consult('../plnxt/plnxt.pl').
 
start :-
	nxt_open,
	trigger_create(_,check_distance,[nxt_stop, rotate90]),
	trigger_create(_, check_stop, [nxt_stop, nxt_close]),
	nxt_go(500).
 
 
check_distance :-
	nxt_ultrasonic(Distance,force),
	Distance < 15.
 
 
rotate90 :-
	go_rotate,
	trigger_create(_,check_distance,[nxt_stop, rotate90]),
	nxt_go(500).
 
go_rotate :-
	nxt_rotate(350, 90), sleep(1),
	nxt_go_cm(500,30),
	nxt_rotate(350,-90),sleep(1),
	nxt_go_cm(500,30),
	nxt_rotate(350,-90),sleep(1),
	nxt_go_cm(500,30),
	nxt_rotate(350,90),sleep(1).
 
check_stop :-
	nxt_touch(Stop,force),
	Stop = 1.

omijanie.pl

Wnioski

API prologu jest zdecydowanie wygodniejszą formą tworzenia oprogramowania dla Mindstorms niż kożystanie z dostarczanego programu firmy LEGO, z którego kożystaliśmy na wcześniejszych zajęciach. Warto było by się zastanowić nad innym sposobem rozkazywania robotowi w trakcie jego działania niż klaskanie (co niestety często się zdarza w instrukcjach), z bardzo prozaicznego powodu ponieważ system klaskań nie sprawdza się w warunkach laboratorium.