20€ WMP-Headtracker

chris4711

Erfahrener Benutzer
#21
ja, aber es ist egal ob der Microcontroller nun ein invertiertes oder "richtiges" PPM-Signal bekommt. Die Software muss ja später sowieso beides verarbeiten können ;) Also brauch ich mir gar keine Mühe machen um das Signal per Hardware wieder richtig herum zu drehn.

@Telefisch:
Hihi :D Ja so ein Soundkarten-Kabel-Ding hab ich auch. Aber das ist äußerst dürftig. I2C kontrollieren kann ich damit zum Beispiel nicht weil 400kHz schon zu viel sind. Und langsamere Signale sind stark verzerrt. Beim PPM-Signal seh ich auch nix weils mir ständig hin und her hüpft... da hilft diese Trigger Funktion auch nicht viel. Was für Software hast du denn da? Meine heißt "Visual Analyser"
 
#22
mr..speed hat gesagt.:
Habe mich auch schon mit dem Problem beschaeftigt aber noch nicht zum laufen bekommen. Habe MC3030(anderes Sendemodul)+HK HT+dieses Bastelmodul vom Israeli+12ch Rx.
Haengt die pulse hinten dran. Macht aus 2 ppm streams einen. A+B==>output, als B kannst du auch Schalter verwenden, bis zu 4.

Vielleicht ein paar Punkte die du beachten solltest.
- pos/neg ppm signal verarbeiten, Eingang sowie Ausgang
- warum nicht die HT pulse hinten dran haengen, macht aus deiner x Kannal Fernsteuerung eine x+2 Kanal, oder x+y Kanal, natuerlich mit einem groesseren Rx. Kanaele kann man nie genuegend haben.
- ppm Eingaenge nicht zu hochohmig sonst bringen die 35MHz das ganze ausser Tritt, mein Problem gerade.
Zum PPM-Signal...
es muss sowohl am Eingang als auch am Ausgang die gleiche polarität (invertiert oder eben nicht) anliegen.
Spielt das denn wirklich eine Rolle?
Ich würde so vorgehen:
Beim Einschalten Sync-Lücke suchen und schauen ob sie negativ oder positiv ist.
Alle durchgeschliffenen Kanäle werden eh 1:1 weiter gegeben.
Dann musst Du nur noch die gesamtimpulslänge eines Impulses ermitteln, falls die ein oder andere Funke unterschiedlich lange Impulse verwendet (<>2ms).
Jetzt kommt das HT Signal.
Je nach Polarität machst Du den Impuls High oder die Pause High, sprich die gesamt-Pulslänge (Kanallänge) minus den Impuls.
Damit wäre dann externes invertieren M.E. über.

Was die Features angeht gebe ich mr.speed zwar Recht aber ich denke für den ersten Schritt ist es besser die letzten beiden Kanäle auszutauschen da dann keine größeren Empfänger nötig sind und 8-Kanal Anlagen auch ne Chance haben.
Klar, bei Jeti 2G4 spielt das keine Rolle aber 35MHz Empfänger mit 10 Kanälen sind schon eher selten.
Das könnte man im zweiten Step vielleicht programmierbar machen.
Dann kommen wir aber auch in den Bereich, wo es Sinn macht sich über einen neu entwickelten Empfänger Gedanken zu machen.
Im Grunde bräuchte man hier ja nur einen Empfänger mit Summensignal und baut "einfach" eine "Treiberstufe" dahinter. Das sollte sich mit nem recht einfachen Schieberegister bewerkstelligen lassen.
Aber wie gesagt, das wäre M.E. der zweite Schritt.:S:

Gruß Carsten
 
#23
Ja, Du hast schon Recht...
wirklich toll ist das nicht aber um zu sehen, ob sich die PPM-Impulse verändern reicht es i.d.R.
 

mr..speed

