To jest stara wersja strony!


Sprawozdanie z laboratorium nr 5


Data wykonania: 21.01.2009, godz. 9.30

Autorzy: Damian Dudziński, Maciej Fabia, Szymon Frenkel


Realizacja

Zastaliśmy już złożonego robota,

korzystał on z dwóch sensorów:

  • czujnika sonarowego,
  • czujnika dotyku;

zatem mogliśmy od razu przystąpić do realizacji algorytmu.

Zaimplementowaliśmy algorytm „sprzątacza”, w który robot miał za zadanie usunąć wszystkie przeszkody znajdujące się w odległości nie większej niż określona. Aby to zrealizować, obracał się on wokół własnej osi, a po wykryciu przeszkody przez czujnik sonarowy wstrzymywał ruch obrotowy, wykonywał ruch w kierunku przeszkody wypychając ją poza obszar to wysprzątania, a potem wracał na wcześniejszą pozycję i kontynuował ruch obrotowy, aż do sprawdzenia całego obszaru wokół siebie. Czujnik dotyku służył za awaryjny wyłącznik robota, który uaktywniał się także, gdy przesuwana przeszkoda była zbyt ciężka dla robota.

:- consult('plnxt.pl').
 
start:-
	nxt_open,
	krecenie,
	trigger_create(_,pushed,[nxt_stop,nxt_close]).
 
krecenie :-
	nxt_rotate(150,360),
        sleep(1), % Chwila przerwy
	trigger_create(_,przeszkoda,wypychanie).
 
wypychanie :-
	nxt_stop,
	nxt_go_cm(300,40),
	sleep(10),
	nxt_go_cm(-300,40),
        sleep(10).
	trigger_create(_,fakt,krecenie).
 
% Sprawdzenie, czy znaleziono przeszkodę
przeszkoda :-
	nxt_ultrasonic(Value,force),
	Value < 20.
 
% Sprawdzenie, czy sensor dotyku jest wciśnięty.
pushed :-
	nxt_touch(Value,force),
	Value=1.
 
:- start.

sprzatacz.pl

Problemy

Niestety, szczególnie na początku zajęć, kilkukrotnie nieoczekiwanie robot przestawał wykonywać wysyłane mu polecenia i konieczne było jego wyłączenie i nawiązywanie komunikacji od nowa. W czasie testowania algorytmu okazywało się również, że jednak polecenia biblioteki NXT nie zawsze działają według naszych oczekiwań.

Wnioski

Ułatwieniem w konstruowaniu algorytmu byłaby bardziej rozbudowana dokumentacji biblioteki NXT.

pl/mindstorms/studenci/przedmioty/jsi/jsi2008/jsi20090121-09a.1233177520.txt.gz · ostatnio zmienione: 2019/06/27 15:57 (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