In diesem Dokument wird beschrieben, wie der RCX-Prozessorbaustein des LEGO Mindstorms Baukastens mit der Programmiersprache Java programmiert werden und wie das Java-Programm des RCX Daten zu einem Java-Programm auf dem PC übermitteln kann.

Installation von Java2 auf dem PC

Um die Java-programmierbare Firmware "leJOS" auf dem RCX verwenden zu können, muss Java auf dem PC installiert werden. Dabei wurde von mir bisher alles mit der neuesten Java2-Version (Version 1.4.0 bzw. Version 1.4.1-beta) entwickelt und ausprobiert. Es sollte aber auch keine Probleme bereiten, mit einer älteren Version (ab Version 1.3) zu arbeiten.

Herunterladen von Java2 aus dem Internet

Entwicklungsumgebung für Java2
Die "Java2 Standard Edition (J2SE™)" kann von der Firma Sun über http://java.sun.com frei heruntergeladen werden. Auf dieser Homepage findet man am rechten Rand unter "Top Downloads" das Feld "J2SE 1.4 SDK", das direkt zur Download-Seite führt. Dort wählt man für Windows in der Spalte "Download J2SE™ v1.4.0_02" die Variante "Windows (all languages, including English)" und in der Spalte "SDK" dann "Download" aus. In einer weiteren Seite muss die Lizenz akzeptiert werden. Daran anschließend wählt man den Link "Download j2sdk-1_4_0_02-windows-i586.exe". Es ist zu beachteten, dass 37 MB heruntergeladen werden!
Sollte auf der Homepage von Java der direkte Weg zum Download nicht mehr vorhanden sein, so kann man sich über "-J2SE" unter "Technologies" zur "Java™2 Platform, Standard Edition (J2SE™)" durchhangeln und findet dann die Java-Versionen am rechten Rand, die wiederum zu den Download-Seiten führen.
HTML-Dokumentation für Java2
Die Dokumentation zum Java2-SDK findet sich auf der (ersten) Download-Seite unter "J2SE v1.4 Dokumentation". Es muss wiederum die Lizenz akzeptiert und dieses Mal mit dem Link "Download j2sdk-1_4_0-doc.zip" (ca. 31 MB) transferiert werden. Auf der Homepage erreicht man die Dokumentation unter "Documentation" und "-APIs" am linken Rand.
Zum Entpacken bedarf es in diesem Fall z. B. des Programms "EnZip". Ein frei erhältliches Programm zum Entpacken von ZIP-Archiven gibt es z. B. unter www.enzip.org bei "Downloads".

Installationsvorgang auf dem PC

Zur eigentlichen Installation von Java2 wird die heruntergeladene Datei "j2sdk-1_4_0_02-windows-i586.exe" durch Doppelklicken ausgeführt. Der nachfolgende Installationsdialog fragt dann z. B. das gewünschte Verzeichnis ab. Am Ende muss im DOS-Fenster die Pfad-Variable um die Pfadangabe der binären Java-Dateien ergänzt werden: "SET PATH=%PATH%;C:\J2SDK1.4.0\bin", falls in das Verzeichnis "C:\J2SDK1.4.0\" installiert wurde. Möchte man dieses Kommando nicht nach jedem Neustart wiederholt ausführen, muss ein entsprechender Eintrag in der "Systemsteuerung" unter "System" und dann "Umgebung" vorgenommen werden. Mit Administratorrechten kann die Systemvariable "Path" um die Pfadangabe ergänzt werden, andernfalls fügt man die Benutzervariable "Path" mit dem entsprechenden Wert hinzu.

Installation von leJOS auf dem PC

Für die Benutzung von leJOS müssen sowohl auf dem PC die nötigen Java-Bibliotheken eingespielt werden als auch ein Download der leJOS-Firmware auf den RCX vorgenommen werden.

Herunterladen von leJOS aus dem Internet

LeJOS ist unter der Internetadresse www.lejos.org erhältlich. Man wählt auf der Eingangsseite am linken Rand den Menüpunkt "Downloads" und kann für Windows unter "Win32 leJOS" sowohl die Programme ("version 2.0.0"; Datei: "lejos_win32_2_0_0.zip") als auch die Dokumentation ("API Docs"; Datei "lejos_win32_2_0_0.doc.zip") herunterladen. Natürlich sollte man auch die Installationsanweisungen ("Win32 Installation Notes") beachten bzw. ausdrucken. Für das Herunterladen werden mehrere Server angegeben, wobei man am besten den geographisch am nächsten liegenden wählt.

