Sticki

Aus HeliWiki
Zur Navigation springen Zur Suche springen

Sticki, was ist denn das?

Oft gibt es bei Videos von Modellhubschraubern (oder Flugzeugen) den Wunsch die Knüppelbewegungen des Piloten zu sehen. Sei es zu Ausbildungszwecken oder um zu sehen was beim Crash gesteuert wurde.

Natürlich kann man "einfach" eine Kamera auf den Sender richten, hier wurden schon merkwürdige Konstruktionen gesichtet bei denen der Pilot eine Art Rucksack mit Stativ trägt.

Nachdem ich mich etwas mit Microcontrolern beschäftigt habe kam mir die Idee das anders zu machen: Die Knüppelbewegungen werden direkt von dem Microcontroller über die Schülerbuchse aufgezeichnet.

Sticki ist nur der Projektname und kommt natürlich von den Knüppeln (Sticks) aber hört sich auch etwas wie das engl. "sticky" an, also kleberig und ich vermute das wird etwas an mir haften bleiben das Projekt.

Wahrscheinlich ist die Idee nicht neu und es gibt sowas schon zu kaufen, aber hey, ich bin doch Modellbauer und Hobby-Bastler ;-)

Lizenz

Es soll alles OpenSource werden. Der Code GNU GPL, die Hardware/Ideen/Designs sollen eine ähnlich freie Lizenz erhalten (Vorschläge willkommen)

Stand der Dinge

Nachdem das Projekt erstmal still gelegt wurde, da es nicht möglich ist die Lehrer-Schüler Buchse parallel zum HF Betrieb zu nutzen, wird es jetzt von Patrick F. (sungamer) weitergeführt. Weiter Updates werden hier auf jeden Fall bekannt gegeben.
Ein kleines Preview gibt es unter [1].

  • eine Funke ist am Arduino Board angeschlossen
  • die Werte des PPM Telegramms werden korrekt erkannt
  • Ausgabe per Seriell->USB Verbindung
  • 120°TS Mischung wird "entmixt"


Versuchsaufbau
Screenshot der Ausgabe und "IDE"
Datenanzeige in Blender (Echtzeit)
Hardware V2 ;-)


Todo und Ausblick

  • 2. Taster? Einer zum Kalibrieren und einer zum Start/Stop? Oder Lange/Kurz drücken
  • C lernen (hier kommt Hilfe von Chris)
  • DONE: Entmischen (120° TS) der Signale
  • ein weiteres Feld mit einer Zeitkonstante (zum nachträglichen Syncen mit dem Video)
  • wirkliches Speichern der Daten (eventuell auf per i2c angebundenem Speicher)
  • DONE: Nullpunktkalibrierung
  • Oversampling der Werte
  • Was passiert bei Systemen mit anderem Neutralimpuls?
  • WORK (C ist mir sooo fremd): Kalibrierung der Sticks auf Min/Max Ausschläge und Funktionen
  • (automatische) Erkennung von verschiedenen PPM Telegrammlängen, plöd das es in C keine dynamischen Längen für Arrays gibt
  • möglichst viel Funktionen sollen schon auf dem Board laufen (ich frag mich ob das klug ist, aber Leistung sollte das Board genügend haben)
  • Synchronisation mit Video (mit Start der Aufzeichnung blinkt eine LED auf und es wird ein Ton ausgegeben (die gute alte Filmklappe), damit lässt sich dann im Schnittprogramm leicht synchronisieren)
  • das Microprozessorboard gibts auch viel kleiner ([2] oder [3])
  • Erweiterung zu richtiger "BlackBox", je nach Anwendungsfall kann sie auch im Heli mitfliegen wenn man an ein Summensignal der PPM Telegramme kommt. Dazu könnte noch Höhe, Strom, Drehzahl etc. aufgezeichnet werden. Logger auf Basis vom Microcontrollern gibt es aber schon genug und ist nicht Ziel des Projekts

Datenauswertung

  • Pythonprogramm kann die Daten auslesen
  • Blender-Anwendung zeigt die Knüppelgewegungen in Echtzeit an oder berechnet eine Animation die dann im Videoschnitt eingebunden werden kann. Da Blender auch den Videoschnitt beherrscht ist es auch denkbar, das Blender nur mit dem Video gefüttert wird und dann ein fertiges Video mit Knüppelbewegungen ausgibt

Dateien

Hier gibt es den ersten Code:

V0.01 Ausgabe der Kanäle über die USB/Serielle Schnittstelle

V0.02 Kleinere Änderungen, vor allem im Ausgabeformat

Serialtest.blend Erste Datenverarbeitung in Blender (Echtzeit), noch sehr "dumm", reines Polling. Es wird Blender 2.45, Python 2.5 und pyserial benötigt.

Links

- Neuer Code zum lesen von PPM Telegrammen: [4] (nicht Pinkompatibel zu Hardware V2)

- Schülerbuchsen: http://www.mftech.de/buchsen.htm

- PPM Telegramm http://www.mftech.de/ppm.htm