Multikopter LED Simulator
Einleitung
Viele Multikopter haben eine Leuchtdiode, um den aktuellen Status mittels Blinksequenzen anzuzeigen. So auch der DJI Phantom 1, oder die DJI «Flamewheel» Multikopter Serie. Die LED Leuchtsequenzen werden vom Flightcontroller «Naza» erzeugt und an die LED übergeben.
Bereits länger hat sich die Kopter Community mit der Frage beschäftigt, ob diese Signale ab dem Flightcontroller abgegriffen und in eine eigene Lichtsteuerung integriert werden können. Dies ist möglich und wurde auch gemacht. Auch mein DJI F550 hat (bzw. hatte, der Kopter ist mittlerweile verkauft) eine solche Lichtsteuerung. Darum geht es aber in diesem Projekt nicht.
Stattdessen geht es hier darum, die Lichtsignale des Flightcontrollers zu simulieren. Dies aus einem einfachen Grund: Um die oben genannte Lichtsteuerung weiter zu entwickeln musste bisher immer ein Multikopter aufgeschraubt in der Werkstatt stehen, damit die LED Signale abgegriffen werden konnten. Zudem sind diese Signale «langweilig». Der Kopter zeigt immer dasselbe an: Kein GPS Empfang. Dieses Signal ist einfach zu verarbeiten, da es langsam blinkt. Ein ekligeres Signal – da sehr schnell – ist z.B. «Akku leer». Um dieses Signal zu bekommen muss man aber gezielt den Akku leeren, was für dessen Lebensdauer nicht optimal ist.
Zwischendurch dachte ich allen Ernstes daran, mir einen gebrauchten Naza Flightcontroller zu kaufen, um das Problem zu umgehen. Auch gebraucht kostet eine Naza aber gut 200 Franken; Dieses Projekt löst das Problem nun für weniger als 20 Franken.
Als Nebenprodukt erhält man eine Brosche, die wie ein Phantom blinkt. Ideal also, um diese beim nächsten Modellflug- oder Koptertreffen ans Revers zu heften. Auf dem Video ist die erste Version des Projektes zu sehen; Diese sieht noch leicht anders aus als die hier vorgestellte Version.
Stückliste
- Lochrasterplatine 6 Streifen à 12 Löcher
- Steckleiste mit 4 Stiften
- 1 Widerstand 330 Ohm, 1/4W
- 2 Widerstände 220 Ohm, 1/4W
- 1 IC-Fassung 8 Pol
- 1 ATtiny85 Mikroprozessor
- 1 «Common Anode» RGB LED (natürlich geht prinzipiell auch Common Cathode, aber dann müssen Schaltung und C++ Programm angepasst werden). Verwendet wurde diese LED: http://www.seeedstudio.com/depot/datasheet/8mmLED.pdf. Sie war übrig geblieben aus einem 8x8x8 LED Cube Kit.
- Anschlusskabel für Akku
- 1S LiPo Akku, ca. 1Wh Energie
Die Naza hat 5V Logik, deshalb kann das Projekt auch mit 5V betrieben werden. Bei vollem Akku (> 4 Volt Spannung) sollte dies aber nicht notwendig sein: Ein 4V Pegel wird auch von einer 5V Logik als «High» erkannt, und die Simulation ist damit erfolgreich.
Hardware Aufbau
Vorbereiten der Lochrasterplatine
Die Leiterbahnen der Platine müssen an einigen Stellen unterbrochen werden. Man kann dies mit einem Messer machen, oder – wie auf dem Bild – mit einem Dremel. Egal wie man es macht: Nach dem Auftrennen sollte man mit einem Multimeter prüfen, ob tatsächlich kein Strom mehr fliesst.
Bestücken und löten
Alle Bauteile müssen vor dem Löten bestückt werden. Bei dieser Art von Lochrasterplatine neigt das Lötzinn dazu, der Leiterbahn entlang zu laufen. Wenn das benachbarte Bauteil noch nicht bestückt ist kriegt man es danach nicht mehr rein: Das Loch ist mit Lötzinn verstopft.
Deshalb: Alle Bauteile rein und mit Klebeband festmachen. Danach umdrehen und alles verlöten. Die roten Markierungen auf der Platinen-Vorderseite zeigen die unterbrochenen Stellen auf der Rückseite an.
Bei der LED lohnt es sich, die Beinchen mit Schrumpfschlauch zu isolieren. So kann man sie später drehen und biegen wie man will, ohne einen Kurzschluss zu riskieren.
Aufpassen: Bestückt wird die LED aber so:
Die Kathode für «rot» kommt an den 330 Ohm Widerstand, die beiden anderen Kathoden an die 220 Ohm Widerstände. Zu den Widerständen eine Bemerkung: Das Data-Sheet für die LED nennt als maximalen Strom 100mA pro Farbe. Empfohlen wird 20mA. Ein 220 Ohm Widerstand lässt bei 5V 5/220, also 23mA durch. Dies ist auf der sicheren Seite: Die LEDs blinken ja nur, und leuchten nicht dauernd. Zudem wird das Projekt hier an einem LiPo mit maximal 4.2 Volt betrieben, womit wird bei 19 mA wären.
Wer es gerne etwas heller hat kann ohne Bedenken auch 100/150 Ohm Widerstände nehmen. Die LED hält dann halt nur 10 Jahre, statt 100 😉
Die Kerbe beim IC Sockel kommt nach oben:
Gelötet sieht die Rückseite so aus:
An den drei markierten Stellen muss mit Lötzinn eine Brücke gebildet werden. Später kommt zuoberst der Minuspol der Batterie hin, und zuunterst der Pluspol.
Man kann die LED noch etwas aufhübschen und ein Stück Schrumpfschlauch darüber montieren:
Dies sollte man aber nur tun, wenn die Beinchen isoliert worden sind!
Zuletzt wird der Batterieanschluss angelötet. Man kann dies von oben her machen, oder – wie auf dem Bild – von unten her.
So sieht die fertige Lösung aus:
An der Stiftleiste links ist eine originale LED von einem Phantom 1 angesteckt. Da an dieser Stiftleiste das simulierte Signal eines Naza Flightcontrollers ausgegeben wird leuchtet die Original-LED auch genau so, wie wenn sie an einer Naza angeschlossen wäre.
So sieht es dann aus, wenn anstelle der Phantom LED die Lichtsteuerung an den Simulator angeschlossen ist:
Software
Dieser Teil folgt später, für diesmal ist das Wochenende leider zu Ende.
Wer weiss, wie ein ATtiny85 programmiert wird kann sich aber gerne die Firmware holen. Sie ist verfügbar auf Github: https://github.com/tinue/naza-led