Robot: Henio
Data Wykonania: 08.06.2010 g. 9:30
Autorzy: Grzegorz Wojciechowski, Kacper Zieliński, Piotr Bator
Robot
Do wykonania zadań konieczna była współpraca między grupami.
Wykorzystaliśmy dwa roboty TriBot: Henio oraz Dyzio.
Przygotowanie
Przed rozpoczęciem testowania komunikacji konieczne było skalibrowanie
czujnika jasności.Kalibrację przeprowadzaliśmy wykorzystując algorytm
więzień dla jednego robota.Niestety natrafiliśmy na spore trudności w
rozróżnieniu koloru czerwonego i białego. Dodatkowo przeniesienie
robota z podłogi na biurko wymusiło kolejną kalibrację czujnika.
Algorytm 1
Roboty po natrafieniu na czarną linię zawracają. Działanie algorytmu
zostało udokumentowane na
Filmie.
Algorytm 2
Przez wspomniane wcześniej problemy z rozpoznawaniem czerwonego koloru
postanowiliśmy zmodyfikować treść zadania: robot który pierwszy trafi
na czarną linię informuje o tym swojego towarzysza i razem
rozpoczynają ucieczkę. Działający algorytm przedstawia
Film
Kod
W ramach laboratoriów we współpracy z grupą - opiekunami Dyzia
napisaliśmy następujący kod
- Ukryj cytowany tekst -
:- consult('plnxt.pl').
start :-
nxt_goal(dyzio, go_go_go),
nxt_goal(henio,go_go_go).
go_go_go :-
nxt_go(120),
nxt_light_LED(activate,force),
trigger_create(1,black_hole, die_robots),
trigger_create(2, red_light, run_run).
black_hole :-
nxt_light(Value,force),
write(Value), write(', \n'),
Value < 50,
nxt_light(Value,force),
Value < 50.
red_light :-
nxt_light(Value,force),
write(Value), write(', red\n'),
Value < 63,
Value > 55.
die_robots :-
nxt_switch_robot(henio),
nxt_rotate(200,180,force),
nxt_go(900,force),
nxt_switch_robot(dyzio),
nxt_rotate(200,180,force),
nxt_go(900,force).
run_run :-
trigger_kill(1),
trigger_create(3,black_hole, stop),
nxt_go(300).
turner_brown :-
nxt_rotate(120, 120,force),
go_go_go.
stop :-
trigger_killall,
nxt_stop,
nxt_close.