In diesen Kapitel zeige ich euch folgendes:
- Installation und Konfiguration der Entwicklungsumgebung Eclipse
- Installation des EV3-Plugin in Eclipse
- Erzeugen und Ausführen eures ersten EV3-Programms
Als erstes solltet ihr euch die aktuellste Version der Entwicklungsumgebung Eclipse von hier herunterladen: Eclipse-Versionen. Zum Zeitpunkt der Erstellung dieser Seiten war die aktuellste Version Eclipse Neon. Zum Entwickeln von Programmen für den EV3 reicht die Version Eclipse IDE Version for Java Developers aus.
Nach dem herunterladen entpackt ihr die Version und kopiert sie in ein Verzeichnis eurer Wahl. Wichtig ist, dass ihr wie unter Programmieren mit Java beschrieben, ein JAVA-SDK auf eurem Rechner installiert habt. Danach könnt ihr Eclipse starten. Beim Start fragt euch Eclipse noch nach einem Verzeichnis für euren Workspace. In diesem Workspace legt ihr später die verschiedenen Projekte und Programme für euren EV3 und die dazugehörigen Bibliotheken von leJOS und EV3JLIB ab.
In Eclipse könnt ihr beliebig viele Workspaces für unterschiedliche Projekte anlegen und anschließend jederzeit mit File -> Switch Workspace einen anderen Workspace auswählen.
EV3 Plugin für Eclipse
Im nächsten Schritt, solltet ihr euch das Plugin für den EV3 in Eclipse installieren. Das Eclipse-Plugin kann u.a. folgendes:
- Einfaches Erzeugen von neuen EV3-Java-Projekten
- Automatisches Hochladen der Programme zum EV3-Brick beim Start oder Debug des Programms
- Erzeugen des Java-Packages zum Hochladen in den EV3-Brick und Ausführen im EV3
- EV3-Control-Center (z.B. zum Verwalten der Programme auf dem EV3)
- SD-Card-Tool zum Erzeugen von Images
Das Plugin könnt ihr auf zwei unterschiedliche Arten installieren. Zum einen über den Eclipse Marketplace, den ihr mit Help -> Eclipse Marketplace.. in Eclipse starten könnt. Im Marketplace sucht ihr dann z.B. nach dem Begriff lejos und solltet als Ergebnis das Plugin angezeigt bekommen (im Beispiel wurden die Plugins für den EV3 und den Vorgänger NXT gefunden). Mit Klick auf Install beim leJOS EV3-Plug-in könnt ihr das passende Plugin für den EV3 installieren.
Die zweite Möglichkeit geht über Help -> Install New Software.. in Eclipse. Hier müsst ihr die Repository-URL des Herstellers vom Plugin per Hand eingeben und einen Namen vergeben: http://lejos.sourceforge.net/tools/eclipse/plugin/ev3. Danach könnt ihr die Installation des Plugins ebenfalls starten.
Nach erfolgreicher Installation des Plugins, müsst ihr es noch konfigurieren. Dies führt ihr in Eclipse unter Eclipse -> Einstellungen -> leJOS EV3 durch. Als erstes müsst ihr hier das EV3_HOME-Verzeichnis setzen. Das Verzeichnis ist das Start-Verzeichnis der leJOS-Version, die wir im vorherigen Schritt bereits heruntergeladen haben. Dort sind alle benötigten EV3-JAVA-Bibliotheken, Dokumentationen und Beispiel-Programme vorhanden. Ich hab das ganze leJOS-Verzeichnis in ein Verzeichnis Lib in meinem EV3-Workspace kopiert, damit das alles nicht so verstreut auf der Festplatte rumfliegt.
Die übrigen Einstellungen solltet ihr zunächst so lassen wie vorgeschlagen. Lediglich die Checkbox Connect to named Brick solltet ihr markieren und die IP-Adresse eures EV3-Brick hier eintragen, damit das Plugin Verbindung mit dem EV3 aufnehmen kann. Dadurch können eure Programme direkt über Eclipse debugged oder gestartet werden. Zudem könnt ihr dann über das EV3-Plugin-Controlcenter auf den EV3 zugreifen. Voraussetzung dafür ist allerdings, das ihr bereits eine funktionierende Verbindung zu eurem EV3 per WLAN, USB oder Bluetooth aufgebaut habt (Verbindung mit dem EV3).
Ist alles gut verlaufen habt ihr jetzt in Eclipse unter File -> New -> Project.. die Möglichkeit ein EV3-Projekt neu anzulegen. Erzeugt ihr mit dieser Option ein neues Projekt, werden bereits alle benötigten leJOS-Java-Bibliotheken in das Projekt mit eingebunden.
Zusätzlich gibt es in der Menü-Leiste unter leJOS EV3 jetzt die Tools EV3Control und EV3SDCard. Mit dem Tool Ev3Control könnt ihr z.B. eure Programme direkt im EV3 verwalten oder ausführen, Sensoren oder Motoren direkt testen.
EV3-Projekt anlegen
Unter dem Menüpunkt Eclipse -> Einstellungen -> Java -> Installed JREs könnt ihr die JAVA-JDKs zur Entwicklungsumgebung hinzufügen, die ihr für eure Projekte verwenden wollt. Im Beispiel hab ich die JAVA-SDKs 1.7 und 1.8 hinzugefügt und als Standard-SDK die Version 1.8 markiert. Später könnt ihr jedoch für jedes Projekt festlegen, welches JDK verwenden soll.
Zum Test, ob die Programme auf den EV3 übertragen und ausgeführt werden können legen wir nun ein kleines Test-Projekt an und starten dann anschliessend das Programm auf dem EV3 aus Eclipse heraus, mit dem EV3-Plugin-Control-Center und direkt am EV3. Das kleine Programm gibt lediglich einen Text auf dem LCD-Display des EV3 aus. Aber damit könnt ihr schon folgendes testen:
- Sind die leJOS-JAVA-Bibliotheken korrekt im Projekt eingefügt
- Gibt es Kompilierungs-Fehler
- Klappt die Verbindung zum EV3
- Lässt sich dass Programm zum EV3 hochladen
- Lässt sich das Programm ohne Fehler ausführen
- Ist das Programm mit der korrekten JAVA-Version (1.7) kompiliert
Als erstes legen wir ein neues EV3-Projekt mit File -> New -> Project.. -> leJOS EV3 Project an. Unter Projekt-Name geben wir den Namen des EV3-Projekts ein. Ich nenne das mal lejos. Unter JRE wählen wir z.B. Use a project specific JRE aus. Und als JRE wählen wir z.B. das im vorherigen Schritt konfigurierte JDK 1.8 aus.
Nach dem Klick auf den Finish – Button wird das Projekt angelegt und enthält bereits die für leJOS benötigten JAVA-Bibliotheken.
Wenn wir wie im Beispiel das JDK 1.8 für das EV3-Projekt ausgewählt haben, müssen wir jetzt noch die Compiler-Einstellung für das gesamte Projekt auf die JAVA Version 1.7 einstellen. Würden wir das Projekt mit der Version 1.8 des Compilers übersetzen, käme es beim Start im EV3 zu einen Runtime-Fehler wegen einer falschen JAVA-Version. Das Umstellen der Compiler-Version geht am einfachsten mit einem rechten Mausklick auf das Projekt lejos und Auswahl von Properties -> Java Compiler. Dort wählen wir unter Compiler compliance level die Version 1.7 aus der Dropdown-Box.
Habt ihr zusätzlich das JDK 1.7 installiert, könnt ihr dieses SDK alternativ für euer Projekt auswählen und müsst dann die Compiler-Einstellung nicht mehr anpassen. Das JDK für euer Projekt ändert ihr wieder mit rechtem Mausklick auf das Projekt und Auswahl von Properties -> Java Build Path -> Libraries. Dann wählt ihr das JDK aus (hier JRE 1.8) und klickt auf den Button Edit. Jetzt könnt ihr bei Alternate JRE euer installiertes JDK 1.7 auswählen oder falls noch nicht geschehen, mit Installed JRE’s neu zu Eclipse hinzufügen.
So, nun fehlt nur noch das Java-Programm, das die Meldung auf dem EV3-Display ausgibt. Zunächst legen wir eine neue Klasse an. Das geht über File -> New -> Class. Als Package-Namen hab ich com.lego.ev3.lejos vergeben, weil das ein Programm für den Lego-Roboter EV3 mit den Klassen von leJOS werden soll. Als Namen wählt ihr z.B. LCDTest.
Mit Klick auf Finish wird die Java-Klasse angelegt. .
Falls ihr einen anderen Package- oder Klassen-Namen wählt, müsst ihr das in dem Beispiel-Code entsprechend anpassen. Kopiert nun folgenden Beispiel-Code in eure neu angelegte Klasse:
package com.lego.ev3.lejos; import lejos.hardware.ev3.LocalEV3; import lejos.hardware.lcd.GraphicsLCD; import lejos.utility.Delay; public class LCDTest { public static void introMessage() { GraphicsLCD g = LocalEV3.get().getGraphicsLCD(); g.drawString("Hallo Welt", 5, 0, 0); Delay.msDelay(5000); } public static void main(String[] args) { introMessage(); } }
EV3-Programm ausführen
Am einfachsten lässt sich das Programm mit Run -> Run As -> leJOS EV3 Program direkt in Eclipse starten (Damit Run As oder Debug As im Menü erscheint, müsst ihr eventuell in das Editor-Fenster klicken). Dadurch erzeugt Eclipse das passende JAVA-Archiv (LCDTest.jar), sendet es an den EV3 und startet es. Mit Run -> Debug As -> leJOS EV3 Program könnt ihr das Programm in Eclipse debuggen, also Breakpoints setzen, Variablen anschauen u.s.w.
Wenn ihr das Programm startet, sollte der Text “Hallo Welt” auf dem Display des EV3 ausgegeben werden und nach 5 Sekunden wieder beendet werden. Wichtig ist nur, dass euer Rechner mit dem EV3 verbunden ist.
Optional lässt sich das Programm nun auch mit dem EV3-Control-Center des EV3-Plugins manuell auf den EV3 hochladen und starten. Dazu ruft ihr das Control-Center in Eclipse mit leJOS EV3 -> Start EV3Control auf. Im Control-Center sucht ihr dann über Search den EV3 und verbindet das Control-Center mit Connect mit dem EV3. Danach könnt ihr unter Programs mit Upload File euer Test-Programm auf den EV3 hochladen. Das Test-Programm findet ihr auf eurem Rechner im Workspace von Eclipse im neu angelegten Projekt-Verzeichnis lejos unter dem Namen LCDTest.jar. Mit Klick auf Run Program könnt ihr das ausgewählte Programm im EV3 starten.
Zusätzlich könnt ihr bei das Programm auch direkt über das Menu des EV3 starten: Programs -> LCDTest.jar auswählen und starten. Das ist zum Beispiel dann sinnvoll, wenn euer Programm im EV3 autonom, also ohne Verbindung zu eurem Rechner, laufen soll.
Weiter geht’s mit ein paar Beispiel-Programmen für leJOS.