Барометр в полётном контроллере: почему в Betaflight он почти бесполезен, а в ArduPilot без него невозможен автопилот

Большинство FPV-пилотов считают барометр необязательным датчиком, тогда как для разработчиков автономных БПЛА на ArduPilot он является одним из ключевых элементов системы навигации. Почему возникло такое противоречие? В этой статье мы подробно разберём, как работает барометр, что он измеряет на самом деле, почему не знает абсолютной высоты, как используется в Betaflight и ArduPilot, какие у него ограничения и почему без него невозможно построить надёжный автопилот. Статья содержит реальные цифры, инженерные объяснения и практические рекомендации для пилотов и разработчиков беспилотников.

Pardus · Главный редактор

ПоделитьсяВКонтактеTelegramMAX
Барометр в полётном контроллере: почему в Betaflight он почти бесполезен, а в ArduPilot без него невозможен автопилот

Почему вокруг барометра столько споров и как один маленький датчик разделил мир беспилотников

Если спросить у пилота FPV на Betaflight, нужен ли барометр в полётном контроллере, ответ часто будет коротким: «Нет. Летаю без него много лет». Но задайте тот же вопрос инженеру, который разрабатывает автономные беспилотники на ArduPilot, и вы услышите прямо противоположное: «Без исправного барометра автопилот не сможет нормально удерживать высоту».

Кто же прав? На самом деле — оба.

Причина споров заключается не в самом датчике, а в философии двух совершенно разных полётных систем. Betaflight создавался для максимально быстрого ручного управления. ArduPilot — для автономных полётов, длительных миссий и сложной навигации. Поэтому один и тот же барометр выполняет в них совершенно разные задачи.

Чтобы понять, почему это так, сначала разберёмся, что именно измеряет барометр.

Барометр не измеряет высоту

Это первое и самое распространённое заблуждение.

На самом деле барометр вообще не знает, на какой высоте находится беспилотник. Он измеряет только атмосферное давление.

На уровне моря среднее атмосферное давление составляет 1013,25 гПа (гектопаскалей). Чем выше поднимается аппарат, тем меньше воздуха остаётся над ним, а значит уменьшается и давление.

Полётный контроллер использует физическую зависимость между давлением и высотой и рассчитывает предполагаемое изменение высоты.

Вблизи уровня моря действует простое инженерное правило:

  • изменение давления на 1 гПа соответствует примерно 8–8,5 метрам изменения высоты;
  • на высоте 100 метров давление уже примерно на 12 гПа ниже, чем на месте взлёта;
  • на высоте 1000 метров давление уменьшается примерно на 110–115 гПа.

Именно поэтому современные барометры способны определять даже очень небольшие изменения высоты.

Насколько точен современный барометр?

Сегодня в большинстве полётных контроллеров используются цифровые MEMS-барометры. Самые распространённые модели:

  • MS5611;
  • BMP388;
  • DPS310;
  • SPL06-001.

Эти датчики имеют разрешение, позволяющее фиксировать изменение давления, соответствующее нескольким сантиметрам изменения высоты. В лабораторных условиях их шум может составлять менее 10 сантиметров по высоте после фильтрации.

Но лаборатория и настоящий полёт — совершенно разные условия.

На беспилотнике барометр одновременно испытывает влияние:

  • вибраций двигателя;
  • потока воздуха от винтов;
  • нагрева электроники;
  • солнечного излучения;
  • турбулентности;
  • изменения атмосферного давления.

Поэтому в реальном полёте точность определяется уже не столько самим датчиком, сколько качеством его установки и алгоритмами обработки данных.

Почему барометр не знает абсолютную высоту

Представим два одинаковых квадрокоптера.

Первый запускается на берегу моря.

Второй — на крыше здания высотой 250 метров.

После включения оба полётных контроллера выполняют калибровку барометра.

И в этот момент оба считают своё текущее положение за нулевую высоту.

Для барометра совершенно неважно, находится ли аппарат на уровне моря, на вершине холма или на крыше небоскрёба. Он просто запоминает текущее давление как начальную точку отсчёта.

Поэтому барометр умеет очень хорошо определять, что дрон поднялся на 15 метров или снизился на 7 метров, но сам по себе никогда не сможет ответить на вопрос:

«На какой абсолютной высоте над уровнем моря сейчас находится аппарат?»

Для этого необходимы другие источники информации — прежде всего GPS, а в некоторых случаях RTK или цифровые карты местности.

Почему барометр оказался таким важным

Несмотря на все ограничения, именно барометр остаётся самым быстрым и стабильным источником информации о вертикальном движении беспилотника.

Спутниковая навигация определяет высоту значительно менее точно и обновляет данные с небольшой частотой. Акселерометры прекрасно чувствуют ускорения, но при длительном интегрировании быстро накапливают ошибку. Лазерные дальномеры работают только на ограничённых дистанциях.

Барометр занял уникальную нишу между этими технологиями. Он не знает абсолютной высоты и не измеряет расстояние до земли, но позволяет автопилоту очень точно отслеживать изменения высоты и компенсировать их в режиме реального времени.

Именно поэтому в ArduPilot барометр является одним из ключевых датчиков системы навигации, тогда как в Betaflight его роль значительно скромнее. Почему разработчики этих двух полётных систем приняли настолько разные решения, разберём в следующей части статьи.

Барометр в Betaflight: почему большинство FPV-пилотов годами летают без него

Если посмотреть современные полётные контроллеры для FPV-дронов, можно заметить интересную особенность: многие из них вообще не имеют барометра. И это не попытка производителя сэкономить несколько долларов на комплектующих, а осознанное инженерное решение.

Причина проста — в Betaflight барометр практически не участвует в управлении полётом.

Именно поэтому многие опытные пилоты искренне считают этот датчик бесполезным. В рамках классического FPV они во многом правы.

Философия Betaflight

Betaflight создавался для совершенно другой задачи, чем ArduPilot.

Его основная цель — обеспечить максимально быструю реакцию квадрокоптера на действия пилота.

Каждое движение стика должно практически мгновенно превращаться в изменение положения аппарата.

Поэтому вся архитектура Betaflight построена вокруг работы гироскопа и акселерометра.

Современные гироскопы работают с частотой до 8 кГц, а на некоторых контроллерах — ещё выше. PID-регулятор также может рассчитываться с очень высокой частотой, благодаря чему задержка между движением стика и реакцией дрона составляет всего несколько миллисекунд.

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

Почему в Betaflight нет настоящего удержания высоты

Новички часто удивляются:

«Если установлен барометр, почему нельзя просто включить режим удержания высоты?»

Ответ заключается в самом принципе FPV-полёта.

Во время гонок или фристайла пилот постоянно работает газом.

Он каждую секунду:

  • резко набирает высоту;
  • сбрасывает тягу;
  • делает флипы;
  • пролетает арки;
  • ныряет с высоты десятков метров.

Любая попытка автоматически удерживать высоту в такой ситуации только мешала бы пилоту.

Поэтому в Betaflight управление тягой полностью остаётся в руках человека.

Для чего тогда используется барометр?

Если барометр установлен на полётном контроллере, он может использоваться для нескольких вспомогательных задач:

  • отображение примерной высоты в OSD;
  • запись данных в Blackbox;
  • телеметрия для наземной станции;
  • диагностика полёта;
  • экспериментальные функции в отдельных прошивках.

Однако ни одна из этих задач не влияет непосредственно на устойчивость управления квадрокоптером.

Если барометр перестанет работать, большинство пилотов во время обычного FPV-полёта этого даже не заметят.

Почему барометр может даже мешать

Представьте обычный пятидюймовый FPV-квадрокоптер.

Пилот резко даёт полный газ.

Через доли секунды под корпусом возникает мощный поток воздуха.

Давление возле полётного контроллера меняется.

Барометр воспринимает это как изменение атмосферного давления.

Если использовать такие данные для автоматического удержания высоты, система начнёт получать ложную информацию и пытаться компенсировать несуществующее изменение высоты.

В результате управление станет менее предсказуемым.

Именно поэтому разработчики Betaflight сделали ставку не на автоматизацию, а на полный контроль пилота.

Какие датчики действительно важны для Betaflight

Для FPV-квадрокоптера жизненно необходимы всего несколько компонентов:

  • гироскоп;
  • акселерометр (в большинстве конфигураций);
  • качественный PID-контур;
  • быстрые ESC и двигатели.

Без гироскопа полёт невозможен.

Без барометра — абсолютно возможен.

Именно поэтому производители массовых полётных контроллеров, таких как SpeedyBee, Diatone, GEPRC, Foxeer и других, нередко выпускают версии без барометра, ориентированные исключительно на FPV-полёты.

Отсюда и возникает главный миф

Пилот годами успешно летает на Betaflight без барометра.

Затем он начинает собирать самолёт-разведчик, ретранслятор или автономный БПЛА на ArduPilot.

По привычке он считает, что барометр — необязательный датчик.

Именно здесь начинается путаница.

В мире ArduPilot барометр перестаёт быть второстепенным устройством и становится одним из основных источников информации для оценки вертикального положения беспилотника. От его работы напрямую зависит удержание высоты, выполнение автоматических миссий и безопасность полёта.

Почему это так и каким образом ArduPilot использует барометр совместно с GPS, IMU и другими датчиками, подробно разберём в следующей части статьи.

Барометр в ArduPilot: почему без него невозможен полноценный автопилот

Если в Betaflight барометр — это всего лишь вспомогательный датчик, то в ArduPilot его роль совершенно иная. Здесь он является одним из основных источников информации о вертикальном положении беспилотника и постоянно участвует в расчётах системы навигации.

Именно поэтому разработчики ArduPilot рекомендуют уделять особое внимание качеству барометра, его размещению и защите от внешних воздействий.

Почему одного GPS недостаточно

Многие начинающие пилоты считают, что если установлен современный GNSS-приёмник, то необходимость в барометре отпадает.

На практике всё наоборот.

Спутниковая навигация значительно хуже определяет высоту, чем координаты по горизонтали.

Например, обычный GPS-модуль способен удерживать горизонтальную точность порядка 1–3 метров при хорошем сигнале, тогда как ошибка по высоте часто составляет 3–10 метров, а иногда и больше.

Кроме того, большинство GNSS-приёмников обновляют данные с частотой 5–10 Гц, а специализированные модели — до 20–25 Гц.

Для сравнения: гироскоп и акселерометр работают с частотой в сотни и тысячи измерений в секунду, а барометр — десятки измерений в секунду.

Если автопилот будет ориентироваться только на GPS, аппарат начнёт постоянно «искать» нужную высоту, то поднимаясь, то опускаясь вслед за шумом спутниковых измерений.

Как ArduPilot решает эту проблему

Вместо того чтобы доверять одному датчику, ArduPilot использует алгоритм EKF (Extended Kalman Filter — расширенный фильтр Калмана).

Его задача — объединить данные сразу из нескольких источников и получить наиболее достоверную оценку положения беспилотника.

В расчётах могут одновременно участвовать:

  • гироскоп;
  • акселерометр (IMU);
  • барометр;
  • GPS или GNSS;
  • лазерный дальномер (LiDAR);
  • Visual Odometry;
  • оптический поток (Optical Flow);
  • магнитометр.

Каждый из этих датчиков имеет свои сильные и слабые стороны.

Задача EKF — использовать достоинства каждого и компенсировать их недостатки.

Кто за что отвечает?

Если сильно упростить работу EKF, можно представить её следующим образом.

  • IMU мгновенно реагирует на любые ускорения, но со временем накапливает ошибку.
  • Барометр обеспечивает плавную и стабильную оценку изменения высоты.
  • GPS корректирует долгосрочное положение аппарата относительно Земли.
  • LiDAR очень точно измеряет расстояние до поверхности, но только на небольшой высоте.
  • Visual Odometry помогает сохранять устойчивость там, где GPS отсутствует или подавлен.

Получается своеобразная «командная работа», где барометр играет роль основного источника информации именно о вертикальном положении аппарата.

Почему барометр незаменим при удержании высоты

Представьте квадрокоптер, зависший на высоте 100 метров.

Появляется порыв ветра.

Аппарат начинает плавно снижаться.

Барометр практически сразу фиксирует изменение давления.

EKF понимает, что высота уменьшается.

Автопилот увеличивает тягу двигателей.

Через доли секунды дрон снова занимает заданную высоту.

Если бы система ориентировалась только на GPS, реакция была бы значительно менее точной из-за большей шумности и меньшей частоты обновления данных.

Что происходит при отказе барометра

Современный ArduPilot способен обнаружить неисправность барометра и перейти на резервные источники информации.

Например, если установлен лазерный дальномер, на небольшой высоте система может использовать его.

При наличии качественного GPS возможна частичная компенсация по спутниковым данным.

Однако полностью заменить исправный барометр они не способны.

Именно поэтому на большинстве профессиональных автопилотов устанавливают не один, а два или даже три барометрических датчика.

ArduPilot постоянно сравнивает их показания. Если один из барометров начинает существенно отличаться от остальных, система может признать его неисправным и исключить из расчётов.

Почему барометр особенно важен при автономных полётах

При ручном FPV пилот постоянно контролирует аппарат глазами и самостоятельно работает газом.

Во время автономной миссии всё иначе.

Автопилот должен самостоятельно:

  • взлететь;
  • набрать заданную высоту;
  • пролететь маршрут;
  • обойти препятствия (при наличии соответствующих датчиков);
  • удерживать высоту на протяжении десятков километров;
  • вернуться домой и выполнить посадку.

Во всех этих режимах барометр непрерывно участвует в расчётах EKF и помогает удерживать вертикальное положение аппарата с высокой стабильностью.

Однако даже самый точный барометр не идеален. На его показания влияют температура, поток воздуха от винтов, солнечный нагрев и изменение атмосферного давления. Именно эти ограничения чаще всего становятся причиной ошибок новичков и требуют отдельного подробного разговора, к которому мы перейдём в следующей части статьи.

Когда барометр начинает ошибаться: ограничения, о которых должен знать каждый инженер

После знакомства с документацией ArduPilot у многих складывается впечатление, что барометр — практически идеальный датчик. На самом деле это не так.

Барометр действительно очень точно измеряет атмосферное давление, но только при одном условии — вокруг него должно быть спокойное и стабильное воздушное пространство.

На беспилотнике таких условий практически никогда не бывает.

Именно поэтому грамотная установка барометра не менее важна, чем выбор самого полётного контроллера.

Главный враг — воздушный поток от винтов

Самая распространённая причина ошибок барометра — не погода и не температура, а сами пропеллеры.

Во время работы винт создаёт сложную картину воздушных потоков:

  • области повышенного давления;
  • зоны разрежения;
  • турбулентность;
  • пульсации давления.

Если отверстие барометра оказывается в зоне такого потока, датчик начинает воспринимать изменение давления как изменение высоты.

Представьте ситуацию.

Квадрокоптер висит неподвижно.

Пилот резко увеличивает газ.

Аппарат ещё не успел начать подъём, а давление возле датчика уже изменилось.

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

Именно поэтому инженеры ArduPilot уделяют столько внимания защите барометра от воздушных потоков.

Зачем нужен поролон над барометром

Практически на всех современных автопилотах можно увидеть небольшой кусочек чёрного поролона, закрывающий барометр.

Новички часто считают, что это упаковочный материал или защита от пыли.

На самом деле его задача гораздо важнее.

Поролон работает как воздушный фильтр низких частот.

Он:

  • сглаживает быстрые перепады давления;
  • уменьшает влияние турбулентности;
  • защищает от воздушных импульсов от винтов;
  • при этом практически не мешает медленным изменениям атмосферного давления.

Поэтому удалять этот поролон нельзя.

А если он потерял форму или разрушился, его желательно заменить.

Температура тоже влияет на показания

Ещё один важный источник ошибок — нагрев полётного контроллера.

После включения электроника постепенно выходит на рабочую температуру.

Процессор, стабилизаторы питания, датчики и другие компоненты начинают выделять тепло.

Если барометр расположен слишком близко к нагревающимся элементам, его показания начинают медленно смещаться.

Именно поэтому опытные пилоты часто дают автопилоту 1–2 минуты спокойно поработать перед взлётом, чтобы температура внутри корпуса стабилизировалась.

На профессиональных контроллерах это влияние дополнительно уменьшается программной температурной компенсацией.

Солнце может изменить высоту

Даже прямые солнечные лучи способны повлиять на работу барометра.

Если одна сторона корпуса сильно нагревается, температура воздуха внутри изменяется неравномерно.

В результате возникают небольшие локальные изменения давления, которые барометр может воспринимать как изменение высоты.

Особенно заметно это на беспилотниках, долго находящихся на открытой площадке перед запуском.

А что насчёт погоды?

Изменение атмосферного давления действительно влияет на барометр, но гораздо медленнее.

Например, во время прохождения циклона давление может уменьшиться на 10–20 гПа за сутки.

Теоретически это соответствует изменению высоты более чем на 80–160 метров.

Однако обычный полёт длится десятки минут, а не сутки.

За это время естественные изменения атмосферного давления настолько малы, что практически не влияют на удержание высоты.

Гораздо большую проблему создают локальные воздушные потоки вокруг самого беспилотника.

Когда нужен внешний барометр

В продаже можно встретить внешние барометрические модули.

Возникает вопрос — стоит ли их покупать?

В большинстве случаев ответ отрицательный.

Если речь идёт об обычном квадрокоптере или самолёте с правильно установленным полётным контроллером, встроенный барометр полностью справляется со своей задачей.

Внешний барометр может оказаться полезен, если:

  • контроллер расположен рядом с мощным источником тепла;
  • внутри корпуса невозможно организовать нормальную вентиляцию;
  • используется реактивная силовая установка;
  • конструкция создаёт сильные локальные перепады давления.

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

