Sprawozdanie nr 5

  • Robot: Dyzio
  • Data: 2.06.2010, godz. 15.30
  • Autorzy: Andrzej Gryboś, Michał Henslok, Tomasz Jama

Sprzątacz

:- consult('plnxt.pl').
 
start :-
	nxt_rotate(100,30),
	smiec,
	start.
 
smiec :-
	nxt_ultrasonic(Value, force),
	Value < 10,!,
	sprzatnij.
 
smiec :-
	1 = 1.
 
sprzatnij :-
	nxt_go_cm(250, 15),
	nxt_play_tone(400,500),
	nxt_go_cm(-250, 15),	
	nxt_play_tone(600,1000).

Początkowo chcieliśmy stworzyć program wielowątkowy jednak to podejście skutkowało irytującymi błędami, które powodowały nieustanne bugowanie się środowiska i przymusowy restart zarówno połączenia z robotem jak i kompilatora. Zmieniliśmy zatem program na sekwencyjny i robot zaczął posłusznie wykonywać nasze polecenia. Pojawiło się trochę błędów z powodu zakłóceń czujnika ultradźwiękowego jednak były one sporadyczne.

Co przybyło

:- consult('plnxt.pl').
 
start :-
	nxt_rotate(100,360),
	trigger_create(_,clap,obrot),
	trigger_create(_,
	X is 
 
smiec :-
	nxt_ultrasonic(Value, force),
	Value < 10.
 
clap :-
	nxt_sound(Value,force),
	Value > 70.
 
obrot :-
	nxt_rotate(100,360).
 
stop :-
	nxt_stop,
	nxt_close.

Niestety nie udało się nam zakończyć pracy nad tym programem (Następna grupa nie dała nam szansy :( choć chcieliśmy zostać). Program posiada elementy wątków, które miały być usunięte. Robot obraca się i reaguje na klaśnięcie. W celu realizacji programu wydaje nam się iż należało użyć poleceń assert/retract w celu dodania w sposób dynamiczny faktów do bazy (przeszkody) w celu rozróżnienia starych i nowych przeszkód.

pl/dydaktyka/piw/2010/sprawozdania/piw20100602-15e.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