Alle GY-85 module (Gyroscope, Accelerometer, eCompass) defekt?

Hallo!

Ich würde gerne diesen Headtracker nachbauen, also ein Teil, das bewegungen in allen 3 Dimensionen erfasst und diese dann weitergibt.

Bei mir kommen dann noch ein paar Erweitungen dazu um es wireless zu machen.

Das Problem ist, dass die "Erweiterungen" perfekt funktionieren, aber das Headtracken selbst funktioniert einfach nicht sauber.
Ich teste momentan nur mit dem originalen Code von Dennis Frie und Mark Mansur, damit ich ausschließen kann, dass der Fehler von mir kommt.

Bei RCgroups habe ich schon nachgefragt, aber hier ist die Hilfe kompetenter als irgendwo sonst (!).

Was geht genau nicht?
Der Headtracker hat einige algorythmen die die Bewegungen erfassen und driftfrei die Rotation um drei Achsen erfassen und weitergeben soll.
Während Rotationen um die Z-Achse (pan) wunderbar funktionieren, wird bei Bewegungen um die X- oder um die Y-Achse auch eine Bewegung um die Z-Achse erfasst (was nicht sein darf).

Ich habe gedacht, dass mein GY-85 modul defekt ist und habe mir daher schon 2 neue von unterschiedlichen Händlern gekauft.

Bei allen Modulen existiert das gleiche Problem.
Natürlich könnte eine komplette Marge der Module defekt sein - und es gibt tatsächlich auch immer wieder mal Leute die diesen Fehler melden, aber 3 defekte Module mit dem gleichen Fehler, kann ja kaum noch ein Zufall sein oder?

Damit ihr meinen Fehler besser visualisiert bekommt, gibts jetzt noch was für die Augen:
Im Anhang ist ein Bild und ich habe hier ein Video gemacht:

Hier ist noch jemand mit einem ähnlichem(gleichen?) Problem:

Bei dem war nach einem Neukauf (ersetzen dieses GY-85) der Fehler beseitigt...

Habt ihr Ideen, was ich tun kann?

headtracker.jpg

Ich will das gleiche bauen, meine gy85 sind aber noch unterwegs.

Wie machst du die wireless Übertragung?

Über nRF24L01+ module.

In der Fernbedienung sitzt ein ProMini, ein nRF24L01+, ein 3.3V AMS1117 und ein Kondensator und der headtracker besteht aus nem Nano, dem GY-85, nem 3.3V AMS1117, nem Kondensator und dem nRF24L01+.

Das ganze ist jetzt noch nicht großartig getestet worden im Zusammenhang mit Nutzung der Funke (ob die 2.4Ghz Signale sich stören), aber bisher konnte ich bei kleinen Tests (mein Kopter fliegt noch nicht) noch keinerlei Probleme feststelllen, was die Übertragung angeht...

Wenn es bei dir funktioniert, kann ich dir mal die GY-85 Module zuschicken und du testest sie gegen?
Dann weiß ich zumindest mit Gewissheit, ob die Module ok oder defekt sind.

Das Projekt sieht ja eine PPM Übertragung von 2 Kanälen per L/S-Kabel vor. Wie machst du das da? Schickst du die Daten rüber und generierst du dann das PPM-Signal oder schickst du PPM über die nRF2401?
Hast du mal die Verzögerung durch den Funk gemessen?

Leon333:
Während Rotationen um die Z-Achse (pan) wunderbar funktionieren, wird bei Bewegungen um die X- oder um die Y-Achse auch eine Bewegung um die Z-Achse erfasst (was nicht sein darf).

Damit ihr meinen Fehler besser visualisiert bekommt, gibts jetzt noch was für die Augen:
Im Anhang ist ein Bild und ich habe hier ein Video gemacht:
https://www.youtube.com/watch?v=21BAifoqk64

Ich kann in dem Video keinen großen Fehler sehen. Die Z-Achse (blau) reagiert doch auf dein Gewackel mit der Hand beim Umgreifen des Sensors. Den Sensor in der Luft mit störischem USB-Kabel zu drehen, ist alles andere als exakt. Dagegen bewegst du den Sensor beim ersten Schwenken um die Z-Achse gut geführt vom Tisch.

Beim drehen um die Längsachse dürfen nicht Pan und Tilt gleichermassen ausschlagen. So arg wackelt er nun doch nicht.

@Leon: Aber probier das ganze doch mal mit Servos dran aus.

@Theseus:
Also selbst wenn ich so arg wackeln WÜRDE (was man bei Beobachtung des Geodreiecks als Referenz klar ausschließen kann), dann wäre ich jetzt gerne auf die Erklärung gespannt, warum sich Pan und Tilt (blaue und gelbe Kurve) immer genau proportional umgekehrt verhalten bei Drehung um Tilt.
Müsste ja schon ein arger Zufall sein, dass sich mein "gewackel" absolut gleichmäßig verhält.

Als Video davon mit Servos habe ich momentan nur das hier:

Den Effekt sieht man da aber nicht besonders gut (ab 0:16 etwa) aber er ist definitiv da...
Bei Drehung nach oben, gehen die Servos nach oben und nach rechts, bei Drehung nach unten, bewegen sich die Servos nach unten und links.
Außerdem sieht man da einen kleinen Drift, also das die Servos in Pan langsam zurück drehen am Anfang, trotz Stillstands... Aber das ist nicht das größte Problem. Den Drift würde ich in Kauf nehmen, wenn die Bewegungen wenigstens unabhängig voneinander erfasst würden.

