Найти в Дзене

Радиоуправляемые самолеты. Полетный контроллер.

Данная статья является продолжением темы повышения безопасности полетов радиоуправляемых самолетов путем установки на борт полетного контроллера. На сегодняшний день существует большое разнообразие различных полетных контроллеров (ПК), отличающихся друг от друга по функционалу, аппаратному исполнению, надежности, программной поддержки и цене. Я не планирую проводить их описание и сравнительный анализ, а кратко расскажу об общем принципе работы и остановлюсь на двух, наиболее распространенных, на мой взгляд, вариантах контроллеров. По сути, любой ПК это микрокомпьютер, состоящий из центрального процессора, памяти, шин данных, интерфейсов ввода-вывода, дополнительной периферии. Соответственно, скорость обработки информации, а в нашем случае обработка данных с датчиков и приемника, зависит от быстродействия процессора и его разрядности. Как и любой компьютер, полетный контроллер работает настолько хорошо, насколько грамотно и без ошибок написана программа, запущенная на нем. А чем луч

Данная статья является продолжением темы повышения безопасности полетов радиоуправляемых самолетов путем установки на борт полетного контроллера.

На сегодняшний день существует большое разнообразие различных полетных контроллеров (ПК), отличающихся друг от друга по функционалу, аппаратному исполнению, надежности, программной поддержки и цене. Я не планирую проводить их описание и сравнительный анализ, а кратко расскажу об общем принципе работы и остановлюсь на двух, наиболее распространенных, на мой взгляд, вариантах контроллеров. По сути, любой ПК это микрокомпьютер, состоящий из центрального процессора, памяти, шин данных, интерфейсов ввода-вывода, дополнительной периферии. Соответственно, скорость обработки информации, а в нашем случае обработка данных с датчиков и приемника, зависит от быстродействия процессора и его разрядности. Как и любой компьютер, полетный контроллер работает настолько хорошо, насколько грамотно и без ошибок написана программа, запущенная на нем. А чем лучше написана программа, удобнее ее функционал и чем больше она умеет обрабатывать различных событий за минимальный промежуток времени, тем больше ей требуется процессорных ресурсов, памяти и скорости. Поэтому, со временем, одни контроллеры устаревают, разрядности их процессоров не хватает, а на смену им приходят более мощные и производительные.

 
Пример набора микросхем полетного контроллера
Пример набора микросхем полетного контроллера

В состав любого полетного контроллера обязательно входят гироскоп, акселерометр, барометр. Это минимально необходимый набор, обеспечивающий стабильность полета. Гироскоп отвечает за определение модели в пространстве по вертикали и горизонтали (не путать с географическим положением). Именно при помощи гироскопа происходит выравнивание модели относительно горизонта и наклонов вверх, вниз, отслеживаются углы поворотов, подъема и падения. Иными словами гироскоп определяет положение модели в трех плоскостях пространства (X, Y, Z) и называется трехосевой.

Акселерометр – устройство, анализирующее ускорение изменения положения модели в пространстве в тех же трех плоскостях (X, Y, Z). Он определяет с какой скоростью это происходит. Обычно гироскоп и акселерометр входят в состав одного чипа (датчика)и в таком случае говорят, что это шестиосевой гироскоп, хотя осей в пространстве всего три...

Барометр представляет собой устройство, которое измеряет атмосферное давление. То есть давление воздуха, который давит на нас со всех сторон. Из школьной физики мы знаем, что чем выше мы поднимаемся от земли, тем меньше атмосферное давление. Именно это свойство используется во всех летательных аппаратах для определения высоты. Есть и другие датчики определения высоты, например ультразвуковые или лазерные, где высота определяется временем возврата отраженного сигнала от поверхности. Но, такие датчики действуют на небольшие расстояния и чем оно больше, тем точность хуже. Поэтому они могут использоваться, как вспомогательные внешние устройства при точном определении небольшой высоты (например при посадке) или расстоянии до препятствия.

Внешние модули: GPS и компас, телеметрия, OSD, модуль питания
Внешние модули: GPS и компас, телеметрия, OSD, модуль питания

В расширенном варианте в состав контроллера могут входить магнитный компас, телеметрия, модули питания. Если каких то встроенных компонентов нет, то на контроллере должна быть предусмотрена возможность подключения внешних модулей через соответствующие интерфейсы и шины данных. Например приемник GPS, телеметрия, датчики скорости, ультразвуковые и инфракрасные датчики расстояния, высоты и т.п. Обычно любой контроллер имеет отдельные входные порты для подключения приемника сигналов с пульта управления и выходные порты для подключения моторов и сервоприводов. Есть полетные контроллеры, которые разработаны специально только для управления самолетом, есть разработанные только для квадрокоптеров или вертолетов, а есть универсальные полетные контроллеры, которые в зависимости от установленной программы (прошивки), могут использоваться на любых летающих (а так же, плавающих и ездящих) моделях.

Исходя из соображений универсальности, модульности, распространенности (а значит и базы знаний), поддержки программного обеспечения и цены, на всех своих моделях я использую полетные контроллеры серии APM, созданные на базе Arduino с процессором ATmega2560-16AU и полетным стеком ArduPilot, и, пришедшие ему на смену контроллеры серии Pixhawk с процессором STM32F427 Cortex M4 с оригинальным полетным стеком PX4, поддерживающие так же полетный стек ArduPilot.

Полетные контроллеры APM и Pixhawk
Полетные контроллеры APM и Pixhawk

