OpenTXFunkfernsteuer-Firmware
Mit der freien Firmware OpenTX erweitern Sie Ihren RC-Sender um spannende neue Funktionen wie Kanalmischung, Telemetrie und On-the-Fly-Programmierung.
Ich benutze Fernsteuerungen, wenn ich Spezialeffekte und Requisiten für Film und Fernsehen mache. Das ist eines der Dinge, für die ich heute bekannt bin. Aber vor fünf Jahren hatte ich kaum eine Ahnung, wie man diese Technik aus Sender und Empfänger zum Laufen bringt! Ein wenig Neugier, gepaart mit viel Kreativität, kann die Möglichkeiten der Funksteuerung und den Wow-Faktor, den man damit erzielen kann, erheblich steigern. Der Schritt vom Anfänger zum Fortgeschrittenen ist bei weitem nicht so schwer, wie man vielleicht denkt. Ich möchte Sie ermutigen, sich darauf einzulassen und einige dieser Dinge auszuprobieren.
Die Sender
Als erstes würde ich empfehlen, sich nach alternativen Funksystemen umzusehen, die über die Standard-RC-Sender hinausgehen, die man in Hobbyläden findet, wie die von den etablierten Firmen Futaba und Spektrum. Dies sind großartige Sender, und wenn Sie grundlegende Plug-and-Play-Funktionen benötigen, sollten Sie sich für diese entscheiden. Wenn Sie jedoch fortgeschrittene Kanalmischung, Telemetrie und ein System wünschen, das einfach über Ihren Computer programmiert werden kann, sollten Sie sich Sender wie die von FrSky, Jumper und RadioMaster ansehen. Diese müssen nicht mehr kosten als Standard-Sender aus dem Fachhandel. Einen anständigen 8-Kanal-Sender wie den Jumper T-Pro gibt es schon für 120 Euro. Oder man geht aufs Ganze und kauft ein Gerät wie den FrSky Horus X12S, der mit allem Schnickschnack 600 Euro und mehr kostet.
Quelloffene Firmware
Alle diese Sender laufen auf FreeRTOS-basierten Open-Source-Betriebssystemen. Die bekanntesten sind OpenTX und EdgeTX, eine Abspaltung von OpenTX, die hauptsächlich für die Entwicklung neuer Funktionen verwendet wird. Beide sind sehr ähnlich und leistungsfähig.
Warum sollte man sich für eines dieser Systeme entscheiden? Lassen Sie uns mit einem Beispiel beginnen, was benötigt wird, um die gewünschten Bewegungen von einer Mecanum-Roboterplattform zu erhalten.
Mecanum-Roboterplattform
Mecanum ist ein Radsystem, mit dem man einzigartige und fließende Bewegungen erzeugen kann, die mit normalen Rädern nicht möglich sind. Es besteht aus mehreren kleinen Rollen, die in einem speziellen Winkel auf dem Rad angeordnet sind. Die bekannten Omni-Wheels verwenden eine ähnliche Technik.
Mit einem Mecanum-Radantrieb können die für ein Auto üblichen Bewegungen wie Vorwärts- und Rückwärtsfahren sowie Lenken ausgeführt werden. Ebenso können die Standardbewegungen einschließlich des Drehens auf der Stelle wie bei einem Raupenkettenfahrzeug ausgeführt werden. Grundsätzlich kann sich ein Mecanum-Radantrieb aber auch gleichzeitig in verschiedene Richtungen bewegen. Dreht man beispielsweise, wie in der Infografik dargestellt, die linken Räder entgegengesetzt zu den Rechten, so kann sich der Roboter seitwärts bewegen. Eine Kombination aus Seitwärts- und Vorwärtsbewegung ergibt eine diagonalen Bewegung. Dies verleiht dem Roboter eine einzigartige Beweglichkeit.
Es ist möglich, die Kanäle eines Standard-Senders zu mischen, um diese Bewegung zu erreichen – aber ehrlich gesagt ist das viel unnötige Arbeit. Ich gehe gerne den Weg des geringsten Widerstandes und dieser Weg führte mich zur OpenTX- oder EdgeTX-Software, die auf den oben genannten Fernsteuersendern läuft. OpenTX bietet erweiterte Funktionen und Möglichkeiten, um das Beste aus dem Funkgerät herauszuholen.
Im Grunde ist es ein komplettes Betriebssystem einer Funkfernsteuerung, inklusive Skriptsprache, einer anpassbaren GUI und Hilfsprogrammen. Man kann es so programmieren, dass es fast alles macht, was man von einem Fernsteuersender erwartet. Das kann dazu führen, dass man überhaupt keinen Arduino mehr an Bord des Roboters braucht. Man kann die ganze Arbeit in den Sender verlagern und dort programmieren.
Diese Funksysteme werden mit einer Begleitsoftware (Companion) für den Computer geliefert, mit der Sie Ihren Sender an den Computer anschließen und programmieren können. Das allein ist schon ein großer Fortschritt gegenüber normalen Fernsteuerungen. Den Sender mit dem Computer zu programmieren ist fantastisch! Eine weitere tolle Funktion ist, dass man den Companion als Simulator verwenden kann, um die Bewegungen zu testen, bevor man Befehle an den Roboter sendet.
Kanalmischung
Werfen wir einen genaueren Blick auf das von mir bevorzugte OpenTX-System und wie es zum Mischen von Kanälen verwendet wird. Diese Mischer sind das Geheimnis, wie man mehrere Bewegungen mit einer Funktion steuern kann, indem man die Steuereingänge für den Roboter, das Modell oder das Requisit mischt. Diese Mischer gibt es auch bei normalen Modellbaufernsteuerungen, aber meist nur für spezielle Anwendungen (z.B. Heli-Taumelscheibenmischer) und auch nur in begrenzter Anzahl.
Bei unserer Mecanum-Roboterplattform verbinden wir einfach die Motorsteuerungen (ESC, Electronic Speed Controller) mit dem Empfänger, wobei jedes ESC einen Kanal erhält. Ich habe die Kanäle 3, 4, 5 und 6 benutzt. Mehr ist nicht nötig, die Steuerung erfolgt komplett über den Sender.
Der folgende Abschnitt zeigt in groben Zügen, wie das Ganze funktioniert. Die OpenTX- und EdgeTX-Communities sind sehr hilfsbereit und es gibt gute Anleitungen auf den Websites oder in den Foren.
Entscheiden Sie zunächst, welche Eingabekanäle (Joystick/Regler/Schalter Ihres Steuerpults) Sie für die Bewegungen des Roboters verwenden möchten. Für die Vorwärts- und Rückwärtsbewegung habe ich die Auf- und Abwärtsbewegung des rechten Steuerknüppels gewählt (siehe Infografik links).
Als Nächstes wähle ich die Drehung der Roboterplattform um die Hochachse: Auch hier wähle ich den rechten Stick, aber die Bewegungen nach links und rechts.
Und schließlich die coole Seitwärtsbewegung, auch Translate genannt: Hier habe ich den linken Stick und seine Links-Rechts-Bewegung benutzt.
Öffnen Sie in der OpenTx-Companion-Software das Modell, an dem Sie gerade arbeiten. In der Registerkarte Input können Sie die gewünschten und benötigten Eingabeelemente definieren und benennen. In diesem Fall FWD für die Vorwärts- und Rückwärtsbewegung des rechten Steuerknüppels, LR für die Links- und Rechtsbewegung des rechten Steuerknüppels und TRA für die Links-Rechts-Translationsbewegung des linken Steuerknüppels.
On the road
Jetzt wird es ernst: Bei langsamen Modellen kann man die nächsten Schritte direkt ausprobieren, bei schnellen oder gar fliegenden Modellen sollte man zuerst simulieren oder die Roboter fixieren, damit nichts kaputtgeht.
Jetzt werden die Eingänge gemischt, um die coolen Bewegungen des Mechano-Roboters zu erzeugen. In der Registerkarte Mixes sehen Sie die Ausgangskanäle, an die Sie Ihre Motoren am Empfänger angeschlossen haben. Hier ordnen Sie die Eingänge des Controllers den Ausgangskanälen zu. Jeder dieser Kanäle kann beliebig viele Komponenten der Eingänge der Steuerung mischen. Jeder Kanal kann einen prozentualen Anteil des Eingangs haben, auf einer vordefinierten Kurve liegen oder sogar mit einem Schalter aktiviert und deaktiviert werden.
Ich habe jeden der Steuerknüppel zugeordnet, indem ich einen bestimmten Anteil ihrer Signale mit dem entsprechenden Ausgangskanal gemischt habe. Man beachte, dass in einigen Fällen das Eingangssignal (Knüppelstellung) subtrahiert statt zum Ausgang addiert wird, um z. B. gegenläufige Motordrehrichtungen zu erhalten. Diese Dinge können ein logisches Rätsel darstellen, und man muss sich genau überlegen, wie ein Knüppel mit dem anderen interagieren soll. Hinter jedem Eingang steht ein positiver oder negativer Prozentsatz, der den Einfluss auf den Ausgangskanal bestimmt, z. B. Motordrehzahl und -richtung oder eine Servoposition. Zum Beispiel wird für Kanal 3, Ausgang CH3, das linke Vorderrad angezeigt:
I3:FWD Weight (+33%) [BL] += I2:LR Weight (+40%) [LR] += I4:TRA Weight (+40%) [TR]
Sehen wir uns an, was das bedeutet:
-
I3,I4undI2sind alle Eingänge.I= Input und die Zahl ist der Steuerknüppel oder Regler -
FWD= Vorwärts-Rückwärts-Bewegung -
LR= Links- und Rechtsdrehung -
TRA= Links-Rechts-Bewegung -
Weightbestimmt den prozentualen Einfluss des Eingangskanals auf den Ausgang des Motors, der dessen Geschwindigkeit und Richtung steuert.
Umprogrammierung in Fahrt
Sie fragen sich vielleicht: „Warum nicht ein Arduino für diese Aufgabe?“ Nun, zum einen finde ich OpenTX viel einfacher. Ich bin kein Programmierer und die grafische Benutzeroberfläche der mitgelieferten Software hilft mir, genau zu verstehen, was welche Bewegung verursacht. Ein weiterer großer Vorteil der Programmierung des Senders anstelle eines Arduinos oder Mikrocontrollers ist, dass man die Funktionen des Modells sofort und in Echtzeit anpassen und fein abstimmen kann, ohne ständig einen Chip an Bord des Roboters neu flashen zu müssen. Dieses Maß an Kontrolle und Flexibilität ist unerlässlich, um das volle Potenzial des Roboters auszuschöpfen – und um Ihre neu entdeckten Fähigkeiten als RC-Guru zu verbessern. Mit der Möglichkeit während der Fahrt umzuprogrammieren, können Sie bei Bedarf schnell und effizient Änderungen vornehmen.
Telemetrie und Rückmeldung
Aber es geht noch weiter! OpenTX und EdgeTX bieten Telemetrie. Dabei handelt es sich um die Möglichkeit, dass Sensoren im Roboter ihre Werte wie Spannung, Temperatur, Lageerkennung, Kurs, Barometer und so weiter an die Steuerung zurücksenden. Auf diese Weise werden Sie über Ereignisse informiert, die das Verhalten des Modells beeinflussen. Sie können auch Daten während eines Rennens aufzeichnen, um herauszufinden, was mit dem Fahrzeug oder der Umgebung passiert, in der es sich befindet (und warum).
Ein Flugzeug kann mit Sensoren für Höhe, Fluggeschwindigkeit, Geschwindigkeit über Grund und GPS ausgestattet sein. Bodenfahrzeuge können z. B. mit Temperatur-, Feuchtigkeits-, Kamera- und Batteriesensoren ausgestattet sein. Viele dieser Sensoren sind Plug-and-Play-fähig, d. h. sie werden an den Empfänger angeschlossen und liefern sofort Informationen an die Steuerung.
Hier ein Beispiel: Für diesen Mecanum-Roboter verwende ich LiPo-Akkus, die empfindlich auf Tiefentladung mit Defekt reagieren. Deshalb habe ich einen Batteriesensor eingebaut, der an die Batterie und an Kanal 8 des Empfängers angeschlossen wird.
- Diese Batterieinformationen werden an die Fernbedienung (Sender) zurückgesendet, welche im Display anzeigt, wie viel Energie noch zur Verfügung steht.
- Mit der entsprechenden Software kann ich dann anhand dieser Information herausfinden, wie viel Betriebszeit mir noch zur Verfügung steht und diese auch auf meiner Fernbedienung anzeigen lassen, während ich den Roboter bediene.
- Eine akustische und haptische Warnung (Vibrationsmotor im Sender) erinnert mich rechtzeitig daran, den Roboter aufzuladen.
- Als letzte Möglichkeit kann ich den Sender so programmieren, dass er den Roboter bei einer bestimmten Spannung abschaltet und nicht mehr bewegt, bis ich den Akku wechsle oder auflade!
Diese einfache Telemetrie kann Ihnen Geld für defekte Batterien und viel Frustration ersparen, wenn Sie wissen, wie lange Sie den Roboter noch sicher betreiben können.
Was ist mit der versprochenen Rückmeldung? Stellen Sie sich vor, Sie könnten Sensordaten in die Bewegung Ihres Roboters einfließen lassen – z. B. eine andere Bewegung ausführen, wenn er Hindernisse oder unebenes Gelände erkennt (Motorpositions- oder Lastfeedback, Beschleunigungsmesser/IMU-Daten), wenn er Lichter, Geräusche oder Hindernisse über Kameras wahrnimmt oder sogar einen Schubs oder Tipp von einem menschlichen Begleiter? Jetzt wird Ihr Requisit selbst zur Persönlichkeit! Die Möglichkeiten sind buchstäblich unbegrenzt.
Völlig neue Dimensionen
OpenTX und EdgeTX sind leistungsstarke Werkzeuge, die erweiterte Funktionen und Möglichkeiten für die Modellierung von Funksteuerungen bieten. Das Verständnis vonTelemetrie, Kanalmischung und Controller-Programmierung ist der Schlüssel, um das volle Potenzial des Modells auszuschöpfen. Meine kleine Mecanum-Roboterplattform, die hier als Beispiel dient, wird Teil eines Zelda-Cosplays von Autumn Desjardins sein (Links siehe Kurzinfo). Mit den richtigen Werkzeugen und dem richtigen Wissen können auch Sie Ihre Erfahrungen im ferngesteuerten Modellbau auf die nächste Stufe bringen. —caw