Рассчитать ориентацию по ускорению - PullRequest
2 голосов
/ 08 ноября 2011

В настоящее время я пытаюсь совместить акселерометр и гироскоп на телефоне Android, чтобы вычислить ориентацию (на какой угол поворачивается каждая ось) телефона.Я знаю, что ускорение не может просто вычислить точную ориентацию телефона, но оно может рассчитать «устойчивое состояние» ориентации, и тогда гироскоп может отслеживать изменение ориентации.Но я застрял на первом этапе.Кто-нибудь знает, как использовать данные ускорения, чтобы получить приблизительную ориентацию?Есть ли формула для расчета угла поворота каждой оси?

1 Ответ

1 голос
/ 08 ноября 2011

Звучит так, будто вам нужно преобразовать вектор гравитации в полярные координаты, инвертировать его так, чтобы он представлял «вверх», а затем свести на нет углы, чтобы он представлял собой смещение телефона от вертикали, а не смещение вертикали телефон.

Здесь описан первый шаг: http://en.wikipedia.org/wiki/Spherical_coordinate_system#Cartesian_coordinates

В остальном я думаю, что θ '= π - Θ и φ' = π - φ работает.

...