Контроллеры APM долгое время были очень популярны среди авиамоделистов, пока его разрядность в 16 Бит была достаточна для постоянно развивающегося и улучшаемого программного обеспечения и функционала. Настало время, когда код уже не помещался, встроенной памяти и производительности стало не хватать. С появлением контроллеров с 32-ух разрядной шиной и новыми, более скоростными процессорами, поддержку и дальнейшее развитие АРМ прекратили. Но, эти контроллеры до сих пор есть в продаже, а написанного и проверенного годами программного обеспечения вполне хватает для успешного управления самолетами и квадрокоптерами. Это недорогой и проверенный временем вариант для начинающих авиамоделистов. Есть различные варианты исполнения этих контроллеров: полноразмерные, мини и про. Помимо размеров они отличаются наличием встроенного магнитного компаса, контактными разъемами. Если позволяет место в самолете, то лучше использовать полноразмерный вариант, т.к. как у него помимо встроенного корпуса установлены универсальные разъемы, позволяющие без переделки шлейфов подключать большинство внешних модулей. На сегодняшний день последняя версия APM 2.8. Из-за ограниченного свободного пространства в моей модели самолета, куда я по мере написания статьи буду устанавливать контроллер, все примеры буду приводить на APM Pro, но с комментариями и для полноразмерной версии.

  Различные по размеру варианты АРМ
Различные по размеру варианты АРМ

Основные характеристики контроллеров АРМ:

Управление двигателями посредством ШИМ (PWM) с использованием регуляторов скорости (ESC); Система стабилизации; 3 осевой гироскоп, акселерометр, магнитометр и высокоточный барометр; Удержание позиции по GPS, полет по точкам и возврат на точку старта; Возможность использования инфракрасного датчика для обхода препятствий; Поддержка ультразвукового датчика (Sonar sensor); Автоматическое следование по маршрутным точкам; Собственная система стабилизации для камеры (функция контроллера подвеса); Радиосвязь и телеметрия с борта; Поддержка множества рам и конфигураций летающих и ездиющих аппаратов; Поддержка датчика уровня заряда батареи; Настраиваемая световая индикация при полетах; Совместим с многими радиоуправляемыми приемниками PWM и PPM сигналов; Передача в реальном времени телеметрических данных; Поддержка OSD телеметрии (наложение на видеопередачу телемерических данных) используя протокол MAVLINK; Конфигурирования точек полета посредством Google Maps; Бортовая флеш память 4 Мегабайта для автоматической регистрации данных; Цифровой компас работает на HMC5883L; 6 степеней свободы в InvenSense акселерометре , гироскоп MPU-6000; Датчик барометрического давления обновлен до MS5611-01BA03; Контроллер Atmel ATmega2560-16AU и ATMEGA32U-2 чип для обработки и функции USB соответственно; Возможно загрузка обновлений встроенного программного обеспечения и конфигурации

Назначение разъемов АРМ
Назначение разъемов АРМ

Контроллеры Pixhawk обладают теми же перечисленными возможностями что и APM. Из основных преимуществ - более производительный 32-разрядный процессор. Эти контроллеры были разработаны специально для летательных аппаратов и в них заложен дополнительный запас прочности и надежности. На борту есть второй минипроцессор, который, в случае выхода из строя основного, продолжит работу и не даст произойти катастрофе. Для повышения надежности установлено два гироскопа, есть раздельные системы питания, реализована возможность подключения до двух модулей GPS и до трех (один встроен, два внешних) магнитных компасов и контроллер умеет одновременно работать с ними выбирая лучшие показатели. Подключение приемников осуществляется по шине PPM, а так же есть шина S.Bus для подключения приемников Futaba и шина Spektrum DSM для приемников "Спектрум". Для записи данных логов есть возможность использования microSD карты памяти.

Различные по размеру варианты Pixhawk
Различные по размеру варианты Pixhawk

К недостаткам я бы отнес отсутствие  раздельных входных каналов PWM для подключения радиоприемника, не имеющего выходов в стандартах PPM, futaba, Spektrum. Для обычных приемников придется дополнительно приобретать плату преобразователя "PPM Encoder" А если подключать приемники с имеющимися выходами PPM, то возникнет проблема с реализацией переключения шести режимов полета с пульта (подробности об этом позже, при настройке передатчика). Еще одним недостатком я считаю, что привычные для АРМ 5-контактные разъемы телеметрии и GPS тут стали  6-ти контактными, поэтому кабели от комплектов АPМ не подойдут и придется их менять или переделывать на 6-ти контактные.

Назначение разъемов Pixhawk
Назначение разъемов Pixhawk

Хотя с аппаратной точки зрения APM и Pixhawk абсолютно разные устройства, разработчиками программного обеспечения Ardupilot была написана практически полностью совместимая прошивка, позволяющая использовать Pixhawk точно так же, как АРМ, включая настройку. И все внешние модули, подходящие для APM, без проблем подходят для контроллера Pixhawk. Поэтому в дальнейшем я буду излагать материал применительно к этим двум контроллерам.

По мере написания материала ниже будут активироваться ссылки на новые статьи, рассматривающие следующие вопросы:

Безопасность полетов

Программное обеспечение

Приемник и передатчик

Телеметрия

Модуль GPS

Магнитный компас

Бортовое питание

Настройка контролера

Первые полеты

Автовзлет и автопосадка

Что еще можно добавить на борт

Камера

Видеопередатчик

OSD модуль

Видео шлем

Спонсор канала компания Stop-leaks