- Немного предыстории
Думаю, что многие обладатели радиоуправляемых моделей самолетов рано или поздно сталкивались с печальными ситуациями, когда из-за ошибки управления или отказа аппаратуры происходило крушение или потеря своего крылатого друга. Были такие ситуации и у меня. То самолет улетит так далеко, что я теряю ориентацию, где у него перед и куда он движется, то пропадет связь с пультом управления из-за большой дальности полета или непредвиденных внешних помех...
И каждый раз я задумывался, а как бы сделать так, чтобы минимизировать подобные риски? Подсказку к решению этой задачи дало увлечение моего сына квадрокоптерами, собранными на базе полетных контроллеров arducopter и программного обеспечения ardupilot. Благодаря встроенным гироскопу, барометру и установленному модулю GPS (навигация по спутникам) эти квадрокоптеры умеют ориентироваться в пространстве, запоминать точку взлета, зависать на определенной высоте, летать по заранее заданному маршруту. А самое главное, в случае аварийной ситуации (потери связи с пультом), они умеют вернуться назад на точку взлета и приземлиться в это же место!
Вот бы такой же контроллер установить на самолет, чтобы тот всегда возвращал его обратно владельцу. Оказывается, что разработчики программного обеспечения создали прошивку контроллера с аналогичными возможностями и для самолета! Я не буду рассказывать в этой статье про все достоинства ardupilot, а даю ссылку на первоисточник. Сам же попытаюсь рассказать что нужно сделать и с чего начать, чтобы установить и настроить это оборудование самостоятельно на свой самолет. Моим итоговым достижением стал автовзлет и автопосадка самолета Cessna-182 с размахом крыла 1,6 метра (видео можно посмотреть здесь). Надеюсь, что и у вас это получиться!
Какие преимущества дает наличие на борту полетного контроллера
Самое большое преимущество, особенно для начинающего пилота, - уверенность в успешном полете и минимум рисков при ошибочных действиях. Простой пример: В память контроллера своего самолета я залил программу автовзлета и автопасадки с привязкой к своей взетно-посадочной полосе. Самолет может сам взлететь, сделать пару кругов вокруг и приземлиться. Что это мне дает? Например, у меня не получается запуск. Тогда ставлю самолет на взлетную полосу (или катапульту, или готовность для запуска с руки), перевожу контроллер в режим Auto и самолет сам взлетает (если запуск с катапульты или руки, то его придется только метнуть вперед). Когда самолет уже в небе, то в любой момент (пока он не дошел по программе до точки посадки) перевожу режим полета в Manual и могу просто полетать, полностью управляя самолетом в ручном режиме. Если что-то не получается или надо пролететь ровно, то можно переключиться в режим Stabilize и самолет сам будет удерживать высоту и направление. При этом, его направлением и высотой можно продолжать координировать с пульта. Если самолет улетел очень далеко и его плохо видно, то переходим в режим RTL (Return to Launch) - возвращение домой. Тогда самолет наберет высоту 100 метров (если он был ниже, иначе останется на той же высоте) и вернется к точке взлета, продолжая кружить вокруг с радиусом 50 метров.
Точно так же самолет вернется, если пропадет связь с передатчиком - сработает режим защиты Failsafe и переведет контроллер в режим RTL. Когда самолет начнет кружиться над Вами, останется только переключиться в режим Manual и продолжить полеты или посадить его. Если с посадкой возникли проблемы, то можно перевести самолет в режим Auto. Тогда контроллер сам поймет, что уже взлетел (пропустит точку взлета в программе, т.к. высота уже достигнута) и продолжит двигаться по точкам программы, которые еще не пролетел и в результате посадит самолет.
При установленном на самолет полетном контроллере с прошивкой ardupilot появляются четыре основные функции, которые мне очень помогают (на самом деле их больше, но я пользуюсь только этими):
- Manual - обычное управление самолетом с пульта. В этом режиме контроллер не участвует в управление полетами, но постоянно отслеживает основные параметры полета: высоту, скорость, положение в пространстве, напряжение аккумуляторов, наличие связи с передатчиком и работоспособность всех систем (барометра, магнитного компаса, гироскопа, акселерометра, модуля GPS). При любой ошибке оборудования передает информацию пилоту и, в зависимости от настроек, переводит самолет в режим Failsafe.
- Stabilize - стабилизация. Возвращение и сохранение горизонтального положения самолета. При этом скорость перемещения не контролируется, а управляется пилотом. При недостаточной скорости самолет может уйти в сваливание. Эту особенность надо учитывать.
- Auto - полет по заданным точкам. В этом режиме самолет будет стараться достичь указанные координаты точек (включая высоту) и выполнять в них действия (если они запрограммированы для конкретной точки). В этом режиме важна исправная работа модуля GPS.
- RTL - возврат на точку взлета. В этом режиме самолет поднимается на заранее заданную высоту, достигает точку взлета и начинает кружить вокруг нее с ранее запрограммированным радиусом. По умолчанию, высота составляет 100 метров, а радиус кружения 50 метров. Если на момент поступления команды перехода в RTL высота была больше заданной, то самолет по умолчанию останется на той же высоте и достигает точку взлета на ней не снижаясь. Можно запрограммировать снижение до нужной высоты. В этом режиме важна исправная работа модуля GPS.
С чего начать?
Начать надо с того, чтобы Ваша модель обладала достаточными размерами, позволяющими разместить дополнительное оборудование на борту, не нарушая при этом центр тяжести. А подъемные характеристики самолета смогли бы поднять в воздух лишние 100 грамм, не нарушающие летные качества модели. Из моей практики разместить оборудование на самолете с размахом крыла менее 1,4 метра будет достаточно проблематично. Придется прибегать к различного родам ухищрениям - искать контроллер в исполнении mini, отказываться от корпусов модулей (извлекать из них сами платы). Если Ваша модель удовлетворяет этим параметрам, то переходим к выбору программного обеспечения и оборудования.
Полетный контроллер
На сегодняшний день существует большое разнообразие различных полетных контроллеров (ПК), отличающихся друг от друга по функционалу, аппаратному исполнению, надежности, программной поддержки и цене. Я не планирую проводить их описание и сравнительный анализ, а кратко расскажу об общем принципе работы и остановлюсь на двух, наиболее распространенных, на мой взгляд, вариантах контроллеров. По сути, любой ПК это микрокомпьютер, состоящий из центрального процессора, памяти, шин данных, интерфейсов ввода-вывода, дополнительной периферии. Соответственно, скорость обработки информации, а в нашем случае обработка данных с датчиков и приемника, зависит от быстродействия процессора и его разрядности. Как и любой компьютер, полетный контроллер работает настолько хорошо, насколько грамотно и без ошибок написана программа, запущенная на нем. А чем лучше написана программа, удобнее ее функционал и чем больше она умеет обрабатывать различных событий за минимальный промежуток времени, тем больше ей требуется процессорных ресурсов, памяти и скорости. Поэтому, со временем, одни контроллеры устаревают, разрядности их процессоров не хватает, а на смену им приходят более мощные и производительные.
В состав любого полетного контроллера обязательно входят гироскоп, акселерометр, барометр. Это минимально необходимый набор, обеспечивающий стабильность полета. Гироскоп отвечает за определение модели в пространстве по вертикали и горизонтали (не путать с географическим положением). Именно при помощи гироскопа происходит выравнивание модели относительно горизонта и наклонов вверх, вниз, отслеживаются углы поворотов, подъема и падения. Иными словами гироскоп определяет положение модели в трех плоскостях пространства (X, Y, Z) и называется трехосевой.
Акселерометр – устройство, анализирующее ускорение изменения положения модели в пространстве в тех же трех плоскостях (X, Y, Z). Он определяет с какой скоростью это происходит. Обычно гироскоп и акселерометр входят в состав одного чипа (датчика)и в таком случае говорят, что это шестиосевой гироскоп, хотя осей в пространстве всего три...
Барометр представляет собой устройство, которое измеряет атмосферное давление. То есть давление воздуха, который давит на нас со всех сторон. Из школьной физики мы знаем, что чем выше мы поднимаемся от земли, тем меньше атмосферное давление. Именно это свойство используется во всех летательных аппаратах для определения высоты. Есть и другие датчики определения высоты, например ультразвуковые или лазерные, где высота определяется временем возврата отраженного сигнала от поверхности. Но, такие датчики действуют на небольшие расстояния и чем оно больше, тем точность хуже. Поэтому они могут использоваться, как вспомогательные внешние устройства при точном определении небольшой высоты (например при посадке) или расстоянии до препятствия.
В расширенном варианте в состав контроллера могут входить магнитный компас, телеметрия, модули питания. Если каких то встроенных компонентов нет, то на контроллере должна быть предусмотрена возможность подключения внешних модулей через соответствующие интерфейсы и шины данных. Например приемник GPS, телеметрия, датчики скорости, ультразвуковые и инфракрасные датчики расстояния, высоты и т.п. Обычно любой контроллер имеет отдельные входные порты для подключения приемника сигналов с пульта управления и выходные порты для подключения моторов и сервоприводов. Есть полетные контроллеры, которые разработаны специально только для управления самолетом, есть разработанные только для квадрокоптеров или вертолетов, а есть универсальные полетные контроллеры, которые в зависимости от установленной программы (прошивки), могут использоваться на любых летающих (а так же, плавающих и ездящих) моделях.
Исходя из соображений универсальности, модульности, распространенности (а значит и базы знаний), поддержки программного обеспечения и цены, на всех своих моделях я использую полетные контроллеры серии APM, созданные на базе Arduino с процессором ATmega2560-16AU и полетным стеком ArduPilot, и, пришедшие ему на смену контроллеры серии Pixhawk с процессором STM32F427 Cortex M4 с оригинальным полетным стеком PX4, поддерживающие так же полетный стек ArduPilot.
Контроллеры 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 карты памяти.
К недостаткам я бы отнес отсутствие раздельных входных каналов PWM для подключения радиоприемника, не имеющего выходов в стандартах PPM, futaba, Spektrum. Для обычных приемников придется дополнительно приобретать плату преобразователя "PPM Encoder" А если подключать приемники с имеющимися выходами PPM, то возникнет проблема с реализацией переключения шести режимов полета с пульта (подробности об этом позже, при настройке передатчика). Еще одним недостатком я считаю, что привычные для АРМ 5-контактные разъемы телеметрии и GPS тут стали 6-ти контактными, поэтому кабели от комплектов АPМ не подойдут и придется их менять или переделывать на 6-ти контактные.
Хотя с аппаратной точки зрения APM и Pixhawk абсолютно разные устройства, разработчиками программного обеспечения Ardupilot была написана практически полностью совместимая прошивка, позволяющая использовать Pixhawk точно так же, как АРМ, включая настройку. И все внешние модули, подходящие для APM, без проблем подходят для контроллера Pixhawk. Поэтому в дальнейшем я буду излагать материал применительно к этим двум контроллерам.
Программное обеспечение
Для настройки полетного контроллера и всей электроники летательного аппарата, а так же для контроля управления полетами и их планирования, необходимо специализированное программное обеспечение, которое умело бы все это делать, было интеллектуально понятным и удобным в использовании. Специально для полетного контроллера APM (ArduPilot Mega) была разработана программа наземного пункта управления с открытым исходным кодом - Mission Planner (полное название Mission Planner Ground Control Station). Позднее, с появлением новых контроллеров Pixhawk, их поддержка была так же реализована в Mission Planner, что дало возможность, имея несколько вариантов полетных контроллеров, использовать для настройки и управления единый комплекс. Есть и другие альтернативные программы, например QGroundControl. Но, по моему мнению, Mission Planner самый распространенный "народный" инструмент с множеством описаний в Интернете, удобным, интуитивно понятным функционалом. Поэтому, для настроек контроллеров APM и Pixhawk я предлагаю использовать именно его. Различия в настройках этих контроллеров минимальны и я их укажу по ходу написания материала. В остальном все примеры и высказывания будут справедливы для двух вариантов контроллеров.
В данной статье не преследуется задача дать полное описание этой программы и всех ее возможностей. Информации в Интернете по использованию Mission Planner предостаточно. Просто начинающим авиамоделистам хочу предложить ее для освоения и использования, поэтому в дальнейших примерах буду упоминать именно ее.
Основные возможности Mission Planner:
- Загрузка аппаратно-программного обеспечения (firmware или прошивки) в плату полетного контроллера и телеметрии.
- Начальная установка, выбор конфигурации, и точная настройка летательного аппарата для получения оптимальных рабочих характеристик.
- Планирование, сохранение и загрузка отдельных полетов с обычным вводом путевых точек методом «point-and-click» (указал и щелкнул) на картах Google или на других картах.
- Загрузка и анализ журналов полетов.
- Взаимодействие с пилотажным имитатором на ПК для создания полномасштабного аппаратно-программного имитатора БЛА.
- Отслеживание состояния летательного аппарата в процессе эксплуатации.
- Ведение журнала телеметрических измерений, содержащего гораздо больше информации, чем журналы данных встроенного автопилота.
- Просмотр и анализ журналов телеметрических измерений.
Mission Planner можно установить на компьютер или ноутбук под управлением Windows (ссылка на дистрибутив). Так же есть варианты для установки на планшет или смартфон через приложения в Google Play или App Store. Подключение к контроллеру осуществляется либо через USB кабель, либо через радиоканал телеметрии.
Программа имеет несколько основных экранов, переключение между которыми осуществляется путем выбора нужного в верхнем горизонтальном меню.
По умолчанию, при запуске программы открывается экран DATA - главный экран полетов.
Экран PLAN - используется для планирования полета по точкам. С помощью экрана SETUP осуществляются все необходимые основные настройки летательного аппарата (ЛА). Экран CONFIG необходим для точной настройки конфигурации ЛА, включения, отключения функций, установок параметров и данных. Описание всех этих экранов я постараюсь сделать позже, по мере настройки ЛА. Сейчас подробно остановлюсь на экране DATA.
Описание функционала главного экрана:
Экран полётных данных по умолчанию, состоит из трех частей. Верхняя левая часть - окно HUD (Heads-up Display). Подробнее его описание рассмотрим ниже.
Нижняя левая часть - меню с кнопками действия. В зависимости от выбранного меню может отображать различную информацию. По умолчанию отображается меню Quick с выводом основных данных параметров полета (высота, горизонтальная и вертикальная скорость, отклонение, дистанция до точки, дальность аппарата от места взлета).
Правая часть - навигационная карта (по умолчанию Google Maps) на которой отображаются следующие параметры полёта:
- Красная линия - фактический курс, направление носа (переда) ЛА.
- Зелёная линия - курс назначения с учётом коррекции по треку.
- Чёрная линия - курс, определённый по данным, полученным от GPS (обычно отличается от фактического).
- Жёлтая линия - направление на текущую маршрутную точку, к которой исполняется полёт.
- Desired turn radius - расчётный радиус поворота
- GPS reported altitude - высота по данным GPS
- Latitude - широта
- Longitude - долгота
- Track of recent travel - Трек недавнего перемещения
Подробное описание показателей окна HUD:
- Air speed или Ground speed - скорость относительно земли (или скорость относительно воздуха, если установлен соответствующий датчик)
- Сrosstrack error and turn rate - ошибка следования треку и скорость поворота
- Heading direction - Курс (направление носа ЛА)
- Bank angle - Угол крена
- Wireless telemetry connection - Качество передачи телеметрийных данных (% потерянных пакетов)
- GPS time - время по данным, полученным от GPS
- Altitude - высота по данным барометра (синяя метка показывает скорость изменения высоты).
- Air speed - воздушная скорость (относительно воздуха), показывается только при наличии датчика.
- Ground speed - скорость относительно земли
- Battery status - состояние батареи
- Artificial Horizon - искусственный горизонт, (всегда реверсивен по отношению к крену ЛА).
- Pitch angle - Угол тангажа
- GPS status - состояние GPS-модуля
- Distance to current waypoint > Current waypoint number - расстояние до текущей точки маршрута и её номер
- Current autopilot mode - текущий режим автопилота
На этом первое знакомство с программой Mission Planner закончим и перейдем к следующим разделам.
Приемник и передатчик
Общие понятия, что такое приемник и передатчик я описал в своей статье "Радиоуправляемые самолеты. Электроника". Поэтому перейдем к деталям. Первым делом определимся с количеством необходимых каналов. Для обычного самолета нужны следующие каналы: канал №1 - элероны, канал №2 - руль высоты, канал №3 - мотор, канал №4 - руль поворотов. У летающего крыла и всех самолетов, где нет руля поворотов (используются флапероны), канал №4 свободен и его можно назначить для других целей. Если у самолета есть закрылки, то это еще один канал. Убирающиеся шасси потребуют так же своего канала.
Для работы с полетным контроллером понадобятся дополнительные каналы. По каналу №5 принимаются команды выбора режимов полета. поэтому этот канал надо зарезервировать и освободить, если он был занят. Максимальное количество режимов, заложенное в программе контроллера и наземной станции Mission Planner - шесть. Каждой определенной частоте импульсов пятого канала соответствует отдельный режим. И тут начинаются "танцы с бубном". Обычно на всех полноценных программируемых пультах есть только трехпозиционный тумблер. Его можно назначить на 5-й канал, но это будет только три режима полета. А как сделать переключение 6-ти режимов?... И вот тут всплывает первое различие между APM и Pixhawk.
К контроллеру APM радиоприемник подключается по протоколу PWM (ШИМ) — Pulse Width Modulation. Здесь каждый канал это отдельный кабель. Значит какой то канал можно подключить к контроллеру, а какой то нет. Что это дает? Это дает нам возможность смиксировать на передатчике два переключателя (два канала) - трехпозиционный, подключенный к 5-ому каналу и 2-х позиционный, подключенный к 6-ому каналу. В итоге, на шестом канале мы получим шесть позиций нужных нам частот импульсов (три значения позиций трехпозиционного переключателя при одном положении двухпозиционного, потом переключаем двухпозиционный и получаем еще три значения позиций трехпозиционного). В этом случае, при соединении приемника с контроллером, выход 5-ого канала приемника мы оставляем незадействованным, а 6-ой канал приемника подключаем к входному 5-му каналу контроллера APM. Как настроить передатчик расскажу ниже.
С контроллером Pixhawk организовать удобное переключение шести режимов гораздо сложнее. Все дело в том, что приемники к нему подключаются по протоколу PPM или SBUS, а это значит, что все каналы передаются всего по одному кабелю и разделить их (не подключить 5-ый, а 6-ой воткнуть вместо него) не получится. Тут есть несколько вариантов решений.
Первый вариант - приобрести дополнительный преобразователь (Encoder) сигнала PWM в сигнал PPM. Он в любом случае понадобится, если у вашего приемника нет выходной шины PPM или SBUS. Тогда 5-ый канал приемника мы к преобразователю не подключаем, а 6-ой канал приемника подключаем к 5-ому входу преобразователя.
Второй вариант - если приемник с выходом PPM или SBUS и у него нет шин PWM или категорически не хочется их использовать, покупая дополнительный encoder. Тогда настраиваем на 5-ый канал на крутилку вместо тумблера. В этом случае, вращая крутилку, будет меняться частота импульсов, а с ней меняться режимы. Это не совсем удобно, поскольку нет четкого фиксирования и выставлять нужный режим очень сложно и неудобно. Можно нанести риски, но, в экстренных случаях смотреть на них иногда не бывает времени.
Третий вариант - в продаже есть специальный модуль с 6-ти кнопками, который прикрепляется к пульту и его разъемы подсоединяются вместо крутилки, которая настроена на 5-ый канал. Но, тут надо поработать руками и паяльником. Внешний вид пульта так же изменится.
Четвертый вариант - три основные режима повесить на трехпозиционный переключатель (настроить его на 5-ый канал), а остальные режимы переключать через Mission Planner.
Все известные мне варианты переключения режимов я предложил, выбор конкретного за вами.
Помимо 5-го и 6-го канала нам понадобиться 7-ой канал, с помощью которого в дальнейшем мы будем настраивать характеристики самолета непосредственно в полете, включая через него режим AutoTune. Исходя из всей изложенной выше информации нам понадобится приемник и передатчик, поддерживающие 8 каналов.
Теперь перейдем к настройке пульта - миксированию 5-ого и 6-ого каналов. Независимо от конкретной модели передатчика нам необходимо на пятом канале контроллера получить импульсы с частотами 1165, 1295, 1425, 1555, 1685 и 1815. Значения надо смотреть/контролировать в окне калибровки аппаратуры в Mission Planner — 5й канал.
Конкретный способ настройки я покажу на примере своего пульта - Turnigy 9x со штатной прошивкой. Настроить свой пульт можно по аналогии или найти информацию в Интернете. Для переключения режимов я использую трехпозиционный переключатель F.MODE совместно с двухпозиционным THRO HOLD.
1. Очищаем все миксы в аппаратуре, которые могли использовать раньше.
2. Устанавливаем расходы в +-100% и тримеры/субтримеры в ноль для каналов 5 и 6.
3. Переходим к меню AUX-CH и устанавливаем THRO HOLD для CH5.
4. Переключаем F. MODE в позицию 2 и THRO HOLD в положение от себя. Перейдим в меню миксов MIX1, и меняем значение DNRATE на -20. При этом, в Mission Planner у пятого канала значение должно быть 1555. Если оно отличается, то подгоняем параметром DNRATE.
5. Оставляем F. MODE в позиции 2 и переключаем THRO HOLD в положение к себе. Изменяем UPRATE на -12. В Mission Planner у пятого канала значение должно быть 1425. Если оно отличается, то подгоняем параметром UPRATE. Нажимаем кнопку Menu на аппаратуре, чтобы сохранить MIX1.
6. Переключаем F. MODE в позицию N и THRO HOLD в положение от себя. Переходим в меню миксов MIX2, изменяем DNRATE в -50. Проверяем чтобы в Mission Planner у пятого канала стало значение 1685. Если оно отличается, то подгоняем параметром DNRATE.
7. Оставляем F. MODE в позиции N и переключаем THRO HOLD в положение к себе. Изменяем UPRATE на -42. В Mission Planner у пятого канала значение должно быть 1295. Если оно отличается, то подгоняем параметром UPRATE. Нажимаем кнопку Menu на аппаратуре, чтобы сохранить MIX2.
8. Переключаем F. MODE в позицию 1 и THRO HOLD в положение от себя. Переходим в меню миксов MIX3, изменяем DNRATE в -82. Проверяем чтобы в Mission Planner у пятого канала стало значение 1815. Если оно отличается, то подгоняем параметром DNRATE.
9. Оставляем F. MODE в позиции 1 и переключаем THRO HOLD в положение к себе. Изменяем UPRATE на -74. В Mission Planner у пятого канала значение должно быть 1165. Если оно отличается, то подгоняем параметром UPRATE. Нажимаем кнопку Menu на аппаратуре, чтобы сохранить MIX3.
На этом настройку передатчика и приемника можно считать завершенной.
Телеметрия
В общем понимании, телеметрия - комплекс автоматизированных средств, обеспечивающих получение, преобразование, передачу по каналу связи, приём, обработку и регистрацию измерительной (телеметрической) информации и информации о различных событиях с целью контроля на расстоянии контролируемых объектов и процессов.
В случае дистанционного радиоуправления моделью с полетным контроллером - это отдельный двухсторонний канал связи между наземным пунктом управления (компьютером, смартфоном, планшетом) и контроллером летательного аппарата (ЛА). Через телеметрию контроллер передает на Землю все параметры полета (высоту, дальность, скорость, направление), а так же состояние бортового оборудования (напряжение питания и ток разряда, наличие сигнала GPS, исправность датчиков давления, гироскопа, магнитного компаса). В свою очередь, с наземной станции через телеметрию контроллеру можно подавать различные команды, минуя пульт управления (переключение режима полета, координаты точек перемещения). Телеметрия так же используется на земле при настройке параметров летательного аппарата, заменяя собой кабель подключения по USB.
Для организации такого двухстороннего канала связи понадобится отдельный приемник и передатчик (приемопередатчик), как на земле (подключается к компьютеру, смартфону или планшету через USB-порт), так и на самом летательном аппарате (подключается к контроллеру через специальный порт телеметрии).
Чтобы наземный и бортовой приемопередатчики смогли "увидеть" друг друга они должны работать на одной частоте, с одинаковым идентификатором сети и по одному и тому же протоколу связи.
Специально для работы с полетными контроллерами APM и Pixhawk разработаны и выпускаются готовые радиомодули телеметрии - 3DR Radio. В комплект входят два радиомодуля - наземный ("земля") с USB разъемом и бортовой ("воздух") с разъемом для подключения к контроллеру. Это очень компактные, легкие устройства (порядка 4 грамм без антенны),которые легко установить на борт ЛА.
С недавних пор появился еще один вариант реализации телеметрии, когда в приемник радиоупраления моделью встроен передатчик для организации канала обратной связи с пультом управления. В этом случае данные с полетного контроллера передаются на пульт управления и отображаются на его дисплеи не требуя дополнительных устройств в виде отдельных радиомодулей, подключенных к компьютеру или смартфону с установленным специализированным программным обеспечением. В этой статье я не планирую подробно рассматривать данный вариант телеметрии, т.к. возможности пульта сильно ограничены по сравнению с программой Mission Planner и ей подобных. Например, прошивку и настройку контроллера и других компонентов летательного аппарата через пульт сделать не получится. И собрать все необходимые логи полета будет непросто.
Радиомодули телеметрии различаются между собой по частоте и мощности сигнала. Есть два варианта радиомодулей различающиеся по частоте - 915 МГц и 433 МГц (правда есть еще и третий вариант на 868 МГц, но я такой в продаже не встречал). У каждого варианта есть как свои плюсы, так и свои минусы, поэтому, перед принятием решения, какую частоту и мощность использовать, нужно учесть следующие параметры:
- Частота 433 МГц разрешена для свободного использования в России, но это означает, что эфир на данной частоте может быть "забит" другими сигналами в вашей местности. Частота 915 МГц официально в России не разрешена для использования в телеметрии. Казалось бы она должна быть меньше "забита", но она используется в сотовой связи GSM900. Поэтому, если поблизости есть вышки сотовой связи, то их передатчики могут сильно мешать работе телеметрии.
- Сигнал с частотой 433 МГц из-за длины волны имеет меньшее отражение и большую проникающую способность, чем сигнал 915 МГц (чем больше частота, тем короче длина волны и меньше проникающая и больше отражающая способность). Это значит, что антенну на 433 МГц можно убрать во внутрь корпуса, если есть металлические составляющие (например провода и прочие детали), а антенну на 915 МГц возможно придется выносить за приделы корпуса.
- Опять же из-за длины волны размер антенны для 433 МГц в два раза больше, чем антенны на 915 МГц. Уменьшение размера антенны ведет к потери чувствительности приема и мощности передачи, а следовательно дальности действия канала.
- При дальних полетах (за приделы видимости горизонта) или в местности, имеющие препятствия для прямой видимости (здания, деревья, холмы), частота 433 МГц предпочтительнее, т.к. волны этой частоты более длинные, а значит лучше огибают препятствия и радиус Земли, т.е. "заворачивают" за горизонт.
Следующее отличие радиомодулей телеметрии - по мощности передаваемого сигнала. Казалось бы очевидная вещь, чем больше мощность передатчика, тем больше дальность, на практике сталкивается с рядом ограничений:
- В большинстве стран (включая Россию) разрешенная мощность передатчика составляет 10 мВт. При такой мощности радиус действия будет порядка 50 метров. Повышение мощности до 100 мВт увеличит радиус действия до 300-400 метров, но может привлечь к себе нежелательное внимание контролирующих органов, особенно, если своим сигналом вы забиваете чей то разрешенный эфир.
- Чем больше мы делаем мощность передатчика, тем больше потребляемая мощность электропитания, которой на борту ЛА не бывает лишней.
- Увеличение мощности передатчика ведет к выделению дополнительного тепла, а значит требует системы охлаждения в виде радиатора или кулера, что увеличивает вес оборудования и всего ЛА.
Не смотря на все перечисленные ограничения по мощности, в продаже есть приемопередатчики с мощностью 100, 500 и 1000 мВт, обеспечивающие радиус действия 300-400 м, 1-1,5 км и 2-3 км соответственно. По умолчанию, все они программно настроены так, чтобы выходная мощность составляла не больше 10 мВт. А уже при настройке, через тот же Mission Planner, можно выставить на свое усмотрение, необходимую мощность.
После того, как с частотой и мощностью определись и приобрели необходимый комплект радиотелеметрии, переходим к их настройкам для дальнейшего использования в полетах. При покупке комплекта двух модулей "земля" - "воздух" по умолчанию они имеют одинаковую прошивку и настроены для работы друг с другом.
В радиомодулях есть два светодиода - красный и зеленый. Состояние свечения этих диодов означает следующее:
- Зеленый светодиод мигает - поиск сопряженного радиомодуля. В это время приемник пытается получить сигнал от аналогичного радиомодуля, работающего на той же частоте, тем же идентификатором сети и с тем же протоколом передачи данных.
- Зеленый светодиод постоянно горит - связь установлена с другим модулем радио.
- Красный светодиод мигает - идет передача данных
- красный светодиод постоянно горит - модуль находиться в режиме обновления прошивки
Важная информация: подавать питание на радиомодуль с отключенной антенной запрещается! Это может вывести из строя выходной усилитель мощности. Предупреждение справедливо для всех передатчиков, а не только телеметрии.
Для проверки и настройки телеметрии наземный радиомодуль подключаем через разъем USB к компьютеру. При установленной на компьютере операционной системе Windows 7 и выше произойдет автоматическая установка необходимых драйверов и устройство определится как один из COM портов. В противном случае придется скачать драйвера и установить их вручную. Номер COM-порта радиомодуля можно посмотреть в диспетчере устройств. После успешного определения радиомодуля на компьютере запускаем программу Mission Planner и переходим в верхнем меню раздел SETUP, а в нем подраздел Optional Hardware - Sik Radio. В правом верхнем углу программы Mission Planner выбираем номер COM-порта подключенного радиомодуля и в соседнем окне выставляем скорость соединения 57600 (бит/с) - скорость по умолчанию, установленная в радиомодуле, которую потом можно будет изменить. Нажимаем кнопку Load Settings и в левой части окна (Local) должна будет появиться вся информация из радиомодуля.
Теперь необходимо включить бортовой радиомодуль "воздух". Сделать это можно двумя способами. В первом случае подключить радиомодуль непосредственно к контроллеру полета в соответствующий разъем телеметрии и подать на контроллер питание, например через USB-порт. Второй способ - через специальный USB-адаптер подключить этот модуль к свободному USB-порту компьютера. На данном этапе наша задача подать напряжение питания на этот радиомодуль. Напряжение подано, и между двумя модулями должно установиться соединение, о чем будет свидетельствовать постоянно светящийся зеленый светодиод на обоих модулях.
Если соединение установлено (на обоих модулях постоянно горит зеленый светодиод), то нажимаем в программе Mission Planner еще раз кнопку Load Settings. Теперь в левом (Local) и правом (Remote) окнах должны появиться одинаковые параметры.
Если питание на оба модуля поданы, но соединение не устанавливается (зеленые светодиоды моргают), то надо сверить на обоих модулях версии прошивки и все настройки, которые должны совпадать. Для этого придется приобрести FTDI адаптер и кабель, через которые можно будет подключить к USB-порту компьютера бортовой модуль. Схема подключении радиомодуля к FTDI показана на рисунке ниже. Разъем TX модуля надо подключать к разъему RX адаптера, а разъем TX адаптера к разъему RX модуля. Бывают бортовые модули с собственным micro-USB разъемом, тогда никаких дополнительных адаптеров не понадобиться. При покупке 3DR имеет смысл обратить внимание на такой вариант бортового модуля.
Когда проблема подключения бортового модуля к компьютеру решена, то для начала делаем скриншот параметров наземного модуля в окне Local программы Mission Planner, а потом через FTDI адаптер подключаем к компьютеру бортовой модуль и сверяем параметры. Если прошивки одинаковые (строка Version в окне Local), то сравниваем остальные параметры, выставляем одинаковые в случае отличия и нажимаем кнопку Save Settings. Если прошивки разные, то на каждом модуле, подключая их по очереди к компьютеру, устанавливаем одинаковые, путем нажатия в Mission Planner кнопки Upload Firmware (последняя прошивка должна будет скачаться из интернета) или нажав кнопку Upload Firmware (local) и указав на расположение заранее скачанной прошивки. В случае установленных одинаковых прошивок и всех параметров соединение должно установиться. В противном случае это говорит о неисправности приемника, передатчика или антенны одного из модулей.
Когда оба модуля включены и видят друг друга, а в Mission Planner загрузились параметры настроек, остается только внести необходимые значения и сохранить их. Из всех параметров нас интересуют только два: мощность выходного сигнала (Tx Power) и идентификатор сети (Net ID). Остальные значения для начинающего пользователя можно пока оставить по умолчанию, без изменений.
Tx Power - параметр, задающий мощность выходного сигнала, задается в дБм (децибел-милливатт). Значение 20 соответствует максимальной выходной мощности радиомодуля. Соответственно, если вы приобрели модуль с максимальной выходной мощностью 100 мВт, то столько и будет на выходе, если модуль 500 или 1000 мВт, то на выходе будет соответствующая мощность сигнала. Соотношение дБм к мВт (для передатчика 100 мВт) следующее: 1=1.3 мВт, 2=1.5 мВт, 5=3.2 мВт, 8=6.3 мВт ,11=12.5 мВт, 14=25 мВт, 17=50 мВт, 20=100 мВт.
Net ID - идентификатор сети, отделяющий разные комплекты радиомодулей друг от друга. Он может быть любого значения, но одинаковый только для двух, совместно работающих радиомодулей. Это значение лучше изменить, не оставляя его по умолчанию, иначе может получиться так, что кто-то тоже будет рядом летать с аналогичными настройками.
Выставляем в левом окне Local нужные нам настройки и нажимаем кнопку Copy required to remote. в правом окне Remote должны появиться точно такие же настройки. Нажимаем кнопку Save Settings и записывем эти параметры в оба радиомодуля. Проверяем настройки отключив и снова подключив оба радиомодуля. Все измененные настройки должны сохраниться, а модули видеть друг друга. На этом настройку телеметрии можно считать законченной. Остается только все окончательно смонтировать в леталельном аппарате.
Для тех, кто хочет поиграться с остальными настройками, привожу ниже их описание:
Format: 26 — формат параметров в прошивке. Может быть другая цифра, зависит от версии прошивки. Менять не надо.
Baud: 57 — скорость работы порта, означает 57600 бод. Может иметь и другие значения. Для APM и Pixhawk по-умолчанию надо 57600.
Air Speed: 64 — скорость передачи данных по радиоканалу (для большинства случаев лучше всего оставить 64 кБит, что является средним значением). Уменьшение этой скорости увеличивает радиус действия, вместе с этим снижение этой скорости уменьшает и общий объем данных которые могут быть переданы по каналу.
ECC: включено — коррекция ошибок. Если вы используете ECC (рекомендуется) объем передаваемых данных по беспроводному каналу данных удваивается. Но это позволит обеспечить более надежную связь на больших расстояниях.
Mavlink: 1 — включение режима кадрирования пакета.
Op Resend: включено
Min Freq: 915000 — минимальная частота (кГц).
Max Freq: 928000 — максимальная частота (кГц). Лучше оставить как есть. Модули выбирают менее зашумленный канал. Прошивка модемов реализует скачкообразную перестройку частоты (FHSS) с синхронным адаптивным мультиплексированием с временным разделением каналов (TDM). Эти оба параметра можно варьировать, чтобы задать границы частоты вручную. Для обоих парных модулей указывать одинаковые значения.
# of Channels: 50 — количество используемых каналов.
Duty Cycle: 100 — процент времени на передачу.
LBT Rssi: выключено — функция LBR («Listen Before Talk», слушать эфир перед передачей).
RTS CTS: выключено — Request To Send / Clear To Send, Запрос на отправку/Разрешение отправки.
Модуль GPS
GPS приемник и магнитный компас являются одними из важнейших модулей, обеспечивающих возможность определения и отслеживания местонахождения модели, полета по заданным точкам и её возврат на место взлета.
На сегодняшний день в мире существуют следующие спутниковые навигационные системы: GPS, GLONASS, GALILEO и QZSS.
GPS - спутниковая система, разработанная в США. GLONASS - русская спутниковая система является альтернативной по отношению к GPS. QZSS (Quasi-Zenith Satellite System) - система навигационного покрытия спутниками Тихоокеанского региона, обслуживающего Японию и Австралию. GALILEO - совместный проект спутниковой системы навигации Европейского союза и Европейского космического агентства.
Для полетных контроллеров радиоуправляемых моделей выпускается целый ряд GPS модулей, отличающихся между собой производителем, конструкцией, корпусом (есть и бескорпусные), наличием или отсутствием интегрированного магнитометра (магнитного компаса), зашитыми конфигурационными настройками и типом соединительного разъема.
Как правило, все модули состоят из керамической антенны и платы, на которой расположен GPS-чип, модуль памяти, стабилизатор напряжения и резервная батарея (аккумулятор). Если в модуль интегрирован магнитный компас, то его микросхема так же расположена на общей плате. Антенна может быть либо впаяна в плату с противоположной стороны, либо быть выполнена в виде отдельного элемента и соединяться с платой высокочастотным проводом.
Встроенная память и небольшой аккумулятор служат для быстрого, холодного старта. В памяти хранятся данные часов, последние данные о местоположении (данные об орбите) и конфигурация модуля. Аккумулятор автоматически заряжается при включении модуля и позволяет сохраняет данные до двух недель. Если аккумулятор разрядится, то данные обнулятся и при первом включении может происходить долгий поиск спутников, произойдет задержка по времени выхода модуля в рабочий режим.
В целом, по подключению, все модули GPS универсальны, поскольку работают по стандартному протоколу UART (Universal asynchronous receiver/transmitter) с последовательной передачей и приемом данных по двум проводам - RxD (прием) и TxD (передача). Еще два контакта, это питание, как правило, 5 Вольт. Специально для контроллеров на базе APM и Pixhawk продаются модули с 5-ти или 6-ти контактными разъемами DF-13 соответственно. Если в модуль GPS интегрирован магнитный компас, то для его подключения к контроллеру используется отдельный универсальный разъем, подсоединяемый к шине I2C.
Принципиальные различия между модулями GPS заключаются в используемом чипе, вернее его возможностях. В данной статье далее я буду рассматривать GPS модули от производителя компании U-Blox. Конечно это не единственный производитель, есть и другие, просто на его примере покажу этапы развития модулей. Первая, выпускаемая ими линейка GPS модулей, была реализована на базе чипа NEO-6 и многие радиомоделисты начинали знакомство с навигацией именно с нее. Сейчас этих модулей практически нет в продаже. NEO-6 умеет работать только с сигналами GPS. Другие системы ему не известны.
На смену NEO-6 пришел следующий чип NEO-7. Модули с данным чипом уже умеют принимать сигналы систем GPS, GLONASS, GALILEO и QZSS. Но, этот чип не умеет работать сразу с несколькими системами. С какой именно ему работать надо определять в конфигурационных настройках, а для этого надо знать какая группировка спутников более доступна в Вашей местности полетов. Модули с этим чипом до сих пор есть в продаже.
Самым актуальным на сегодняшний день является модуль с чипом NEO-8. Он стоит несколько дороже, чем NEO-7, зато умеет работать сразу с несколькими системами, например GLONASS и GPS. Рекомендую приобретать модуль GPS именно с этим чипом или аналогичном, умеющим работать с несколькими системами одновременно. Наилучшим вариантом будет дополнительное наличие встроенного в модуль магнитного компаса, о котором мы поговорим позже.
Подключение к полетным контроллерам APM или Pixhawk не составляет особого труда. На обоих устройствах есть подписанный разъем - GPS. На первоначальном этапе никаких дополнительных настроек производить не требуется. Проверить работоспособность модуля достаточно легко. Подключаем его к контроллеру, а контроллер соединяем по USB кабелю с компьютером. На GPS приемнике должен загореться светодиод, показывающий наличие питания. В зависимости от конкретной конструкции модуля, на нем присутствуют дополнительные светодиодные индикаторы, показывающие наличие или отсутствие сигналов со спутника.
Необходимо помнить, что для качественного приема сигнала должны отсутствовать препятствия между антенной и спутниками в виде металлической или бетонной крыши и прочих предметов, закрывающих прохождение радиоволн. Из-за высокой частоты сигнала GPS (порядка 1,5 ГГц) эти волны не умеют огибать препятствия и "заглядывать "за них. Даже плотные облака могут значительно ухудшить качество приема. Если модуль давно не включался, то данные в памяти о спутниках могут быть потеряны и при первом включении, даже при идеально чистом небе над антенной, придется какое то время подождать (иногда до 10 мин.), пока обнаружатся спутники. Для относительно нормального позиционирования требуется фиксация минимум трех спутников. Чем больше пойманных спутников, тем четче будет вычислено позиционирование на местности.
Для визуальной проверки работоспособности модуля запускаем программу Mission Planner и жмем кнопку CONNECT. На данном этапе прошивка контроллера и его настройки нас не интересуют, они могут быть любыми. В верхнем левом окне HUD (Heads-up Display) главного экрана программы смотрим информацию в нижнем правом углу. Здесь может быть три варианта.
- GPS: No GPS — ваш модуль не работает (неправильное подключение, неправильная прошивка, не работает сам модуль, нет контакта и т.д.).
- GPS: No Fix – модуль работает, пытается захватить спутники.
- GPS: 3D Fix – спутники пойманы!
При наличии индикатора GPS: 3D Fix в окне навигационной карты должно отобразиться местоположение Вашего GPS модуля.
Если время поиска спутников каждый раз происходит слишком долго, то можно сделать дополнительные настройки модуля GPS. Возможно он пытается поймать сигналы от всех навигационных систем и тратит на их поиск много времени. Зная, что в нашей местности и принимаются только сигналы GPS и GLONASS, поиск несуществующих надо отключить. Для этого запускаем Mission Planner, подключаем через USB контроллер с подсоединенным модулем GPS и переходим в главном верхнем меню на закладку CONFIG. В левой колонке выбираем пункт Full Parameter List и в правой части ищем строку со значением GPS_GNSS_MODE. Задавая параметры этого значения можно настроить работу только с системой GPS (значение 1) или только с системой GLONASS (значение 66). А можно настроить совместное использование GPS+GLONASS+SBAS, выставив значение 67. SBAS - геосинхронные спутниковые системы, которые обеспечивают повышение точности, целостности и доступности основных сигналов навигационных систем. В своих настройках я использую значение 67. После изменения настроек не забываем нажать кнопку Write Params для сохранения изменений.
Еще одна настройка, связанная с модулями GPS, необходима для контроллера Pixhawk. По умолчанию, он настрпоен для работы с двумя модулями GPS, выбирая лучшие данные. Если у Вас подключен только один модуль, то настройку надо изменить. В том же пункте Full Parameter List ищем строку со значением GPS_AUTO_SWITCH и изменяем значение на 0. Не забываем записать изменения.
На этом выбор, проверку и настройку модуля GPS можно считать законченной. Переходим к настройкам магнитного компаса.
Магнитный компас
В предыдущей разделе был описан модуль GPS, благодаря которому пилот, управляющий своей моделью, всегда знает ее географическое местоположение и может направлять на новые точки или дать команду вернуться обратно к месту взлета. И вот для того, чтобы модель понимала в какую сторону ей надо поворачивать и двигаться, необходимо наличие компаса. Как известно, компас - это устройство для определения сторон света в пространстве. Полетный контроллер должен четко знать, где у него находится север, юг, запад, восток. Тогда он будет давать правильные команды для перемещения в нужную точку. От качества работы и точности настройки компаса зависит поведение летательного аппарата в автоматическом режиме полета или при срабатывании системы защиты FailSafe, переводящей самолет в режим RTL - возврат к точке взлета.
При всей важности правильной работы магнитного компаса (он же датчик магнитного поля), это самое подверженное помехам устройство. Связано это с тем, что на разных территориях полета естественное магнитное поле земли может быть разным. На магнитный датчик могут влиять посторонние магнитные поля, например от высоковольтных линий электропередач, подземных кабелей или от бортовой электроники самого летательного аппарата. Именно поэтому компас желательно заново калибровать на каждом новом полётном месте, а в летательном аппарате стараться разместить его подальше от компонентов с электромагнитным излучением (электромоторов, сервоприводов, силовых проводов) и металлических деталей конструкции корпуса.
В зависимости от используемого полетного контроллера, магнитный компас может быть как интегрирован в него, так и подключаться отдельно, в виде дополнительного модуля. Например, в полноценном контроллере на базе Arduino APM 2.8 магнитный компас интегрирован в плату, но его можно отключить перемычкой, а в версии APM Pro mini его нет. Все полетные контроллеры Pixhawk оснащены интегрированным магнитным компасом. Основное отличие относительно использования компаса между контроллерами APM и Pixhawk заключается в том, что APM может работать только с одним магнитным датчиком (внешним или встроенным), а Pixhawk может одновременно работать с тремя компасами (одним встроенным и двумя внешними).
Поскольку наличие магнитного компаса без модуля GPS не имеет практического смысла, а GPS без компаса сможет разве что показать местоположение и скорость перемещения, то часто магнитный датчик встраивают непосредственно в модуль GPS. В этом случае у модуля есть дополнительный разъем, а на корпусе или плате изображена стрелка, указывающая направление компаса. Стрелка показывает, как должен быть размещен модуль на летательном аппарате - ее направление должно совпадать с передом модели.
Подключение внешнего магнитного компаса к полетному контроллеру происходит по шине I2C. Для APM и Pixhawk это 4-х контактный разъем DF-13. Все настройки производятся через программу Mission Planner при подключенном контроллере через пункт Compass в разделе Mandatory Hardware верхнего меню SETUP. Проверку работоспособности компаса, первоначальные настройки и предварительную калибровку можно сделать до установки контроллера в модель. Окончательную калибровку надо будет делать уже с полностью собранной моделью в месте, где предполагаются полеты.
В зависимости от конкретного типа полетного контроллера и магнитного датчика первоначальные настройки несколько отличаются друг от друга. В начале рассмотрим настройку на примере контроллера APM 2.8. В него уже интегрирован магнитный компас. И если Вы планируете использовать модуль GPS, у которого так же есть интегрированный магнитный датчик, то надо определиться, какой компас использовать. Если принимается решение использовать компас, встроенный в контроллер, то разъем от внешнего компаса модуля GPS просто не подключаем. Если же принято решение использовать внешний компас, то на APM необходимо физически отключить интегрированный в него компас, удалив джампер (перемычку) JP, расположение которого показано на картинке.
Подключаемся к Mission Planner и переходим в меню Setup, раздел Mandatory Hardware, пункт Compass. В окне Compass # 1 нужно установить галочку Use this compass (использовать этот компас). Если принято решение использовать компас контроллера, то убираем галочку Externally mounted ( наружное подключение). Если хотим использовать внешний компас, то галочку устанавливаем и в появившемся выпадающем списке выбираем, какое у нас расположение компаса. Дело в том, что в разных модулях GPS чип магнитного датчика может быть припаян по разному. Если он припаян вверх ногами (антенна GPS всегда должна быть вверху, а микросхемы могут быть припаяны с обратной стороны платы), то необходимо выбрать расположение Roll 180, что означает, перевернут на 180 градусов. Возможно Ваш магнитный датчик будет расположен в каком то другом положении относительно земли, тогда нужно будет выбрать соответствующее значение, чтобы контроллер правильно понимал данные. При использовании интегрированного в контроллер компаса галочку Externally mounted убираем. Еще одна интересная галочка - Automatically learn offsets (автоматическое обучение смещению) в окне General Compass должна дополнительно обучить компас во время полета и после этого сама сброситься. Но, к сожалению, эта функция работает только с прошивками версий 4.0, а для APM эти версии уже не выпускаются. Поэтому тут она бесполезна.
Далее переходим к тестовой калибровке компаса (основную будем делать в поле), нажав кнопку Live Calibration. При появлении трехосевой картинки координат начинаем вращать магнитный компас по всем направлениям, добиваясь заполнения всех белых квадратных точек. В случае успеха Mission Planner выдаст сообщение, что калибровка прошла успешно и запишет в память результаты калибровки. Для понимания, как вращать компас, рядом с кнопкой калибровки есть ссылка на видео в Youtube, где наглядно, на примере квадрокоптера, показана калибровка компаса. Понять, что компас настроен правильно, можно в главном меню Mission Planner, в окне HUD, по значению верхней шкалы, указывающей направление стрелки компаса. На этом первоначальные настройки компаса для контроллера APM можно считать завершенными.
Для контроллера Pixhawk настройки компаса несколько отличаются от настроек APM. Связано это с тем, что он может обрабатывать данные до трех одновременно работающих компасов (один интегрированный и два внешних). Поэтому, в том же пункте Compass, в правом окне надо будет указать, какие компасы мы используем, ставя соответствующие галочки Use compass 1 (2,3). Pixhawk сам умеет определять, какие компасы к нему подключены и какой из них внешний, а какой внутренний. На внешнем автоматически появляется галочка External. Так же он сам определяет ротацию (положение) чипа относительно земли. Остается только задать приоритет, какой компас главный. При наличии внешнего, я бы рекомендовал сделать его приоритетным. Считается, что у встроенного больше наводок. Для контроллера Pixhawk работает функция автоматического обучения смещению, поэтому имеет смысл поставить галочку Automatically learn offsets. После первых полетов и успешного обучения галочка сама сбросится. На время обучения нельзя включать режимы, использующие GPS (RTL, Auto и т.п.). Теперь остается только откалибровать компас. Жмем на кнопку Start и начинаем вращения, аналогичные с APM. Только теперь вместо трехосевых координат с точками для каждого компаса будет горизонтальный индикатор с растущей зеленой полоской по мере обучения компаса. При успешной калибровке каждого компаса Mission Planner выдаст соответствующие сообщения. Останется только перезагрузить контроллер и все изменения сохраняться.
На данном этапе все настройки компаса можно считать завершенными. Окончательная калибровка должна быть сделана перед первым взлетом на местности. Есть еще одно важное правило калибровки - она должна производиться на высоте не менее одного метра от земли.
Бортовое питание
Правильно организованное электропитание на борту самолета является гарантом безотказной работы всех модулей и минимизирует риски непредвиденных ситуаций в полете. Поэтому необходимо тщательно прорабатывать схему питания для каждой модели в зависимости от того, какие потребители энергии (двигатели, сервоприводы дополнительные внешние модули) установлены. Разработчики полетных контроллеров рекомендуют использовать специально разработанные подули - Power Module (РМ).
Разработанный для контроллера APM (он так же подходит для Pixhawk) модуль предназначен не только для подачи питания на контроллер и дополнительную периферию. Он так же является средством передачи данных о напряжении батареи и потребляемом токе. Эти данные очень важны. Они передаются пилоту через передатчик телеметрии и позволяют контролировать состояние аккумулятора, своевременно предупредить о скором его разряде, а так же включить защитный режим (например возврат к точке взлета).
Основные характеристики РМ:
Макс. входное напряжение - 18В;
Макс. ток нагрузки - 90А;
Выходные параметры стабилизатора - 5.3В;
Макс. ток стабилизатора - 2,25А
Использование данного модуля является самым простым и недорогим решением, но у него есть свои недостатки, о которых следует знать и учесть при реализации схемы питания. Перечислю их. Следуя характеристикам, максимальное напряжение на входе не должно превышать 18В, а это значит, что использовать аккумулятор больше 4S не получится. Максимальный ток стабилизатора 2.25А. Этого тока хватит только для питания самого контроллера, приемника и периферийных устройств - GPS и телеметрии. Запитывать от него сервоприводы и другие модули нельзя, поскольку это может привести срабатыванию защиты стабилизатора по превышению тока. Максимальный общий ток при работе всех модулей и максимальных оборотах двигателей не должен превышать 90А, иначе сработает общий предохранитель. В продаже можно найти аналогичные модули с входным напряжением до 50В и током до 120А, но их цена будет в разы больше.
Для питания сервоприводов и модулей с повышенным потреблением тока (например видеопередатчик и OSD модуль) необходимо использовать отдельный стабилизатор напряжения. Часто в его роли используется стабилизатор 5В, встроенный в регулятор двигателя ESC, так называемый блок исключения батареи - Battery Eliminator Circuit (BEC). Данный стабилизатор обеспечивает подачу тока от 2 до 5 Ампер. Но, тут тоже есть некоторые особенности. Необходимо знать, по какой схеме он собран. Как правило, в недорогих ESC, это обычный линейный стабилизатор с максимальным выходным током до 2А. В линейных стабилизаторах напряжение больше 5 Вольт срезается и преобразуется в тепло. Чем больше нагрузка, тем больше ток, а значит больше нагревается стабилизатор и есть опасность выхода его из строя или отключения от перегрева. КПД у такого стабилизатора уменьшается при увеличении тока, впустую сажая аккумулятор.
Поэтому стабилизатор от ESC имеет смысл использовать только в том случае, если нагрузка не велика или стабилизатор не линейный, а импульсный. В характеристиках ESC указывается тип BEC, и как правило, у импульсных BEC ток от 3 до 5 Ампер. Импульсный стабилизатор работает путем быстрого (высокочастотного) включения и выключения напряжения на трансформаторе, с вторичной обмотки которого снимается необходимое напряжение 5В. При этом, за счет электромагнитной трансформации (индукции), практически исключается перегрев стабилизатора и достигается КПД до 90%. В характеристиках ESC такой стабилизатор часто обозначают BEC быстрого переключения.
Справедливости ради надо сказать, что импульсный стабилизатор может быть источником электропомех для приемников, поэтому ESC следует размещать подальше от приемников и антенн.
В качестве альтернативы использования встроенного в ESC стабилизатора напряжения можно приобрести отдельный модуль - универсальный блок исключения батареи Universal Battery Eliminator Circuit (UBEC). Это небольшой по размеру и весу модуль (порядка 11 грамм). Напряжение на его вход подается так же, как на ESC и может быть от 5.5 до 26 Вольт, номинальный ток нагрузки 3 - 5 Ампер. Перемычкой можно задать выходное напряжение 5 или 6 Вольт. Он так же может давать помехи в эфир, поэтому надо обращать внимание на наличие защитного экрана и расположение относительно приемников и антенн.
В зависимости от принятого решения о способах питания, схема подключения может несколько меняться. Рассмотрим вариант запитывания контроллера, приемника, телеметрии и GPS от Power Module, а сервоприводов от стабилизатора ESC. Для контроллера APM необходимо удалить перемычку JP1. Тем самым разделяются цепи питания от ESC и PM. Трехконтактный разъем от ESC подключается к 3 каналу OUTPUTS, а сервоприводы элеронов, руля высоты и руля поворотов к 1, 2, и 4 порту соответственно. Питание для дополнительных модулей можно брать со свободных контактов "+" "-" OUTPUTS.
У контроллера Pixhawk подключение происходит точно так же, только никаких перемычек удалять не надо. В нем шина питания разъемов MAIN OUT изначально изолирована от шины питания контроллера модулем PM.
Если принимается решение сервоприводы и дополнительные модули запитывать от UBEC, то из разъема ESC надо удалить средний провод, а разъем выходного напряжения от UBEC воткнуть в свободные контакты "+" "-" OUTPUTS (для APM) или MAIN OUT (для Pixhawk).
При любом выборе питания непосредственно к самому аккумулятору подключается только модуль РМ. Все остальные модули, которые должны запитываться напряжением аккумулятора (ESC, UBEC и прочее), подключаются к силовому выходу PM. Это необходимо для того, чтобы правильно определялся потребляемый ток и вычислялся процент разряда батареи.
Теперь остается настроить контроллеры для правильного отображения информации о напряжении батареи и задать параметры включения режимов защиты. Для этого подключаем к контроллеру модуль PM в соответствующий разъем и соединяем контроллер по USB с компьютером. Подключаем к PM аккумулятор и запускаем программу Mission Planner. Подключаемся к контроллеру и выбираем в верхнем меню выбора экранов закладку SETUP. В левой колонке выбираем раздел Optional Hardware и переходим в раздел Battery Monitor
В строке Monitor выставляем значение показывать напряжение и ток (Analog Voltage and Current). В строке Sensor выбираем наш 3DR Power Module. В строке HW Ver выбираем нашу версию контроллера. Для APM это значение APM2.5+/ZealotF427 - 3DR Power Module, а для Pixhawk значение The Cube or Pixhawk. В строке Battery Capacite (емкость аккумулятора) выставляем соответствующую емкость. Это даст возможность контроллеру правильно вычислять процент заряда аккумулятора. Устанавливая галочку MP Alert on Low Battery включаем звуковое предупреждения в Mission Planner. При этом появиться три окна с вопросом, какую фразу произносить, при каких процентах заряда и каком напряжении.
После завершения настроек переходим в главный экран Mission Planner и в окне HUB смотрим значения напряжения и тока. Для сравнения точности показания нужно воспользоваться вольтметром, аккуратно подключившись к аккумулятору. Если показания различаются, то возвращаемся обратно в раздел Battery Monitor и в строке Sensor выставляем значение Other. В окне Calibration в строке Meassured battery voltage (измеренное напряжение батареи) выставляем значение, которое показывает вольтметр. Если вольтметра нет, или его точность под сомнением, то подключаем к контроллеру аккумулятор сразу после зарядки. Показания должны соответствовать значению полностью заряженной батареи. При необходимости корректируем.
Точность тока проверяем аналогично, только в разрез цепи питания аккумулятора включаем амперметр. Если значения расходятся, то в окне Calibration в строке Amperes per volt подбираем значение, чтобы в строке Current (Calced) значение совпадало с показаниями амперметра. Проверяем показания при разных нагрузках. На самом деле у РМ точность определения тока оставляет желать лучшего. Но, эти данные особой информации не несут, только общее представление, какая возникает нагрузка на батарею при разных режимах работы оборудования.
Последним этапом необходимо настроить систему защиты FailSafe при разряде батареи до определенного уровня. Для этого в том же экране Setup выбираем в левом столбце пункт Mandatory Hardware и переходим в раздел FailSafe. В правом окне Battery выставляем напряжение, при достижении которого срабатывает защита и выставляем режим, в который должен перейти самолет. Логично выставить RTL - возврат к точке взлета. При этом нужно помнить, что критичное напряжение разряда для LiPo аккумуляторов составляет 3,0В на каждой банке, ниже которого происходят невосстановимые процессы и потеря емкости. Поэтому порог срабатывания защиты обычно выбирают 3,4В на банку, поскольку самолету еще надо вернуться и сесть. Значит для аккумулятора 3S пороговое напряжение 10,2В, для 4S значение будет 13,6В.
На этом вопросы бортового питания можно считать решенными.
Настройка контролера
После того, как все необходимые для безопасного полета модули (передатчик и приемник, телеметрия, GPS, магнитный компас, питание) приобретены, проверены и настроены, самое время перейти к настройке самого контроллера и последующей установки на борт всего оборудования.
Все настройки осуществляются через программу Mission Planner (МР). В первую очередь необходимо установить на контроллер соответствующую прошивку. Для этого подключаем его к компьютеру через USB кабель и убеждаемся через Диспетчер устройств, что наш контроллер определился как один из COM-портов. В зависимости от конфигурации вашего компьютера и типа контроллера, название и номер COM-порта может отличаться от указанной на картинке. Это не важно. Главное, чтобы он определился, а не был помечен, как неизвестное устройство. Иначе придется искать в Интернете и устанавливать драйвера. Надеюсь, что этого не понадобиться, если Вы установили последнюю версию Mission Planner, поскольку в его дистрибутив входят все необходимые драйвера, которые устанавливаются при инсталляции.
Запускаем МР и в главном верхнем меню выбираем пункт SETUP. Далее в правом верхнем углу, рядом с кнопкой CONNECT, из выпадающего списка выбираем номер COM-порта нашего контроллера и в соседнем окне выбираем скорость соединения 115200 Бит/с. Кнопку CONNECT не нажимаем, поскольку при прошивке соединение устанавливается напрямую.
В левой колонке есть два варианта прошивки Install Firmware и Install Firmware Legacy. Отличаются они тем, что в первом случае МР постарается установить последнюю официальную прошивку (не факт, что она уже проверенная и без критических ошибок), а во втором случае можно будет выбрать предыдущие проверенные версии прошивок. Перед выбором прошивки можно поискать на различных форумах в Интернете отзывы и выбрать правильное решение.
Если мы прошиваем контроллер APM, то верхний вариант Install Firmware нам не подойдет, поскольку последняя версия для самолета на момент написания статьи 4.0.9, а последняя совместимая с APM - 3.4.0. В этом случае MP выдаст ошибку - Failed to discover board id, что означает - не удалось идентифицировать контроллер для данной версии прошивки. Поэтому без вариантов выбираем пункт Install Firmware Legacy. Я всегда пользуюсь этим пунктом при прошивки как APM, так и Pixhawk. Нажимаем мышкой на картинку самолета, под которым указана последняя официальная версия прошивки (МР проверяет информацию каждый раз при выборе данного пункта) и в ответ получаем окно с вопросом подтверждения установки этой версии. Соглашаемся и начинается процесс прошивки. В случае с APM после соглашения с установкой официальной версии прошивки появится следующее окно, в котором говориться, что для данного контроллера из последних версий доступна только прошивка 3.4.0. Не расстраиваемся и соглашаемся на нее, поскольку вполне рабочая и проверенная версия.
Если нет желания ставить последнюю официальную версию, то в МР предусмотрены различные варианты выбора других прошивок. Можно установить заранее скачанную с сайта или выбрать из выпадающего списка любую из предыдущих версий.
После окончания процесса прошивки нажимаем кнопку CONNECT и проверяем подключение к контроллеру, а так же первоначальные показания акселерометра в главном меню DATA. Если ошибок соединения нет, а акселерометр реагирует на изменения положения контроллера в пространстве (на голосовые предупреждения, что нет GPS, не настроен компас и прочее, пока не обращаем внимание), то переходим к следующему пункту - установки контроллера и всех необходимых модулей на борт самолета, соблюдая все рекомендации по размещению и подключению, озвученные в статьях по каждому модулю.
Сам полетный контроллер необходимо разместить на антивибрационной площадке (продаются готовые), предотвращающей передачу вибрации от корпуса и мотора. Стрелка на корпусе контроллера должна совпадать по направлению с носом самолета. Дальнейшие настройки удобнее осуществлять подключаясь к Mission Planner через модуль телеметрии, поскольку подключить USB кабель к установленному на борт контроллеру и вращать вместе с ним самолет будет не простой задачей. О модуле телеметрии, его подключении и настройке рассказано выше, поэтому сразу переходим к дальнейшим настройкам контролера.
Подключаем контроллер к МР через телеметрию и снова заходим в главный экран SETUP. Нажимаем кнопку CONNECT и, после удачного подключения к самолету, в левой колонке появляется меню Mandatory Hardware. Выбираем раздел Accel Calibration (калибровка акселерометра), нажимаем кнопку Calibrate Accel и следуем инструкциям на экране. Программа будет последовательно предлагать разместить самолет в каждой позиции калибровки. Когда самолет находится в нужном положении, жмем любую клавишу и переходим к следующей ориентации. Положения калибровки следующие: горизонтальный уровень, на правой стороне, на левой стороне, носом вниз, носом вверх и на спине. Старайтесь при каждой ориентации (за исключением горизонтальной) выдерживать угол 90 градусов. Важно, чтобы транспортное средство оставалось неподвижным сразу после нажатия клавиши для каждого шага. Это более важно, чем получить правильный угол. За исключением горизонтального уровня, отклонения могут быть в пределах 20 градусов от точности. Положение в горизонтальной плоскости является наиболее важным, так как именно его будет учитывать контроллер во время полета. Если Ваша модель очень большая и ее затруднительно поворачивать в разных плоскостях, то контроллер можно отдельно откалибровать перед установкой. Есть облегченный вариант калибровки только по горизонтальному уровню (кнопка Calibrate Level). Но, если Вы откалибровали в трех плоскостях, то жать на эту кнопку не следует, иначе все ваши предыдущие настройки сотрутся из памяти.
После окончания калибровки акселерометра переходим к следующему пункту в левой колонке Compass -калибровка компаса. Об этой процедуре подробно рассказывается выше в разделе "Магнитный компас". Следуем инструкциям и делаем предварительную настройку компаса, дабы убедиться, что все работает. Окончательную калибровку будем делать на месте полетов.
Следующим этапом необходимо провести калибровку нашей аппаратуры радиоуправления, чтобы контроллер знал, в каких пределах у нас приходит сигнал и мог правильно работать. Как настраивать приемник и передатчик подробно рассказано выше в разделе "Приемник и передатчик". Теперь остается привязать их к контроллеру. Для этого в левой колонке переходим в раздел RadioCalibration. В правом окне жмём на кнопку «Calibrate Radio» и двигаем стики пульта радиоуправления в минимальное значение, затем в максимальное, потом по кругу, вращаем «крутилки» от упора до упора, щёлкаем всеми тумблерами. Кому как удобно, Нам на данном этапе надо получить правильные значения калибровки своего пульта. Так же смотрим, правильно ли у нас отклоняются элероны рули высоты и поворотов. При необходимости, если отклонения происходят в противоположную сторону, можно указать реверс, добившись правильного управления. Затем выставляем стик газа в ноль, крутилки в ноль, все тумблера от себя (если ни чего не перепаивали) и нажимаем кнопку «Click when Done». Далее появится калибровочная табличка, означающая, что все наши настройки сохранены.
Теперь необходимо провести калибровку регулятора мотора ESC, чтобы он знал минимальные и максимальные значения ШИМ-сигнала, который посылается передатчиком. Есть два варианта калибровки. Через полетный контроллер и в ручном режиме, минуя его.
Вариант первый:
1. Включите пульт радиоуправления и переведите рычажок регулятора газа в максимальное (крайнее верхнее) положение
2. Подключите аккумулятор. На полётном контроллере начнут циклично мигать индикаторы красного, синего и жёлтого цвета, которые сигнализируют о том, что полётный контроллер готов перейти в режим калибровки ESC при следующем включении
3. Отключите и подключите аккумулятор квадрокоптера. Рычажок регулятора газа на пульте радиоуправления должен оставаться в максимальном положении
4. На полётных контроллерах PX4/Pixhawk нажмите и удерживайте кнопку безопасности до тех пор, пока она не начнёт гореть красным цветом.
5. Теперь полётный контроллер находится в режиме калибровки ESC. На полётном контроллере APM индикаторы синего и красного цвета начнут попеременно мигать (как на полицейской машине)
6. Дождитесь, когда ESC издаст звуковой сигнал - количество пиков указывает на тип аккумулятора (3 пика - для 3S аккумулятора и т.д), затем два дополнительных пика известят о том, что максимальный уровень ШИМ сигнала получен и сохранен
7. ESC издаст длинный звуковой сигнал, извещающий об успешном получении и сохранении минимального значения ШИМ для газа, и о том, что калибровка завершена
8. Если вы услышали длинный звуковой сигнал, то калибровка была успешно завершена и мотор активирован - если вы начнёте двигать регулятор газа на пульте вверх, то мотор начнет вращаться.
9. Установите регулятор газа на пульте в нижнее положение и отключите аккумулятор, чтобы выйти из режима калибровки ESC.
Если что-то не получается, то можно использовать второй вариант:
- Подключите трёхпроводной кабель от ESC к каналу газа на радиоприёмнике сигналов с пульта ДУ минуя контроллер
- Включите пульт радиоуправления и переведите рычажок регулятора газа в максимальное (крайнее верхнее) положение
- Подключите аккумулятор
- Вы услышате звуковой сигнал, затем 2 пика
- После 2 пиков переведите рычажок регулятора газа в минимальное (крайнее нижнее) положение
- Вы услышите несколько пиков (количество пиков указывает на тип аккумулятора (3 пика - для 3S аккумулятора и т.д), затем 1 длинный звуковой сигнал, извещающий об успешном получении и сохранении минимального значения ШИМ для газа, и о том, что калибровка завершена
- Отсоедините аккумулятор
- Если ESC не откалибровался, то канал газа на пульте должен быть реверсирован
- Если вы всё ещё испытываете трудности с калибровкой после применения этих методов, попробуйте уменьшить на 50% трим газа.
После калибровки аппаратуры управления нужно задать полетные режимы, которые будут включаться с пульта управления. Для этого в левой колонке МР переходим в раздел Flight Modes. Если переключать ранее запрограммированные на пульте управления кнопки режимов, то зеленым цветом будет отображаться соответствующие Flight Mode. Остается только выбрать нужный режим из выпадающего списка. По окончании не забыть нажать для сохранения кнопку Save Modes.
Следующий параметр, который надо настроить, это показатель заряда аккумулятора. Подробно об этом рассказано в разделе "Бортовое питание".
В завершении осталось настроить систему безопасности полета FailSafe - ради чего все и затевалось. Для этого переходим в соответствующий раздел и указываем необходимые нам значения. Например, возврат на точку взлета при потери сигнала с пульта. И возврат домой при понижении напряжения питания.
Теперь все готово к первым полетам!
По мере продолжения подготовки материала будут рассмотрены следующие разделы:
Первые полеты
Автовзлет и автопосадка
Что еще можно добавить на борт
Камера
Видеопередатчик
OSD модуль
Видео шлем
Спонсор канала компания Stop-leaks