Удерживать мультироторную машину в воздухе в заданном положении довольно сложная задача — требуется очень быстро реагировать на стремительно изменяющееся силы, действующие на воздушный аппарат, и молниеносно принимать решения какой мотор ускорить а какой притормозить. Этим занимается полетный контроллер.
Полетный контроллер – электронное устройство, представляющее из себя вычислительную систему, работающую по сложным алгоритмам и управляющая полетом беспилотного летательного аппарата.
На полетном контроллере установлены датчики, которые регистрируют информацию о малейших изменениях углов ориентации квадрокоптера.
Эти сведения передаются в сердце полётного контроллера — микропроцессор.
Микропроцессор
Производит сложные математические расчеты и определяет, с какой скоростью сейчас следует крутится каждому из моторов.
Чем быстрее процессор справляется с вычислениями, тем чаще он считывает данные о текущем положении квадрокоптера с датчиков, а значит быстрее реагирует на малейшее их изменения.
Полетные контроллеры квадрокоптеров строятся на базе микропроцессоров STM32. На самом процессоре после обозначения STM32 можно прочесть, к какому поколению он относится.
Обознеачение «F1» имеет скорость 72 мегагерца. Это самый медленный процессор. Данный процессор сможет выполнять максимум 2000 расчетов в секунду. Тысячи обозначим буквой «К» = 2К расчетов в секунду..Следующий процессор в линейке — «F3». Он будет делать 4К расчетов в секунду. Микропроцессор «F4» имеет скорость 168 мегагерц и способен обеспечить более 8К расчетов за одну секунду. Процессор F7 имеет скорость 216 мегагерц — выдает 32 К.
Синхронность работы микропроцессора и датчиков.
Следует учитывать, что и остальные части полётного контроллера тоже должны поспевать за процессором — при скорости процессора 32К, 1 расчет производится за 31 микросекунду.
После каждого расчета, сведения передаются в регуляторы оборотов для исполнения.
Как вы помните из предыдущей лекции про полетные контроллеры, один пакет данных по протоколу «мульти шот» передается за 25 микросекунд, что меньше времени 1 расчета процессора.
А вот протокол «ваншот 125», имеющий время передачи пакета данный 250 микросекунд, уже не будет поспевать за таким быстрым процессором.
Также надо обращать внимание на датчик «MPU».
Датчик MPU
Реализует функции 3-осевого гироскопа, 3-осевого акселерометра и 3-осевого магнитометра, то есть он представляет собой 9-ти осевой IMU сенсор (Inertial Measurement Unit – инерциальный измерительный блок). Он будет описан ниже.
Недорогие датчики MPU не способны передавать в процессор данные чаще чем 8000 раз в секунду.То есть минимальное время между считыванием данных составляет 125 микросекунд.
Следовательно процессор, который делает один расчет быстрее, оставшееся время просто ждет следующих данных с датчиков.
Поэтому, если на полетном контроллере установлены обычные датчики со скоростью 8 К, то будет достаточно и процессора со скоростью 8 К.
Напряжение.
На питание электронных компонентов квадрокоптера требуется подать определенное напряжение.
Например, для работы электроники полётного контроллера требуется 5 вольт.
Напряжение аккумулятора, конечно же, больше. Поэтому необходимо какое-то устройство для понижения бортового напряжения до нужного стабильного значения.
Такое устройство называется регулятор напряжения. По английски «BEC» или «UBEC». По русски его принято называть Бек.
Вот для примера бек на 5 вольт
Бывают платы распределения питания со встроенным регулятором напряжения. Так экономится пространство внутри коптера для удобства монтажа.
На примере сразу 2 регулятора напряжения — на 5 и 12 вольт
Но самый компактный вариант — полетный контроллер, сразу имеющий и плату распределения питания, и площадки для припаивания силовых проводов питания от регуляторов, и площадки для припаивания разъёма аккумулятора, и плату бек на 5 вольт, от которой получает питание сам полетный контроллер.
Инерциальный измерительный блок (IMU)
Включает трёхосевой акселерометр, трёхосевой гироскоп и трёхосевой магнитометр, обеспечивающий в общей сложности 9 осей измерения.
Инерциальный измерительный блок или система инерциальной навигации (от англ. IMU – Inertial Measurement Unit) – это система, которая определяет своё положение в пространстве используя свойства инерции тел, то есть определяет на какой угол и по какой оси она была повернута и была смещена относительно начальной точки.
Основной задачей датчиков на полетном контроллере является непрерывное получение навигационных данных для математических расчетов микроконтроллером (микропроцессором), который устанавливает положение беспилотника относительно горизонта и обнаруживает изменения углов ориентации, относительно его предыдущего положения в пространстве, затем направляет данные в электронные регуляторы оборотов двигателей (ESC).
Вычисленные микроконтроллером данные позволяют обеспечивать полет мультикоптером, управляя газом, углами крена, тангажа и рысканья (throttle, pitch, roll, yaw).
Принцип работы интегрального гироскопа
Гироскоп (от греч. «gyros» – круг и «skopeo» – смотрю, наблюдаю) – это устройство, которое способно реагировать на изменение углов ориентации объекта и определять его положение в пространстве.
Чувствительным элементом интегрального гироскопа являются две подвижные массы (грузики), которые находятся в непрерывном движении на упругом подвесе в противоположенных направлениях.
Источником колебаний подвижной массы является гребенчатые электростатические двигатели.
Подвижная масса, вместе с электродами, расположенная на подложке, образуют конденсаторы, входящие в состав дифференциальной схемы, вырабатывающей сигнал, пропорциональный разности емкостей конденсатора. Линейное ускорение одинаково воздействует на обе подвижные массы и подложку, поэтому сигнал на выходе дифференциальной схемы не появляется. Как только произойдет изменение угловой скорости относительно оси вращения, то на подвижные массы начинает действовать сила Кориолиса, отклоняя подвижные массы в противоположных направлениях. Соответственно, емкость одного конденсатора увеличивается, а другого уменьшается, что порождает разностный сигнал, пропорциональный величине углового ускорения. Таким образом, осуществляется преобразование угловой скорости гироскопа в электрический параметр, величина которого детектируется специальным датчиком.
Рисунок 131 – Устройство интегрального гироскопа
Для того, чтобы мультикоптер определял положение в пространстве относительно трех ортогональных направлений х, y, и z, внутри одного корпуса микросхемы располагаются три датчика перпендикулярно осям. Отсюда происходит название – трехосевой гироскоп.
Принцип работы интегрального акселерометра
Как следует из названия, акселерометры измеряют линейное ускорение по трем осям (назовём их: X, Y и Z).
Самой значимой характеристикой трёхосевых акселерометров является то, что они регистрируют гравитацию, и как таковые, могут знать, в каком направлении «спуск».Это играет главную роль в обеспечении стабильности многороторного БЛА.
Акселерометр должен быть установлен на контроллере полёта так, чтобы линейные оси совпадали с основными осями беспилотника.
В состав интегрального акселерометра входят высокоточный чувствительный элемент (движущийся) для определения ускорений и электронная часть, осуществляющая обработку сигнала (рисунок 132).
1 – Поликремниевые пружины; 2 – Фиксированные пластины (контакты); 3 – Кремниевая подложка (корпус); 4 – Подвижная масса с проводниками; 5 – Изменение емкости. Рисунок
Типы коннекторов
На полетном контроллере существует три типа соединений между периферией (рисунок 139).
Пластиковые разъемы используются в основном для подключения внешней периферии, которую иногда необходимо отключать и снимать, не очень прочные, но достаточно удобные.
Контактные площадки для пайки проводов, достаточно крепки, но есть риск их перегреть при пайке, что придет к отслоению от основной платы, то же самое может вызвать сильное напряжение.
Отверстия для припаивания более универсальны и удобны тем, что провод будет гораздо прочнее находиться в пазе.
1 – пластиковый разъем (типа JST); 2 – контактные площадки; 3 – сквозные отверстия.
Программное обеспечение
Отличие полетных контроллеров заключается не только в типах используемых компонентов, из которых они состоят, но и в устанавливаемом программном обеспечение (прошивках).
Прошивка, на которой работает полетный контроллер – это специальный набор правил и алгоритмов, которые обрабатывает микроконтроллер и без нее мультикоптер не включится и не взлетит. Для каждой прошивки разрабатывается свой поддерживаемый конфигуратор.
Конфигуратор (Configurator) – это программа с графическим интерфейсом, с помощью которой настраивается (включаются и отключаются датчики, меняются параметры PID, подключается внешняя периферия, задаются начальные и максимальные обороты двигателя и тд.) и загружаются прошивка в полетный контроллер.
Одними из самых популярных конфигураторов, с помощью которых можно прошивать и гибко настраивать мультикоптер:
– Betaflight Configurator;
– CleanFlight Configurator;
– Raceflight Configurator.
Существенных отличий в работе между ними нет, за исключением разного интерфейса и поддерживаемых полетных контроллеров (рисунок 140).
1 – Betaflight Configurator); 2 – CleanFlight Configurator; 3 – Raceflight Configurator.