Die Steuerung von fischertechnik-Modellen mit einem Mikroprozessor ist eine faszinierende Erweiterung der Möglichkeiten des Baukastensystems. Kaum erschienen die ersten Home-Computer, war fischertechnik Anfang der 80er Jahre (des vergangenen Jahrhunderts) schon mit einem Computing-Interface zur Stelle: Mit Acorn, Amiga, Apple II, Atari ST, C64, CPC464, IBM PC und VC20 ließen sich Plotter, Roboterarme und kleine „Turtles“ steuern. Legendär war der „BBC-Buggy“ in Großbritannien, der 1983 einen großen Fernsehauftritt hatte.

Aus dem „Computing-Interface“ wurde 1997 das „Intelligent-Interface“, gefolgt 2004 vom „Robo-Interface“ (Abb. 1). 2009 wurde dieses vom „ROBO TX Controller“ abgelöst, dessen Nachfolge 2014 der „ROBOTICS TXT Controller“ antrat. Beeindruckend, welche Leistung der TXT mitbringt – beeindruckend allerdings auch der Preis: 300 € (UVP) für den Controller, 400 € (UVP) für das „Discovery Set“. Auch wenn die Marktpreise deutlich unter der Preisempfehlung des Herstellers liegen: stolz bleiben sie trotzdem, allemal für Einsteiger, die bei den ersten „Gehversuchen“ nur einen Bruchteil der Möglichkeiten des TXT Controllers nutzen werden.

Da liegt es nahe, nach einer Alternative Ausschau zu halten. Zwar bietet fischertechnik mit dem „ROBO LT Controller“ (2010, Abb. 2) ein günstigeres Einstiegsmodell – dessen Möglichkeiten sind aber äußerst beschränkt: Drei Sensoreingänge und zwei Motorausgänge begrenzen den Einsatz erheblich.

Weitet man den Blick in Richtung der (ohnehin gerade hippen) Maker-Szene, fällt einem sofort eine weitere Alternative ins Auge: der Arduino (oder Genuino; Abb. 3). Ein Open Source-Mikrocontrollerboard, das seit 2005 Maker-Herzen und Klassenzimmer erobert. Zwar liegt die Leistung des ATMega 328P, dem Herz des Arduino, deutlich hinter dem ARM Cortex A8, der im TXT schlägt – 8 vs. 16 bit Prozessor, 16 gegenüber 600 MHz Taktfrequenz, 2kB zu 128 MB RAM. Dafür verfügt der Arduino über einen genauen Timer (μs), 6 analoge Eingänge und 14 digitale Ein-/Ausgänge, davon 6 PWM-Anschlüsse. Er kann über aufsteckbare „Shields“ erweitert werden und beherrscht neben I²C auch das SPI-Protokoll.
Programmiert wird er über eine kostenlose Programmierumgebung (IDE), die für MacOS, Windows und Linux bereitgestellt wird, in einem C/C++-Derivat. Zwar ist für blutige Programmier-Anfänger ROBO Pro ein geeigneterer Einstieg – für etwas fortgeschrittenere Nutzer aber ein eleganter Start in die (professionellere) Programmierung in C/C++. Zum Arduino passende Sensoren gibt es praktisch unbegrenzt – gleich mit zugehörigem Treiber und zu unschlagbar günstigen Preisen. Das gilt auch für den Arduino selbst: Kauft man das Original, liegt der Preis knapp unter 30 € – und darin ist der Unterstützungsbeitrag für das Arduino-Projekt bereits enthalten. Auch Literatur, freie Tutorials, Programmbeispiele und Erklärvideos gibt es für den Arduino in großer Zahl.

