Сборка квадрокоптера на Arduino: Руководство по созданию полётного контроллера
Компоненты и материалы
| Arduino Nano R3 | 1 |
| Модуль GY-521 MPU-6050 (3-осевой гироскоп + акселерометр) | 1 |
О проекте
Это не просто квадрокоптер — это открытая платформа!
Где и как получить прошивку для квадрокоптера? Ответ — MultiWii.
MultiWii — популярное ПО для полётных контроллеров DIY-мультироторов с большим сообществом. Поддерживает различные типы коптеров, Bluetooth-управление со смартфона, OLED-дисплей, барометр, магнетометр, GPS (удержание позиции, возврат домой), LED-ленты и многое другое. Давайте соберём полётный контроллер на Arduino!
Шаг 1: Проектирование полётного контроллера

Схема платы полётного контроллера. Можно собрать на макетной плате или заказать печатную плату у производителя.
Подключение ESC
- D3 → ESC 1 (сигнал)
- D9 → ESC 3 (сигнал)
- D10 → ESC 2 (сигнал)
- D11 → ESC 4 (сигнал)
Подключение Bluetooth-модуля
- TX → RX
- RX → TX
Подключение MPU-6050
- A4 → SDA
- A5 → SCL
Светодиод-индикатор
- D8 → Анод светодиода
Подключение приёмника
- D2 → Газ (Throttle)
- D4 → Элероны (Elevator)
- D5 → Элероны (Aileron)
- D6 → Руль направления (Rudder)
- D7 → AUX 1
Шаг 2: Сборка рамы
Использована рама DJI 450. Моторы и электроника установлены на раму. Подробности в видео.
Шаг 3: Установка полётного контроллера на раму
Подключите ESC и приёмник к плате согласно схеме. Сборка завершена!
Прошивка (MultiWii)
Основной файл: MultiWii.ino. Полный код прошивки включает модули GPS, PID-регуляторов, навигации, удержания высоты, возврата домой (RTH) и работы с миссиями. Код обрезан для краткости — скачайте полный архив.
Ключевые функции:
- Обработка данных GPS (UBLOX, MTK)
- PID-регуляторы для удержания позиции и навигации
- Машина состояний навигации (NAV_STATE): удержание, RTH, посадка, выполнение миссии
- Фильтрация GPS-данных (скользящее среднее, lead-фильтр)
- Расчёт скорости, расстояния, курса и поправок
- Автоматическая посадка с детектором касания земли
Схемы

Производственный процесс
- Drone Pi: двухрежимный квадрокоптер Multiwii + Raspberry Pi для управления со смартфона и пульта
- Сборка Bluetooth-робота-шпиона на Arduino с управлением с телефона
- FlickMote: жестовое IR-пульт для умного дома на Arduino 101 и ультразвуковом датчике
- DIY Arduino TV-B-Gone: универсальный пульт для выключения любого телевизора
- Создание пользовательских LED-часов с будильником — видно с 12 метров
- Find Me: Умный поисковик вещей на Arduino и Bluetooth
- Оптимизированные решения питания для проектов на Arduino
- Крестики-нолики на Arduino с матрицей MAX7219 и картонным корпусом
- Пошаговое руководство: сборка умного четырёхногого робота на Arduino
- Своё рулевое управление (джойстик) для игр на Arduino