Wstęp

Zespół składa się z następujących osób:

  1. Szef - Bartłomiej Tyranowski
  2. Mechanik - Bartłomiej Trzciński
  3. Konstruktor - Adrian Toboła

Implementacja

Po starannym przygotowaniu naszego stanowiska pracy, przystąpiliśmy do niewielkiej modyfikacji robota. Zainstalowaliśmy czujnik odległości oraz dobudowaliśmy zderzak:

Na poprzednim laboratorium implementowaliśmy program Więzień, zatem na tych zajęciach zajęliśmy się algorytmem programu Sprzątacz.

Sprzątacz v.1:

:- consult('plnxt.pl').
 
start :-
nxt_open,
A is 0,
trigger_create(_,check_distance,swipe(A)),
nxt_rotate(200,30),
trigger_create(_,nxt_is_stopped,continue(A)).
 
check_distance :-
nxt_ultrasonic(Value, force),
Value < 40.
 
swipe(A) :-
trigger_killall,
nxt_stop,
nxt_go_cm(500,40),
trigger_create(_,nxt_is_stopped,go_back(A)).
 
go_back(A) :-
trigger_killall,
nxt_stop,
nxt_go_cm(500,-40),
trigger_create(_,nxt_is_stopped,continue(A)).
 
continue(A) :-
trigger_killall,
nxt_stop,
A =<  360,
A is A + 30,
trigger_create(_,check_distance,swipe(A)),
nxt_rotate(200,30),
trigger_create(_,nxt_is_stopped,continue(A)).

Sprzątacz v.2:

:- dynamic(angle/1).
:- consult('plnxt.pl').
 
start :- 
nxt_open,
A is 0,
trigger_create(_,check_distance,remember(A)),
nxt_rotate(200,30),
trigger_create(_,nxt_is_stopped,go_on(A)).
check_distance :-
nxt_ultrasonic(Value, force),
Value < 40.
 
remember(A) :-
assert(angle(A)).
 
go_on(A) :- 
A is A + 30,
A =< 360,
trigger_create(_,check_noise(A),start2),
trigger_create(_,check_distance,remember(A)),
nxt_rotate(200,30),
trigger_create(_,nxt_is_stopped,go_on(A)).
 
check_noise(A) :-
nxt_sound(Value,force),
Value > 30,
A > 360.
 
start2 :-
B is 0,
trigger_create(_,[check_distance,not(angle(B)],come_closer),
nxt_rotate(200,30),
trigger_create(_,nxt_is_stopped,go_on2(B)).
 
go_on2(B) :-
B is B + 30,
B =< 360,
trigger_create(_,[check_distance,not(angle(B)],come_closer),
nxt_rotate(200,30),
trigger_create(_,nxt_is_stopped,go_on2(B)).

załączone pliki: lab5_tobola_trzcinski_tyranowski.zip

Podsumowanie

W czasie wykonywania celów laboratorium mieliśmy problemy z połączeniem Bluetooth, środowisko Xpce w pewnym momencie odmówiło posłuszeństwa i zawiesiło się na tyle poważnie, że konieczny był restart komputera.

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