Система параметров ArduPilot
Всё поведение автопилота определяется таблицей из тысячи с лишним параметров. Учимся читать их имена, работать с файлами настроек и переносить конфигурации.
Имена параметров строятся по схеме «префикс подсистемы + функция». Научившись их разбирать, вы будете понимать назначение незнакомого параметра ещё до чтения описания.
Содержание
1. Цели урока
После этого урока вы будете понимать:
- где в программе искать и править любой параметр
- как расшифровывать имена параметров по префиксам
- почему имена меняются между версиями прошивки и как с этим жить
- как работать с файлами
.paramи применять их частично - какие параметры нельзя переносить между аппаратами
- что такое MAVFtp и почему он ускоряет подключение
2. Система параметров ArduPilot
Всё поведение автопилота определяется таблицей параметров, хранящейся в энергонезависимой памяти контроллера. Их от 900 до 1500 в зависимости от прошивки и включённых функций.
Где живут параметры в программе
Основное рабочее место — CONFIG → Full Parameter List. Это единственное место, где доступны все параметры без исключения. Специализированные страницы (Extended Tuning, GeoFence, Initial Tune Parameters) правят те же значения, но показывают лишь малую их часть.
| Где | Что можно | Когда пользоваться |
|---|---|---|
| CONFIG → Full Parameter List | Все параметры, поиск, дерево префиксов, работа с файлами | Всегда, когда знаете имя параметра |
| CONFIG → Extended Tuning | PID контуров, фильтры, WPNav | Настройка регуляторов по группам |
| CONFIG → User Params | Личная подборка избранных параметров | То, что правите на площадке регулярно |
| SETUP → Mandatory / Optional Hardware | Параметры конкретной подсистемы под понятными подписями | Первичная настройка оборудования |
Порядок правки в Full Parameter List всегда один:
- Найти строку: ввести имя в поле
Searchлибо выбрать ветку в дереве префиксов слева. - Изменить число в колонке
Value. - Нажать Write Params — до этого правка живёт только в окне.
- Если в описании есть пометка о необходимости перезапуска — перезагрузить автопилот.
Search ищет без учёта регистра сразу по имени, значению и описанию, срабатывая от двух символов. Символ вертикальной черты работает как «или»: запрос HNTCH|GYRO_FILTER покажет параметры режекторного фильтра и фильтра гироскопа вместе. Звёздочка работает как в регулярных выражениях, а не как в именах файлов.Анатомия имени параметра
Имена строятся по принципу «префикс подсистемы + функция»:
ATC_RAT_RLL_P
│ │ │ └── коэффициент P
│ │ └────── ось roll (крен)
│ └────────── rate controller (контур угловой скорости)
└────────────── Attitude Control (управление ориентацией)
INS_HNTCH_FREQ
│ │ └──── центральная частота
│ └────────── Harmonic Notch (гармонический режекторный фильтр)
└────────────── Inertial Sensors (инерциальные датчики)
BATT2_CAPACITY
│ │ └─────── ёмкость
│ └────────── второй экземпляр монитора батареи
└────────────── Battery monitor
Основные префиксы, которые нужно узнавать с первого взгляда:
| Префикс | Подсистема | Типичное применение |
|---|---|---|
ATC_ |
Attitude Control | PID контуров углов и угловых скоростей |
PSC_ |
Position Control | Контуры положения и скорости (Copter) |
INS_ |
Inertial Sensors | Гироскопы, акселерометры, фильтрация |
AHRS_ |
Attitude Heading Reference System | Ориентация платы, магнитное склонение |
EK3_ |
EKF3 | Настройка расширенного фильтра Калмана |
GPS_ |
GNSS | Тип приёмника, автопереключение, RTK |
COMPASS_ |
Магнитометры | Смещения, приоритеты, декларация |
MOT_ |
Motors | Пределы тяги, кривая газа, PWM |
SERVOn_ |
Выходы | Функция, диапазон, реверс каждого канала |
RCn_ |
Каналы приёмника | Диапазоны, реверс, назначение |
FS_ / BATT_FS_ |
Failsafe | Реакции на отказы |
WPNAV_ (с 4.7 WP_) |
Waypoint Navigation | Скорости и ускорения в миссии (Copter) |
TECS_ |
Total Energy Control | Связка «высота — скорость» (Plane) |
NAVL1_ / NPFG_ |
Навигация по траектории (Plane) | Агрессивность выхода на линию пути |
Q_ |
QuadPlane | Всё, что касается вертикального взлёта у самолётов |
LOG_ |
Логирование | Что и когда писать в бортовой лог |
SR0_–SR3_ (с 4.7 MAV1_–MAV4_) |
Stream Rates | Частоты потоков телеметрии по каналам связи |
SERIALn_ |
Последовательные порты | Протокол и скорость каждого порта |
BRD_ |
Board | Настройки платы, safety switch, питание периферии |
SCR_ |
Scripting | Встроенные Lua-скрипты |
Метаданные: описание, диапазон, единицы
Каждый параметр в прошивке снабжён описанием, диапазоном допустимых значений, единицами измерения и признаком «требуется перезагрузка». Mission Planner загружает эти метаданные и показывает их в колонках справа от значения, а также во всплывающей подсказке при наведении на имя.
3. Имена параметров меняются между версиями
Разработчики ArduPilot периодически переименовывают параметры: приводят единицы к системе СИ и делают префиксы единообразными. Крупнейшая такая переработка прошла в версии 4.7.
Само значение при обновлении прошивки переносится автоматически — при первой загрузке новая прошивка находит старый параметр и записывает его значение в новый. Но имена в статьях, чужих конфигурациях, скриптах и обучающих видео остаются старыми. Отсюда типовая ситуация: в инструкции написано одно, а поиск в Full Parameter List ничего не находит.
Что переименовано в 4.7
Наиболее заметные для оператора переименования. Полный официальный список — на странице документации ArduPilot «Parameter Name Changes».
| Параметр (4.6.x) | Параметр (4.7+) | Что задаёт |
|---|---|---|
WPNAV_SPEED |
WP_SPD |
Скорость по маршруту |
WPNAV_RADIUS |
WP_RADIUS_M |
Радиус достижения точки |
WPNAV_ACCEL |
WP_ACC |
Ускорение в миссии |
RTL_ALT |
RTL_ALT_M |
Высота возврата домой |
LAND_SPEED |
LAND_SPD_MS |
Скорость снижения при посадке |
LOIT_SPEED |
LOIT_SPEED_MS |
Скорость в режиме удержания |
CIRCLE_RADIUS |
CIRCLE_RADIUS_M |
Радиус облёта по кругу |
ANGLE_MAX |
ATC_ANGLE_MAX |
Максимальный угол наклона |
ATC_ACCEL_R_MAX |
ATC_ACC_R_MAX |
Предел углового ускорения по крену |
PSC_POSXY_P |
PSC_NE_POS_P |
Контур положения в горизонте |
PSC_VELXY_P |
PSC_NE_VEL_P |
Контур скорости в горизонте |
PSC_ACCZ_P |
PSC_D_ACC_P |
Контур вертикального ускорения |
SYSID_THISMAV |
MAV_SYSID |
Идентификатор аппарата |
SYSID_MYGCS |
MAV_GCS_SYSID |
Идентификатор наземной станции |
SR0_EXTRA1…SR9_* |
MAV1_EXTRA1…MAV10_* |
Частоты потоков телеметрии |
ARMING_CHECK |
ARMING_SKIPCHK |
Набор предполётных проверок |
Search оба варианта через вертикальную черту — WPNAV|WP_SPD или SYSID|MAV_SYSID. Найдётся то, что есть в вашей версии. Если не находится ни то ни другое — параметр относится к другому типу аппарата либо к неактивной функции.Случаи, где меняется не только имя
Часть параметров сменила ещё и единицы измерения или масштаб. Если вы переносите значение из старой инструкции вручную, число нужно пересчитать.
| Параметр | Было (4.6.x) | Стало (4.7+) |
|---|---|---|
| Скорость по маршруту | WPNAV_SPEED = 1000 (см/с) |
WP_SPD = 10 (м/с) |
| Высота возврата | RTL_ALT = 3000 (см) |
RTL_ALT_M = 30 (м) |
| Максимальный наклон | ANGLE_MAX = 3000 (сантиградусы) |
ATC_ANGLE_MAX = 30 (градусы) |
| Вертикальное ускорение | PSC_ACCZ_P |
PSC_D_ACC_P — значение в 10 раз меньше |
| Предел интегратора скорости | PSC_VELXY_IMAX |
PSC_NE_VEL_IMAX — значение в 100 раз меньше |
ARMING_SKIPCHK и проверьте значение вручную: ошибка означает отключённые предполётные проверки.4. Работа с файлами параметров
Файл .param — обычный текстовый файл вида:
#NOTE: 28.07.2026 14:32:11 Saved from Mission Planner 1.3.83
ATC_ANG_PIT_P,7.500000
ATC_ANG_RLL_P,7.500000
ATC_ANG_YAW_P,4.500000
ATC_RAT_PIT_D,0.004200
ATC_RAT_PIT_I,0.098000
ATC_RAT_PIT_P,0.098000
INS_GYRO_FILTER,20.000000
INS_HNTCH_ENABLE,1.000000
INS_HNTCH_FREQ,96.000000
MOT_THST_HOVER,0.283100
Из этого следуют полезные приёмы.
Частичное применение. Можно создать файл с десятком строк и загрузить его — Mission Planner применит только перечисленные параметры, остальные не тронет. Это удобно для типовых наборов: «фильтрация для 7-дюймовых винтов», «набор failsafe для съёмочных полётов».
Diff между конфигурациями. Любой инструмент сравнения текста покажет, чем отличаются два аппарата или две настройки одного аппарата.
Версионирование. Файлы параметров отлично ложатся в git. Для парка аппаратов это лучший способ отслеживать историю настроек.
Кнопки Full Parameter List
Все операции с файлами собраны на той же странице CONFIG → Full Parameter List, в колонке кнопок справа.
| Кнопка | Что делает | Когда нужна |
|---|---|---|
| Save to file | Выгружает весь набор в файл .param |
Перед любыми изменениями |
| Load from file | Загружает значения из файла в таблицу | Восстановление и частичное применение |
| Compare Params | Сравнивает текущий набор с файлом и показывает различия | Понять, что изменилось за сессию |
| Write Params | Записывает изменения в автопилот | После каждой правки |
| Refresh Params | Перечитывает весь набор из аппарата | Если сомневаетесь в актуальности показанного |
| Load Presaved | Загружает типовой набор из комплекта программы | Стартовая конфигурация нового аппарата |
| Reset to Default | Сбрасывает все параметры к заводским | Крайняя мера при запутанной конфигурации |
Галочки Modified и None Default |
Показать только изменённые либо только отличающиеся от заводских | Быстро увидеть, что трогали на этом аппарате |
[аппарат]_[дата]_[этап].param. Например, hexa900_2026-07-28_after_autotune.param. Через полгода вы не вспомните, что означало params_new_2_final.param.Что не переносится между аппаратами
Файл параметров нельзя целиком заливать на другой экземпляр даже той же модели. Индивидуальны:
- калибровки акселерометров
INS_ACC*OFFS_*,INS_ACC*SCAL_*; - калибровки компасов
COMPASS_OFS_*,COMPASS_DIA_*,COMPASS_ODI_*; - калибровка приёмника
RCn_MIN,RCn_MAX,RCn_TRIM; - калибровка датчика тока
BATT_AMP_PERVLT,BATT_VOLT_MULT; - зависящий от конкретной сборки
MOT_THST_HOVER.
5. MAVFtp и скорость обмена
Начиная с ArduPilot 4.1, Mission Planner использует MAVFtp — файловый протокол поверх MAVLink — для загрузки таблицы параметров одним блоком вместо тысячи отдельных пакетов. Это ускоряет подключение в разы, особенно на медленном радиоканале.
Механизм срабатывает автоматически при выполнении двух условий: прошивка сообщила о поддержке FTP, и режим не отключён в настройках программы. Отдельной галочки в интерфейсе для этого нет — параметры грузятся через MAVFtp по умолчанию.
Если параметры грузятся мучительно долго, проверьте:
SERIALx_PROTOCOL = 2(MAVLink 2) на используемом порту — MAVFtp требует второй версии протокола. Правится в SETUP → Mandatory Hardware → Serial Ports либо в CONFIG → Full Parameter List;- прошивка не старше 4.1;
- модем не режет длинные пакеты — в настройках SiK должен быть включён MAVLink framing (SETUP → Optional Hardware → Sik Radio).
6. Команды и подтверждения
Когда вы нажимаете кнопку в интерфейсе, программа отправляет COMMAND_LONG или COMMAND_INT. Автопилот отвечает COMMAND_ACK с кодом результата.
| Код ответа | Значение |
|---|---|
ACCEPTED |
Команда принята и выполняется |
TEMPORARILY_REJECTED |
Сейчас нельзя, попробуйте позже (например, идёт калибровка) |
DENIED |
Команда запрещена в текущем состоянии |
UNSUPPORTED |
Прошивка не знает такой команды |
FAILED |
Попытка выполнения не удалась |
Mission Planner показывает результат всплывающим окном или строкой в Messages. Если команда «не сработала» и никакого сообщения нет — скорее всего, она вообще не дошла: проверьте канал.
↑ К оглавлению7. Практика
Задания выполняются в симуляторе SITL и не требуют реального аппарата. Выполните их до перехода к следующему уроку.
Задание 7.1. Ориентирование в списке параметров
Выполняется в симуляторе SITL, реальный аппарат не требуется.
- Откройте CONFIG → Full Parameter List и найдите ветку
INS_в дереве префиксов слева. - Через поле
Searchнайдите параметры режекторного фильтра запросомHNTCH. - Наведите курсор на
INS_HNTCH_FREQи прочитайте описание, диапазон и единицы. - Определите, какие параметры вашей прошивки отвечают за скорость по маршруту и высоту возврата: запросы
WPNAV|WP_SPDиRTL_ALT. - Включите галочку
None Defaultи посмотрите, что в симуляторе отличается от заводских значений.
Задание 7.2. Работа с файлами
Выполняется в симуляторе SITL, реальный аппарат не требуется.
- Сохраните полный набор параметров симулятора кнопкой Save to file.
- Создайте вручную текстовый файл из трёх строк, меняющих скорость по маршруту, ускорение и высоту возврата. Имена возьмите те, что нашли в задании 7.1.
- Загрузите его кнопкой Load from file и убедитесь, что изменённые строки подсветились, но в аппарат ещё ничего не ушло.
- Нажмите Write Params, затем сравните результат с исходным файлом через Compare Params.
- Составьте список параметров, которые нельзя переносить между аппаратами, и объясните почему.
8. Проверьте себя
Сформулируйте ответ своими словами, прежде чем сверяться со справочником ответов.
- В каком разделе программы доступны все параметры без исключения и чем он отличается от специализированных страниц настройки?
- Расшифруйте по частям имена параметров
PSC_VELXY_I,EK3_SRC1_YAW,Q_ASSIST_SPEED. - Почему инструкция может ссылаться на параметр, которого нет в вашем списке, и как его найти?
- Чем опасен перенос значения
WPNAV_SPEEDиз старой инструкции в полеWP_SPDбез пересчёта? - Почему замена
ARMING_CHECKнаARMING_SKIPCHKтребует ручной проверки после обновления? - В каких случаях полезно загружать файл параметров, содержащий лишь несколько строк?
- Что происходит при нажатии Load from file и почему этого недостаточно для изменения настроек аппарата?
- Какую роль играет MAVFtp при подключении и от чего зависит его работоспособность?
9. Чек-лист самопроверки
Урок освоен, если каждый пункт выполнен на практике:
- Умею найти любой параметр в CONFIG → Full Parameter List по имени и по дереву префиксов
- Узнаю основные префиксы: ATC_, INS_, MOT_, EK3_, FS_
- Знаю, какие параметры переименованы в 4.7, и умею искать оба варианта сразу
- Сохранён бэкап параметров с осмысленным именем файла
- Знаю, какие калибровочные параметры индивидуальны для экземпляра
- Умею применить файл из нескольких строк, не трогая остальное
10. Что дальше
- Предыдущий урок: 6. Протокол MAVLink: как аппарат разговаривает со станцией
- Следующий урок: 8. Прошивка автопилота: выбор версии и процедура
- Полный перечень тем: Содержание курса
- мод. : Понедельник, 17 августа 2026
