Обычно данные о вращении по оси y гироскопа обновляются относительно вертикальной ориентации телефона. Но если эта ориентация немного изменится, как показано на диаграмме, есть ли какой-либо метод, с помощью которого я мог бы перенести компонент поворота y на вертикальную ось (положение вертикальной ориентации телефона), (это возможно для линейных компонентов, используя косинусные углы синусоидальных углов ) А как насчет вращения? В любом случае я могу это сделать?
Обновить данные о вращении гироскопа относительно предварительно заданной ориентации?
comment
Не могли бы вы иначе сформулировать свой вопрос? Боюсь, я не понимаю вопроса.
- person Ali   schedule 20.06.2012
comment
Ссылаясь на рисунок 1, вращение телефона вокруг оси y будет указано, когда телефон находится в вертикальной ориентации. Но что, если ориентация телефона изменится, как на рисунке 2, тогда каким образом он обновляет значения поворота? Это по-прежнему относительно вертикального (ось y) направления или угла (ось, проходящая через телефон в измененном положении ориентации). Если это положение с изменением ориентации, как я могу преобразовать его в показание вертикальной ориентации (с телефоном в угловой ориентации)?
- person sam   schedule 20.06.2012
comment
Краткий ответ: возьмите курс по цифровой обработке сигналов, затем возьмите еще один курс по фильтрам Калмана, а затем возьмите еще один курс по алгебрам Ли. Для длинного ответа потребуется написать как минимум три текста на уровне колледжа.
- person David Hammen   schedule 20.06.2012
comment
@DavidHammen - Спасибо за твою инструкцию! : /
- person sam   schedule 20.06.2012
comment
@Sam, я не совсем уверен, что ты ищешь. Если все, что вам нужно, это угол телефона к вертикальной оси, тогда возьмите вектор гравитации и найдите его угол к вертикальному вектору ...
- person twerdster   schedule 22.07.2012
comment
@twerdster, Вы это имеете в виду? float gyro_x_ref = ((rotate.x) * (rot.m11) + (rotate.y) * (rot.m12) + (rotate.z) * (rot.m13)); А также могу ли я точно знать, что рассчитываю по этой формуле?
- person sam   schedule 22.07.2012
Ответы (1)
По моему опыту, значения гироскопа являются мобильными, а это означает, что оси обновляются по мере вмешательства вращения (это верно для Android, нет причин не быть для iOS).
Если вы хотите следить за направлениями своих трех осей, вам придется постоянно обновлять матрицу вращения:
Косинусная матрица направлений IMU: теория
person
PeterGriffin
schedule
02.07.2012