Erfahrener Benutzer
#25
Telefisch hat gesagt.:
Zum PPM-Signal...
es muss sowohl am Eingang als auch am Ausgang die gleiche polarität (invertiert oder eben nicht) anliegen.
Spielt das denn wirklich eine Rolle?

==> Ich habe ein pos ppm vom tx und ein neg ppm vom HT oder anders rum. Und je nachdem welches Tx modul ich nehme brauche ich ein pos oder neg ppm, ok ich gehe direkt aufs Sendemodul.
Ich würde so vorgehen:
Beim Einschalten Sync-Lücke suchen und schauen ob sie negativ oder positiv ist.
Alle durchgeschliffenen Kanäle werden eh 1:1 weiter gegeben.
Dann musst Du nur noch die gesamtimpulslänge eines Impulses ermitteln, falls die ein oder andere Funke unterschiedlich lange Impulse verwendet (<>2ms).
Jetzt kommt das HT Signal.
Je nach Polarität machst Du den Impuls High oder die Pause High, sprich die gesamt-Pulslänge (Kanallänge) minus den Impuls.
Damit wäre dann externes invertieren M.E. über.

Was die Features angeht gebe ich mr.speed zwar Recht aber ich denke für den ersten Schritt ist es besser die letzten beiden Kanäle auszutauschen da dann keine größeren Empfänger nötig sind und 8-Kanal Anlagen auch ne Chance haben.
Klar, bei Jeti 2G4 spielt das keine Rolle aber 35MHz Empfänger mit 10 Kanälen sind schon eher selten.

==> nimm einfach einen 12ch, die restlichen 2 bekommst du auch noch voll wenn du mal einen uCtrl drin hast. Es gibt auch Sender an denen man Kanaele abschalten kann. ppm7, ppm9 ...
Das könnte man im zweiten Step vielleicht programmierbar machen.
Dann kommen wir aber auch in den Bereich, wo es Sinn macht sich über einen neu entwickelten Empfänger Gedanken zu machen.
==> nimm einfach einen 12ch rx oder bei 6/7ch TX reicht ein 9ch rxIm Grunde bräuchte man hier ja nur einen Empfänger mit Summensignal und baut "einfach" eine "Treiberstufe" dahinter. Das sollte sich mit nem recht einfachen Schieberegister bewerkstelligen lassen.
Aber wie gesagt, das wäre M.E. der zweite Schritt.:S:

Gruß Carsten
Siehe ==> oben, man sollte es aber gleich in Betracht ziehen wenn man damit anfaengt.
Ansonsten gebe ich dir Recht.
 

chris4711

Erfahrener Benutzer
#26
@mr..speed:
Bis jetzt kann man im Code per Variable einstellen an welcher Stelle die HT-Impulse beginnen sollen. Wenn man z.b. 2 einstellt belegt der HT die Impulse 2 und 3. Wenn man 6 einstellt nimmt er die Impulse 6 und 7 und so weiter. Es ist also auch möglich hinten anzuhängen.

Und wegen des PPM-Eingangs: bis jetzt wird das PPM-Signal der Funke direkt an den µC Pin angeschlossen. Das funktioniert gut in meiner MX-12. In Zukunft soll aber noch die invertierende Schaltung von weiter oben dazwischen um auch PPM-Signale mit Amplituden größer 3.3V zu unterstützen. Sollte gehen oder?
 

mr..speed

Erfahrener Benutzer
#27
chris4711 hat gesagt.:
@mr..speed:
Bis jetzt kann man im Code per Variable einstellen an welcher Stelle die HT-Impulse beginnen sollen. Wenn man z.b. 2 einstellt belegt der HT die Impulse 2 und 3. Wenn man 6 einstellt nimmt er die Impulse 6 und 7 und so weiter. Es ist also auch möglich hinten anzuhängen.
[/b]

