Menü
Make

Modul-Baukasten Tinkerforge: Abnabelung vom PC dank RED Brick

Das elektronische Baukastensystem wird um einen 4 x 4 Quadratzentimeter kleinen Linux-PC ergänzt. Damit entfällt der bisher zum Betrieb notwendige Desktop-PC. Erste Versuche enden vielversprechend.

Von
vorlesen Drucken Kommentare lesen 128 Beiträge
Tinkerforge:Abnabelung dank Red Brick

Tinkerforge hat es endlich geschafft, sein Brick-System unabhängig vom PC zu machen. Mit dem RED Brick (RED steht für Rapid Embedded Development) können Bastler ihre Mess- und Steuersysteme künftig standalone betreiben. Genau genommen stimmt das zwar nicht, weil der 70 Euro kostende RED Brick im Grunde auch ein PC ist – aber einer, der auf nur 4 ×4 Quadratzentimeter Platz findet und damit kompatibel zum bisherigen Stapel-Ansatz von Tinkerforge ist.

Wer das System noch nicht kennt: Der Tinkerforge-Baukasten besteht aus verschiedenen Modulen für Sensoren, Aktoren und Ein-/Ausgabe. Herz des System sind Bricks, die die sogenannten Bricklets steuern und abfragen. Die herkömmlichen Bricks kommunizieren per USB mit dem PC, auf dem eine Anwendung läuft.

Tinkerforge hat eine Menge Arbeit in eine durchdachte API für seine Module gesteckt und die API in zahlreiche gängige Programmier- und Skript-Sprachen umgesetzt, sogar Delphi/Lazarus und Wolfram Language sind dabei. Dank der guten Dokumentation und der vielen Beispiele für alle Module in den unterstützten Sprachen lassen sich Mess-, Steuer- und Regelsysteme für die Heimautomatisierung, Robotik und vieles mehr schnell und leicht umsetzen.

RED Brick (6 Bilder)

Tinkerforge hat den Brick Viewer zu einem Managementtool für den RED Brick aufgebohrt.
Direkter Einsatz

Mit dem RED Brick fällt der Desktop-PC zur Steuerung weg. Alle Bricks, Bricklets und Erweiterungen kommunizieren direkt über die Stapelleisten mit dem RED Brick. Als Prozessor kommt dort ein ARM Cortex A8 Allwinner A10 (mit Mali400 GPU) zum Einsatz, dem 512 MByte RAM zur Seite gestellt sind – das bekannte aber viel größere Cubieboard ist ähnlich ausgestattet. Daneben sitzen ein Micro-USB-Port (für die Stromversorgung und den Anschluss an einen PC), ein USB-Host-Port (2.0), eine Micro-HDMI-Schnittstelle sowie ein MicroSD-Slot auf der Platine. Selbige bootet das Betriebssystem von einer (separat zu erwerbenden) SD-Karte, wobei sich Tinkerforge für Debian Wheezy entschieden hat. Das zum Download angebotene Image ist für Bastlerbelange maßgeschneidert, die APIs für die jeweiligen Sprachen sind bereits ebenso vorinstalliert wie einige nützliche Bibliotheken und Tools, etwa OpenCV, Boost und MySQL.

Oben eine IMU-Brick, in der Mitte ein Master-Brick mit angschlossenem Distanzsensor, ganz unten die RED Brick. Das ist eine gute Grundlage für einen autonomen Roboter.

Eingefleischte Windows-Anwender müssen trotzdem nicht befürchten, sich in Untiefen der Linux-Konfiguration begeben zu müssen. Die Konfiguration und Programmierung der RED Brick erfolgt über eine komfortable Oberfläche im Brick-Viewer, mit der auch Windows-Anwender ohne Linux-Kenntnisse klarkommen. Das ist auch einer der Vorteile, die der Hersteller gegenüber Kombinationen seines Systems etwa mit dem Raspberry Pi sieht. Auch der Pi will erstmal in Betrieb genommen, konfiguriert und angepasst werden.

Los geht's ...

