Eigenbau-Multiswitch für meine Boote

Wegen Faulheit und Spieltrieb des Modellbootfahrers

    – ein Entwicklungsbericht –

(Achtung: Technik-lastig 😉 )

Multiswitch-Module mit vielen einzelnen Schaltern wie z.B. bei den alten robbe- oder Graupner-Anlagen sind bei den meisten modernen 2,4 GHz Anlagen entweder nicht erhältlich, recht teuer oder können nicht das, was ich gerne hätte.

Hinzu kommt bei mir eine gewisse Faulheit und so sollen gewisse Dinge automatisch ablaufen.

Als Beispiel ist hier das Ankerlicht. Wenn das Boot in Fahrt ist, wäre das Ankerlicht ein falsches Lichtsignal, daher wird dieses gesetzt:

          a) abhängig vom Fahrtzustand („Flugphase“ bei vielen Anlagen)

          b) wenn es auf der Fernbedienung aktiviert ist und

          c) sich der Motor 10 Sekunden lang nicht gedreht hat – das Boot also still liegen sollte.

Dabei schaltet die nautische Beleuchtung ab und nur das einzelne Ankerlicht geht an. Wenn nun der Gasknüppel bewegt wird, aktiviert sich sofort wieder die normale nautische Beleuchtung und das Ankerlicht wird abgeschaltet.

Soviel zum Wunschdenken – was ist denn möglich und dazu nötig?

Der erste Ansatz ist erst mal ein Mikrocontroller und etwas Software. Hierbei sind die Phantasie und die eigenen Programmiermöglichkeiten gefragt – umgesetzt werden kann in einem Mikrocontroller ziemlich viel.

Die übliche Aufteilung ist ein Modul zum Einbau in den Sender und ein Modul im Modell – klingt logisch und das Konzept steht somit fest.

Als Erstes zum Sendermodul:

Das habe ich mir einfach gespart!

Mein Sender (Taranis X9D mit dem OpenTX-System) hat hat die Möglichkeit, selbst erstellte Lua-Skripte auszuführen. Hier habe ich mir einfach eine kleine „Oberfläche“ programmiert auf der ich recht übersichtlich mit 3 Tasten die gewünschte Funktion aktivieren kann – siehe Screenshot der Simulationssoftware „Open TX Companion“. Hier kann man recht komfortabel das erstellte Script auf korrekte Funktion testen.

Die Anwahl der Funktion erfolgt mit 2 Tasten (+/-) und die Auswahl dann mit einer weiteren (ENT).

Für die Übertragung in den Empfänger gibt es verschiedene Möglichkeiten, erste Versuche mit dem Telemetrieport der Fernbedienung waren leider nur solange erfolgreich, bis die Verbindung zum Empfänger einmal abgerissen war. Bei erneutem automatischen Verbinden war die Chance auf eine saubere Wiederherstellung der Telemetrie ca. 50% – somit unbrauchbar.

Meine 2. Version arbeitet mit einem etwas modifiziertem Zählverfahren:

Einmal „Signal lang für x ms“ für Schalter 1 an, „Signal kurz für x ms“ für Schalter 1 aus. Schalter 2 wird mit 2 Pulsen adressiert.

Funktioniert soweit ganz gut, nur bei hohen Schalternummern entsteht schon eine merkbare Verzögerung.

Zeit für Version 3 – einfach über verschiedene Längen gleich 4 Schalter in einen Impuls kodiert. Das läuft jetzt in ersten Praxistests mit 12 Schaltoptionen zufriedenstellend.

Jetzt fehlt noch das Empfangsmodul:

Hier muss wirklich etwas Hardware verbaut werden.

Meine Variante basiert auf der verbreiteten Arduino-Soft- und Hardware. Hier werden einem bereits viele Grundfunktionen bereitgestellt und man kann sich bei der Programmierung auf die eigentlichen Funktionen und Abläufe konzentrieren. Vorteilhaft ist eine gewisse Programmiererfahrung, aber jeder hat ja mal klein angefangen.

Um die Verkabelung zu vereinfachen (1 Kanal für die Multiswitchsignale, ein weiterer für die Motordrehzahl etc.) ist der komplette Anschluss auf einen bei meinem Empfänger vorhandenen Anschluss reduziert: Den SBUS. Hier sind alle Kanäle in einem speziellen Protokoll verpackt, was über ein einzelnes Kabel übertragen wird – für Interessierte: es handelt sich um ein simples serielles Protokoll, ähnlich zu dem bei älteren PCs und dem in sehr vielen Industriesteuerungen genutzten RS232 System.

Als Ausgangstreiber können (wie in meiner ersten Prototypversion) einzelne Transistoren bzw. Fets genutzt werden, die 2. Variante besitzt bereits ein „Power Logic Shift Register“, also ein per Prozessor beschreibbares Schieberegister mit integrierten Ausgangstransistoren, die die im Modellboot für einfache Beleuchtungsfunktionen üblicherweise benötigten Ströme schalten können – hier max. 150mA pro Kanal.

Wenn die 8 Ausgänge nicht reichen, können einfach 2 oder mehr dieser Bausteine angeschlossen werden, für dann 16 oder 24 Ausgänge. Außerdem reduziert sich das Kabelchaos auf der Prototyp-Platine erheblich und es kann ein deutlich kleinerer Mikrocontroller genutzt werden – begrenzend sind meist die Anzahl der Anschlüsse am Controller. Für das Schieberegister brauche ich lediglich 4 Anschlüsse für eine nahezu unbegrenzte Anzahl von Ausgängen.

Oben: Servosignal

Unten:  SBUS-Signal

Wie geht es weiter?

Die Software ist weitgehend modular aufgebaut, sodass dann für jedes Modell relativ einfach eine eigene Steuerungsroutine geschaffen werden kann.

Der 2. Prototyp mit einem Mini 2560 ist als Testmuster noch auf Lochrasterplatine bereits eingebaut und wird sukzessive mit den bereits beschriebenen Automatikfunktionen ausgerüstet (Bild links).

Der neue Prototyp mit dem Arduino Pro Micro und den integrierten Ausgangstreibern ist noch auf Steckplatine im rechten Bild zu sehen.

Wenn die neue Version sauber läuft, sind auch geätzte Platinen in Planung.