Und wegen des PPM-Eingangs: bis jetzt wird das PPM-Signal der Funke direkt an den µC Pin angeschlossen. Das funktioniert gut in meiner MX-12. In Zukunft soll aber noch die invertierende Schaltung von weiter oben dazwischen um auch PPM-Signale mit Amplituden größer 3.3V zu unterstützen. Sollte gehen oder?
Gut.
Wegen Amplitude wuerde auch eine Z-Diode und ein Vorwiderstand genuegen ausser du willst einen besseren Puls.
 
#28
chris4711 hat gesagt.:
In Zukunft soll aber noch die invertierende Schaltung von weiter oben dazwischen um auch PPM-Signale mit Amplituden größer 3.3V zu unterstützen. Sollte gehen oder?
Hmm...
wenn am Eingang eine so hohe Amplitude anliegt, wie sicher ist es dann, dass das HF-Modul auch eine so hohe Amplitude benötigt?
Dann müsste nämlich am Ausgang wieder ein Verstärker dran.
Aber das sollte man vorher mit verschiedenen Funken testen.
Ich könnte mit ner WFT09 mit 35MHz und mit 2G4 Jeti-Modul testen.
 

chris4711

Erfahrener Benutzer
#29
Kurzer Zwischenbericht:

Ich habe auf der Aktuellen Platine die (modifizierte) Schaltung von Mictronic am Ein und Ausgang vorgesehen. Dank eines kürzlich erworbenen Oszilloskops (JUHUUUU) konnte ich das Ganze auch schon genau testen. Es hat sich gezeigt, dass es für meine Zwecke tatsächlich ausreichend ist nur einen Transistor zu verwenden.

Die Software wurde dahingehend modifiziert, dass sie "normale" und invertierte PPM-Signale verstehen sollte (keine Testmöglichkeit). Am Ausgang sollte immer der PPM-Signal-Typ heraus kommen, der auch in den HT hinein geht. Die Amplitude des Ausgangs-Signals lässt sich frei zwischen 0,7V und VCC einstellen, so kann es für jede Funke passend eingestellt werden.

Einziges "Problem" könnte jedoch noch die Flankensteilheit am Ausgang sein. Habe dazu ein Bild angehängt. Der Blaue Graph zeigt eine steigende Flanke des PPM-Signals wie es aus der MX-12 herauskommt. Der Orange Graph zeigt die "gleiche" Flanke wie sie aus dem HT heraus und wieder in die MX-12 hinein geht. Ich werd mich noch dran machen die Ecke etwas zu entschärfen ;) Eine dritte Platinen-Version (mit Plätzchen für Kondensator) müsste Ende diese Woche bei mir ankommen.2267
 

Anhänge

mr..speed

Erfahrener Benutzer
#30
Mit einem Schmitttrigger wie cd4093 kann man schoene Impulse/Flanken erzeugen und noise rausfiltern, seit dem funktioniert es bei mir, da er 4x invertiert kann man auch gut die pulse umdrehen pos/neg. Damit wuerde man auch die mictronics Schaltung nicht mehr brauchen.
 

chris4711

Erfahrener Benutzer
#31
Hmm, hört sich auch interessant an. Muss ich mir mal anschauen. Aber so weit ich das jetzt sehe brauchts das bei mir gar nicht. Hab ja gar keine Störungen am Eingang die Hysterese erfordern würden. Und das Signal nach der Emitterschaltung ist eh viel ZU schön :p bzw. zu steil. Ich werde versuchen die Flanken genauso "rund" zu machen wie sie auch im Ursprünglichen Signal der MX-12 sind.
 
#34
Sicher dass die sich was gedacht haben?
würde mich eher wundern, wenn ich mir andere PPM-Signale so anschaue.
Dann gäbe es außerdem mehr Probleme mit Zubehör.
Ich würde es so lassen.
 

ygramul

Erfahrener Benutzer
#35
Hi chris4711