Für die ersten Konfiguration des RED Brick ist allerdings trotzdem noch ein Anschluss an einen PC per USB notwendig. Dazu muss man die aktuelle Version des Brick Daemon und des Brick Viewer installieren. Nach dem Anstöpseln an den PC braucht der RED Brick etwas, ehe er am Start ist – Linux muss erstmal vollständig booten. Tinkerforge bietet zwei Linux-Images für die SD-Karte an: Ein Full Image mit grafischer Oberfläche (LXDE) und ein Fast Image, das kleiner ist und schneller bootet.

Nach dem Hochfahren kann der Brick Viewer Einstellungen der RED Brick ändern und Logdateien anzeigen. Mit einem WLAN-Dongle am USB-Host-Port kann der RED Brick sogar drahtlos ins Netz. Die Angaben zum richtigen Netzwerk und der Passphrase gibt man über den Brick Viewer ein. Hat die RED Brick sich ins WLAN eingebucht, zeigt der Brick Viewer die IP-Adresse an. Da die DHCP-Server in den meisten WLAN-Routern einer MAC-Adresse immer dieselbe IP-Adresse vergeben, erreicht man die RED Brick später im Netz mit hoher Wahrscheinlichkeit -- beispielsweise per SSH (user:tf, pass:tf) oder über das Webinterface.

Basteleien

Der Einsatz als Desktop-PC ist zwar nicht der primäre Verwendungszweck, man kann an den RED Brick aber auch an einen HDMI-Monitor anschließen und per USB-Hub mit Tastatur und Maus versehen. Damit kann man dann sozusagen seine Anwendungen "vor Ort" erstellen. Im Vergleich zu einem Raspberry Pi läuft etwa das Surfen im Internet mit dem Schmalspur-Browser Midori verhältnismäßig flüssig. Insbesondere in Bastel-AGs in notorisch klammen Schulen dürfte die Einsparung eines Desktop-PCs für Freude sorgen.

Apropos USB-Hub: In unseren ersten Tests zickte die RED Brick bei einem Belkin-USB-Hub, sodass wir uns zunächst zwischen einem WLAN-Adapter und dem Zugang per SSH oder dem Anschluss einer Funktastatur mit Maus entscheiden mussten. Ähnliches kannte man anfangs auch beim Raspbbery Pi. Ein anderer Billig-Hub lief dann ohne Probleme. Besitzer von älteren Tinkerforge-Modulen müssen ein Update installieren, da die Stack-Kommunikation geändert wurde. Das ist mit dem Flash-Tool aber ein Kinderspiel.

Erste Schritte

Mit einem RED Brick, einem Master Brick und einem Ultraschall-Distanz-Sensor haben wir erste Versuche gemacht. Auf dem RED Brick läuft standardmäßig ein Apache-Webserver, über den man Anwendungen via Browser starten kann. Zusätzlich ist etwa für Python das Web-Framework Flask installiert, das die Entwicklung von Apps sehr einfach macht. Auf Grundlage des API-Beispiels für den Distanzsensor haben wir ein kurzes Skript geschrieben, das bei Aufruf über den Webserver den Abstand zu Objekten ermittelt und per HTML ausgibt.

HOST = "localhost"                
PORT = 4223
UID = "iSm" # ID des Sensors

from tinkerforge.ip_connection import IPConnection
from tinkerforge.bricklet_distance_us import DistanceUS

from flask import Flask
application = Flask(__name__)
app = application

@app.route('/')

def index():
ipcon = IPConnection() # Create IP connection
dist = DistanceUS(UID, ipcon) # Create device object

ipcon.connect(HOST, PORT) # Connect to brickd

distance = dist.get_distance_value()

sonar = '<html><body>' + str(distance) + '</body></html>'
ipcon.disconnect()
return sonar

So einfach kann Prototyping sein. Mit dem RED Brick macht Tinkerforge einen großen Sprung nach vorn und erfüllt vielen Makern endlich einen langgehegten Wunsch. Der Preis ist mit 70 Euro allerdings verhältnismäßig hoch – ein Cubieboard mit mehr Speicher und Ausstattung kostet knapp 50 Euro. Die Plug-and-Play-Garantie könnte den Preis allerdings rechtfertigen. (dab)