Für
die Ansteuerung der Flight-Control-Platine des Mikrokopters
(www.mikrokopter.de)
ist ein RC-Empfänger mit Summensignal-Ausgang
erforderlich. Viele 35MHz-Empfänger lassen sich leicht
entsprechend umbauen. Bei 2,4GHz-Empfängern ist das oft gar
nicht
oder nur mit Einschränkungen möglich.
Ich wollte nun meinen 2,4GHz-FASST-Empfänger R617FS mit allen
7
Kanälen nutzen, und das ohne Lötarbeiten an
der Empfängerplatine. Da die bisher im Internet gefundenen
Lösungen wegen "zu teuer", "noch nicht verfügbar"
oder
anderen Einschränkungen nicht greifbar waren, habe ich selbst
einen Adapter entwickelt. Diesen will ich hier vorstellen.
Wichtig: Der Nachbau ist nur zu
privaten Zwecken und auf eigenes Risiko erlaubt! Die kommerzielle
Nutzung ist nicht gestattet!
Der Nachbau erfordert einfache Elektronikkenntnisse und
Löterfahrung.
Außerdem sollte man wissen, wie ein Controller programmiert
wird (ponyprog o.ä.).
Eigenschaften
Es ist ein
Adapter entstanden, der folgende Eigenschaften aufweist:
auf den
Original-Empfänger aufsteckbar, keine Änderung am
Empfänger erforderlich
wahlweise 5 oder
7 Kanäle nutzbar
automatische
Abschaltung des PPM-Ausgangssignals bei Empfangsverlust (damit
die Fl-Ctrl die Empfangsstörung auch mitbekommt und das
Notprogramm
startet)
Impulsdiagramm
des R617FS
Um aus
dem
R617FS ein Summensignal zu erzeugen, muß man sich zuerst das
Impulsdiagramm anschauen. Mit dem
Zwei-Kanal-Soundkarten-Oszi habe ich den Verlauf der Impulse zueinander
ermittelt und das Ergebnis skizziert:
Gegenüber einem 35 MHz-Standard-Empfänger
fällt die
zeitlich überlappende Ausgabe der Kanäle K7, K6 und
K1 auf.
Alle Impulse sind 1-2ms lang. Die Startzeitpunkte von K7, K6
und
K1 sind fest, also immer 1ms zueinander versetzt. K1 bis K5
folgen
zeitlich aufeinander mit variablem Startzeitpunkt. K2 beginnt am Ende
von K1 usw., wie auch bei anderen Empfängern üblich.
Schaltungsaufbau
Wegen der
Tücken im Impulsdiagramm kam zur Erzeugung des Summensignals
nur der
Einsatz eines Mikrocontrollers in Frage. Es wurde der Controller ATTiny
2313 ausgewählt.
Die Schaltung ist sehr einfach aufgebaut, die eigentliche
Aufgabe wird von der Software erledigt.
Den Aufbau habe ich auf einer Lochrasterplatine realisiert, man
kann sich natürlich auch eine Platine ätzen. Hier ein
Vorschlag dazu:
Über den Fotowiderstand (z.B. csd-electronics.deBest.Nr. 20834) wird
die Fehler-LED des R617FS erfaßt. Leuchtet sie rot (kein
Empfang), wird kein Summensignal ausgegeben. Der Bereich um LED und
Fotowiderstand muß vor Fremdlicht geschützt werden
(mit
schwarzen Klebeband abkleben).
Der
Fotowiderstand bildet mit dem internen Pullup-Widerstand des
Controllers einen lichtabhängigen Spannungsteiler. Wegen der
höheren Empfindlichkeit für rotes Licht kann so die rote
Fehler-LED sicher erkannt werden. Die Schaltschwelle am
Komparator-Eingang des Controllers liegt bei etwa 1V. Leuchtet die rote
LED, muß die hier gemessene Spannung sicher unter 1V liegen.
Leuchtet die grüne LED, muß die Spannung sicher
über 1V
liegen. Evtl. muß hier abhängig vom verwendeten
Fotowiderstand eine Kalibrierung vorgenommen werden. Zur Korrektur kann ein zusätzlicher Widerstand nach plus oder Masse gelegt
werden. In der Praxis ergeben sich bei mir Spannungswerte von 0,7V (rote LED)
und 1,5V (grün).
Falls die Spannungsdifferenz am Fotowiderstand zwischen roter und
grüner LED zu gering ist, hilft ein Stück roter Folie
zwischen LEDs und Fotowiderstand. Dadurch "sieht" der Fotowiderstand
nur noch die rote LED.
Hier noch ein paar Bilder des fertigen Adapters:
Software
Die Software ist in Assembler geschrieben. Das Programm kann hier
heruntergeladen und z.B. mit ponyprog in den Controller geladen
werden.
Auf mehrfachen Wunsch hin habe ich den kommentierten Quellcode mit
dazugetan.
Die Kanäle 1, 3 und 5 werden über Polling abgefragt,
Kanal 2
und 4 ergeben sich dann aus den Impulslücken dazwischen. Kanal
6
und 7 werden über Interrupts
erfaßt, per Timer gemessen und zeitlich verzögert
nach Kanal
5 ausgegeben. Wenn
K6 und K7 nicht im Summensignal erscheinen sollen, z.B. weil sie
direkt Servos ansteuern sollen, müssen einfach die
Verbindungen
von K6 und K7
zum Controller getrennt werden.
Der Fotowiderstand wird über einen Analogkomparator-Eingang
abgefragt, die interne Schaltschwelle ist ca.1V.
Der Controller läuft mit einem internen Takt von 8MHz. Die
Fuse-Bits bleiben fast wie im Lieferzustand, nur bei Fuse CKDIV8
muß der Haken entfernt werden (muß auf unchecked
oder 1
stehen).
Und so sieht das fertige Summensignal am Ausgang aus:
Die Frame-Rate ist 16ms. Außerdem kann man hier noch den
Servoimpuls von Kanal 7 sehen (grün). Die Signale sind leider
invertiert dargestellt, mein Soundkarten-Oszi kann das nicht anders.
Noch ein wichtiger Hinweis:
Wenn alle 7 Servoimpulse auf nahezu Maximum stehen (2ms), passen
sie nicht mehr in die von Futaba vorgegebene Frame-Rate von nur
16ms! Dann wird der Frame wegen dem zu kurzen Sync-Impuls von der
angeschlossenen Kopterelektronik als ungültig verworfen. Um das zu
vermeiden, kann man die oberen Kanäle, die ja meist mit
Schaltfunktionen belegt sind, auf kleinere Maximumwerte begrenzen, also
z.B. nur von -100% bis +50% oder weniger nutzen.
Schlußwort
Der
Nachbau
sollte einfach machbar sein. Wenn Ihr jedoch Fragen oder Probleme
dabei habt, könnt Ihr euch gerne bei mir melden. Und wer sich
den
Nachbau gar nicht zutraut, kann sich ebenfalls melden, wir finden schon
eine Lösung :-) Viel Erfolg!