chris4711 hat gesagt.:
ich habe die letzen Monate immer wieder versucht mir einen billig Headtracker selbst zu bauen. Ich habe mehrere verschiedene Sensoren und Microcontroller ausprobiert und bin schließlich bei einem "Wii Motion Plus" Sensor-Board für ~8€ und einem XMega32A4 für unter 5€ hängen geblieben. Den kompletten Headtracker kann man für unter 20€ aufbauen.
echt cooles Projekt! Wo hast Du denn das WMP Sensor Board für den Preis herbekommen?
 

chris4711

Erfahrener Benutzer
#36
Das Sensorboard gibts auf ebay von chinesischen Händlern.
Ich vermute, zwar, dass diese Module nicht Original sind aber das stört ja nicht. Mein Modul funktioniert recht gut. (Hat einen Invensense IDG-650 und einen Invensense ISZ-650 drauf

Eigentlich wollte ich noch ein "Ein-Tasten-Menü" programmieren um die Empfindlichkeit, die Servowege, Servomittelstellungen und Imulsnummern einstellen zu können. Aber leider komme ich kaum mehr zum Basteln, da vor ein paar Wochen mein Studium begonnen hat und ich nur noch am Wochenende bei meiner "Bastelausrüstung" bin :(
 

ygramul

Erfahrener Benutzer
#37
Reine Boards finde ich leider nicht, weder über Google, noch über de oder com Bucht. Hast Du vielleicht n Link oder n paar griffigere Suchwörter?

Merci!
 

chris4711

Erfahrener Benutzer
#38
Nein nein, das hab ich schon komplett gekauft. Mit Plastik-Gehäuse und Gummiüberzug für die ganze Wii-Fernsteuerung ;)

Hier z.b.:
Link
 

chris4711

Erfahrener Benutzer
#39
So, das Projekt ist für mich (vorerst) abgeschlossen. Am Schreibtisch funktioniert das Ding relativ gut. Im Flug konnte ich es leider noch nicht testen, da mir die Mechanik am Flieger noch fehlt. Bis es so weit ist bastle ich an einem neuen Projekt.


Im Anhang befinden sich die Eagle-Dateien und der Code incl. .hex-Datei.
Bis jetzt müssen alle Einstellungen (Servoweg, Kanalnummer, Emfpindlichkeit usw.) direkt im Code vorgenommen werden. Ein Menü müsste erst noch programmiert werden. Ein Knopf und eine LED dafür befinden sich bereits auf der Platine.


Die Platine muss einfach so bestückt werden wie es in der Eagledatei eingezeichnet ist. Die Vorder- und Rückseite der Platine müssen an zwei stellen verbunden werden. An welchen Stellen das ist sieht man im Schaltplan. Der Spannungsregler und die Stiftleiste zur Programmierung müssen ebenfafalls auf beiden Seiten festgelötet werden, damit GND und VCC der Vorder- und Rückseite verbunden werden. Wenn das mit "CNT" (Center) beschriftete Pad mit GND verbunden wird gehen die Servos auf die eingestellte Mittelstellung. Hier kann und sollte also ein Knopf zum zentrieren angelötet werden.

Der Headtracker muss (wenn er fertig gelötet und programmiert ist) in die PPM-Leitung zwischen Fersteuerung und Sender geklemmt werden. Mit Hilfe des Drehpotis kann der Pegel des Ausgangssignals so eingestellt werden, dass er dem des Eingangssignals entspricht.


Achja. Ich bin in keinster weise ein Profi im Entwurf, Aufbau und der Programmierung von derartigen Schaltungen. Es kann also gut sein, dass sich Fehler oder Unsauberkeiten eingeschlichen haben.
 

Anhänge

#40
Riesen großes Dankeschön, dass Du uns Deinen aktuellen Stand überlässt.
Hoffentlich finde ich bald die Zeit das alles auszutesten und weiter zu programmieren, sofern nötig. Oder vielleicht findet sich wer anders, der weiter machen kann.

Also danke nochmal. Gruß Carsten.
 
FPV1

Banggood

Oben Unten