Drone X

Дрон и ROS 2: offboard, мост, безопасность

5 блок(ов) теории · 12 заданий · 160 баллов

Offboard — режим, в котором полётник исполняет не решения пилота, а цели, приходящие извне непрерывным потоком. На «Модуле» источник целей — ROS-стек: ноды на Raspberry Pi 5 решают, куда и на какой высоте лететь, а вниз по стеку их доставляет MAVLink-мост — переводчик между сообщениями ROS и протоколом полётника. Дальше — Speedy Bee F405 с ArduPilot: исполнение, стабилизация, ток моторам через ESC. Команда идёт вниз, телеметрия — вверх: показания борта возвращаются нодам топиками /telemetry/*.

Безопасность держит полётник — главный архитектурный факт модуля. Сторож полётника — watchdog («сторожевая собака») — требует, чтобы цели приходили чаще двух раз в секунду: молчание потока он считает потерей управления. Прервался поток — полётник не замирает в небе, а сам уводит борт в отказоустойчивый режим failsafe: чаще всего RTL (return to launch — возврат к точке взлёта). Отсюда закон offboard: поток непрерывен, порог — выше двух герц, на практике цели шлют десятками герц.

Настоящие стеки говорят своими типами: у PX4 — OffboardControlMode и TrajectorySetpoint в топиках fmu/* через мост uXRCE-DDS (облегчённая DDS-связка встроенного стека с ROS 2), у ArduPilot — MAVLink. В курсе эти типы не исполняются: мок говорит только std_msgs, и offboard моделируется простыми топиками — цель высоты Float32 в /drone/setpoint_altitude и команда страховки String в /drone/command.

Почему ROS-стек не сажают на полётник? Полётник — специалист realtime: сотни раз в секунду читает гироскопы и правит моторы, и отвлекать его на «большие» задачи нельзя. Зрение, LiDAR (лазерный дальномер для карты окружения), планирование маршрута требуют Linux и вычислительного запаса — им место на одноплатнике. Разделение честное: верхний этаж думает и предлагает цели, нижний исполняет и отвечает за жизнь борта.

Две дисциплины offboard работают и в учебном моке. Первая — глубина очереди целей: depth 1, всегда свежая цель; устаревшая цель вредна, как устаревший заряд АКБ (модуль 6). Вторая — порядок взлёта: сначала заводят поток целей, затем переключают полётник в offboard — режим принимается только под уже идущим потоком, — затем arm (вооружение моторов); с этого момента поток не прерывают до конца полёта. Сторож не различает «задумался» стек или умер — он видит только молчание.

Задания

0/12 заданий · 0/160 баллов

1. Offboard: цели приходят потоком

10 балл(ов)

Ключевой режим автономного полёта называется offboard. На семинаре просят объяснить его суть: кто кого исполняет, откуда приходят цели и что случится при тишине. Выберите вариант с верным описанием режима.

1 / 12