Я пришел к тому, что получил углы голени от ИДУ.
Датчик дает мне кватернионы, а также углы Эйлера (заказ XYZ).
Мне нужно знать на основе плоскости отсчета угол Z на плоскости XZ (Направление z вверх)
Мой протокол состоит в том, чтобы заставить человека стоять и получить калиброванный кватернион из этого положения, а затем, когда человек ходит, мне все еще нужно знать этот угол, как если бы датчик все еще располагал эту плоскость.
Я пришел к интересной статье , которая точно объясняет мою проблему и применение к уравнению 6.
Для моего понимания мне нужно получить матрицу DCM из каждого кватерниона измерения, а затем применить вектор направленной единицы из углов Эйлера во время калибровки и применить к этой матрице, а затем применить atan деления компонента X и Z результата этого умножения.
Исходя из этого, мои шаги:
1 - Получить калиброванный кватернион Q1 и вычислить вектор направления моих углов Эйлера.
2 - В качестве меры датчика я беру матрицу направленного косинуса Q1 и применяю к калиброванному вектору направления мое преобразование координат
3 - вычислить Atan компонентов X и Z этого вектора направления в системе координат датчика.
Однако я получаю разные результаты, и я не понимаю, что на самом деле делает это уравнение.