Spis treści

Skład zespołu:

1. Wstęp

2. Konstrukcja robota

W końcowej części laboratorium przeprowadziliśmy próby zainstalowania specjalnego „ramienia” służącego do przepychania przedmiotów, jednakże niestety z powodu braku czasu nie uruchomiliśmy robota w takiej postaci.

Modyfikacje

Wersja po przeróbkach

3. Opracowanie algorytmów

  1. rotacja robota o 360 stopni lub dopóki nie zostanie wykryta przeszkoda
  2. jeśli zostanie wykryta przeszkoda (trigger) robot porusza się X+d cm do przodu usuwając przeszkodę
  3. robot cofa się o X+d cm do tyłu wracając do poprzedniego położenia
  4. powrót to początku algorytmu (rotacja + detekcja)

sprzatacz.pl

:- consult('plnxt.pl').
 
start :-
    nxt_open,
    thread_create(rotate,_,[detached(true)]).
 
 
rotate :-
    nxt_rotate(150,360),
    trigger_create(_,obstacle,remove_obstacle).
obstacle :-
    nxt_ultrasonic(Value, force),
    Value < 15.
 
remove_obstacle :-
    nxt_stop,
    nxt_go_cm(200,15),
    nxt_rotate(300,180),
    nxt_go_cm(200,15),
    nxt_rotate(300,180),
    rotate.
 
stop :-
    trigger_killall,
    nxt_stop,
    nxt_close.

Za X przyjęto arbitralną wartość dostosowaną do warunków panujących na stole pod oknem (15).

4. Napotkane problemy

5. Co rozszerzyć w laboratorium?

5. Wnioski