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

Курс BeeFC: содержание уровня «Полётный контроллер» … ↩ L2

Курс BeeFC: содержание уровня «Полётный контроллер» mod. Пятница, 16 октября 2026 07:36 . См. 10

BeeFC · Полётный контроллер на STM32 своими руками · Уровень «Полётный контроллер»

На втором уровне курса прошивка BeeFC получает полный контур стабилизации: инерциальный датчик, фильтры, определение ориентации, регуляторы, микшер и цифровое управление двигателями. Уровень завершается стабилизацией аппарата в кардановом подвесе.

Уровень рассчитан на слушателей, которые прошли уровень «Старт» или выполнили входной проект: в их репозитории есть BeeFC версии 0.9 с планировщиком, консолью, выходом на двигатель и измерением напряжения батареи.

Содержание

1. Об уровне

Продолжительность уровня — 54 часа, из них 16 часов теории и 38 часов практики. За это время прошивка BeeFC проходит путь от чтения первого измерения инерциального датчика до стабилизации аппарата по трём осям.

ЭтапУрокиЧто появляется в BeeFC
измерение P1–P3 драйвер датчика, калибровка, цифровые фильтры
оценка ориентации P4 углы крена, тангажа и рыскания
связь и двигатели P5–P7 приём команд с аппаратуры управления, протокол DShot, модель винтомоторной группы
управление P8–P10 ПИД-регулятор, стабилизация на стенде «Качели», микшер
надёжность P11–P12 разблокировка двигателей, аварийный режим, параметры, бортовой журнал
итог P13 стабилизация в кардановом подвесе, BeeFC версии 1.0
Главная идея уровня: Каждый блок контура стабилизации сначала проверяется тестами на компьютере, затем в программной модели стенда и только после этого на настоящем стенде. Ошибка, найденная тестом, не приводит к поломке воздушного винта.
↑ К оглавлению

2. Уроки уровня «Полётный контроллер»

УрокТемаТеория (часы)Практика (часы)Результат
P1 Интерфейс SPI и драйвер инерциального датчика ICM-42688-P 1 3 драйвер ICM-42688-P, чтение по сигналу готовности данных
P2 Калибровка датчиков и выравнивание осей 1 2 калибровка гироскопа и акселерометра, выравнивание платы
P3 Цифровые фильтры и вибрации 1,5 2,5 фильтры второго порядка, спектр вибраций, цепочка фильтров гироскопа
P4 Определение ориентации: углы Эйлера и кватернионы 2 3 оценка ориентации фильтром Махони с ошибкой меньше одного градуса
P5 Приём команд управления: протокол CRSF и система ExpressLRS 1 3 приём каналов по протоколу CRSF, обнаружение потери связи и телеметрия батареи
P6 Протокол DShot: цифровое управление двигателями 1,5 3,5 управление двигателем по протоколу DShot600 и команды регулятору
P7 Тяговый стенд: модель винтомоторной группы 1 3 модель винтомоторной группы по данным стенда и линеаризация тяги
P8 Основы теории автоматического управления и ПИД-регулятор 2 3 ПИД-регулятор угловой скорости, проверенный в модели BeeSim
P9 Стенд «Качели»: стабилизация по одной оси 1 4 Балка стенда «Качели» удерживает горизонталь и отрабатывает ступени угла
P10 Микшер: распределение управления по двигателям 1 2 Микшер схемы Quad-X, проверенный таблицей случаев и моделью подвеса
P11 Безопасность: разблокировка двигателей, аварийный режим и состояния системы 1 2 Разблокировка двигателей, аварийный режим и полётный цикл BeeFC
P12 Параметры и бортовой журнал 1 3 Параметры во флеш-памяти и бортовой журнал полёта BeeFC
P13 Итоговая работа уровня «Полётный контроллер»: карданов подвес 1 4 BeeFC 1.0: стабилизация по трём осям на кардановом подвесе с отчётом по журналу

Ответы на контрольные вопросы собраны в отдельной статье в конце уровня.

↑ К оглавлению

3. Что понадобится

Ко всему оборудованию уровня «Старт» добавляются стенды и датчики.

ОборудованиеНазначениеУроки
учебная плата с датчиком ICM-42688-P основная аппаратная часть P1–P13
приёмник ExpressLRS и аппаратура управления приём команд по протоколу CRSF P5, P9–P13
регулятор с поддержкой протокола DShot цифровое управление двигателями P6–P13
стенд «Качели» с магнитным датчиком угла AS5600 стабилизация по одной оси, эталон угла P2, P4, P9
карданов подвес стабилизация по трём осям P10, P11, P13
тяговый стенд из урока S10 модель винтомоторной группы, вибрации P3, P6, P7

Схемы стендов приведены ниже; подробное описание сборки дано в уроках S10, P9 и P10.

Стенд «Качели»: вид спереди и установка датчика AS5600 на оси. Размеры ориентировочные, полный размер рисунка открывается по щелчку.
Стенд «Качели»: вид спереди и установка датчика AS5600 на оси. Размеры ориентировочные, полный размер рисунка открывается по щелчку.
Карданов подвес для рамы с винтами 3″: три кольца, подшипники и размеры. Размеры ориентировочные, полный размер рисунка открывается по щелчку.
Карданов подвес для рамы с винтами 3″: три кольца, подшипники и размеры. Размеры ориентировочные, полный размер рисунка открывается по щелчку.
Тяговый стенд: вид сбоку и схема соединений. Размеры ориентировочные, полный размер рисунка открывается по щелчку.
Тяговый стенд: вид сбоку и схема соединений. Размеры ориентировочные, полный размер рисунка открывается по щелчку.
Без аппаратуры управления: Слушатели без аппаратуры управления выполняют уроки с помощью эмулятора протокола CRSF: сценарий на компьютере передаёт команды через преобразователь USB–UART. Поведение BeeFC при этом такое же, как с настоящим приёмником.
↑ К оглавлению

4. Как проверяется работа

На этом уровне к модульным тестам добавляется программная модель стенда. Ядро BeeFC собирается для компьютера и работает в замкнутом контуре с моделью: модель вычисляет движение стенда, BeeFC получает от неё показания датчиков и возвращает команды двигателям. Служба автоматической проверки оценивает перерегулирование, время установления и ошибку угла.

Задания на настоящих стендах подтверждаются журналом полёта, записанным BeeFC. Журнал подписывается уникальным номером микроконтроллера, поэтому его нельзя заменить журналом с чужой платы.

Безопасность: Двигатели с воздушными винтами запускаются только на закреплённом стенде, в защитном кожухе, при ограничении тока источника питания. Начиная с урока P11 в каждом тесте проверяется свойство «без разблокировки двигатели не вращаются». До урока P11 стенды с воздушными винтами запускаются только через команду консоли с автоматической остановкой из урока S8.

Проверено: 13.10.2026

↑ К оглавлению
  • мод. : Пятница, 16 октября 2026