Spis treści

Laboratorium 4

Laboratorium przygotowane w oparciu o MindsotrmsENV .

support: dziedzia@student.agh.edu.pl

Lab z iCommand

miw08_mindstormscontrolj support P. Gutowski

Cel

Celem tego laboratorium jest poznanie(porównanie) możliwości tworzenia programów dla LEGO Mindstorms przy pomocy różnych środowisk. Środowiska wykorzystywane w ramach tego ćwiczenia:

Waszym zadaniem będzie uruchomienie oraz przeanalizowanie dwóch algorytmów (ich implementacji).

Filmiki pokazujące działanie algorytmów:

Uwaga: Ostatanie 5 minut laboratorium proszę poświęcić na Sprawozdanie

Przygotowanie stanowiska

Do poprawnego przeprowadzenia ćwiczenia wymagane jest:

Ćwiczenie

Uwagi ogólne

Przebieg kalibracji: Po uruchomieniu algorytmu (na ekranie widoczne jest „MAX: <wartość liczbowa>”) ustaw robota, tak aby czujnik światła znajdował się nad najciemniejszym z obszarów po którym będzie poruszał się robot (np. czarna linia na planszy testowej), zatwierdź używając przycisku lewej strzałki znajdującego się na kostce NXT. W ten sposób ustawiliśmy maksymalną wartość odczytu z czujnika natężenia światła względem, której dokonywana będzie normalizacja pomiaru. Na ekranie powinien być widoczny napis „MIN: <wartość liczbowa>”, umieść tym razem robota nad najjaśniejszym obszarem, po którym będzie się poruszał (białe tło planszy) i wciśnij przycisk prawej strzałki znajdujący się na kostce NXT. Gdy kalibracja jest zakończona na ekranie widoczny jest napis „Calibrated”.

fragment kodu i zmienić wartość odczytu dla jakiej dana akcja nie wykonuje się prawidłowo. Oczywiście wszelki modyfikacje kodu wskazane:)

Program można też usunąć bezpośrednio z kostki NXT(My Software Siles → <nazwa programu> → Delete)

Lego Mindstorms

  1. Ściągnij implementację algorytmów dla środowiska LEGO:
    • saper_rbt.zip - implementacja algorytmu Saper w natywnym środowisku LEGO Mindstorms.
    • patrol_rbt.zip - implementacja algorytmu Patrol w natywnym środowisku LEGO Mindstorms (wersja nieco różniąca się od wersji napisanej w BrixCC (uboższa))FIXME.
  2. Podłącz robota poprzez USB do komuptera.
  3. Uruchom środowisko Mindstorms NXT. Wybierz File→Open…, a następnie wskaż uprzednio rozpakowany plik z implementacją algorytmu.
  4. Zapoznaj się z kodem algorytmów.
  5. Załaduj program na kostkę.
  6. Spróbuj porównać implementację algorytmów z diagramami aktywności, które je opisują:

BrixCC

  1. Ściągnij implementację algorytmów dla środowiska BrixCC:
  2. Podłącz robota poprzez USB do komputera.
  3. Uruchom środowisko BrixCC.
  4. W oknie, które się pojawi wybierz:
    • Port - Automatic
    • Brick Type - NXT
  5. Otwórz plik z wcześniej ściągniętym kodem (File→Open…)
  6. Zapoznaj się z kodem algorytmów (czytanie kodu należy rozpocząć od metody main() znajdującej się na samym końcu pliku z kodem źródłowym).
  7. Skompiluj oraz prześlij program na kostkę
  8. Podobnie jak w poprzednim przykładzie porównaj implementację z diagramami algorytmów (diagramy są te same).

Microsoft Robotics Studio

Ponieważ środowisko Microsoft Robotics Studio udostępnia inne od ww. środowisk możliwości, przygotowane zostały inne programy pokazujące możliwości tego środowiska. Działanie przygotowanego programu zostało przedstawione tutaj.
Aby uruchomic program należy:

  1. Ściągnij plik messages.zip, a następnie go rozpakuj
  2. Upewnij się, że do komputera podłączony jest adapter BlueTooth
  3. W środowisku Lego Mindstorms NXT załaduj plik Msg.rbt, zapoznaj sie z nim, a następnie skompiluj i przeżlij do modułu NXT
  4. W środowisku Microsoft Robotics Studio otwórz projekt Messages, zapoznaj się z nim
  5. Upewnij się czy blok LegoNXTBrickv2(pierwszy blok na schemacie wskazuje na właściwy port, przez który odbywa się koumunikacja)
  6. Uruchom program

Po chwili powinno otworzyć się okno przegladarki internetowej zawierające informacje o połączeniu. Po uruchomieniu pojawiają się także 'alerty' informujące o sukcesie/niepowodzeniu kolejnych kroków.
Uwaga: Komunikacja poprzez BlueTooth dla niektórych adapterów jest uciążliwa. Jeżeli nie można się połączyć należy spróbować kilkakrotnie (za każdym razem upewniając się czy na kostce NXT widnieje symbol nawiązanego połączenia BlueTooth „B<>”)

Sprawozdanie

Proszę o przesłanie informacji dotyczących:

na adres: dziedzia@student.agh.edu.pl