Inhaltsverzeichnis

Roboter mit Android steuern


Mit Android (Wireless) Roboter steuern macht Spaß und ist ausgesprochen lehrreich. Tatsächlich ist dieses Projekt eher etwas für den „angehenden Profi“, denn es werden viele Gebiete gestreift, in denen man sich ein wenig auskennen muss.

Dennoch, wer lediglich die Android App „Mr.Robot“ ausprobieren möchte oder, ohne einen Roboterarm zu besitzen, einen einfachen Servomotor mit Android ansteuern will, kann hier lernen wie man es macht.

Worum geht es ?

Prinzip

Themenbereiche

Einige der Themenbereiche sind bereits kleine Projekte für sich, z.B. wurde der Roboterarm fotografiert und in der 3D-Modellierungssoftware Blender modelliert. Anschließend wurden die Daten exportiert und mit einem kleinen „Java-Programm“ in ein für Android lesbares Format gewandelt. Unter Android wurde dann OpenGL ES2.0 für die 3D-Darstellung verwendet.

Wem das zu kompliziert ist, kann aber die 3D-Programmierung komplett auslassen. Das Ansteuern des Servo-Controllers mit dem IO-Warrior24 unter Java wird im Band III (IIC-Projekte) ausführlich gezeigt.

Anschließend noch eine Liste mit Themenbereichen die in diesem Projekt behandelt werden:

Benötigte Hardware

FIXME Aufbau der Hardware

Inbetriebnahme des Servers

Der Server RobotArmServer.jar benötigt die Native-Bibliothek libiowkit.so, damit der IO-Warrior angesteuert werden kann.

Deshalb wird ein Aufruf mit :

java -jar RobotArmServer.jar

nicht funktionieren, wenn nicht zuvor der Pfad zur Datei: libiowkit.so angegeben wird.

Unter Linux kann man z.B. die Umgebungsvariable (Envirenmentvariable) LD_LIBRARY_PATH auf das Verzeichnis setzen, dass die libiowkit.so enthält.

Das macht man mit „export LD_LIBRARY_PATH=/VERZEICHNIS/“ (s. Abb. 1).

Abb. 1

In diesem Beispiel liegt sowohl das Programm „RobotArmServer.jar“, als auch die Native-Bibliothek „libiokit.so“ im Homeverzeichnis: /home/torsten/

Der Server muss zuerst gestartet werden, anschließend kann eine Verbindung zum Client (AndroidApp) hergestellt werden. Dabei müssen sich der Server und der Client im gleichen Netzwerk befinden.

Inbetriebnahme des Clients (Mr. Robot)

Der Client ist unter Android (ab 4.2) schnell installiert. Auch ohne Hardware (bzw. Server) lässt sich die App bedienen.

Allerdings macht es erst mit angeschlossener Hardware richtig Spaß!

Die zu installierende Anwendung lautet: de.androidtools.mr.robot.apk

(einfacher geht es im Playstore „Mr.Robot“)

Konfiguration

Um „Mr. Robot“ mit einen angeschlossenen Roboterarm zu verbinden muss der Menüpunkt „Settings“ aufgerufen werden.

Die Adresse des Servers und ein freier Port (z.B. 4444 oder 5555 ) muss eingegeben werden. Die Server-IP gibt die Linux-Rechner, an denen der Roboterarm angeschlossen ist, auf der Kommandozeile aus.

Quellcode

FIXME Quellcode zur Verfügung stellen