k02. Старт: Mission Planner без полёта
UAV Python Pro · Конспект K02 · Модуль M0. Старт: Mission Planner без полёта · Редакция 1.0 · После CHECKPOINT-K01
На этом уроке вы установите (если ещё не установлен) Mission Planner и спокойно разберёте его как инструмент наземной станции: какие экраны за что отвечают, как выглядит подключение, где живут параметры, миссии и логи. Полёта, arm и симулятора SITL сегодня не требуется — SITL будет в модуле M4. Цель K02 — уверенно ориентироваться в программе и понимать, чем Mission Planner отличается от вашего будущего Python-кода на MAVLink.
Mission Planner — это готовая наземная станция (GCS) под Windows. Она говорит с автопилотом на языке MAVLink, как позже будет говорить ваш Python. Мы используем MP как эталон, мастерскую прошивки и настройки, окно симуляции и разбора логов. Ваш код не «вместо MP навсегда», а рядом: то, что умеет оператор кнопками, инженер автоматизации делает скриптом. Сегодня только карта программы и безопасные привычки.
Содержание
- 1. Цели урока
- 2. Словарь урока
- 3. Зачем Mission Planner в курсе программиста
- 4. Установка Mission Planner
- 5. Карта экранов программы
- 6. Панель подключения: порты и типы связи
- 7. Параметры, файлы миссий и логи (обзор)
- 8. Безопасность: что нельзя делать на K02
- 9. Обязательные привычки оператора-инженера
- 10. Практика
- 11. Проверьте себя
- 12. Чек-лист самопроверки
- 13. Что дальше · гейт G0
1. Цели урока
После этого урока вы будете уметь:
- установить Mission Planner на Windows из официального источника и запустить программу;
- назвать основные экраны (DATA, PLAN, SETUP, CONFIG, SIMULATION) и сказать, для чего каждый нужен;
- найти панель подключения: выбор порта, скорости, кнопка CONNECT / DISCONNECT;
- объяснить разницу между подключением по Serial (COM), UDP и TCP на уровне «когда что бывает»;
- понимать, что миссию и часть работы с картой можно делать без подключённого аппарата;
- знать, где в программе логично искать параметры, миссии и логи (обзорно, без глубокой настройки);
- чётко отделить задачи Mission Planner от задач вашего Python на MAVLink;
- соблюдать запреты K02: без arm, без пропеллеров, без «полёта ради интереса» на живом железе.
2. Словарь урока
| Термин | Простыми словами |
|---|---|
| Mission Planner (MP) | Популярная наземная станция под Windows для автопилотов ArduPilot (и не только). Карта, телеметрия, настройка, миссии, логи, симуляция. |
| GCS | Ground Control Station — любая наземная станция. MP — один из видов GCS. Ваш будущий Python-скрипт тоже может быть «маленьким GCS». |
| CONNECT | Кнопка установки связи MP с автопилотом (или с симулятором). Пока связь не установлена, «живая» телеметрия не идёт. |
| COM-порт / Serial | Последовательный порт Windows. Так компьютер часто видит USB-кабель к полётному контроллеру или USB-UART радиомодема. Имя вида COM3, COM7. |
| Baud (бод) | Скорость обмена по serial. Для телеметрии часто 57600 или 115200. Неверная скорость = «нет связи». |
| UDP / TCP | Сетевые протоколы связи. В курсе UDP особенно важен для SITL (симулятор на том же ПК). TCP — поток с установкой соединения; детали — в M3 и M4. |
| HUD | Head-Up Display — «приборная» картинка крена, тангажа, скорости, высоты на экране DATA. |
| Параметр (PARAM) | Именованная настройка автопилота, например порог батареи или режим ограждения. Хранится в памяти контроллера. Менять без понимания опасно. |
| Миссия / waypoints | Список команд маршрута: взлёт, точки, возврат. Файл часто с расширением вроде .waypoints. |
| tlog | Telemetry log — журнал телеметрии, который GCS пишет во время связи. Удобен для разбора «что происходило на линии MAVLink». |
| Dataflash / .bin | Бортовой лог автопилота (на SD/во flash, в зависимости от платы и настроек). Богаче tlog по внутренним данным. Подробно — позже, в M4. |
| SITL | Симулятор автопилота на ПК. В MP есть экран SIMULATION. Полноценно поднимем в M4; сегодня достаточно знать, где он живёт. |
| Layout | Режим отображения интерфейса MP (Basic / Advanced / Custom). От него зависит, какие пункты меню вы видите. |
3. Зачем Mission Planner в курсе программиста
Может показаться: «Я учу Python, зачем мне чужая программа с кнопками?» Ответ прямой.
- Эталон поведения. Непонятно, «нормальная» ли ваша телеметрия — откройте MP и сравните.
- Прошивка и первичные калибровки. Заливка ArduPilot, акселерометр, компас, радио — через MP это стандарт индустрии.
- Параметры. Full Parameter List, сравнение наборов, бэкап
.param— быстрее глазами, чем писать свой редактор с нуля. - Миссии. Построить маршрут на карте, записать в аппарат, прочитать обратно — и уже потом автоматизировать то же из Python.
- Логи. Разбор tlog и dataflash после вылета или симуляции.
- SITL. Удобная точка входа в симулятор под Windows (детали в M4).
Mission Planner и ваш Python
| Задача | Удобнее в MP | Удобнее в Python |
|---|---|---|
| Впервые прошить контроллер | Да | Обычно нет |
| Калибровки «по картинкам» | Да | Редко |
| Быстро глянуть HUD и режим | Да | Можно, но дольше на старте |
| Повторяемый взлёт-посадка в цикле тестов | Руками утомительно | Да — скрипт |
| Сервис 24/7 на Raspberry Pi | Нет | Да |
| Зрение → команда автопилоту | Нет | Да |
| Свой протокол обработки логов пачкой | Частично | Да |
4. Установка Mission Planner
- Официальная страница загрузок ArduPilot Mission Planner: https://ardupilot.org/planner/docs/mission-planner-installation.html
- Оттуда перейдите к актуальному установщику (часто через firmware.ardupilot.org / ссылки на последнюю стабильную сборку). Альтернативная привычная точка входа сообщества: страница загрузок на ardupilot.org/planner.
- Скачайте установщик Windows и запустите его.
- Если Windows SmartScreen спросит — проверьте, что файл с официального источника, затем подтвердите установку.
- Дождитесь конца. При необходимости установите предложенные компоненты/.NET, если установщик их требует.
- Запустите Mission Planner от имени обычного пользователя (не обязательно «Администратор» на каждый запуск).
Первый запуск
- Возможен запрос брандмауэра Windows — для локального SITL позже понадобится разрешить сетевой доступ; сегодня можно не открывать всё подряд «в интернет», если не понимаете запрос: локальная работа часто достаточна.
- Интерфейс на английском — это норма индустрии. Мы будем называть пункты так, как они написаны на экране: DATA, PLAN, SETUP, CONFIG.
- Если меню «пустое» или чего-то не хватает — вспомните про Layout (Basic/Advanced) в CONFIG → Planner; подробнее это будет в ваших MP-уроках на сайте и в M4. Для обзора K02 хватит Advanced, если пункт доступен.
5. Карта экранов программы
В верхней части окна обычно ряд крупных вкладок. Ниже — смысл каждой для программиста, без попытки выучить все кнопки за один день.
| Экран | Зачем нужен | Что сделаем в курсе |
|---|---|---|
| DATA | Полётный экран: HUD, карта, телеметрия, сообщения, быстрые действия | Смотреть «жив ли канал», режимы, логи; сравнивать с выводом Python |
| PLAN | Планирование миссий, геозоны, rally; запись/чтение маршрута | Строить учебные маршруты; позже дублировать upload из Python |
| SETUP | Первичная настройка железа: прошивка, калибровки, рама, failsafe… | M4–M9 на стенде и в SITL; сегодня только знать, что раздел существует |
| CONFIG | Тонкая настройка: параметры, tuning, OSD, FTP, настройки самой программы | Бэкап параметров, Full Parameter List; не крутить PID «на глаз» без методики |
| SIMULATION | Запуск программного автопилота на ПК | Модуль M4 — основной вход в SITL под Windows |
| HELP | Справка, ссылки, информация | По необходимости |
DATA
Это «кабина». Типичные зоны:
- HUD — крен, тангаж, скорость, высота, режим;
- карта — положение аппарата (когда есть фиксация позиции / симуляция);
- текстовые сообщения — статусы, prearm-отказы, предупреждения;
- панели статусов — GPS, батарея, спутники, EKF (по мере появления данных).
PLAN
Планировщик маршрутов. Важные идеи уже сейчас:
- маршрут можно собрать офлайн, сохранить в файл и загрузить на площадке;
- есть таблица команд (waypoints) и карта;
- кнопки вроде Load/Save File, Read/Write работают с файлом или с памятью автопилота после связи;
- режимы высоты Relative / Absolute / Terrain критичны для безопасности — глубоко разберём в MP-практике и миссиях; запомните: Absolute — частый источник дорогих ошибок.
SETUP
Первичная настройка. Дерево слева обычно включает прошивку и блоки вроде Mandatory Hardware / Optional Hardware / Advanced.
Для программиста важно:
- сюда приходят, когда аппарат новый или после смены рамы/датчиков;
- порядок калибровок не случаен (это будет на стенде);
- на K02 не запускаем Motor Test и ESC Calibration на железе с винтами.
CONFIG
Тонкая настройка и «все параметры».
- Full Parameter List — полный список PARAM автопилота;
- Planner — настройки самой программы MP (единицы, layout, пути логов, частоты телеметрии);
- прочие пункты зависят от типа аппарата, прошивки и Layout.
SIMULATION
Точка входа в программный автопилот на вашем ПК. Именно отсюда многие начинают SITL под Windows вместе с MP.
HELP и прочее
Справка, ссылки на документацию, информация о сборке. Если в меню есть дополнительные вкладки плагинов — они зависят от установки; отсутствие плагина не ошибка.
↑ К оглавлению6. Панель подключения: порты и типы связи
Обычно справа вверху (или в верхней панели) находятся:
- выбор типа соединения / порта;
- выбор скорости (для serial);
- кнопка CONNECT (после связи становится DISCONNECT).
Пока нет SITL и нет контроллера на USB, список COM может быть пустым или содержать «чужие» устройства (модемы, отладочные платы). Это нормально.
Serial, UDP, TCP — когда что
| Тип | Типичный случай | Что запомнить |
|---|---|---|
| Serial / COM | USB-кабель к FC; USB-UART радиомодема | Нужны верный COM и baud. Неверный baud = тишина |
| UDP | SITL на том же компьютере; сетевая телеметрия | Часто порт 14550 в мире ArduPilot/SITL. Важно для M4 и Python |
| TCP | Некоторые симуляции и сетевые мосты | Есть соединение «клиент–сервер»; детали разберём в протоколах |
Как это стыкуется с вашим будущим Python:
Mission Planner ──UDP 14550──► SITL
Ваш pymavlink ──UDP 14550──► SITL
Или:
Mission Planner ──COM3 115200──► Matek F405 VTOL
Ваш pymavlink ──COM3 115200──► Matek F405 VTOL
(одновременно оба — только если настроен forward/router; об этом в M5)
Что можно делать без CONNECT
- изучать экраны и меню;
- строить и сохранять миссию в файл на PLAN;
- смотреть настройки программы в CONFIG → Planner;
- читать документацию HELP;
- готовить себя к M4 (знать, где SIMULATION).
Нельзя без связи (и не нужно сегодня): живая телеметрия, запись параметров в борт, Read/Write миссии в память аппарата.
↑ К оглавлению7. Параметры, файлы миссий и логи (обзор)
| Сущность | Где в MP смотреть | Зачем программисту |
|---|---|---|
| Параметры автопилота | CONFIG → Full Parameter List (и другие страницы CONFIG/SETUP) | Позже те же PARAM читает/пишет Python по MAVLink |
| Файл параметров | Save to file / Load from file в списках параметров | Бэкап, diff, перенос на другой борт |
| Миссия | PLAN → Load/Save File; Read/Write при связи | Протокол миссий в M6; сначала руками, потом кодом |
| tlog | Пишется при CONNECT; потом открытие логов в MP | Отладка канала и сценариев; сравнение с вашим логированием |
| Dataflash .bin | Скачивание логов с аппарата / разбор в MP | Глубокий разбор полёта; M4+ |
Путь, куда MP складывает логи на диске, задаётся в настройках программы (CONFIG → Planner, область Log Path — формулировки могут чуть отличаться по версии). Найдите глазами поле пути и запишите его в свои заметки — пригодится.
8. Безопасность: что нельзя делать на K02
- не выполнять arm на реальном аппарате;
- не ставить пропеллеры «чтобы проверить моторы»;
- не запускать Motor Test / ESC Calibration на силовом контуре с винтами;
- не лить на Matek случайную прошивку «какая первая попалась» без инструкции модуля M9;
- не менять пачками PID и failsafe на чужом или боевом борту без бэкапа и методики.
Если контроллер уже лежит на столе и хочется «просто подключить USB»:
- пропеллеры сняты;
- силовая батарея моторов не обязательна для USB-телеметрии на многих платах (зависит от схемы питания — не экспериментируйте наугад с LiPo без понимания PDB);
- на K02 даже USB-подключение не обязательно. Достаточно установить MP и изучить интерфейс. Живая связь — в M4/M9 по плану.
9. Обязательные привычки оператора-инженера
- Смотрите заголовок окна MP — версия программы и, при связи, тип/версия прошивки. Вы должны знать, с чем работаете.
- Сначала бэкап параметров, потом эксперимент.
- После Write миссии — Read и сверка. (Закрепим в практике миссий.)
- Не держите секретов «только в голове». Записывайте COM, baud, что меняли.
- MP и Python — союзники. Не надо стесняться MP, когда пишете код: профессионалы пользуются обоими.
- Layout. Если «нет пункта из инструкции» — проверьте Basic/Advanced/Custom, прежде чем решать, что программа сломана.
10. Практика
Аппарат и SITL не обязательны. Нужен установленный Mission Planner.
Задание 2.1. Установка и версия
Запустите MP. Запишите в заметки версию из заголовка окна или раздела About/Help (как отображается у вас).
Задание 2.2. Экранное турне
Откройте по очереди DATA, PLAN, SETUP, CONFIG, SIMULATION. Для каждого экрана одной фразой запишите: «этот экран нужен, чтобы…».
Эталон смысла (ваши слова могут отличаться):
DATA — смотреть полёт/телеметрию и сообщения
PLAN — строить и обмениваться маршрутом
SETUP — первичная настройка железа и калибровки
CONFIG — параметры, тюнинг, настройки самой MP
SIMULATION — запуск автопилота на ПК
Задание 2.3. Панель CONNECT
Найдите выбор порта и кнопку CONNECT. Не обязательно подключаться. Запишите, какие варианты портов/типов связи видите в списке (COM, UDP, …).
Задание 2.4. PLAN без аппарата
На PLAN поставьте 3 точки на карте, сохраните миссию в файл в папку курса, например code/M00_start/k02_dummy_mission.waypoints (имя может отличаться — главное, чтобы файл нашёлся). Затем очистите миссию и загрузите файл обратно.
Задание 2.5. MP vs Python
Напишите 5–7 предложений: какие три задачи вы лично будете делать в MP, а какие три — в Python, когда дойдёте до середины курса.
Эталон смысла:
MP: прошивка, калибровки, быстрый взгляд на HUD, бэкап параметров, разбор логов глазами.
Python: автотесты взлёта в SITL, сервис на Pi, пакетная обработка, зрение→команды, своя логика миссий.
Задание 2.6. Безопасность
Перечислите пять запретов K02 своими словами (см. раздел 8).
11. Проверьте себя
- Чем Mission Planner отличается от протокола MAVLink?
- Зачем программисту на Python вообще открывать MP?
- Назовите пять основных экранов MP и задачу каждого.
- Чем UDP-подключение принципиально важно для будущего SITL?
- Что можно делать на PLAN без CONNECT?
- Почему нельзя «просто покрутить» Full Parameter List на живом борту без бэкапа?
- Почему Motor Test опасен при установленных пропеллерах?
- Что такое tlog и чем он полезен при отладке?
- В чём разница ролей: MP как GCS и Python-сервис на Raspberry Pi?
- Какой гейт закрывается после K01+K02 и что он означает?
12. Чек-лист самопроверки
Урок освоен, если:
- Mission Planner установлен и запускается на вашем Windows
- Записана версия MP (из окна программы)
- Могу показать экраны DATA, PLAN, SETUP, CONFIG, SIMULATION и объяснить назначение
- Нашёл панель порта и кнопку CONNECT (без обязательного успешного CONNECT сегодня)
- Понимаю разницу Serial / UDP / TCP на уровне таблицы урока
- Собрал и сохранил в файл учебную миссию на PLAN, затем загрузил обратно
- Могу своими словами сравнить задачи MP и Python
- Знаю запреты: no arm, no props, no motor test с винтами, no случайная прошивка/параметры
- Понимаю, что SITL глубоко будет в M4, а сегодня достаточно знать экран SIMULATION
- Рабочее место K01+K02 готово к модулю M1
K02 чек-лист закрыт. После этого ставим CHECKPOINT-K02 и CHECKPOINT-G0 (гейт «окружение готово»), затем переходим к K03 — Python intensive с нуля в ускоренном режиме внутри вашего проекта PyCharm.13. Что дальше · гейт G0
- Предыдущий: K01 · Окружение Windows (Python, Git, PyCharm Pro)
- Текущий: K02 · Mission Planner, обзор
- После закрытия K02: гейт G0 — рабочее место собрано
- Далее: K03 · Синтаксис и типы Python (модуль M1)