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.
Prinzip
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:
Aufbau der Hardware
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).
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.
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“)
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 zur Verfügung stellen