Получение магнитного севера от магнитометра xyz (iPhone 3.0)

Я на самом деле перепечатываю вопрос с плат разработки iphone. Я не спрашивал его, но нашел, когда пытался найти ответ. Никто еще не ответил Там, поэтому я подумал, что попробую разместить его здесь.

заранее спасибо за любую помощь!

кто-нибудь знает какие-либо особенности алгоритма вычисления магнитного курса из необработанных значений xyz CLHeading? Я уверен, что должен быть общий подход к этому, который работает для разных магнитометров также.

1 ответов


Если вы не хотите использовать trueHeading значение, и предполагая, что компас лежит совершенно горизонтально, заголовок можно вычислить следующим образом:

  • (y>0) заголовок = 90-atan2 (x,y)*180 / pi
  • (y
  • (y=0, x
  • (y=0, x>0) заголовок = 0.0

(это из http://www.magneticsensors.com/datasheets/an203.pdf)

... плюс заголовок должен быть исправлен на магнитная девиация и магнитное склонение

если компас не является горизонтальным, вы должны использовать только горизонтальную составляющую (вы не можете игнорировать ось z), проецируя вектор (x, y, z) на плоскость, параллельную поверхности Земли, а затем вычислить заголовок из этого проецируемого x и y.

надеюсь, что это помогает.