Інтерактивний тренажер · за мотивами вебінару Beetroot Academy

Як думає автопілот
— від стіка до пропелера

Ми подивилися вебінар «Прошивки для дронів: як влаштований автопілот» — і зловили себе на тому, що найважливіші речі там прозвучали словами, а руками їх помацати ніде. Тож ми зібрали цю сторінку: чотири живі симуляції, які показують те, що на слайдах не рухається — контур керування, PID, злиття сенсорів і логіку вибору прошивки.

Усе рахується прямо у вашому браузері. Крутіть, ламайте, дивіться на графіки — так, як спікер читає Blackbox.

«Всі кажуть, що це війна технологій, війна дронів… Особиста моя думка — ні. Це суто конфігурація — і потрібно розуміти, яку задачу тобі треба виконати.»

— Владислав «КАНАН» Гончаров, спікер вебінару
МОДУЛЬ 01

Від стіка до пропелера

На вебінарі аудиторія двічі перепитувала: що таке PID sum і як він пов'язаний з похибкою? Ось увесь ланцюг наживо. Тягніть стік — і дивіться, як команда тече крізь каскад: RC command → setpoint → error → PID sum → мікшер → чотири мотори.

Пульт → польотний контролер → мотори setpoint факт (гіро)

тягніть стік · подвійний клік = центр
горизонталь — крен (roll), вертикаль — тангаж (pitch)

RC command
1500
мкс, із приймача
Setpoint
0.0°
куди просиш
Error
0.0°
похибка невиконання
PID sum
0%
те, що йде на ESC
Факт
0.0°
що бачить гіроскоп
M1 · зад-право45%
M2 · перед-право45%
M3 · зад-ліво45%
M4 · перед-ліво45%
Міні-Blackbox: тангаж — setpoint проти факту

RC command

Те, що прийшло з пульта на приймач. Сирі мікросекунди каналу, ще без жодної думки автопілота.

Setpoint

«Точка, до якої він має прийти» — команда, перекладена на мову контролера: бажаний кут або кутова швидкість.

Error

Похибка невиконання: різниця між тим, що ти просиш, і тим, що є. Саме її «їсть» PID-контролер.

PID sum

Фінальне значення після P+I+D — «те, що вже йде на ESC і на двигуни». Мікшер розкладає його на чотири мотори.

Що тут відбувається: це каскад. Зовнішній контур (кут) рахує, з якою швидкістю треба обертатись; внутрішній (rate loop) змушує гіроскоп цю швидкість показати; мікшер перетворює один PID sum по кожній осі на різницю тяги чотирьох моторів. На вебінарі ця ієрархія прозвучала одним реченням — тут її можна посмикати руками.
МОДУЛЬ 02

PID-полігон: прийти до одиниці

«Під контролер не лізь, це важко» — головний міф, який спікер розбирав живими логами. У PID Toolbox мета тюнінгу — щоб step response прийшов до одиниці: без «дзвону» і без млявості. Ось той самий графік, тільки повзунки — ваші.

Step response · setpoint = 1.0 setpoint відповідь дрона вихід PID (·0.1)
Перерегулювання
4.1 %
Час встановлення
0.62 с
Нагрів моторів (D×шум)
3 %
Спробуйте: викрутіть P на максимум — побачите «дзвін», який у Blackbox виглядає як осциляції гіроскопа. Скиньте I і додайте вітер — дрон «не доїде» до одиниці, бо нікому пам'ятати про постійну силу. А тепер преcет «D-перегрів» — це ті самі мілісекундні стрибки моторів на 10–15%, які спікер ловив у лозі: D посилює шум, мотори гріються, батарея тане.
МОДУЛЬ 03

Сенсори брешуть. Фьюжн рятує

«Фільтр Калмана — це як дитина, яку ти годуєш. Якщо їжі не вистачає або щось бреше — він втрачає здатність працювати». Ось чому автопілот не вірить жодному сенсору окремо: гіроскоп повільно дрейфує, акселерометр труситься. Разом — тримають горизонт.

Оцінка кута крену · живий потік істина лише гіро 0.0° лише аксель 0.0° фьюжн 0.0°
EKF-сторож: «Ми літали тут — і за секунду опинилися в Перу» справжній шлях GPS оцінка EKF
EKF: усі джерела здорові
Що показує сторож: EKF знає фізику. «Подолати 10 000 км за секунду неможливо» — тому стрибок GPS він відкидає і тимчасово летить на інерціалці. Вимкніть сторожа — і оцінка слухняно поповзе «в Перу». Саме так РЕБ зводить борти, у яких немає обмежень у налаштуваннях. І так само каскадно: вібрація по осі Z → EKF думає, що падає → газ на 100% → Potential thrust loss.
МОДУЛЬ 04

Betaflight · ArduPilot · PX4 · INAV — хто твій?

«Усі ці платформи за принципом однакові, але сфокусовані на різні задачі». Вибір прошивки — функція задачі, а не рейтингу. Шість запитань — і вердикт у логіці вебінару.

Q1Що за апарат?

Q2Хто керує польотом?

Q3Яке залізо в руках?

Q4ROS, симуляції, MAVLink-стек?

Q5Скільки готові копати документацію?

Q6Навігація в умовах РЕБ?

ArduPilot

Шпаргалка з вебінару
КритерійBetaflightArduPilotPX4INAV
НішаМануальний FPV: 5–7", акро, камікадзеАвтономні місії на будь-якому залізіR&D і нестандарт: «марсохід, ракету — можна»Літачки й прості місії бюджетно
РодовідГілка CleanFlight, «пішла у квади»«Старий дід, якому код писали 10 літ»«Молодий хлопак на крутих системах»Друга гілка CleanFlight, «задроти в літачках»
EKF / естимаціяНемає EKF — інші фільтри, все під руки пілотаEKF3, ~1586 параметрів, усе доступноЕстиматор працює з периферією «як з агентами», дублюванняСпрощена навігація, свій PID і фільтри
ЗалізоF405/F722/H743, дешеве й масовеВід $30 до Cube — всеїднийCube/Pixhawk-клас, IMU з підігрівомТі самі дешеві польотники
Тюнінг PIDСлайдери «під фрістайл» — переналаштовуй під задачуQuickTune (Lua) — «мана небесна», ~3 хвЗадається геометрія апарата, чесний CGЛогічний редактор, місії без коду
Компаньйони/ROS«Не дуже хоче дружити» — можливо, але складнішеНайкраща інтеграція: ROS/ROS2, MAVLink усюди
Інструменти аналізуBlackbox Explorer, PID Toolbox — еталонMission Planner (Vibe, MAGFit), QGC betaFlight Review, ULogСвій конфігуратор