Różnice

Różnice między wybraną wersją a wersją aktualną.

Odnośnik do tego porównania

Both sides previous revision Poprzednia wersja
Nowa wersja
Poprzednia wersja
pl:mindstorms:lab:lab4 [2008/05/20 15:02]
miw
pl:mindstorms:lab:lab4 [2019/06/27 15:50] (aktualna)
Linia 9: Linia 9:
 [[pl:​miw:​miw08_mindstormscontrolj]] [[pl:​miw:​miw08_mindstormscontrolj]]
 support P. Gutowski support P. Gutowski
 +
  
 ===== Cel ===== ===== Cel =====
Linia 16: Linia 17:
    * LEGO Mindsotrms    * LEGO Mindsotrms
    * BrixCC    * BrixCC
-   * Microsoft Robotics Studio+   * Microsoft Robotics Studio ​(opcjonalnie)
  
 Waszym zadaniem będzie uruchomienie oraz przeanalizowanie [[pl:​miw:​miw08_mindstormsenv#​Propozycje_algorytmow|dwóch algorytmów]] (ich implementacji). Waszym zadaniem będzie uruchomienie oraz przeanalizowanie [[pl:​miw:​miw08_mindstormsenv#​Propozycje_algorytmow|dwóch algorytmów]] (ich implementacji).
Linia 22: Linia 23:
 Filmiki pokazujące działanie algorytmów:​ Filmiki pokazujące działanie algorytmów:​
    * [[http://​www.youtube.com/​watch?​v=dollW5dg_v0 | Saper]]    * [[http://​www.youtube.com/​watch?​v=dollW5dg_v0 | Saper]]
 +
 +Uwaga: Ostatanie 5 minut laboratorium proszę poświęcić na [[pl:​mindstorms:​lab:​lab4#​sprawozdanie | Sprawozdanie]]
  
 ===== Przygotowanie stanowiska ===== ===== Przygotowanie stanowiska =====
Linia 35: Linia 38:
 ==== Uwagi ogólne ==== ==== Uwagi ogólne ====
    * Kalibracja - jest to bardzo ważny krok który jest wykonywany przed każdym algorytmem. Dzięki niemu definiujemy jaki jest zakres możliwych wartości odczytywanych przez sensory. W naszym przypadku kalibrujemy czujnik natężenia światła. Po uruchomieniu każdego algorytmu na ekranie pojawi się napis "​MAX:"​ oraz wartość liczbowa poniżej. Jest wartość odczytywana z czujnika natężenia światła (spróbuj umieścić czujnik nad jasną powierzchnią,​ a następnie nad ciemną i zauważ jak zmienia się wartość odczytu).    * Kalibracja - jest to bardzo ważny krok który jest wykonywany przed każdym algorytmem. Dzięki niemu definiujemy jaki jest zakres możliwych wartości odczytywanych przez sensory. W naszym przypadku kalibrujemy czujnik natężenia światła. Po uruchomieniu każdego algorytmu na ekranie pojawi się napis "​MAX:"​ oraz wartość liczbowa poniżej. Jest wartość odczytywana z czujnika natężenia światła (spróbuj umieścić czujnik nad jasną powierzchnią,​ a następnie nad ciemną i zauważ jak zmienia się wartość odczytu).
-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"​. ​+**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"​. ​
  
    * Jeżeli po skalibrowaniu czujników robot nie zachowuje się jak powinien (nie rozpoznaję linii, nie rozpoznaję przeszkód, etc.) spróbuj zlokalizować ​    * Jeżeli po skalibrowaniu czujników robot nie zachowuje się jak powinien (nie rozpoznaję linii, nie rozpoznaję przeszkód, etc.) spróbuj zlokalizować ​
Linia 46: Linia 49:
       - w tym miejscu można zobaczyć ile pamięci zajmuje każdy z programów oraz usunąć, te które są już niepotrzebne       - w tym miejscu można zobaczyć ile pamięci zajmuje każdy z programów oraz usunąć, te które są już niepotrzebne
 Program można też usunąć bezpośrednio z kostki NXT(My Software Siles -> <nazwa programu>​ -> Delete) Program można też usunąć bezpośrednio z kostki NXT(My Software Siles -> <nazwa programu>​ -> Delete)
 +
 +   * Komunikacja z robotem najlepiej działa przy użyciu USB (wyjątkiem jest Microsoft Robotics Studio, dla którego jedenym możliwym kanałem komunikacji ​  jest BlueTooth)
  
 ==== Lego Mindstorms ==== ==== Lego Mindstorms ====
Linia 60: Linia 65:
       * [[pl:​miw:​miw08_mindstormsenv:​materialy#​Saper|algorytm Saper]] - diagram       * [[pl:​miw:​miw08_mindstormsenv:​materialy#​Saper|algorytm Saper]] - diagram
       * [[pl:​miw:​miw08_mindstormsenv:​materialy#​Patrol|algorytm Patrol]] - diagram       * [[pl:​miw:​miw08_mindstormsenv:​materialy#​Patrol|algorytm Patrol]] - diagram
 +
  
  
Linia 74: Linia 80:
    - Otwórz plik z wcześniej ściągniętym kodem (File->​Open...)    - Otwórz plik z wcześniej ściągniętym kodem (File->​Open...)
    - 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).    - 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).
-   - Skompiluj oraz prześlij program na kostkę ​(F6)+   - Skompiluj oraz prześlij program na kostkę
    - Podobnie jak w poprzednim przykładzie porównaj implementację z diagramami algorytmów (diagramy są te same).    - Podobnie jak w poprzednim przykładzie porównaj implementację z diagramami algorytmów (diagramy są te same).
  
 ==== Microsoft Robotics Studio ​ ==== ==== 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 [[pl:​miw:​miw08_mindstormsenv:​materialy#​Messages|tutaj]].\\
 +Aby uruchomic program należy:
 +   - Ściągnij plik {{:​pl:​miw:​miw08_mindstormsenv:​messages.zip|messages.zip}},​ a następnie go rozpakuj
 +   - Upewnij się, że do komputera podłączony jest adapter BlueTooth
 +   - 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
 +   - W środowisku Microsoft Robotics Studio otwórz projekt Messages, zapoznaj się z nim
 +   - Upewnij się czy blok LegoNXTBrickv2(pierwszy blok na schemacie wskazuje na właściwy port, przez który odbywa się koumunikacja)
 +   - 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 ===== ===== Sprawozdanie =====
  
pl/mindstorms/lab/lab4.1211288531.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