Frage

Ich bin reposting tatsächlich eine Frage aus dem iPhone-Entwicklungs-Boards. Ich fragte sie nicht, aber ich fand es bei dem Versuch, seine Antwort zu finden. Niemand hatte geantwortet noch da, so dass ich dachte, ich würde versuchen, es hier veröffentlichen.

Vielen Dank im Voraus für jede Hilfe!

Kennt jemand irgendwelche Einzelheiten über den Algorithmus aus den rohen xyz Werten von CLHeading die magnetische Überschrift der Berechnung? Ich bin sicher, es muss ein allgemeiner Ansatz dazu sein, die auch für verschiedene Magnetometer funktioniert.

War es hilfreich?

Lösung

Wenn Sie nicht den trueHeading Wert verwenden möchten, und unter der Annahme, dass der Kompass perfekt horizontal liegt, kann die Position auf diese Weise berechnet werden:

  • (y> 0) Position = 90 - atan2 (x, y) * 180 / pi
  • (y <0) Position = 270 - atan2 (x, y) * 180 / pi
  • (y = 0, x <0) Position = 180,0
  • (y = 0, x> 0) Position = 0.0

(diese sind von http://www.magneticsensors.com/datasheets/an203.pdf )

... plus die Überschrift korrigiert werden muss Magnetische Abweichung und Magnetische Deklination

bei der Kompass nicht horizontal ist, sollte nur die horizontale Komponente verwenden (man die Z-Achse nicht ignorieren kann) durch Projizieren des (x, y, z) Vektor zu einer Ebene, die zur Erdoberfläche parallel ist, und dann berechnen der Position, der von dieser projizierten x und y.

Hoffe, es hilft.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top