Zwar kommt der Arduino „unverhüllt“ und lässt sich daher nicht unmittelbar in einem fischertechnik-Modell verbauen. Aber ein passendes Case mit angeklebten Bauplatten 30 x 45 verhilft ihm schnell zur fischertechnik-Kompatibilität (10 €).
Hallo
Das ist natürlich ein interessanter Hinweis.
Nur: Das reine (mechanische) Einbauen der Arduino-Platine in FT-Modellen ist m.E. noch das geringste Problem. Vermutlich kriegt man auch die zahlreichen Arduino-Sensoren irgendwie unter (weil diese selten große Kräfte aushalten müssen).
Nur: Hast Du praktische Erfahrung und Tipps, wie man Aktoren verbaut? Für die Steuerung der FT-Motoren braucht es am Arduino (5V statt der 9V von FT) sicher einen besonderen Shield; bei der Verwendung von Arduino-Aktoren, z.B. Servos hingegen stellen sich noch viel mehr mechanische Probleme.
Hast Du mit FT und Arduino schon konkrete Projekte umgesetzt?
Gruss
Andreas
Hallo Andreas,
ja, Du hast Recht: Aktoren sind knifflig. Gleichstrommotoren aus dem Modellbau lassen sich nicht so einfach stabil verbauen, auch die Servos sind schwer verbaubar, wenn man nicht zu Klebeband oder Gummibändern greifen möchte. Daher greife ich überwiegend zu fischertechnik-Aktoren (Motoren, Magnetventile, Servos etc.). Die Ansteuerung ist nicht so schwierig: Natürlich muss man die Stromkreise entkoppeln und die Motoren direkt mit einer 9V-Stromquelle wie dem ft-Akku verbinden, denn die Arduino-Ausgänge verkraften nicht mehr als 40 mA. Die Steuerung übernimmt dann entweder ein Transistor (bspw. ein BD 911), eine H-Bridge (L293D) oder ein Motor Shield (entweder das originale Arduino Motor Shield oder das Adafruit Motor Shield, das über doppelt so viele Motoranschlüsse verfügt und bis zu 4A Last verträgt).
Derzeit experimentieren einer meiner Söhne und ich mit kleinen Robotern und Maschinensteuerungen – mit viel versprechenden Ergebnissen: Die Steuerung ist kompakter und die Sensorabfrage schneller: bis zu 10.000 mal pro Sekunde. Da kommen TX und TXT nicht mit.
Beste Grüße,
fischertechniker
Super, danke für die schnelle und ausführliche Antwort. Im Moment bleib ich dann wohl mit meinem Junior schon eher direkt beim TXT, aber Arduino (liegt sowieso auf dem Gestell) ist natürlich immer im Hinterkopf.
Wäre interessant zu sehen, was ihr mit dem Arduino-Projekt hinbekommt.
Hi,
das Ganze funktioniert im Übrigen auch mit dem pi ganz gut. Statt C setzt man hier auf python, und statt dem oben genannten Motor Shield kann man gut den Adafruit Motor HAT verwenden. Mein größtes Problem sind aber die Encoder-Motoren, da ich noch keine Idee habe, wie man die anschließen könnte?
Hast Du da Erfahrungen?
Vg
Jannik
Hallo Jannik,
Du hast Recht – der Raspberry Pi 3 ist sogar noch deutlich leistungsfähiger als der TXT Controller: ARM Cortex A53 mit 64bit-Prozessor und 1,2 GHz getaktet und 1 GB RAM… Da geht im Prinzip alles, was auch mit dem Arduino geht. Dafür ist der Einstieg nicht so „glatt“ wie beim Arduino, mit dessen IDE auch ein blutiger Anfänger im Handumdrehen einen funktionierenden Sketch erzeugen kann.
Die Encoder-Motoren schicken bei der Umdrehung einfache Impulse – die Auswertung sollte an einem schnell abgefragten Eingang eigentlich kein Problem sein. (Vielleicht hat da sogar wieder der Arduino die Nase vorn, da kein Multiplexing seine Sensorabfrage unterbricht…). Ich werde einmal damit experimentieren und berichten.
Beste Grüße,
fischertechniker
Motoren-Steuerung mit dem Arduino ist sehr schön erklärt im Make (heise) Arduino-Sonderheft.
Hab‘ so einen guten alten fischertechnik-Motor über eine MOSFET-Schaltung geregelt bekommen… 🙂
Ja, das stimmt. Das Heft ist für Arduino-Einsteiger eine gute Wahl (und ein Arduino ist auch gleich dabei).
Inzwischen schwöre ich bei Motorsteuerungen allerdings auf das Arduino Motor Shield von Adafruit. Damit lassen sich vier Motoren (oder zwei Stepper) und zugleich zwei Servos ansteuern – und es belegt keine I/O-Ports, da es via I²C-Protokoll angesteuert wird. Sogar die Encoder-Motoren bekomme ich ausgewertet. Da schmelzen die Vorteile des TX(T) zumindest bei einfacheren Modellen deutlich dahin…
Gruß,
fischertechniker
Du schreibst das oder die Encodermotoren auswerten kannst. Ist das mit den 9V die fischertechnik verwendet kein Problem oder erledigt sich das einfach wenn man den Encoderanschluss direct an den Pi/Arduimo schließt so das er nur 3/5V bekommt?
Hallo Jannik,
der Arduino wird ebenfalls mit 9V betrieben. Die Motorshields (empfehlenswert ist das von Adafruit) haben einen separaten 9V-Anschluss, über den die Motoren ihre Betriebsspannung beziehen; da lassen sich auch größere Lasten anschließen als an die Arduino-Ausgänge.
Gruß, fischertechniker
Der große Vorteil bei den Fischertechnik Controllern ist aus meiner Sicht die Software: Robo pro ist mit der graphischen Programmierung gerade für Einsteiger wirklich klasse. Man kann sogar – wenn man Robo pro auf einem Windows-Tablet installiert – eine interaktive Bedienoberfläche mit Touchbuttons und Anzeigen von Zuständen realisieren (leider lässt sich allerdings das entsprechende Fenster nicht ins Vollbild schalten, man hat also nur 70% der Displayanzeige zur Verfügung).
In der Fischertechnik Community und auf Github gibt es Anleitungen, wie ein Arduino gegenüber RoboPro ein „Intelligent Inerface“ simmuliert, tatsächlich aber ein altes Interface für den C64 (sogar mit zweiten als Extension) ansteuert. Natürlich lässt sich der Sketch auch so anpassen, dass direkt die I/O des Arduino gelesen/geschaltet werden, man also kein altes Interface braucht. Doppel H-Bridges (also 4 Treiber für Lampen, Magnete oder Motoren) gibt es mit Versand aus China bei eBay für 1,30€.
Mit einem Arduino Mega Nachbau (weniger als 10€ bei eBay) hat man 54 I/O-Ports. Es kann also locker ein Intelligent-Interface mit Extension emulieren. Für die Ausgänge nimmt man dann 4 Doppel H-Bridges. Zum Schutz der Digitaleingänge bieten sich Optokoppler mit Vorwiderstand an – 4-fach Optokoppler kostet ca. 60 Cent.
Will man Laptop/Tablet nicht per Kabel mit dem Modell verbinden, kann man noch 2€ für ein Bluetooth-Seriell-Adapter für Arduino investieren. Aus Sicht des PC ist das dann ein COM-Port, das es über Funk realisiert wird, bekommt Robo Pro gar nicht mit.
Für insgesamt 20€ hat man dann ein „Intelligent-Interface“ mit Extension, mit Bluetooth im Onlinemodus von Robo Pro steuerbar. Ein Windows-Tablet 8 Zoll bekommt man gebraucht schon für unter 100€ (z.B. Iconia W3-810), man kann also auf die Art einen Luxus erreichen, der besser ist als beim TXT.
Was einem dann fehlt, ist allerdings die Funktionsvielfalt der Eingänge (schnelle Zähleingänge, Analog 0-10V usw.) welche der TX bietet und die man mit entsprechender Beschaltung auch bei einem direkt programmierten Arduino realisieren kann. Glücklicherwiese sind auch schon die ersten Anleitungen aufgetaucht, wie man ein Robo-Interface bzw. dessen Extensions emuliert – und sogar, wie man eine Bridge zwischen Robo TX und alten Robo-Extensions herstellt. Damit habe ich mich noch nicht so intensiv beschäftigt. So könnte man also auch einen älteren Robo-Controller (ohne TX/TXT) im Downloadmodus betreiben und mit einem Mega wie beschrieben um zwei Extensions erweitern (also vor allem den vorhanden 8 Ausgängen 16 weitere hinzufügen) – die vielfältig nutzbaren Eingänge des Robo TX kombiniert man dann mit den digitalen der Selbstbau-Extension.
Inzwischen gibt es den ftDuino (http://ftduino.de), der eine Kombination von Arduino-Technik und passendem fischertechnik-Shield in einem pasenden Gehäuse vereint.