Перейти к содержимому

Статья

Управление версиями полётного ПО: staged rollout и rollback

Как обновлять Betaflight, INAV и ArduPilot в парке моделей: инвентаризация, backup, canary-модель, ступенчатая приёмка и проверяемый rollback.

Редакция WARPfly2 мин чтения1 просмотров

Обновление полётного ПО — изменение всей системы, а не установка новой цифры. Меняются defaults, поддержка target, формат конфигурации, configurator и иногда поведение режимов. Staged rollout ограничивает радиус ошибки: новая версия проходит одну модель и несколько ворот качества до остального парка.

Управление версиями полётного ПО: staged rollout и rollback — обложка WARPfly
Управление версиями полётного ПО: staged rollout и rollback — обложка WARPfly. Оригинальная графика WARPfly.

Веди инвентаризацию

Для каждого аппарата храни flight controller target, версию firmware и configurator, конфигурацию, ESC/RX/VTX версии, назначение модели и дату последнего успешного полёта. Без этой матрицы нельзя определить совместимость и порядок обновления.

Управление версиями полётного ПО: staged rollout и rollback — карта материала
Управление версиями полётного ПО: staged rollout и rollback — карта материала. Оригинальная графика WARPfly.

Собери rollback до flash

  • полный dump/diff или parameter file штатным способом;
  • точный firmware binary и target текущей версии;
  • скриншоты или экспорт критичных портов, mixer и failsafe;
  • логи эталонного полёта и чек-лист приёмки;
  • копии настроек аппаратуры и связанных устройств.

Открой backup и проверь его читаемость. Файл, который никогда не восстанавливали, — предположение, а не rollback.

Выбери canary-модель

Первая модель должна быть доступной для ремонта, хорошо изученной и не критичной для срочной задачи. Прочитай release notes и migration guidance, отдельно выпиши breaking changes. Не переносись на новый major перед важным мероприятием или полётом в сложных условиях.

Ворота приёмки

  1. Flash и загрузка без восстановления всех старых значений вслепую.
  2. Порты, датчики, ориентация, receiver и выходы без пропеллеров.
  3. ARM, режимы, моторы и каждый failsafe на стенде.
  4. Короткий hover или простой ручной полёт.
  5. Проверка логов, температуры, вибраций и навигации.
  6. Несколько обычных полётов до следующей модели.

Критерии остановки

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

Rollback тоже проходит приёмку

Возврат старой firmware не завершает работу: восстанови совместимую конфигурацию и снова пройди стенд и короткий полёт. После успешной волны обнови инвентаризацию и сохрани артефакты. Такой процесс позволяет внедрять улучшения без одновременного риска для всего парка.

Закрой волну отчётом

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

Была ли статья полезна?

#обновление прошивки FPV#staged rollout#rollback#Betaflight#INAV#ArduPilot#backup

Примените знания на практике

Подберите совместимые комплектующие или изучите готовые сборки пилотов.