Dreidimensionale Mathematik
von JasonMal wieder ärgere ich mich, nicht so sehr in Mathematik aufgepasst zu haben. Und es geht sogar nur um Geometrie, wenn auch dreidimensionale.
Worum es geht: Um einen 3D-Beschleunigungssensor. Dieser soll mir mitteilen, in welcher Lage sich die Hand eines Benutzers befindet. Die Theorie dazu ist sehr einfach: Durch die Erdanziehungskraft lässt sich die Lage wunderbar bestimmen indem man die Schwerkraft misst und in eine Richtung umrechnet. Recht einfache Trigonometrie.
Aber leider ist in der Praxis noch ein schönes Stückchen Physik im Weg. Zum einen ist der Sensor nicht wirklich genau, er schwankt recht stark, also müssen die Daten erst über mehrere Messungen gemittelt werden. Zum anderen sendet der Sensor nicht Winkel oder normierte Längen, sondern nur Stromwerte. Die müssen also nachträglich normiert werden (in sinnvolle Einheiten umgerechnet werden). Letzteres kann man machen indem man eine Kalibrierung vornimmt, während der man die Extremwerte der Sensoren abfragt. Das ergibt dann sechs Meßwerte die man umrechnen kann.
Dabei tauchen dann die nächsten Probleme auf: Der Sensor "guckt" nicht in dieselbe Richtung, wie die Finger bzw. der Handrücken ausgerichtet ist. Weil er recht locker und etwas verdreht in seiner Halterung liegt, hat er eine Abweichung auf allen drei Achsen. Das Kalibrierungsprogramm muss also einen Maximalwert errechnen aus einer mehrdimensionalen Abweichung, mit großem Rauschen und ohne gute Referenzwerte.
Und am Ende muss das Ganze auch noch nachvollziehbar dokumentiert werden…