Автор: В.В. Перебейнос, Д.Н. Кузнецов
Источник: ХIII Международная научно-техническая конференция «Автоматизация технологических объектов и процессов. Поиск молодых» 2013г.
В.В. Перебейнос, Д.Н. Кузнецов - Выбор и исследование инерциальных датчиков для стабилизации полета квадрокоптера. В данной статье приведены результаты исследования по выбору минимального набора датчиков для определения положения в пространстве беспилотного летательного аппарата. Произведен небольшой обзор методов фильтрации сигналов, полученных с датчиков. Приведены реальные результаты работы инерциальных датчиков для стабилизации полёта квадрокоптера.
Новым течением в современном авиамоделизме является построение мультикоптеров – беспилотных летательных аппаратов (БПЛА) с четным количеством роторов, вращающимися диагонально в противоположных направлениях. В случае, когда двигателей четыре, такой БПЛА называется – квадрокоптер. Необходимость стабилизации полёта квадрокоптера вытекает из принципа его работы. Например, стабильность полёта планера или самолета обусловлена их устойчивостью, т.е. возможность восстанавливать без вмешательства пилота кинематические параметры невозмущенного движения и возвращаться к исходному режиму полёта после прекращения действия возмущений. Квадрокоптер же таким свойством не обладает и при малейшем внешнем воздействии начинается «неуправляемое снижение».
Для того чтобы эффективно стабилизировать квадрокоптер в полете необходимо:
Для определения состояния системы используют различные датчики (гироскоп, акселерометр, магнитометр, высотомер и т.д.) обеспечивающие обратную связь. Управляющее воздействие оказывают посредством изменения скорости вращения двигателей. Например, если БПЛА наклонился на левый бок, то соответственно необходимо увеличить обороты левого двигателя и уменьшить обороты правого.
В первую очередь для стабилизации квадрокоптера, необходимо знать его абсолютное положение в пространстве. Стабилизация осуществляется по ряду параметрам: высоте, углам, линейным перемещениям.Так как квадрокоптер является летательным аппаратом, для углов наклона используются авиационные термины: тангаж (в плоскости оси Х), крен (в плоскости оси У) и рыскание (в плоскости оси Z).
Самым рациональным решение для квадрокоптера, будет использование микроэлектромеханических (MEMS) датчиков. Они имеют малые массогабаритные показатели, высокое быстродействие, функциональность и надежность, но и имеют ряд недостатков, таких как зависимость показаний от температуры, дрейф нуля, чувствительность к вибрациям.
Для определения крена, тангажа и рыскания воспользуемся гироскопом, являющимся датчиком моментальных угловых скоростей вокруг оси. Для определения угла с помощью гироскопа необходимо интегрировать его показания, например методом прямоугольников [1]:
где α – текущее значение угла, α0 – предыдущее значение угла, ω – текущее значение угловой скорости, t – время между измерениями.
Т.е. гироскоп опрашивается постоянно с временным интервалом t, получаем моментальное значение угловой скорости ω и вычисляем текущее значение угла (a) прибавив к предыдущему значению угла (a0) приращение за данный промежуток времени. Но при таком подходе вместе с приращением постоянно суммируется и ошибка, вызванная погрешностью гироскопа. Это приведет к тому, что с течением времени вычисленное значение угла будет все дальше и дальше уходить от реального значения (см. рис. 1).
При этом сами показания гироскопа имеют большой разброс, поэтому рекомендуется применять усреднение показаний, например методом скользящего среднего. В данном алгоритме использовалось усреднение по 5 точкам. Если увеличить количество точек, то система может реагировать на изменение угла с запаздыванием. Поэтому рекомендованное количество точек не больше 10.
Ввиду вышеперечисленного, периодически необходимо корректировать значения вычисленных углов. Для такой корректировки используется акселерометр, измеряющий проекцию кажущегося ускорения на чувствительную ось. Иными словами на выходе акселерометра мы имеем значение суммы проекции ускорения свободного падения (G) и проекции абсолютного ускорения объекта на чувствительную ось (Рис. 2).
Если система находится в статическом положении или движется с постоянной скоростью (собственное ускорение равно нулю), то углы наклона рассчитывается по следующим формулам (для трехосевого случая):
Для одноосевого случая:
Здесь Ax, Ay, Az – проекции вектора ускорения свободного падения на оси X, Y, Z соответственно. Как известно, тангенс дает углы от -90 до 90 градусов. Для получения всех 360, используют функцию atan2.
Но акселерометр выдает точные значения только в состоянии покоя. В движении к показаниям прибавляется проекция вектора собственного ускорения и значение угла «уплывает». Именно поэтому в такой динамичной системе как квадрокоптер, акселерометр используется лишь для коррекции значений углов. Также отсюда вытекает еще одна особенность. Используя лишь акселерометр, скорректировать возможно лишь углы крена и тангажа (выровнять относительно горизонта). Но скорректировать угол рыскания не представляется возможным из-за совпадения оси вращения с вектором G. Для решения этой проблемы используют магнитометр (цифровой компас), который вводит еще один вектор в систему [2]. Магнитометр же имеет свои недостатки, основной из которых – низкая точность. Погрешность может достигать 5 градусов, а рядом с двигателями квадрокоптера и силовых линий питания эта погрешность только возрастет.
Для корректировки углов воспользуемся комплементарным фильтром, работа которого описывается следующим выражением:
Здесь Ac и Ag значения угла наклона, полученные при помощи акселерометра и гироскопа соответственно, A – значение скорректированного угла, K – коэффициент фильтра. Как видно, итоговая величина угла наклона представляет собой сумму интегрированного значения гироскопа и мгновенного значения акселерометра. По сути, главная задача комплементарного фильтра заключается в том, чтобы нивелировать дрейф нуля гироскопа и ошибки интегрирования. Вес корректирующих значений определяется коэффициентом фильтра K.
Выбор коэффициента K зависит от величины дрейфа нуля гироскопа и от скорости накопления ошибок вычисления. Так, слишком большое значение коэффициента приведет к тому, что на результат работы фильтра будет сильно влиять вибрация корпуса квадрокоптера. Слишком же малое, может оказаться недостаточным для ликвидации дрейфа нуля гироскопа. Как правило, коэффициент фильтрации K подбирается при настройке для каждого инклинометра исходя из вышеуказанных условий. Типичное значение лежит в диапазоне от 0,05 до 0,15. В данной системе был задан коэффициент фильтрации K комплементарного фильтра равным 0,1.
На рисунке 3 приведен результат работы фильтра для оси Х. Как видно, систему сначала повернули на 26 градусов, затем еще на 6.
Погрешность отфильтрованного значения угла (Рис. 4) составляет ±0,05°, что является отличным результатом для задачи стабилизации полёта квадрокоптера.
1. Самарский А.А., Гулин А.В. Численные методы: Учеб. пособие для вузов. – М.: Наука. Гл. ред. физ-мат. лит., 1989. – 432 с.
2. Основы построения бесплатформенных инерциальных систем/ В.В.Матвеев, В.Я.Располов – СПб.: ГНЦ РФ ОАО «Концерн «ЦНИИ «Электроприбор», 2009. – 280 с.