Zur Übertragung:
Ich sende die "Rohdaten" per Funk und wandel sie dann im ProMini in der Fernbedienung in PPM um.
PPM per Funk sollte recht bescheiden funktionieren, da PPM doch sehr zeitkritisch ist und man hier unnötig Aufwand für das modulieren und das demudulieren benötigen würde (weil einfach PPM kopieren geht nicht... Da müsste man es erst empfangen, verstehen und dann ein neues PPM draus machen für die FB).

hab gerade auch mal 10 von den Funkmodulen bestellt, gabs bei Amazon prime für unter 10€.

Ich gehe aber dann nicht über L/S auf die Funke, sondern will intern auf die Potieingänge.

Der Preis ist für Amazon ziemlich gut.
Ich hatte für 2 Jahren 5 Stück für 2,57€ aber dafür mit 5 Wochen Versandzeit gekauft :slight_smile:
Wenns nicht zeitkritisch ist lohnt sich also teilweise ein Blick nach China.

Am Samstag ist mein 4. GY-85 Modul gekommen. (ich gebs nicht auf :smiley: )

Das funktioniert immerhin schonmal im Test NUR mit Arduino (die anderen vorher nicht).
Aber es funktioniert mit nRF24L01 auch nicht sauber.

Das lustige ist, dass es mit nRF24L01 im plot aussieht wie die 3 anderen defekten.

Das erste Modul hatte ich nicht ausgibig getestet vor dem verlöten mit dem nRF24L01.
Das 2. und 3. Modul jedoch schon und es war das Problem wie vorher beschrieben.

Das 4. Modul funktionierte auf dem breadboard super, verbaut und mit dem angepassten Sketch (zum Funken) mit gleichem Fehlverhalten wie die vorherigen.
Sobald ich das senden per nRF24L01 auskommentiere

//radio.write(SensValues, sizeof(SensValues));

funktioniert es alles wieder super (bis auf das Senden per Funk :D)

Die 3 vorherigen Module habe ich nachdem ich das wusste gestern nochmal ausgiebig am breadboard mit originalem Headtracker-Sketch (ohne nRF24L01 Funk) getestet.
Die sind aber definitiv defekt und zeigen alle das Verhalten, dass das 4. Modul nur beim senden zeigt.

Meine erste Theorie war/ist, dass hier die Leitungen zum nRF24L01 irgendwie durch Magnetfelder/Induktionsströme/ähnlichem die Sensoren des GY-85 stören.

Allerdings ist mir auch aufgefallen, dass die GUI zum headtracker unterschiedlich schnell plottet, wenn das nRF24L01 sendet oder nicht.

Ein Video dazu hab ich hier gemacht:

Jetzt ist nur die Frage, woran das genau liegt und wie man das behoben bekommt.
Das doofe für das "debugging" ist, dass das Modul schon verlötet ist... ich muss daher also nochmal alles zerpflücken, da die anderen 3 Module ja zum debuggen nicht taugen (da gehts ja immer nicht).

Und ich hab mir 10 Funkmodule gekauft ..... :angry:

Kannst ja widerrufen, aber ich könnte mir vorstellen, dass man das Problem irgendwie gelöst bekommt... Erstreckt wenn wir zu zweit daran rumbasteln :slight_smile:
Notfalls könnte ich dir auch noch 2 schicken.

Ich hab nur gerade extrem wenig Zeit mich der Sache richtig anzunehmen.

Falls jemanden spontan Ideen kommen, woran das liegen könnte, dann immer her damit. Ich komm wahrscheinlich frühestens am Wochenende dazu.

Haben nur 10€ gekostet. kann man ja immer mal brauchen.

Und hinkriegen tun wir das auch noch.

Ich hab mal am Wochenende mit dem Headtracker in ner älteren Fatshark rumgespielt. War nicht so der Bringer. Hoffentlich ist der GY85 besser

Hmm... ich dachte du hättest hier nochmal geschrieben, dass bei dir 2 angekommen sind und ob ich weitergekommen bin.
Allerdings ist hier nichts (mehr?)....
Frisst das Forum Beiträge?

Also ich bin bisher nicht mehr dazu gekommen. Endjahreszeit :wink:
Das wird aber im neuen Jahr bestimmt noch was werden.

Vielleicht ist es Sinnvoll, wenn wir uns mal virtuell über Skype o.ä. "treffen" und dann lieber mal ne Stunde reden&testen, als hier über Wochen Beiträge zu schreiben.
Falls du Interesse daran hast, dann schreib mir mal ne PN :slight_smile:

Solltest du weiter kommen, lese ich hier natürlich gerne deinen Fortschritt :wink:

Stimmt, Der Beitrag fehlt. Und so wie es aussieht, 20 Posts mehr.

Bei mir funktioniert es soweit, auch das ansteuern der digitalen Potis. Damit ersetzen wir die Potis in einer Hitec Aurora, die bei LS keine vernünftige Einzelkanalübergabe macht.

Allerdings habe ich auch noch das komische Verhalten, das beim Nicken der Pan-Servo sich etwas nach links bewegt. Trotz Kalibrierung

Video