Instalacja GNAT FOR MINDSTORMS 'dla opornych' cz. 3 pierwszy program
Posted at 12:49:13 am
Środowisko GNAT for MINDSTORMS NXT zawiera przygotowane gotowe przykłady w celu szybkiego uruchomienia i sprawdzenia w praktyce jego możliwości.
Przykładowe programy znajdują się (w w ścieżce: GNAT/2009/share/examples/mindstorms). W tym folderze znajdują się dwa projekty vehicle i remote control. Projekt vehicle steruje działaniem zdalnie sterowanego robota na kołach, zaś remote control pozwala na sterowanie robotem za pomocą innej kostki NXT.
Dobrym testem funkcjonalności będzie vehicle. Co prawda (o ile nie posiadasz kilka zestawów NXT) nie będziesz mógł nim zdalnie sterować, ale szybko zaobserwujesz działanie swojego pierwszego programu na robocie.
Dla celów testowych polecam Ci na początku do kostki NXT podpiąć wyłącznie sensor ultradźwiękowy (mierzący odległość od przeszkody) do portu "1". Po kompilacji i uruchomienie programu, taka konfiguracja spowoduje odgrywanie przez robota dźwięku ilekroć zbliżysz do sensora cokolwiek na odległość < 40 cm.
Zanim dokonamy kompilacji, musimy jeszcze dostosować nasz zainstalowany system nxtOSEK do współpracy z GNAT for MINDSTORMS. W tym celu wchodzimy do folderu share/docs/mindstorms i zgodnie z podanymi tam instrukcjami kopiujemy wszystkie pliki do folderu:
"/path/to/nxtosex/installation/ecrobot" - oczywiście 'nxtosex' jest czeskim błędem Twórców ;) Poprawna ścieżka, w której powinieneś wkleić te pliki to: /nxtOSEK/ecrobot .
Skoro już jesteś w folderze ecrobot, uruchom w dowolnym edytorze tekstu plik tool_gcc.mak (byle nie w notatniku, który bez Twojej wiedzy zmieni kodowanie na windows-1250 (MOŻE mieć to przykre konsekwencje w procesie kompilacji), ja korzystam z darmowego programu Notepad++ dostępnego ogólnie w sieci)
Interesuje nas wyłącznie początek tego pliku:
# Tool-chain specific items
#===============================================================================
# GNUARM_ROOT and NEXTTOOL_ROOT need to adapt your PC environment
#===============================================================================
# specify GNU-ARM root directory
ifndef GNUARM_ROOT
#GNUARM_ROOT = /cygdrive/C/cygwin/GNUARM
GNUARM_ROOT = /ABSOULTE/PATH/TO/GNAT-GPL-FOR-LEGO-MINDSTORMS/INSTALLATION/FOLDER
endif
# specify NeXTTool root directory
ifndef NEXTTOOL_ROOT
NEXTTOOL_ROOT = /cygdrive/C/cygwin/nexttool
endif
#===============================================================================
W linii GNUARM_ROOT = /ABSOLUTE/PA.... zmieniamy ścieżkę do GNATA na naszą własną. Jeżeli wybrałeś domyslny folder instalacji, to powinieneś napisać tak:
GNUARM_ROOT = C:/GNAT/2009
Ważne, byś nie używał podwójnych slaszy '//', ponieważ system linux na nich nie operuje i nie będzie chciał dokonać kompilacji.
CYGWIN

Cały proces kompilacji odbędzie się na konsoli Cygwin, tak samo jak proces przenoszenia plików na kostkę NXT.
Zwróć teraz uwagę na tę linijkę:NEXTTOOL_ROOT = /cygdrive/C/cygwin/nexttool - jeżeli korzystałeś z domyślnego folderu instalacji cygwina, to wystarczy, ze utworzysz nowy folder o nazwie nexttool w ścieżce c://cygwin/ i do tego folderu przekopiujesz plik NeXTTool.exe.
Ostatnim plikiem, który musimy zmodyfikować przed kompilacją jest plik "makefile" znajdujący się w folderze c://gnat/2009/share/examples/mindstorms/vehicle/. Otwórz go i zmień ostatnią linijkę kodu, która teraz wygląda następująco:
include /PATH/TO/NXTOSEK/nxtOSEK/ecrobot/lejos_osek.tmf
W moim przypadku (instalując wszystko w domyślnych folderach instalacji), linię tę zamieniłem na:
include ../../../../../nxtOSEK/ecrobot/lejos_osek.tmf
Zwróc uwagę na to, że podałem ścieżkę względną. Takie detale pozwolą Ci oszczędzić bardzo dużo czasu na zastanawianiu się czemu kompilacja nie działa :)
To wszystko. Przejdźmy teraz do procesu kompilacji i downloadu źródeł:
Kompilacja i uruchomienie
1. Uruchom konsolę cygwin
2. wpisz: cd ../../cygdrive/
3. Jesteś teraz w folderze cygdrive, który zawiera 'odnośniki' do wszystkich zainstalowanych napędów. Jeżeli zainstalowałeś GNATa na dysku C, to:
4. wpisz cd c/
5. Dalej kontynuuj przechodzenie do kolejnych podfolderów po to aby znaleźć się w folderze vehicle (w share/examples/mindstorms).
6. wpisz: make all
7. Jeżeli skrupulatnie odnosiłeś się do moich wskazówek, cała kompilacja powinna przejść bez problemu, a jej efektem powinien być niepusty plik rxeflash.sh
8. Podłącz NXT do komputera kablem USB i włącz go. Wpisz w konsoli: ./rxeflash.sh. Jeżeli połączenie USB jest nawiązane poprawnie, oraz w folderze cygwin/nexttool znajduje się plik NeXTTool.exe, to po kilku (kilkunastu) sekundach bezczynności program po prostu zakończy swoją pracę, a na Twoim NXT pojawi się program vehicle.
Miłej zabawy!
Instalacja GNAT FOR MINDSTORMS 'dla opornych' cz. 4 problemy
Feedback awaiting moderation
This post has 240 feedbacks awaiting moderation...
Leave a comment