Eclipse about
März 2013. Ubuntu 12.04 LTS - Raspberry Pi. Die Programmierarbeit gestaltet sich auf einem ausgewachsenen Desktop-PC komfortabler als auf einem Embedded-PC. Für umfangreiche Projekte bietet es sich also an, eine Entwicklungsumgebung einzurichten, die alles bietet, was ein Entwickler bei der täglichen Arbeit benötigt. In diesem Beitrag wird die Eclipse IDE in Ubuntu als Editor, Debugger, Versionssystem und Kompiler eingerichtet.


Eclipse Juno


Quellennachweis:

http://www.eclipse.org/
http://wiki.eclipse.org/
http://www.ros.org/wiki/IDEs

Voraussetzung:
-Ubuntu 12.04 LTS, ROS, OpenCV, ffmpeg
-Grundkenntnisse in Linux, Eclipse und rosmake

Installation
apt-get update
apt-get install eclipse

Eclipse Juno C++/Python development with ROS


RViz 3D URDF bioloid arm
In RViz können Sensordaten visualisiert werden. Als 3D-Modell soll der Bioloid Robotor in URDF - Unified Robot Description Format erstellt werden. URDF ist ein XML-Format wobei die Endung .xml einfach in .urdf umbenannt wird, die Umbenennung jedoch nicht zwingend ist, wenn man mit .launch-Dateien oder RViz arbeitet. XML ist eine Beschreibungssprache ähnlich HTML aus der SGML-Familie. Das Hauptmerkmal von XML ist die Fehlerfreiheit im Gegensatz zu HTML, wo Fehler erlaubt sind und aufwendig vom Browser korrigiert werden. Ein XML-Dokument ist wohlgeformt, wenn jedes öffnende "Tag" ein schließendes "Tag" hat. Es kann nur ein einzelnes Wurzelelement in einem XML-Baum geben.


Bioloid URDF - RViz left arm

Bioloid Dynamixel URDF RViz tutorial


ROS opencv on raspberry pi B
Hier sind, Erfahrungen mit der Installation von ROS-Fuerte auf einem Raspberry Pi Modell B mit 512MByte Arbeitsspeicher. Eine Installationsanleitung auf www.ros.org für ROS-Fuerte auf einem Raspberry Pi war zu der Zeit nicht verfügbar. Die Installation basiert auf der Anleitung für Debian-Systeme. Ein grober Fehler, der passiert ist, war das Überspringen eines gesamten Installationsschrittes. Trotzdem habe ich das Installations-Protokoll nicht korrigiert, denn Fehler passieren, und es ist trotzdem möglich, ein ROS-Desktop (ohne rviz, PCL) + ffmpeg0.6.6 + OpenCV 2.4.3 auf einen Raspberry Pi zu kompilieren. Die Gesamt-Installation und -Konfiguration dauert Tage...


Raspberry Pi - ROS - OpenCV running

Raspberry Pi – ROS – Arbotix – OpenCV – ffmpeg



Arduino about

Nach der Einrichtung einer Entwicklungsumgebung soll mit PyPose eine Verbindung zu den AX-12A-Motoren hergestellt werden, um die Position der Motoren zu lesen/schreiben. PyPose ist ein Python-Programm mit dessen Hilfe man Posen eines Roboters aufzeichnen und für AVR als *.h-Dateien speichern kann. Für die Kommunikation zwischen PyPose <-> Arboitx <-> AX-12A-Motoren wird eine serielle Verbindung mittels FTDI oder einer XBEE-Funkbrücke benötigt. In diesem Artikel wird eine kabelgebundene FTDI-Schnittstelle verwendet.

Arduino-Installation - http://www.arduino.cc/playground/Learning/Linux
Arbotix-Installation - https://code.google.com/p/arbotix/wiki/GettingSetup

Arduino IDE

Die Arduino-Entwicklungsumgebung ab Version 1.0 enthält gcc, avr-gcc, Java VM, und nötige Bibliotheken für die Arbeit mit AVR-Mikrocontrollern. Seit der Version Arduino 1.0 wurden viele syntaktische Änderungen vorgenommen, so dass Sketchbook-Dateien (*.pde) von ehemaligen Arduino-IDEs nicht zwangsläufig unter den neuen Versionen ab Arduino 1.0 laufen. In diesem Artikel wird die aktuelle Arduino-Version 1.0.1 auf einem Raspberry Pi geladen und eingerichtet.

Voraussetzung: root-Rechte oder sudo-Eintrag in /etc/sudoers

Download/Installation Arduino IDE

http://www.arduino.cc/playground/Learning/Linux

AVR – Arbotix controlling AX12A-Motors with PyPose


Bioloid Premium Humanoid

Dieser Artikel beschreibt die Einrichtung einer Entwicklungsumgebung in Linux und Windows für die Programmierung eines Arbotix-RoboControllers. Leider ist der Arbotix-RoboController nur in Amerika verfügbar und muss importiert werden. Vertrieben wird er von der Firma Vanadiumlabs. Voraussetzung ist ein Arbotix-Controller von Vanadiumlabs und ein AVR-ISP-Programmer (DIAMEX ALL-AVR in diesem Beispiel). Eine FTDI- oder eine XBEE-Wireless-Verbindung ist Voraussetzung für die spätere serielle Bus-Kommunikation. Der Arbotix-Controller ist ausgelegt für die Steuerung von Dynamixel Motoren - in diesem Fall AX-12A mit 15kg/cm Haltekraft. Ein Bioloid Roboter hat AX-12A Motoren verbaut und bietet 18 Freiheitsgrade (DOF - Degrees Of Freedom). Am Ende dieses Artikels wir der Bioloid-Premium-Roboter von seinem Robotis-Controllerboard CM-530 befreit und mit einem Arbotix-RoboController bestückt. Der Vorteil des Arbotix gegenüber dem CM-530 ist, dass man später ROS verwenden kann.

Quellennachweis:
Arbotix - http://vanadiumlabs.com/arbotix.html
Arduino - http://http://www.arduino.cc/

Arduino-Installation
- http://www.arduino.cc/playground/Learning/Linux
Arbotix-Installation - https://code.google.com/p/arbotix/wiki/GettingSetup

AVR - Arbotix - Bioloid Premium Assembled

AVR – Arbotix and arduino development environment setup


I2C tiny USB


Kommunikationsschnittstelle, um einen Computer mit externen Mikrocontrollern zu verbinden und Daten bidirektional auszutauschen.

Bus-Topologie, Master-Slave-Architektur (Master-Slave-Slave-Slave...).
Stand 01.11.2011

Geschwindigkeit:
Bidirektional:
Standard-Mode: 100 KBit/s
Fast-Mode: 400 KBit/s
Fast-Mode-Plus: 1 MBit/s
High-Speed-Mode: 3.4 MBit/s

Plattform:
Linux: Debian 5, eclipse 3.3 CDT, gcc 4+
Windows: Windows XP 32-Bit SP 3, AVR-Studio, eclipse 3.2 CDT, MinGW, PonyProg


Voraussetzung:
-Computer mit USB-Schnittstelle
-externe Hardware mit Mikrocontroller und Unterstützung für Two-Wire-Interface TWI(AVR) oder
Inter-Integrated Circuit I2C(Philips).
-Programmierkenntnisse Linux und Windows.
-Programmierkenntnisse AVR-Mikrocontroller.
-Lötkenntnisse(Basis).

AVR – USB-I2C-Interface