Комплементарный фильтр для оценки угла с использованием микроэлектромеханической системы гироскопа и акселерометра
Зо Мьо Наин, А.В. Щагин, Ле Винь Тханг, Хтин Линн У
Национальный исследовательский университет «Московский Институт
Электронной Техники» Аннотация: Микроэлектромеханические системы МЭМС, гироскопы и акселерометры предназначены для измерения угловой скорости вращения и линейного ускорения объекта, соответственно. Во многих приложениях требуется измерение самого угла, но гироскопы имеют погрешность смешения, возникающую при интегрировании угловой скорости выхода, и акселерометры имеют погрешность из-за силы перевода. В этой статье представлен метод проектирования комплементарного фильтра для оценки угла с использованием акселерометра и гироскопа и рассмотрено поведение комплементарного фильтра в среде МЛТЬЛБ. В результате, разработка системы комплементарного фильтра, используемой для оценки угла, может применяться для последовательного и точного улучшения определения угла.
Ключевые слова: акселерометр, гироскоп, комплементарный фильтр, микроэлектромеханической системы МЭМС.
Датчики микроэлектромеханической системы МЭМС широко используются в качестве датчиков угловой скорости в промышленности из-за таких преимуществ, как малый размер, низкое энергопотребление, низкая цена, и высокая надежность. В особенности, они применяются во многих областях, таких, как навигационные системы и системы управления аэрокосмическими аппаратами, беспилотными летательными аппаратами, транспортными средствами и т.д. [1]. Гироскопы, как правило, предназначены для измерения угловой скорости вращения, а акселерометры предназначены для измерения сил ускорения [2] и могут быть использованы для измерения вибрации и наклона [3].
Для повышения точности оценки абсолютного угла были введены методы проектирования фильтров. Для оценки абсолютного угла используются алгоритмы фильтра Калмана [4], но они имеют ряд недостатков в математическом отношении, таких, как сложность и длительное вычислительное время. Существует относительно простой
фильтр, называемый комплементарным фильтром, который использует выходы двух или нескольких датчиков [5].
Основное понятие комплементарного фильтра состоит в улучшении преимуществ каждого датчика. Например, угловая оценка с использованием гироскопа обладает высокой точностью в смысле углового направления при высоких частотах и угловая оценка с использованием акселерометра имеет хорошую точность при низких частотах [6]. Проблема проектирования комплементарного фильтра состоит в определении его коэффициентов таким образом, чтобы он имел свойства фильтра нижних частот для акселерометра и фильтра высоких частот для гироскопа [7]. Комплементарный фильтр
Комплементарный фильтр представляет собой упрощенную модель фильтра Калмана для одномерного случая, в котором звено интерполяции представляет первое слагаемое. Поскольку угловая оценка с использованием одного датчика акселерометра или гироскопа имеет недостаточную точность, основная идея комплементарного фильтра заключается в объединении выходов гироскопа и акселерометра [8]. Оценка угла составляет полученные данные из суммы их измерений, как показано на рис.1. Интегрирование выхода сигнала гироскопа подается в фильтр высоких частот и выходной сигнал подается в фильтр низких частот.
и
угол 0
угловая скорость
Рис.1. Структурная схема системы цифрового комплементарного фильтра для МЭМС гироскопа и акселерометра Функция фильтра нижних частот состоит в том, чтобы изменения происходили, отфильтровывая краткосрочные колебания. Например, если угол наклона начинается с нуля, акселерометр резко скачет до определенной степени, например 10 градусов, и остается на этом уровне. Оценка угла с помощью комплементарного фильтра гладко поднимется до 10 градусов без шумов. Фильтр высоких частот делает то же самое для долгосрочных колебаний.
Математическая модель комплементарного фильтра может быть представлена, как:
вугл = ^ * (вугол + * Л) + (1 - а_ ) ( 1 )
6угол - угол наклона (тангаж или крен), с- фильтр коэффициент,
сгиро представляет угловую скорость от гироскопа, и ааксе - угол, полученный с
помощью данных от акселерометра. Данные от гироскопа и акселерометра должны быть обнулены и масштабированы перед использованием уравнения
(1) для вычисления угла. Коэффициент фильтра а определяется уравнением
(2).
т
(2)
а =
т + &
Где т - постоянное временя фильтра.
Для фильтра нижних частот сигналы, которые намного длиннее, чем постоянная времени, могут проходить фильтр без изменений, в то время как сигналы более короткие, чем постоянная времени, отфильтровываются. Для каждого временного интервала данные гироскопа сначала интегрируются с текущим углом, и затем комбинируются с низкочастотными данными акселерометра. Коэффициенты фильтра, а и 1- а, должны быть добавлены до одного, так что результат является точной и линейной оценкой в единицах измерения.
Процедура обработки данных комплементарного фильтра в датчике наклона показана на рис 2.
Значения угла тангажа или крена обновляются с выходом гироскопа посредством интеграции с течением времени. Если значение слишком маленькое или слишком большое, оно не будет учитываться, как нарушение.
Рис.2. Блок-схема комплементарного фильтра
Модель акселерометра
Акселерометр измеряет все силы, работающие на объект, который включает в себя мгновенные линейные ускорения, а также гравитационное ускорение плюс некоторые дополнительные смещения и шумы [9]. Модель акселерометра представлена в виде:
ааксе = аускорение — § + ЬЛ + Па (3)
Где, аускорение, §, Ьа, па означает внешнее ускорение, гравитационное ускорение, смещение акселерометра и шум соответственно.
Модель гироскопа
Гироскопы обычно используются для измерения качества вращения объектов и угловой скорости вокруг трех совместно перпендикулярных осей.
®гироскоп = ^ + Ь§ + п§ (4)
Где, Ьг, п§ - смещение и шумы гироскопа.
Комплементарный фильтр дает нам «лучшее из обоих миров». В краткосрочной перспективе мы используем данные от гироскопа, поскольку он очень точен и не подвержен воздействию внешних сил [10]. В долгосрочной перспективе мы используем данные с акселерометра, так как он не дрейфует [11]. В простейшем виде фильтр выглядит следующим образом:
вугол = (0,98) * (вугол + ^ * Л) + (0,02) * (а_ ) (5)
Данные гироскопа интегрируются каждый раз с текущим значением угла. После этого он объединяется с данными нижних частот акселерометра. Константы (0,98 и 0,02) нужно добавить до 1, но, конечно, их можно изменить, чтобы правильно настроить фильтр.
a.dt 0,98 * 0,01с
0,49с
(6)
т =
1 - a 0,02
Частота выборки очень важна для выбора правильных коэффициентов. Если мы изменим программу, добавив намного больше вычислений с плавающей запятой, и частота дискретизации снизится в два раза, постоянная времени увеличится в два раза, если мы не рассчитаем условия фильтра. В качестве примера, рассмотрим использование обновления 0,0262 сек в качестве цикла управления. Если мы хотим постоянную времени 0,75 сек, срок фильтрации будет составлять:
Результат эксперимента
В статье рассмотрено поведение комплементарного фильтра, MATLAB и были использованы аппаратные средства на основе микроконтроллеров. Эксперимент заключается в оценке алгоритма и определении наилучших коэффициентов соответствия для фильтра в реальном времени. Arduino Uno (ATMEGA328p) используется для получения 6-DOF данных и выполнения алгоритмов.
Для проведения нашего эксперимента был использован датчик МЭМС 6-й степени свободы (6-DOF) MPU-6050 (3-осевой акселерометр и 3-осевой гироскоп). Датчик подключается к Arduino через протокол I2C, что показано на рис. 3.
т 0,75с
0,966
(7)
a=
т + dt 0,75 + 0,0262с
и
Рис.3. Датчик МРИ6050 и АМшпо в среде На рис 4 показан статический результат эксперимента. Видно, что угол
^аксетангаж и ^я
'аксекрен (аксетангаж и аксекрен) получен из акселерометра.
Статическое испытание комплементарного фильтра
Рис.4. Статическое испытание комплементарного фильтра В эксперименте с комплементарном фильтром, постоянная времени, т и время цикла программы установлены на 0,75 и 0,03 (с) соответственно. Затем вычисляется коэффициент комплементарного фильтра и т = 0,96.
Угол крена
-Компле крен Гиро крен -Аксе крена
I I I I
О 5 10 15 20 25 30
Угол тангажа
Время (с)
Рис.5. Сравнение крена, тангажа, рыскания угла В случае комплементарного фильтра постоянная времени равна 0,75 (с), а время цикла программы-0,03(с). Коэффициент комплементарного значения фильтра равен 0,98. На рис 5 показано, что выходной угол комплементарного фильтра сравнивается с акселерометром, гироскопом. Угол разделен на три секции: одиночное вращение вокруг оси х (крен), одиночное вращение вокруг оси у (наклон) и вращение вокруг оси z-(рыскание). Другое дело, что комплементарный фильтр не имеет информации о выходных отфильтрованных данных. Тем не менее, полученные углы от комплементарного фильтра гораздо точнее и с меньшими ошибками. Заключение
Комплементарный фильтр имеет как фильтр низких частот для выхода акселерометра, так и фильтр высоких частот для выхода гироскопа. Показано, что интеграция аппаратной системы с разработкой цифрового
комплементарного фильтра для МЭМС гироскопа и акселерометра для измерения угла на точном уровне была успешно и точно разработана. На основании экспериментальных и аналитических результатов было установлено, что разработанная система способна последовательно фильтровать и измерять желаемый уровень положения от 0 до 100 градусов. Экспериментальные результаты также доказали, что дрейф может быть отфильтрован без каких-либо трудностей с помощью комплементарного фильтра.
Таким образом, комплементарный фильтр позволяет улучшить МЭМС гироскоп и акселерометр, чтобы точно и последовательно определять фактический угол. В результате, разработка системы комплементарного фильтра, используемой для оценки угла, может применяться для последовательного и точного улучшения определения угла.
Литература
1. Дайебал Д.Б, Сергеев H. Е. Метод управления следящей камерой винтокрылого летательного аппарата на основе теории нечетких множеств. // Инженерный вестник Дона, 2019, №8. URL. ivdon.ru/ru/magazine/archive/n8y2019/6133.
2. Гуренко Б.В., Маевский А.М., Суров К.А., Назаркин А.С. Разработка и иссследование позиционно-траекторного регулятора для управления движением подводного глайдера. // Инженерный вестник Дона, 2019, №6. URL: ivdon.ru/ru/magazine/archive/n6y2019/6026.
3. Piyabongkarn D, Rajamani R, Greminger M. The development of a MEMS gyroscope for absolute angle measurement. IEEE Transactions on Control Systems Technology, vol.13, no.2, March 2005, pp.185-195.
4. Luinge H. J, Veltink P.H. Measuring orientation of human body segments using miniature gyroscope and accelerometer. Medical and Biological Engineering and Computing, vol.43, no.2, April 2005, pp.273-282.
5. Neto Armando Alves, Macharet Douglas Guimaraes, Campos Victor Costa da Silva, Campos Mario Fernando. Journal of the Brazilian Computer Society, vol.15, №3, Campinas, September, 2009, pp. 19-31.
6. Filiashkin M., Novik M. Combined Complementary filter for Inertial Navigation System. 2nd International Conference "Methods and systems of Navigation and motion Control," October 9-12 2012, Ukraine, pp.59-62.
7. Федеров Д. С., Ивойлов А. Ю., Жмудь В.А, Трубин В.Г. Разработка системы стабилизации угла отклонения балансирующего робота // Автоматика и Программная Инженерия, 2015, №2(12), 2005, с.16-34.
8. Euston M, Coote P, Mahony R, Kim J, Hamel. A Complementary Filter for Attitude Estimation of a Fixed wing UAV. IEEE/RSJ International Conference on Intelligent Robots and Systems, France, September, 22-26, 2008, pp.340345.
9. Alam F, He Z.Z, Jia H.J. A Comparative Analysis of Orientation Estimation Filters using MEMS based IMU. 2nd International Conference on Research science, Engineering and Technology, March 21-22, 2014, Dubia, pp.86-91.
10.Liqiong Tang, Mukhopadhyay S.C. MEMS based IMU for tilting measurement: Comparison of complementary and kalman filter based data fusion. 2015 IEEE 10th Conference on Industrial Electronics and Applications (ICIEA), 23 november 2015, pp. 2005-2009.
11. Palkovic Lukas, Rodina Jozef, Chovanec Lubas, Hubineky Peter Integration of Inertial Measuring Unit Platform into Matlab Simulink. International Federation of Automatic Control, Nizhny Novgord, Russia, June 19-21, 2012, pp. 200-205.
References
1. Dajebal D.B, Sergeev N. E. Inzhenernyj vestnik Dona. 2019, №8. URL: ivdon.ru/ru/magazine/archive/n8y2019/6133.
2. Gurenko B. V, Maevskij A.M, Surov K.A, Nazarkin A.S. Inzhenernyj vestnik
Dona , 2019, №6. URL: ivdon.ru/ru/magazine/archive/n6y2019/6026.
3. Piyabongkarn D, Rajamani R, Greminger M. IEEE Transactions on Control Systems Technology, vol.13, №2, March 2005, pp.185-195.
4. Luinge H. J, Veltink P.H. Medical and Biological Engineering and Computing, vol.43, №2, April 2005, pp.273-282.
5. Neto Armando Alves, Macharet Douglas Guimaraes, Campos Victor Costa da Silva, Campos Mario Fernando. Journal of the Brazilian Computer Society, vol.15, №3, Campinas, September, 2009, pp. 19-31.
6. Filiashkin M, Novik M. 2nd International Conference "Methods and systems of Navigation and motion Control," October 9-12, 2012, Ukraine, pp.59-62.
7. Federov D. S, Ivojlov A.Yu., Zhmud' V.A, Trubin V.G. Avtomatika i Programmnaya Inzheneriya, 2015, №2 (12), 2005, pp.16-34.
8. Euston M, Coote P, Mahony R, Kim J, Hamel. IEEE/RSJ International Conference on Intelligent Robots and Systems, France, September, 22-26, 2008, pp.340-345.
9. Alam F, He Z.Z, Jia H.J. 2nd International Conference on Research science, Engineering and Technology, March 21-22, 2014, Dubia, pp.86-91.
10.Liqiong Tang, Mukhopadhyay S.C. IEEE 10th Conference on Industrial Electronics and Applications (ICIEA), 23 november 2015, pp. 2005-2009.
11.Palkovic Lukas, Rodina Jozef, Chovanec Lubas, Hubineky Peter. International Federation of Automatic Control, Nizhny Novgord, Russia, June 19-21, 2012, pp. 200-205.