Найти в Дзене
ZDG

Квадрокоптер в деталях. Полётный контроллер

Оглавление

Предыдущие подборки: Подбор компонентов, Введение

Полётный контроллер – "мозг" квадрокоптера. По сути это маленький компьютер. Можно писать и запускать на нём программы, и в общем-то даже необязательно для квадрокоптера. Как и все компьютеры, он универсален и может служить для любой цели.

Полётным контроллером его делает периферия, размещённая вместе с процессором на одной плате.

1. Акселерометр и гироскоп

Акселерометр может измерять ускорение движения в любом направлении, а гироскоп – вращение. Эти две микросхемы жизненно необходимы для того, чтобы коптер мог управлять своим положением в воздухе.

2. Порты UART

Это обычные COM-порты (последовательные порты), работающие по стандартному протоколу. Они нужны для присоединения внешнего оборудования: приёмников, модулей GPS, видеопередатчиков...

3. Шина I2C

Это специальная шина данных для периферийных устройств, таких как барометр или магнитометр. Она может отсутствовать. Но барометр может быть встроенным.

4. Датчики напряжения и силы тока

Обычно датчик напряжения присутствует всегда, а силы тока – не всегда.

5. OSD

Микросхема вывода информации на экран (On-Screen Display) – работает с видеосигналом от камеры, накладывая поверх него показания приборов. В современных контроллерах есть всегда, а в старых её часто не было, и тогда требовалась внешняя схема OSD.

6. Преобразователь напряжения

Как правило, полётный контроллер имеет как минимум один преобразователь напряжения на 5 вольт, от которого можно питать периферию (приёмник, камеру, видеопередатчик, GPS, барометр, магнитометр). Может присутствовать также преобразователь на 9, 10 или 12 вольт.

В принципе, это всё, что входит в обычный набор полётного контроллера.

Далее, полётные контроллеры различаются по следующим параметрам:

  • Тип процессора и прошивки
  • Количество доступных портов
  • Наличие I2C
  • Все остальные пункты, которые в принципе уже не очень важны

Посмотрим, какие полётные контроллеры доступны на сегодняшний день.

DJI NAZA M V2

Один из древнейших контроллеров от DJI, который до сих пор летает.

Плюсы:

  • Простая сборка и настройка
  • Стабильно летает

Минусы:

  • Закрытая прошивка
  • Ограниченный функционал
  • Работает только с компонентами DJI
  • Модульная система, тяжёлая, очень громоздкая.
  • Все компоненты дорогие

APM 2.8

-2

Контроллер на базе процессора Arduino.

Плюсы:

  • Открытая прошивка Arducopter
  • Развитые возможности навигации
  • Поддержка большого количества периферии (UART, I2C)

Минусы:

  • Большой, тяжёлый*
  • Сложный в настройке
  • Морально устаревшие компоненты*
  • Нет встроенной OSD

*Прошивку теоретически можно залить на другой контроллер

Pixhawk

-3

Практически брат APM-а, только на базе более крутого процессора STM32 и со своей, тоже открытой, прошивкой PX4 Autopilot. Плюсы и минусы те же самые. И ещё он дороже.

STM32 ***

-4

Здесь речь не о каком-то конкретном контроллере, а о целом зоопарке контроллеров на базе процессора STM32, выполненных в виде бескорпусной электронной платы с разведёнными контактами питания и портов.

Нас будут интересовать именно они, как де-факто стандарт в области FPV.

Они шьются прошивками с открытым исходным кодом Betaflight и INAV.

Betaflight предназначен чисто для FPV, в то время как INAV сочетает возможности FPV с GPS-навигацией.

Контроллеры STM32 делятся по поколениям: F1, F3, F4 и F7.

Про F1 можете сразу забыть, они слишком сраты старые. F3 ещё кое-где летает, но также считается безнадёжно устаревшим, и новые версии прошивок под него уже не выпускаются. Актуально поколение F4, а F7 это запас на будущее, но также имеет некоторые улучшения и удобства прямо сейчас.

Кроме того, контроллеры бывают в полной и урезанной версии.

Полные версии это F405 и F745, а урезанные F411 и F722.

Урезанные отличаются меньшим объёмом памяти и меньшим количеством портов.

Не слишком ли всё сложно?

Нет.

Вашей задачей будет просто найти подходящий полётный контроллер и присоединить к нему периферию. Для каждого периферийного устройства известен его интерфейс (UART или I2C).

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

Посмотрим для примера случайный контроллер F405:

-5

Хорошо, что всё подписано, поэтому схему смотреть даже не нужно:

  • G или GND – земля, "минусовой" провод.
  • VBAT или VCC – напряжение от батареи, "плюсовой" провод.
  • 3V3, 4V5, 5V, 9V – выходы с преобразователей напряжения на 3.3 вольта, 4.5 вольт, 5 вольт, 9 вольт.
  • TX1...TX6 – передающие каналы портов UART1...UART6
  • RX1...RX6 – принимающие каналы портов UART1...UART6
  • SCL, SDA – контакты шины I2C (Clock и Data)
  • SBUS – вход для приёмника с протоколом SBUS
  • S1...S10 – выходы управляющих сигналов на регуляторы моторов
  • VTX, VID или VO (Video Out) – выход сигнала для видеопередатчика
  • C, CAM или VI (Video In) – вход сигнала с камеры
  • LED – управление светодиодом
  • BZ или BUZ – управление пищалкой (buzzer)
  • CUR (Current) – вход внешнего датчика тока

Этого пока хватит. Вы можете промотать страницу наверх и посмотреть на картинку предыдущего контроллера. Там вы можете уже самостоятельно определить, какой контакт для чего, и убедиться, что это несложно.

Далее в действие вступает простая логика.

Если ваша камера питается от 5-25 вольт, вы можете припаять её питание к любой из площадок 5V, 10V или VBAT. Если же она питается только от 5 вольт, тогда только к площадке 5V. Видеовыход камеры вы припаиваете к CAM или VI.

И всё, камеру вы уже подключили.

Точно так же с остальными компонентами: находите для них подходящее питание и нужный порт или интерфейс, припаиваете и готово.

Ничего сложного, если просто следовать обозначениям на контроллере и на присоединяемом компоненте.

Ещё для примера, можете самостоятельно выяснить, как припаять внешний барометр BMP280 к полётному контроллеру с шиной I2C:

-6

На барометре есть обозначения VCC (это его питание), GND, SCL, SDA.

VCC мы должны припаять к 5 вольт, потому что рабочее напряжение барометра это 5 вольт. GND это "земля" и паяется к любой "земле". А SCL/SDA паяются соответственно к таким же контактам на контроллере. Всё, барометр работает.

Оставшиеся два контакта на барометре CSB и SDO не используются и припаивать их никуда не надо. Конечно, вас это могло бы сбить с толку, но лишь поначалу.

Запитывать сам контроллер мы будем аналогично. Найдём контакты VBAT/VCC и GND и припаяем к ним провода от батареи. Готово. Правда, нужно знать, какое рабочее напряжение у контроллера. Это есть в его спецификации.

Например, 2-4S означает, что он работает с батареями от 2S (8.4 вольта) до 4S (16.8 вольта). А больше нельзя – сгорит. Меньше тоже нельзя – не заведётся.

Если вы присоедините батарею 2S, то на всех контактах VBAT у контроллера появится напряжение 8.4 вольта. Если 4S – то 16.8 вольта. Учитывайте это, когда паяете к этим контактам периферию.

Читайте дальше: