Урок 43 из 43 · Ответы на контрольные вопросы курса
Mission Planner для технического персонала · Урок 43 из 43 · Модуль 5. Справочные материалы
Развёрнутые ответы на вопросы всех уроков и решения расчётных заданий. Сверяйтесь только после того, как сформулировали свой ответ.
Ответ, подсмотренный до попытки, не запоминается. Сначала формулируйте своими словами, потом сверяйтесь с текстом.
Содержание
1. Глава 1
1. Все контуры стабилизации и навигации выполняются на полётном контроллере автономно, с частотой до 400 Гц. Наземная станция лишь отправляет команды и принимает телеметрию. При потере связи автопилот продолжает выполнять текущий режим; реакция определяется параметром FS_GCS_ENABLE, и по умолчанию во многих конфигурациях она отсутствует.
2. Миссия — это десятки пунктов, параметры — тысяча с лишним записей. Кроме того, миссия передаётся по протоколу с подтверждением каждого элемента, а параметры в старой схеме шли отдельными пакетами PARAM_VALUE. MAVFtp существенно ускорил загрузку параметров, передавая их одним блоком.
3. NetID (иначе модемы не образуют пару) и Air Speed (иначе рассинхронизация физического уровня). Скорость последовательного порта должна совпадать между модемом и подключённым к нему устройством, но у наземного и бортового модема она может различаться.
4. Падение txbuf означает переполнение буфера передачи: данных генерируется больше, чем канал способен передать. Действия: снизить частоты потоков телеметрии в CONFIG → Planner и повысить Air Speed модема (при достаточном качестве связи).
5. ZIP-версия не требует прав администратора, не трогает системный реестр, позволяет держать несколько версий одновременно и мгновенно откатиться к заведомо рабочей копии, если после обновления что-то сломалось.
↑ К оглавлению2. Глава 2
1. Basic Tuning — несколько ползунков, за каждым стоит согласованное изменение группы параметров. Extended Tuning — полные наборы PID по контурам с человекочитаемыми подписями. Full Parameter List — плоский доступ ко всем параметрам без интерпретации. Глубина растёт, «защита от дурака» убывает.
2. Панель показывает дисперсии оценок EKF: Velocity, Pos Horiz, Pos Vert, Compass, Terrain Alt. Compass Variance = 0,9 означает, что фильтр почти не доверяет показаниям компаса: наблюдается большое расхождение между курсом по магнитометру и курсом, вычисленным по движению. Причины — магнитные помехи, плохая калибровка, влияние тока.
3. ArduPilot защищается от disarm в воздухе, но защита срабатывает не во всех режимах и состояниях. При успешном выполнении моторы останавливаются мгновенно, и аппарат падает. Для прекращения полёта существуют RTL и LAND, для экстренной остановки на земле — функция Motor Emergency Stop (RCn_OPTION = 22).
4. Изменить значение в таблице → нажать Write Params → убедиться, что подсветка изменения исчезла → при наличии пометки «Reboot required» перезагрузить автопилот → перечитать параметры и проверить значение.
5. Compare Params сравнивает текущий набор параметров с файлом и показывает различия. Применяется после сессии настройки: позволяет убедиться, что изменилось ровно то, что планировалось, и ничего не задето случайно.
↑ К оглавлению3. Глава 3
1. MAVLink — потоковый протокол для телеметрии, где потеря отдельного пакета некритична: следующий придёт через доли секунды. Для миссий и параметров работает протокол более высокого уровня с подтверждением приёма каждого элемента и повторной передачей при отсутствии подтверждения.
2. Наземная станция получит смешанный поток от двух источников с одним адресом и будет считать его одним аппаратом. HUD начнёт «прыгать» между двумя наборами данных, а отправляемые команды примут оба аппарата.
3. PSC_VELXY_I — Position Control, контур горизонтальной скорости, интегральный коэффициент. EK3_SRC1_YAW — EKF3, первый набор источников, источник курса. Q_ASSIST_SPEED — QuadPlane, скорость, ниже которой включается помощь подъёмных моторов.
4. Для применения типового набора настроек, не затрагивая индивидуальные калибровки: наборы фильтрации под конкретные винты, стандартный набор failsafe для организации, набор навигационных скоростей для типа задачи.
5. MAVFtp передаёт таблицу параметров одним блоком вместо тысячи отдельных пакетов, многократно ускоряя подключение. Требует MAVLink 2 (SERIALx_PROTOCOL = 2), поддержки со стороны прошивки (4.1+) и модема, не разрывающего длинные пакеты.
4. Глава 4
1. Stable — проверенные релизы для реальной эксплуатации. Beta — кандидаты в релиз, с известными и неизвестными ошибками. Latest — ежедневная сборка из master, может не работать вовсе. Beta оправдана, когда нужна конкретная новая функция и есть возможность тщательно всё проверить.
2. При обновлении новые параметры получают значения по умолчанию, удалённые исчезают, у некоторых меняются дефолты. Сравнение файлов до и после показывает все эти изменения и позволяет сознательно принять или скорректировать их.
3. FRAME_CLASS и FRAME_TYPE. Проверка — через Motor Test со снятыми винтами: порядок отклика моторов и направление вращения сверяются с диаграммой на сайте ArduPilot.
4. Включение мультироторной части в прошивке ArduPlane. Порождает два независимых набора настроек: самолётный (TECS, L1/NPFG, RLL_RATE_*) и мультироторный (Q_A_*, Q_P_*, Q_WP_*), которые настраиваются раздельно.
5. Калибровка акселерометра определяет смещения в системе координат, уже развёрнутой согласно AHRS_ORIENTATION. Изменение ориентации после калибровки делает записанные смещения бессмысленными.
5. Глава 5
1. Accel Calibration — полная шестипозиционная процедура, определяющая смещения и масштабы по всем осям. Calibrate Level — только AHRS_TRIM_X/Y, учёт наклона установки платы. Второй достаточно при небольшом уводе в ALT_HOLD, когда в остальном аппарат ведёт себя нормально.
2. Hard-iron сдвигает центр облака точек от нуля, сохраняя форму сферы. Soft-iron деформирует сферу в эллипсоид, оставляя центр примерно на месте.
3. Внутренний компас расположен рядом с силовой электроникой и подвержен помехам от токов. Когда два компаса дают расходящиеся показания, EKF получает противоречивые данные и вынужден их взвешивать, что ухудшает оценку курса. Один надёжный источник лучше двух конфликтующих.
4. MOT_SPIN_ARM — минимальные обороты после армирования, чтобы аппарат не полз по земле. MOT_SPIN_MIN — минимальные обороты в полёте: при быстром снижении моторы не должны останавливаться полностью, иначе теряется управляемость. Второе значение заметно выше первого.
5. По залитой при зарядке ёмкости: полетайте до заметного расхода, запишите показанное автопилотом потребление, зарядите батарею зарядным устройством с подсчётом ёмкости и скорректируйте BATT_AMP_PERVLT в пропорции реальная/показанная.
6. Включает использование напряжения с компенсацией просадки: автопилот оценивает внутреннее сопротивление батареи и вычисляет напряжение без нагрузки. Решает проблему ложных срабатываний failsafe на пиках тяги.
↑ К оглавлению6. Глава 6
1. STABILIZE не использует GPS, компас и контуры положения. Нормальное поведение в нём означает, что механика, вибрации и базовый тюнинг в порядке, и проблему следует искать в навигации. Плохое поведение в STABILIZE указывает на механику или PID.
2. В LOITER стик задаёт скорость перемещения, аппарат ведёт себя «как на рельсах» и активно тормозит. В POSHOLD стик задаёт угол наклона, как в STABILIZE, а удержание включается при отпускании. POSHOLD ощущается более «ручным» и предпочтителен для динамичного пилотирования.
3. RTL летит по прямой на высоте RTL_ALT. SMART_RTL возвращается по упрощённому записанному треку, повторяя пройденный путь. Второй предпочтителен при полётах среди препятствий — между зданиями, под мостом, в лесу — куда прямой путь домой ведёт через препятствие.
4. Валидное решение по положению от EKF, загруженная миссия минимум с одним пунктом, и первой командой должна быть TAKEOFF (при взлёте с земли).
5. При отказе GPS или деградации навигационного решения режимы, требующие положения, недоступны. Если первая позиция — LOITER, пилот в критической ситуации переключится в режим, в который автопилот откажется переходить.
6. Сложить значения битов нужных проверок. Например, для «все, кроме логирования» проще исходить из полной маски и вычесть бит 1024, либо перечислить нужные биты по отдельности. Значение 1 (All) включает все проверки разом.
↑ К оглавлению7. Глава 7
1. Медленный отрыв на «половинной» тяге удерживает аппарат в зоне эффекта земли, где поток от винтов отражается и создаёт неустойчивость. Решительный отрыв быстро выводит аппарат из этой зоны.
2. Крен вправо (наклон вправо), крен влево, тангаж вперёд (приподнимается хвост), руддер вправо (попытка развернуться вправо). Все реакции проверяются на 20–30 % газа без отрыва от земли.
3. Означает, что для висения требуется 58 % тяги — аппарат перегружен. Запас на манёвр и ветер отсутствует, отказ мотора фатален. Действия: снизить массу, поставить более крупные винты или более мощные моторы.
4. Clipping означает, что акселерометр вышел за диапазон измерения, и данные за этот момент потеряны безвозвратно. Фильтрация обрабатывает уже полученные данные и не может восстановить отсутствующие. Устраняется только механически.
5. Проблема компаса: аппарат описывает круги увеличивающегося радиуса (toilet bowl), при этом углы отрабатываются нормально. Проблема тюнинга: колебания или вялость видны уже в STABILIZE, а расхождение DesRoll/Roll присутствует независимо от режима.
6. В MANUAL автопилот не вмешивается, и любая ошибка триммирования или реверса приводит к немедленному сваливанию. В FBWA автопилот удерживает углы в заданных пределах и выравнивает самолёт при отпущенных стиках.
↑ К оглавлению8. Глава 8
1. D-составляющая вычисляет производную ошибки. Дифференцирование усиливает высокочастотные составляющие пропорционально частоте, поэтому шум гироскопа на 100 Гц усиливается в разы сильнее полезного сигнала на 5 Гц.
2. Режекторный фильтр вырезает узкую полосу вокруг частоты помехи, почти не влияя на фазу в полосе полезного сигнала. Понижение частоты ФНЧ подавляет всё выше среза, внося значительную задержку и снижая устойчивость контура.
3. По газу (MODE = 1) — просто, без дополнительного оборудования, точность средняя. По ESC-телеметрии (MODE = 3) — самая высокая точность, требует регуляторов с телеметрией. По встроенному FFT (MODE = 4) — точно и без дополнительного железа, но нагружает процессор.
4. Мягкий подвес даёт системе «масса — демпфер» низкую собственную частоту (5–15 Гц), попадающую в полосу полезного сигнала. Акселерометры регистрируют колебания платформы как реальные ускорения аппарата, и EKF получает искажённые данные.
5. SMAX ограничивает скорость изменения выхода регулятора и автоматически снижает усиление при достижении предела. Это защита от высокочастотной раскачки, которая может возникнуть при агрессивных коэффициентах, подобранных AUTOTUNE.
6. Механическая проблема видна по уровню VIBE и наличию clipping — фильтрация на них не влияет. Проблема фильтрации проявляется как высокочастотное дрожание моторов и «звон» при нормальном уровне VIBE, и устраняется настройкой notch.
9. Глава 9
1. Внешний контур формирует уставку для внутреннего в предположении, что тот отрабатывает её быстро и точно. Если внутренний контур настроен плохо, внешний будет компенсировать его ошибки, и при последующей настройке внутреннего вся система разбалансируется.
2. Избыток P даёт быстрые колебания с частотой 5–15 Гц, воспринимаемые как дрожание и слышимые в звуке моторов. Избыток I даёт медленную раскачку с периодом 1–3 секунды, особенно заметную после манёвра или при ветре.
3. AUTOTUNE измеряет отклик аппарата на тестовые воздействия. При нефильтрованных вибрациях измеренный отклик содержит шум, и алгоритм интерпретирует его как склонность к колебаниям, занижая коэффициенты.
4. Новые коэффициенты не сохранятся, но аппарат будет летать с ними до дизармирования. Для сохранения нужно приземлиться и дизармироваться, находясь в режиме AUTOTUNE.
5. ATT.DesRoll против ATT.Roll — отставание не более 0,1 с, заброс не более 10 %. RATE.RDes против RATE.R — точность отработки угловой скорости. RCOU — отсутствие постоянного дрожания на пределах. VIBE — не должна вырасти.
6. Определяет «агрессивность» выхода на линию пути: чем больше значение, тем мягче навигация. При «рыскании» по маршруту значение увеличивают, при широких срезках поворотов — уменьшают.
↑ К оглавлению10. Глава 10
1. Обычная точка означает движение по прямой с торможением на углах. Spline-точка задаёт гладкую кривую без остановок. Обычные точки нужны для аэрофотосъёмки (постоянная скорость на галсе), spline — для видеосъёмки и плавного движения камеры.
2. Relative (относительно HOME), Absolute (над уровнем моря), Terrain (над рельефом). Terrain опасен тем, что требует данных рельефа на борту: при их отсутствии поведение непредсказуемо и зависит от TERRAIN_FOLLOW.
3. GSD = H × размер_пикселя / (f × 100), где H — высота в метрах, размер пикселя в микрометрах, f — фокусное расстояние в миллиметрах. Зависит от размера матрицы, разрешения и фокусного расстояния.
4. Hot shoe даёт сигнал о фактическом срабатывании затвора. Без неё координаты записываются в момент отправки команды, тогда как реальный снимок происходит на 50–200 мс позже. На скорости 10 м/с это ошибка привязки 0,5–2 метра.
5. На нестабильном канале запись может пройти частично. Read — единственный способ убедиться, что в памяти автопилота лежит именно тот маршрут, который вы планировали.
6. При полётах над протяжёнными объектами — ЛЭП, трубопроводы, дороги — когда точка старта осталась далеко позади, и возврат к ней потребует больше энергии и времени, чем посадка на заранее подготовленную площадку по маршруту.
↑ К оглавлению11. Глава 11
1. FENCE_ACTION = 1 инициирует RTL или LAND, прерывая текущую задачу. FENCE_ACTION = 2 не позволяет пересечь границу, останавливая аппарат у неё, но не прерывая режим. Второе удобнее для рабочих полётов у границы участка.
2. Напряжение сильно зависит от текущего тока, температуры и износа батареи, поэтому момент срабатывания «плавает». Остаток ёмкости, вычисляемый интегрированием тока, даёт гораздо более предсказуемое поведение при откалиброванном датчике.
3. Снять винты, армировать аппарат, поднять газ до 30 %, выключить передатчик. Автопилот должен зафиксировать failsafe и перейти в заданный режим. Проверяется вся цепочка «передатчик — приёмник — автопилот».
4. Аппарат останется в последней заданной точке GUIDED и будет висеть до полного разряда батареи, после чего сработает батарейный failsafe (если настроен) или аппарат упадёт.
5. Критический уровень батареи. Логика проста: без энергии не работает ничто, и попытки решать другие задачи бессмысленны.
6. При отказе одного мотора квадрокоптер теряет управляемость полностью. Гексакоптер сохраняет управление по крену и тангажу (с потерей контроля по рысканию), октокоптер — практически полное управление, что позволяет выполнить контролируемую аварийную посадку.
↑ К оглавлению12. Глава 12
1. Предсказание по данным IMU (интегрирование ускорений и угловых скоростей) — точно на коротком интервале, но с накоплением ошибки. Коррекция по измерениям GPS, компаса, барометра — компенсирует накопленный дрейф, но приходит реже и с шумом.
2. Фильтр почти не доверяет компасу: расхождение между курсом по магнитометру и курсом, вычисленным по направлению движения. Причины: магнитные помехи в конструкции, неверная калибровка, влияние тока силовых проводов.
3. GSF (Gaussian Sum Filter) сопоставляет направление ускорения аппарата с направлением его движения по данным GPS и восстанавливает курс. Работает только при движении, требует манёвров для сходимости и непригоден для висения на месте с самого старта.
4. RTK Float — целочисленная неоднозначность фазы несущей не разрешена, точность 10–50 см. RTK Fixed — разрешена, точность 1–3 см. Float неустойчив, поскольку решение продолжает поиск и может как перейти в Fixed, так и деградировать.
5. RTK даёт точные координаты антенны в момент измерения. Для привязки снимка нужно также знать точный момент срабатывания затвора (hot shoe), смещение антенны относительно матрицы (GPS_POS1_X/Y/Z) и учесть задержки в системе.
6. Дальномер — без знания высоты угловое смещение картинки нельзя перевести в линейную скорость. Также требуется текстурированная поверхность (над однотонным полом или водой поток не работает) и достаточное освещение.
↑ К оглавлению13. Глава 13
1. Когда аппарат утерян или разрушен и SD-карту невозможно извлечь. Телеметрийный лог остаётся на компьютере и позволяет восстановить хронологию событий до момента потери связи.
2. Сырые данные IMU занимают 100–300 МБ за десять минут полёта. Карта быстро заполняется, после чего логи перестают писаться вовсе, а при включённой проверке логирования блокируется армирование.
3. RCOU.C1–Cn во время ровного висения: в исправном аппарате линии идут рядом. Постоянное расхождение более 10–15 % указывает на смещённый центр масс, погнутый луч или ослабленный мотор.
4. При отказе мотора: резкое изменение в одном канале RCOU, компенсация остальными, немедленное расхождение DesRoll/Roll, вращение по yaw. При разряде: плавное падение BAT.Volt, постепенный рост всех каналов RCOU, срабатывание failsafe.
5. Акселерометр вышел за диапазон измерения, данные за эти моменты потеряны. EKF получает пробелы в оценке ускорений, что ведёт к ошибкам определения положения и высоты — вплоть до неконтролируемого набора высоты или ухода в сторону.
6. Хронология, сообщения, питание, навигация, механика, управляемость, гипотеза. Хронология идёт первой, потому что без точной временной привязки события невозможно понять, что было причиной, а что следствием.
↑ К оглавлению14. Глава 14
1. Достоверно: логика прошивки, поведение режимов, реакция на отказы, работа миссий, тайминги failsafe. Недостоверно: реальные вибрации конкретной сборки, точная аэродинамика, электромагнитные помехи, качество сборки и износ компонентов.
2. Через параметры SIM_OPOS_LAT, SIM_OPOS_LNG, SIM_OPOS_ALT, SIM_OPOS_HDG, либо опцией --custom-location при запуске sim_vehicle.py.
3. SIM_ENGINE_FAIL задаёт номер мотора (нумерация с нуля), SIM_ENGINE_MUL — множитель его тяги: 0 означает полный отказ, промежуточные значения — частичную потерю мощности.
4. Ускоряет ход симуляции в заданное число раз. Полезна при проверке длинных съёмочных миссий и при отладке логики failsafe по батарее, где нужно дождаться реального расхода энергии.
5. Когда важна точность аэродинамики (самолёты, вертолёты), нужна фотореалистичная картинка для алгоритмов компьютерного зрения, или требуется моделирование взаимодействия с окружением (препятствия, посадочные площадки, ROS-интеграция).
↑ К оглавлению15. Глава 15
1. Lua — простая бортовая логика, реагирующая на состояние автопилота: проверки, драйверы простой периферии, нестандартные последовательности. Компаньон-компьютер — всё, что требует вычислительных ресурсов: компьютерное зрение, планирование маршрутов, работа с видео, сложные алгоритмы.
2. Если управление ведётся из GUIDED, при потере связи с источником команд аппарат остаётся без управляющих воздействий и зависает в последней точке до разряда батареи. FS_GCS_ENABLE обеспечивает автоматический возврат.
3. DO_SET_ROI заставляет нос аппарата и подвес удерживать заданную точку в кадре. Отменяется командой DO_SET_ROI с нулевыми координатами.
4. Датчики не видят тонкие провода, сетку, стеклянные и зеркальные поверхности, тонкие ветки. Кроме того, обнаружение требует времени на реакцию, а на скорости дистанция обнаружения может оказаться меньше тормозного пути.
5. Наземная станция становится узким местом по пропускной способности канала и единой точкой отказа. Задержки телеметрии делают централизованную координацию непригодной для плотных построений. Настоящий рой строится на локальном взаимодействии между аппаратами.
↑ К оглавлению16. Глава 16
1. Прочитать полный текст сообщения во вкладке Messages. Найти его в справочнике или документации. Понять физическую причину. Устранить причину. Ни в коем случае не отключать соответствующую проверку.
2. Компас: аппарат описывает круги увеличивающегося радиуса, при этом углы отрабатываются нормально, растёт Compass Variance. Тюнинг: колебания или вялость видны уже в STABILIZE, есть расхождение DesRoll/Roll.
3. Вторая гармоника передатчика 1,2 ГГц попадает в диапазон GPS L1 (1575 МГц). Проявляется коварно: на земле с выключенным видео спутники ловятся нормально, а в полёте с включённым передатчиком приём деградирует или пропадает.
4. Напряжение питания автопилота ниже допустимого. Контроллер работает на границе и может перезагрузиться в полёте, что означает гарантированное падение. Причины: перегруженный BEC, тонкие провода, плохой разъём, избыток периферии на одной шине.
5. Обдув барометра потоком от винтов; попадание прямого света на датчик; негерметичность корпуса; высокие вибрации; неверная настройка PSC_ACCZ_P и PSC_ACCZ_I.
17. Ответы к расчётным заданиям
Задание 8.2. Частота винтов для мотора 4008 с винтом 15″ при 3600 об/мин: 3600 / 60 = 60 Гц. Соответственно INS_HNTCH_FREQ = 60, INS_HNTCH_BW = 30, INS_GYRO_FILTER = 15–20 Гц.
Для 18″ аппарата значение INS_GYRO_FILTER = 60 Гц бесполезно: частота винтов около 50–60 Гц окажется внутри полосы пропускания, и весь шум пройдёт в контур. Для 5″ гоночного INS_GYRO_FILTER = 10 Гц внесёт недопустимую задержку: аппарат с быстрой динамикой станет неуправляемым.
Задание 10.1. Камера 1″ (13,2 × 8,8 мм), 20 Мп (5472 × 3648), объектив 8,8 мм.
Размер пикселя: 13,2 мм / 5472 = 2,41 мкм.
Для GSD 3 см/пиксель: H = GSD × f × 100 / размер_пикселя = 3 × 8,8 × 100 / 2,41 ≈ 109 м. Округляем до 110 м.
Ширина захвата: 5472 × 3 см = 164 м. Высота захвата: 3648 × 3 см = 109 м.
При поперечном перекрытии 65 %: расстояние между галсами = 109 × 0,35 ≈ 38 м. Для участка шириной 400 м: 400 / 38 ≈ 11 галсов.
При продольном перекрытии 75 %: шаг съёмки = 164 × 0,25 = 41 м. На галсе длиной 500 м: 500 / 41 ≈ 13 снимков. Всего примерно 11 × 13 = 143 снимка плюс запас на развороты.
Длина маршрута: 11 × 500 + 10 × 38 ≈ 5880 м. При скорости 8 м/с — около 12 минут чистого времени плюс развороты, взлёт и посадка. Итого 15–17 минут. Одной батареи на 20–25 минут полёта достаточно с запасом.
↑ К оглавлению18. Что дальше
- Предыдущий урок: 42. Справочник: поля вкладки DATA → Status
- Полный перечень тем — в статье «Содержание курса».
- Четверг, 30 июля 2026