Пять ошибок, которые совершают новички

  1. Удаляют защитный поролон над барометром.
  2. Устанавливают полётный контроллер рядом с ESC или видеопередатчиком, которые сильно нагреваются.
  3. Закрывают вентиляционные отверстия герметиком или плотной изоляцией.
  4. Начинают взлёт сразу после включения питания, не дав электронике прогреться и завершить калибровку.
  5. Считают, что проблемы удержания высоты всегда связаны с барометром, хотя причиной могут быть вибрации, неправильная настройка PID, плохая балансировка винтов или ошибки EKF.

Барометр — очень точный датчик, но он никогда не работает в одиночку. Его показания постоянно сравниваются с информацией от других сенсоров, а окончательное решение принимает алгоритм EKF. Именно благодаря такому подходу современные автопилоты способны уверенно удерживать высоту даже в сложных условиях, где отдельный датчик давно бы начал ошибаться.

Betaflight или ArduPilot: кому действительно нужен барометр?

К этому моменту можно сделать главный вывод статьи: споры о пользе барометра возникают не потому, что кто-то ошибается, а потому, что сравниваются две совершенно разные философии управления беспилотником.

Для гоночного FPV-квадрокоптера и для автономного разведчика требования к полётному контроллеру отличаются настолько же сильно, как требования к болиду «Формулы-1» и пассажирскому самолёту.

Именно поэтому один и тот же датчик играет в этих системах совершенно разные роли.

Сравним Betaflight и ArduPilot

Параметр Betaflight ArduPilot
Основная задача Ручной FPV-полёт Автономные миссии и навигация
Роль барометра Вспомогательная Один из основных датчиков
Автоматическое удержание высоты Практически отсутствует Есть
Работа через EKF Нет Да
Использование GPS для управления Минимальное Постоянное
Автоматические миссии Нет Да
Возврат домой (Return to Launch) Нет Да
Полёт по маршруту Нет Да

Эта таблица хорошо показывает, что вопрос не в самом барометре, а в задачах, которые решает полётный контроллер.

Можно ли заменить барометр?

Иногда можно услышать утверждение:

«Зачем барометр, если есть GPS?»

Или:

«Поставлю LiDAR — и барометр больше не нужен.»

На практике это не работает.

Каждый датчик отвечает за свою область.

  • Барометр — изменение высоты относительно точки отсчёта.
  • GPS — глобальные координаты и приблизительная абсолютная высота.
  • LiDAR — точное расстояние до поверхности на небольшой высоте.
  • Visual Odometry — перемещение относительно окружающей среды.
  • IMU — ускорения и угловые скорости.

Современный автопилот не выбирает между ними. Он использует их одновременно.

Несколько практических советов

Если вы собираете беспилотник на ArduPilot:

  • не удаляйте защитный поролон с барометра;
  • не устанавливайте полётный контроллер рядом с мощными источниками тепла;
  • уменьшайте вибрации качественным креплением контроллера;
  • не взлетайте сразу после включения питания — дайте датчикам завершить инициализацию;
  • регулярно анализируйте логи полётов, особенно при проблемах с удержанием высоты.

Если же вы летаете исключительно на Betaflight, отсутствие барометра в большинстве случаев не станет проблемой. Гораздо важнее правильно настроенный PID, качественный гироскоп, исправные моторы и хороший навык пилотирования.

Главный вывод

Барометр — это не «датчик высоты» и не «бесполезная опция», как иногда можно прочитать на форумах.

Это высокочувствительный прибор, измеряющий атмосферное давление, который в зависимости от полётной системы может играть совершенно разную роль.

В Betaflight он остаётся вспомогательным датчиком, без которого большинство пилотов даже не заметят разницы.

В ArduPilot барометр становится частью навигационной системы. Вместе с IMU, GPS, дальномером, Optical Flow и Visual Odometry он помогает автопилоту понимать, где находится беспилотник в пространстве, удерживать заданную высоту, выполнять автоматические миссии и безопасно возвращаться домой.

Поэтому утверждение «барометр не нужен» верно только для ручного FPV-пилотирования. Как только беспилотник начинает принимать решения самостоятельно, значение этого небольшого датчика возрастает многократно.

Совет редакции. Если вы только начинаете знакомство с ArduPilot, перестаньте воспринимать барометр как второстепенный сенсор. От качества его работы зависит значительно больше, чем кажется на первый взгляд. Правильная установка полётного контроллера, защита барометра от воздушных потоков и понимание принципов его работы зачастую влияют на стабильность полёта сильнее, чем замена двигателя или установка более дорогого GPS-модуля.

ПоделитьсяВКонтактеTelegramMAX

Ещё в рубрике «БПЛА и беспилотные системы»

Ещё в разделе «Технологии»

Все материалы