Forum: Mikrocontroller und Digitale Elektronik Rotation von Körper im Raum berechnen mit Magnetfeldsensor


von M. M. (blackcow)


Lesenswert?

Gegeben ist ein konstantes Erdmagnetfeld mit Vektor B. Ein 
Magnetfeldsensor misst die Komponenten (3-Dimensional) von B relativ zu 
ihm. In einer bestimmten Position wird der Sensor ausgelesen. Anhand 
dieser Daten hat man nun den Vektor B im Bezugssystem. Nun wird der 
Sensor irgendwie um seine 3 Achsen gedreht. Er misst nun B'. Kann ich 
anhand der Daten die 3 Rotationswinkel bestimmen?

Intuitiv würde ich sagen nein, da man das Sensorsystem zum Bezugssystem 
um den Vektor B drehen kann.

Rechnerisch gilt aber B = T * B' und Transponiert(T) * T = 1. T ist die 
Transformationsmatrix mit 9 Unbekannten. Das Gleichungssystem hat aber 
12 Gleichungen, bzw. 9 unabhängige Gleichungen. Damit sollten sich die 9 
Unbekannten doch ausrechnen lassen? Allerdings ist (Transponiert(T) * T 
= 1) aber ein nichtlineares Gleichungssystem. Liegt da die Lösung des 
Denkfehlers?

Wenn ich einen zweiten Bezugsvektor hätte, so könnte ich dieses Problem 
lösen oder? Man könnte rein theoretisch mit einer Spule kurz ein anders 
gerichtetes Magnetfeld erzeugen, dann hätte man zwei linear unabhängige 
Referenzen.

von g457 (Gast)


Lesenswert?

> Kann ich anhand der Daten die 3 Rotationswinkel bestimmen?

Nein, und Du schreibst ja auch schon warum:

> [..] da man das Sensorsystem zum Bezugssystem um den Vektor B drehen kann.

Das war jetzt einfach.

> Wenn ich einen zweiten Bezugsvektor hätte, so könnte ich dieses Problem
> lösen oder?

Ja.

HTH

von ping (Gast)


Lesenswert?


von ping (Gast)


Lesenswert?


von W.A. (Gast)


Lesenswert?

M. M. schrieb:
> Man könnte rein theoretisch mit einer Spule kurz ein anders
> gerichtetes Magnetfeld erzeugen, dann hätte man zwei linear unabhängige
> Referenzen.

Auf der Erde hat man zusätzlich zum Magnetfeld das Schwerefeld.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.