Installationsvorgang auf dem PC

Die Installation erfolgt durch Entpacken der ZIP-Archivdateien. Für die im Folgenden aufgeführten Stapelverarbeitungsdateien wird davon ausgegangen, dass leJOS in das Verzeichnis "C:\leJOS\" entpackt wurde. Die Dokumentation bringt man am besten in einem Unterordner "C:\leJOS\Dokumentation\" unter. Als Verzeichnis für das Extrahieren nimmt man dann "C:" und aktiviert "Use Directory Names" bzw. eine Option ähnlich "Pfadangaben verwenden".
Ein frei erhältliches Programm zum Entpacken von ZIP-Archiven gibt es z. B. unter www.enzip.org bei "Downloads".

Herunterladen der leJOS-Firmware auf den RCX

Bei eingeschaltetem RCX und einem seriellen Infrarot-Tower an COM1 kann die leJOS-Firmware mit den Kommandos

SET RCXTTY=COM1
C:\leJOS\bin\lejosfirmdl.exe -f


in der DOS-Eingabeaufforderung auf den RCX heruntergeladen werden. Am Ende macht sich der RCX akustisch bemerkbar und zeigt auf dem LCD-Display die Batteriespannung an.
Wie man mit einem USB-Tower arbeitet, bitte ich der Dokumentation zu entnehmen, da ich es selbst noch nicht ausprobiert habe.

Das View-Beispiel

Ist die leJOS-Firmware auf den RCX aufgespielt, so verweist die README-Datei von leJOS auf das View-Beispiel. Unter Windows XP hat das Beispiel wie beschrieben funktioniert, aber z. B. nicht unter Windows NT4.0. Hier deshalb eine Kommandofolge, die auch unter NT4.0 funktioniert, wobei Pfadangaben eventuell sinngemäß geändert werden müssen:

set path=%path%;c:\j2sdk1.4.0\bin
set path=%path%;c:\leJOS\bin
set RCXTTY=COM1
cd c:\leJOS\examples\view
javac -target 1.1 -bootclasspath c:\lejos\lib\classes.jar;c:\lejos\lib\pcrcxcomm.jar *.java
leJOS View


Die Zeile javac -target 1.1 ... ist lang und wird im Browser eventuell umgebrochen. Sie endet mit *.java!

Das LEGO Probiermikroskops als umfangreiches Beispiel

Herunterladen von Beispieldateien des LEGO Probiermikroskops
Für das LEGO Probiermikroskop müssen die Quelltext-Dateien für die RCX-Programmierung und für die Darstellung der Resultate auf dem Bildschirm heruntergeladen werden. In beiden Fällen handelt es sich um dieselbe Datei "Const.java", da hier die beiden Programmen gemeinsamen Konstanten festgelegt sind.
Verwendung des LEGO Probiermikroskop-Beispiels
Die Schritte, mit denen das Beispiel übersetzt und geladen wird, sind als Stapelverarbeitungsdateien zusammengefasst.
LPM.bat setzt die nötigen Umgebungsvariablen und führt die Übersetzung der Java-Programme auf dem PC und auf dem RCX durch.
LPMLoad.bat lädt das RCX-Programm auf den RCX - sofern leJOS als Firmware auf dem RCX läuft und dieser eingeschaltet ist.
LPMRun.bat wird gestartet, um die Daten des RCX entgegenzunehmen. Es empfiehlt sich, dieses Programm nach dem Start des RCX-Programms zu starten.
In den Stapelverarbeitungsdateien wird insbesondere auch berücksichtigt, dass das Java-Programm auf der PC-Seite die Kommunikationsbibliothek "pcrcxcomm.jar" einbinden muss.
Erzeugen der HTML-Dokumentation für das LEGO Probiermikroskop-Beispiel
Mit der Stapelverarbeitungsdatei RunJavaDoc.bat wird in dem Unterverzeichnis "LPMJavaDocs" der aktuellen Verzeichnisses automatisch eine HTML-Dokumentation für die Klassen des LEGO Probiermikroskop-Beispiels erzeugt, sofern zusätzlich die Datei JavaDocFiles.dat heruntergeladen wurde. Die Dokumentation kann man sich anzeigen lassen, indem man die Datei "index.html" in dem Verzeichnis "LPMJavaDocs" mit eine Browser öffnet.

Viel Spaß!

... und falls es Probleme gibt, bitte eine E-Mail schicken ( m.wuelker@fh-offenburg.de)!