"Christmas - the time to fix the computers of your loved ones" « Lord Wyrm

Hilfe bei Gyro->Servo Steuerung...

LTD 15.12.2010 - 22:35 1268 1
Posts

LTD

frecher fratz
Avatar
Registered: Feb 2001
Location: is where it is
Posts: 6334
Ich bin gerade dabei mit meinem Arduino zu experimentieren, mit dem Ziel irgendwann die Weltherrschaft an mich zu reißen und mir einen balancierenden Roboter zu bauen. Für letzteres habe ich bereits den Grundstein gelegt und mir einen Wii-Motion-Plus Controller organisiert. Der Controller ist bereits mit dem Board verbunden und alle drei Achsen funktionieren soweit einwandfrei (von der Ungenauigkeit des 2-Achs-Gyro für Pitch/Roll mal abgesehen). Yaw funktioniert ohne die zwei anderen Achsen auch wunderbar, wird aber mit jeder weiteren berechneten Achse ungenauer. Werden alle drei Achsen berechnet, ist das Ausleseergebnis kaum mehr akkurat.

Mein Problem besteht nun in folgender Überlegung: Drehe ich den Baustein um 90° nach rechts, danach um 90° nach oben, dann 90° gegen den Uhrzeigersinn und schlußendlich mit einer weiteren 90° Drehung zurück in die Ausgangsposition, hängt mein Servo um 90° verdreht nach rechts fest. -> klar, ich habe 90° Yaw benutzt, danach nurmehr Pitch+Roll.

Ich als mathematisches Genie habe mir nun folgendes überlegt: ich nehme einen Ursprung, um den eine Einheitskugel (gibts soetwas? Sozusagen das Volumen-Pendant zum Einheitskreis) liegt und bewege mein Servo von nun an auf der Kugeloberfläche, die durch irgendetwas (Geographische Koordinaten?!) berechnet werden können sollte.

Tja und aus dieser waghalsigen Überlegung heraus, habe ich - genau garnichts geboren. Kann mir einer von euch da weiterhelfen? Ich bekomme vom Gyro pro Achse (-90) - 90 als Wert, je nach Drehung. Das heißt ich brauchte nur eine Hemisphere in der ich mich bewegen kann...

Eine Formel würde mir schon reichen =), programmieren könnte ich das dann selbst!

Thx a lot

Taltos

Here to stay
Avatar
Registered: Jan 2004
Location: Wien
Posts: 1520
muss zugeben ich weiß jetzt nicht genau was genau das problem ist, aber vielleicht helfen dir euler winkel weiter:
http://de.wikipedia.org/wiki/Eulersche_Winkel
Einziges Problem: der Gimbal-Lock, wenn man durch die Gimbal-Lock, welcher aber bei dir wahrsch. eh nicht relevant wird, und den man durch Quaternionen los wird.

Was willst du jetzt eigtl genau erreichen?
Arduino: Uno, oder welches?
Kontakt | Unser Forum | Über overclockers.at | Impressum | Datenschutz