-
Notifications
You must be signed in to change notification settings - Fork 7
Theory:Stabilization:Angle
Под углом понимается угол между СО, связанной с Землей и движущейся XYZ.
Очевидным способом получения угла является интегрирование угловой скорости. Но поскольку гироскоп не идеален, простое интегрирование приведет к тому, что полученный угол будет довольно далек от реального. Например, если вращать устройство по одной из осей с достаточно малой угловой скоростью (которую гироскоп не фиксирует), то интеграл будет равен нулю, а настоящий угол — нет.
Также из довольно простых соображений можно было бы получить угол поворота, если бы ускорение a было равно нулю. В таком случае акселерометр показывал бы просто проекции g на оси.
Подведем итог: гироскоп полезен для быстрых изменений (больших угловых скоростей), но если использовать только его, появится нарастающая ошибка. Акселерометр хорошо подходит для ситуации без ускорения, а при появлении ускорения угол при его помощи в одной итерации узнать невозможно.
Решением является совместное использование двух датчиков.
Простейшей реализацией является фильтр высоких частот. В итоговое значение «проходят» высокочастотные изменения с гироскопа и низкочастотные с акселерометра. Подробнее в статье про RC-фильтр
Более сложным и точным решением является Фильтр Калмана.