Activity

Мультикоптер: подбор компонентов, хитрости настройки

Почему эта статья

В моей статье я не претендую на переворот и новое слово в коптеростроении. Скорее здесь собрана выжимка из моего опыта, других статей, сообщений форумов и обсуждений с различными людьми. Она может использоваться как старт в понимании многих проблем, связанных с коптерами, и их возможных решений, но не как последняя истина. Если меня хороший знакомый спросит, как собрать коптер, я в первую очередь дам ему почитать это.

Что нужно для мультикоптера

Хочу собрать мультикоптер для FPV. Не купить набор, а подобрать компоненты сам, чтобы не дорого, сердито и интересно.
Конфигурацию буду стараться подбирать так, чтобы летать довольно долго (в отличие от целей “быстро” или “маневренно”) - надо выбрать раму, вес, тягу, емкость аккумулятора. Отзывчивость и резкость не очень важны, в отличие от стабильности в ветреную погоду.

Сначала я хочу собрать и отладить коптер, а прикручивание к нему FPV отложу на потом. Сложностей и затрат хватает и так.

Что надо выбрать для первого этапа:

  1. полетный контроллер и внешние датчики к нему (типа, GPS, компас)
  2. форму рамы: выбираю между 4 и 6 роторов, полагая, что 6 - надежнее, а 4 - проще
  3. размер рамы
  4. аккумуляторы
  5. моторы и лопасти
  6. регуляторы к моторам (ESC)
  7. преобразователь питания для электроники, кроме двигателей (BEC)
    X) передатчик и приемник (возможно, с телеметрией). Еще гора вещей, включая специальную зарядку, отвертки, сигнальные и силовые провода и разъемы и т.п.

Что понадобится для второго этапа (FPV):

  1. камера для FPV и записи видео
  2. моторизованный подвес камеры (чтобы можно было менять ее положение с передатчика хотя бы наклону, а есть подвесы с возможностью стабилизации положения камеры при маневрах коптера)
  3. приемник-передатчик видео
  4. OSD (добавляет к FPV картинке данные телеметрии: скорость, высоту, расстояние, положение, направление “домой”, заряд аккумуляторов и др.)
  5. устройство отображения FPV-видео (очки или экран)

Подбор комплектующих для мультикоптера (без FPV)

1. Полетный контроллер.
Выбрать было легко: Naza или ArduPilot (остальные не рассматривал, потому что считаю, что они не очень широко распространены. Может ошибаюсь. Сравнительный список контроллеров). Почитав обзоры понятно, что ArduPilot - вполне состоявшийся продукт с очень широкими возможностями. Народ доволен. Кроме этого, он открыт и дешев - то, что мне надо. ArduPilot существует в нескольких вариантах “железа”. Сейчас (2015 год) самый актуальный - Pixhawk и софт будет развиваться в первую очередь под него, не для ArduPilot Mega, на котором уже практически достигнут предел использования памяти и производительности.
Выяснилось, что к нему надо подобрать GPS-модуль, желательно со встроенным компасом, или еще отдельный компас. Выбрал GPS типа NEO-M8N с компасом. Он подороже M6 и M7, но вроде как быстрее и точнее. Имеет смысл брать GPS на складной стойке - она при ослаблении гайки складывается у основания.
Лирика. Поискал комплекты подешевле, обнаружил, что оптимальнее купить отдельно Pixhawk, отдельно GPS. Еще взял датчик тока (для телеметрии). Бывают комплекты Pixhawk с OSD и приемниками-передатчиками телеметрии - но мне это не нужно пока: OSD только для FPV, а телеметрию я собираюсь прикрутить к приемнику FrSky. Отдельные приемник и передатчик телеметрии нужны только для ноутбука или смартфона, если есть желание во время полета на них смотреть. Иначе достаточно USB (для смартфона - USB-OTG кабель).

2. Форма рамы.
Я планировал строить гексакоптер (6 винтов) из предположения, что при потере одного винта он сможет нормально сесть. Но потом у меня создалось впечатление, что такая возможность у потребительских контроллеров есть только теоретически, и реально она если и существует, то в сыром, без гарантии виде (хотя в форумах можно найти сообщения, что иногда гекса летает без одного винта или после его потери). В таком случае гекса- по надежности не то что выше квадрокоптера, а уступает ему. В конце-концов, все железо, кроме рамы и, иногда, аккумуляторов, одинаковое для них обоих, и в будущем можно будет перепрыгнуть.
Итого, выбрал квадрокоптер. Важный момент: лучше выбирать складную раму, иначе коптер плохо помещается в квартиру и машину, а в сумку может вообще не влезать. Складные рамы бывают разные: для квадро-, например, лучи могут складываться по два в противоположных от центра направлениях, или все в одном направлении (более компактно), вдоль или поперек шасси. Не забываем и о возможности сложить стойку GPS с компасом, если такая имеется.
При выборе рамы нужно понимать, что любые компоненты и крепления можно “колхозить” самому или купить отдельно.
Конкретные рамы могут иметь или не иметь выделенных мест для крепления:

  • контроллера (должен крепиться на демпферах, потому что в нем находятся гироскопы и акселерометры, боящиеся вибраций) - обычно это небольшая площадка на четырех резиновых демпферах в форме боченков (все можно купить отдельно: о выборе демпфирования);
  • аккумулятора (требований к креплению особых нет - только чтобы не падал, т.е. можно хоть изолентой его прикрутить);
  • подвеса для камеры;
  • регуляторов (требования как у аккумулятора);
  • у трех- и четырехлучевых рам могут быть дополнительные крепления двигателей снизу лучей - тогда можно их использовать как 4-8 или 6 двигателей, а также 4, но с толкающими пропеллерами, а не тянущими - есть на это любители, хотя практической пользы, вероятно, нет.

При размещении компонентов на раме нужно учитывать:

  • контроллер (точнее - датчики в нем) желательно располагать поближе к центру рамы (все движения коптера выполняются относительно контроллера. Во всяком случае, он так считает);
  • аккумуляторы тяжелые и большие, а располагать все компоненты на раме желательно так, чтобы центр тяжести оказался на равных расстояниях от моторов (тогда нагрузка на них будет равномерной);
  • внешний компас (который обычно находится вместе с GPS) нужно удалять от металла и проводов (особенно силовых), потому что он боится магнитного поля - из-за этого его часто располагают на стойке;
  • GPS-приемник с встроенной антенной нужно располагать так, чтобы ему была открыта большая часть неба. Поэтому часто он находится на стройке, но это не обязательно;
  • приемник управления, возможные передатчики телеметрии и видео надо располагать так, чтобы их антенны не сильно загораживались частями рамы и располагались подальше друг от друга, контроллера и компаса. Т.е. все антенны, кроме GPS, обычно находятся внизу рамы;
  • регуляторы (ESC), BEC, мощный передатчик видео - могут сильно нагреваться, поэтому желательно обеспечивать им какой-то обдув. У ESC часто одна сторона плоская - на ней находится радиатор и лучшего охлаждения требует именно она.

3. Размер рамы.
У мультикоптеров размер рамы - трехзначное число в названии - обычно означает расстояние в мм между осями двигателей, расположенных противоположно друг другу через центр. Ну или просто наибольшее расстояние между двигателями. От размера рамы зависит максимальный размер пропеллеров, которые можно установить (чем больше пропеллер, тем он эффективнее, но тем менее резвым и устойчивым к порывам ветра становится коптер). Предполагаю, что чем больше рама, тем она стабильнее и устойчивее в полете (и тем тяжелее).
Больший вес может потребовать бОльшую мощность двигателей, что означает бОльшую цену на двигатели, пропеллеры, регуляторы и аккумуляторы.

4. Аккумуляторы.
На коптеры моего диапазона (450-600 мм) обычно ставят аккумуляторы 3 или 4S, емкостью порядка 5000-8000 mAh (разброс очень большой на самом деле, потому что аккумуляторы тяжелые, и для кого-то важнее маневренность, а для другого - время полета). Для выбора оптимального веса аккумуляторов существуют различные статьи, например, в дневниках пользователя c3c (например см. о выборе аккумулятора). От напряжения (т.е. величины S) напрямую зависит скорость вращения двигателей, а значит оно тоже влияет на выбор моторов и лопастей.

Аккумуляторы можно включать параллельно и последовательно. Я, для начала, собираюсь использовать параллельное включение имеющихся у меня 3S 2200 mAh аккумуляторов по 2-4 штуки (3 штуки параллельно эквивалентны 3S 6600 mAh).

На всякий случай напишу, что параметр C аккумулятора (максимальная токоотдача) должен соответствовать (быть не меньше) максимальному току моторов и др. компонентов.

5. Моторы и лопасти.
Выбор моторов и лопастей это, пожалуй, самая сложная часть. От них зависит:

  • маневренность и устойчивость к ветру (чем меньше пропеллеры и выше обороты - тем лучше);
  • эффективность винто-моторной группы (ВМГ), (грамм тяги на ватт потребленной мощности);
  • время полета (чем больше пропеллеры и меньше обороты - тем лучше, потому что в этом случае больше эффективность);
  • вес (чем мощнее двигатель, тем он тяжелее, и тем больший требуется аккумулятор);

В помощь на форуме rcdesign в разделе FAQ есть ссылки на калькулятор коптера (или здесь) с прикидкой продолжительности полета, таблица с тестами различных моторов и пропеллеров и др.

Для коптера важна величина тяги на половине газа (примерно на ней он должен висеть на месте), и тяга на полном газе. Мотор выбирается в связке с лопастями, потому что на разных лопастях он дает не только разную тягу на 50 и 100%, но и разное их соотношение, а также разную эффективность. Опять же, тяга зависит от напряжения аккумулятора (потому что оно напрямую влияет на обороты двигателя), и при просмотре таблиц тяги двигатель-лопасти нужно обращать внимание на указанное напряжение.

Сначала нужно прикинуть максимальный вес коптера со всей нагрузкой (в т.ч. FPV).
Подбор - процесс итеративный, потому что от веса зависит выбор моторов, а от моторов - емкость и напряжение аккумуляторов, от которых снова зависит вес. У моторов тоже вес разный.

Параметры пропеллера: диаметр и шаг (оба в дюймах). Чем они больше, тем сильнее пропеллер тянет на одних и тех же оборотах, но эффективность тоже меняется. У разных производителей эффективность одних и тех же пропеллеров разная. Нужно следить, чтобы пропеллеры помещались на раму не задевая друг за друга (причем, расположение двигателей на раме может быть не симметричным и расстояние между ними разным)!

Параметры мотора, на которые надо смотреть (на 50 и 100% газа при заданном напряжении и заданном пропеллере):

  • тяга (в граммах - на примерно 50% коптер должен висеть, хотя, это вовсе не обязательно, но слишком большой процент для висения скорее всего означает ограниченную маневренность - мощности не хватит, как и слишком маленький процент - мало оборотов - пониженная маневренность и слишком мощные - тяжелые - двигатели);
  • эффективность (грамм тяги на ватт потребленной мощности);
    Кроме этого важен вес мотора (для 450-600 коптера 50-150 грамм) и диаметр (от последнего зависит, подходит ли стандартный крепеж на раме для этого мотора). Первые 2 цифры в четырехзначном обозначении мотора - как раз его диаметр. Параметр Kv - кол-во оборотов на вольт без нагрузки - сам по себе не очень важен, потому что уже учтен в тяге от напряжения. Нужно только иметь ввиду, что бывают моторы с одинаковым названием и четырехзначным обозначением, но разным Kv, и их параметры разные. Обратить внимание нужно и на максимальный ток мотора (от него зависят регуляторы, аккумулятор и силовые провода).

6. Регуляторы к моторам.
Регуляторы (их количество совпадает с кол-вом моторов) нужно выбрать по параметрам:

  • имеет прошивку Simonk (или поддерживается Simonk и вы сможете его перепрошить самостоятельно). Возможно, на регуляторе не сказано “Simonk”, но указано, что он предназначен для коптеров (главное, чтобы не соврали). Бывают регуляторы 4 в 1 (т.е. для 4-х моторов) - эти специально для коптеров, но возникает вопрос их надежности - если сгорит, то весь сразу. Необходимость в такой прошивке обусловлена ограничениями ESC для самолетов и вертолетов на частоту, с которой ESC разрешает менять обороты двигателя (для коптера желательна бОльшая частота). Работать скорее всего будет и обычный ESC (с ArduPilot точно, потому что там есть “медленный” режим ESC), но не так хорошо, как мог бы;
  • максимальный ток превышает такой же у мотора (с учетом возможного апгрейда моторов?);
  • диапазон поддерживаемых напряжений соответствует вашему аккумулятору (и, возможно, переходу на большее напряжение в будущем) - указывается в кол-ве банок (S);
  • возможно, содержит BEC (или наоборот, не содержит - как решите) - см. ниже про питание.

7. Преобразователь питания (BEC).
Питание контроллера, приемника, датчиков и т.п. (кроме двигателей, которые питаются через ESC) - требует обычно 5-7 вольт, тогда как аккумуляторы 3-4S выдают минимум соответственно 11.1-14.8 вольт. Мотоподвес камеры может требовать другого напряжения (например, 12 вольт). Часто BEC встроен в регулятор, но можно взять и отдельный. Для ArduPilotMega/Pixhawk разработчики предлагают PowerModule, который совмещает в себе BEC и датчики тока и напряжения аккумулятора для телеметрии. В статье “Идеальное питание для APM” он немного критикуется, и рассматриваются разные варианты питания. В плане надежности, лучшая схема - подключение нескольких BEC - если один сгорает, то работает другой. Однако, надо внимательно смотреть схему включения - их часто нельзя просто запараллелить.
В любом случае, нужно внимательно прочитать варианты подключения питания к контроллеру на сайте производителя. Для Pixhawk там достаточно подробно описано, что можно сделать (подключение ESC+BEC). Для себя я решил подключить PowerModule и один BEC, встроенный в ESC (при этом, провод + от сигнальных разъемов остальных ESC к контроллеру не подключать).

На всякий случай опишу, как устроены соединения ESC с и без встроенного BEC. К ESC двумя толстыми проводами подводится питание непосредственно от аккумулятора. 3-х контактный разъем с тонкими проводами используется для:

  • сигнальный провод - передачи сигнала газа к ESC (то есть у ESC это вход);
  • провод “земля” или “минус” - всегда подключается к “земле”;
  • провод “+”: если встроенного BEC нет, то вероятно, никуда не подключен (не знаю, существуют ли варианты, требующие на этом проводе внешнего напряжения для логики самого ESC). Если BEC есть - то это выход питания BEC, который можно использовать для питания контроллера и т.п., или нужно его отрезать, если питание организовано по-другому;

BEC выбирается по параметрам:

  • диапазон входного напряжения (должен соответствовать аккумулятору);
  • выходное напряжение;
  • максимальный ток (должен превышать сумму всех нагрузок, подключенных к нему. Если не питать подвес камеры или очень мощный передатчик видео, то 2A хватит);

Сборка.

  • все электронные компоненты боятся помех по питанию и сигнальным линиям. См. обзор шумов по питанию и способы борьбы. На сигнальные провода рекомендуется ставить ферритовые кольца (они гасят высокочастотные и импульсные помехи);
  • компас подвержен влиянию электромагнитного излучения (часто компас добавлен внутри GPS модуля. Но может быть отдельным или встроенным в контроллер);
  • гироскопы и акселерометры в контроллере боятся вибраций, поэтому он устанавливается на раму на виброизоляционной платформе;
  • компас и гироскопы должны быть установлены на раму по курсу. Если это не так, то автоматические режимы типа “возврат домой” могут унести коптер далеко от дома или вогнать в планету;
  • в ArduPilot перепутано направление стика крена (так же Pitch или Elevator). Обратите внимание, в настройках сказано: “Channel 2: low = pitch forward, high=pitch back”, т.е. низкое значение = крен вперед (в жизни, логике и настройках аппаратуры по-умолчанию - наоборот). Это означает, что при настройке аппаратуры или ArduPilot, этот канал придется инвертировать! Исправить это разработчики, вероятно, не могут, потому что у всех уже настроено инвертирование;

Хитрости.

GPS иногда плохо работает с контроллером, если у него вручную увеличена частота посылки координат (5 или 10 Гц вместо 1-2). Это часто связано с тем, что на установленной скорости UART он не успевает передать всю посылку за период повтора. Не выяснен вопрос, можно ли увеличить скорость UART для GPS в AP.

MinimOSD при подключении для перепрошивки требует соединения провода GRN с сигналом DTR. Но DTR на UART-USB платах часто отсутствует. В этом случае для перепрошивки нужно сказу после начала передачи данных с компьютера на MinimOSD нажать на последнем кнопку reset (подробнее /англ./).

При соединении ESC с двигателями и питанием нужно стараться минимизировать длину проводов от ESC к питанию. Длина же от ESC к двигателю может быть любой. Это связано с тем, что ESC потребляет питание импульсами, что при большой индуктивности проводов питания (зависит от длины) плохо сказывается но входном конденсаторе - он греется и со временем выходит из строя. При большой длине проводов рекомендуется ставить дополнительные электролиты как можно ближе к ESC (подробнее /англ./).

Статистика крашей

Align 450 Plus DFC, Align 550 DFC

2014

450 сел аккум в аппе

  • лопасти, осн. шестерня, резьба в пластиковом линке к лопасти сорвана (залил эпоксидкой), канопа пластиковая в мелкие кусочки (склеил скотчем)
    450 серву на голове align 415 заклинило из-за предыдущего краша. На земле работала, в полете стало клинить
  • осн. шестерня, шасси (склеил), осн. вал
  • немного погнута хвостовая балка, не ясно когда
    450 на высоте 20 метров сорвало одну из тяг к лопастям. Лопасти друг-друга поотрубали, отлетела канопа и спланировала с ними, верт без лопастей ровно носом полетел на землю. Это было красиво 😃
  • лопасти, осн. шестерня, резьба в пластиковом линке к лопасти сорвана, второй ранее склеенный линк - сломался металл выше клея, хвостовая балка, все 3 сервы align 415 (заменил на TGY-306)
    450 вероятно, сбрендил гувернер в регуляторе Align RCE BL35P и выключил двигатель (если бы пропал сигнал или сел аккумулятор, я бы это услышал, поскольку в аппаратуре настроены предупреждения по данным телеметрии). Гувернер в регуле ведет себя очень странно. Отключил его, полетел нормально
  • шасси, линк на голове сорвало резьбу (приклеил в поле)
    450 зарул из-за деревьев. Приземлился на дерево
  • шасси в месте склейки, линк на голове приклеенный сорвало (приклеил снова), шестерня, 2 линка к сервам погнуты (выпрямил), хвостовой плавник треснул, но не сломался
    450 зарул из-за плохой видимости (пасмурная погода)
  • обычная расходка + похоже гироскоп в FBL: при нормальных вибрациях на определенных оборотах двигателя (даже без шестерен, пробовал 2 разных двигателя) трясется тарелка. Из-за этого летать не может. Без двигателя в руках FBL отрабатывает как положено

2015
на 450 Vbar заменен на MSH Brain

450 не рассчитал высоту при выходе из петли

  • шасси, лопасти, шестерня, серва головы

550 неудачная посадка (легонько зацепил ХР землю)

  • лопасти ХР, возможно, одна из шестерен привода ХР и подшипник (хотя, это может и раньше было)

550 зарул из-за плохой видимости (пасмурная погода)

  • “разобрал” вертолет на несколько больших частей. Все валы, в т.ч. ХР и межлопастной ХР, шестерни, рама, лопасти, хвост. Целы только электрика, головы, металл. части рамы, шасси, плавник

2015

550 потерял хвост из-за плохо затянутой гайки. От неожиданности сел неаккуратно.

  • лопасти, шасси, балка, вал хвостового ротора. После этого тренировался в симе садиться при потере хвоста (дергаешь hold - на авторотации вертолет вокруг свой оси не закручивается даже если нет хвоста)
Телеметрийный бюджетный приемник одним проводом к mini v bar (Turnigy 9x + FrSky + GV8000)

Подключил к GV8000 (клон mini v-bar) приемник FrSky 8ch по PPM (т.е. одним проводом).
Приемник этот телеметрийный + RSSI. Т.е. аппа у меня в руках показывает уровень приема приемника, установленного на вертолете (!), напряжение аккумулятора вертолета. Можно подключить другие датчики. У FrSky есть еще более дешевый 4ch приемник с телеметрией, который умеет отдавать 8 каналов по PPM. Его не проверял. Приемники имеют failsafe.

Чтобы приемник работал с аппой, нужно к нему и передатчик совместимый, с телеметрией. У меня такой, без корпуса, поставил вовнутрь аппы. Еще бывает в корпусе такой.

Передатчик с помощью тонкого паяльника (и максимум 2-х резисторов, больше радиодеталей и компонентов не надо) подключается к Turnigy TH9x (прошивка должна быть er9x-FrSky). Это не обязательно, но я сделал возможность отключения этого передатчика, чтобы использовать внешний, антенну вывел через штатное отверстие (у меня аппа FlySky TH9x, ее родной передатчик съемный и имеет свою антенну).

Что это дает? Телеметрию, failsafe, возможность использования гувернера в mini v bar, чего сделать нельзя с обычным, многопроводным приемником.
Такое решение по бюджету конкурирует с покупкой передатчика и сателлита Orange, если они берутся для однопроводного подключения, а не для получения цифровой шины и установки более одного сателлита.

Недостатки этого решения:

  1. PPM якобы медленнее цифровых шин. Правда, речь идет о средней задержке в 10 миллисекунд (половина фрейма одной передачи всех каналов)
  2. у приемников FrSky в PPM сигнале есть проблема “восемнадцати миллисекунд” - если использовать все 8 каналов, и бывает, что они все имеют значения, близкие к максимумам (т.е. все стики вправо-вверх, и еще 3 канала каких-то тоже на максимум), то может произойти потеря фрейма. Проблема в некотором роде гипотетическая и даже решается перепрошивкой приемника (есть официальная прошивка), но это требует определенных сил, в частности, наличия интерфейсной платы FrSky или USB-RS232 конвертера, но обязательно на FTDI 232 (на обычном USB-RS232 с самодельным инвертором сигнала у меня ничего не вышло, как и в комментах к указаной выше статье)
  3. не знаю, есть ли способ подключить второй приемник для надежности
  4. PPM все-таки не цифровая шина, и подключить к ней напрямую сервы (как к s.bus) видимо не выйдет

О настройке звуковых предупреждений по данным телеметрии

Передатчик FrSky с функцией приема телеметрии умеет выдавать звуковые предупреждения (3 разных звуковых комбинации + еще кое что) по данным телеметрии. Например, можно задать 2 разных предупреждения в зависимости от напряжения аккумулятора вертолета, предупреждения о падении уровня приема радиосигнала ниже заданного значения.
Причем, сравнением данных и звуком занимается именно передатчик FrSky, а не аппа. А нам надо настроить эти предупреждения. Делается это двумя способами: с помощью адаптера FrSky (вероятно, можно использовать и USB-RS232 на FTDI) и оригинальной программы (не наш метод) или прямо с пульта Turnigy TH9x с прошивкой er9x, в которой есть соответствующие меню. При редактировании настроек FrSky в аппе она автоматически отправляет их в передатчик по RS232, который распаивается при подключении передатчика к аппе. Обратите внимание, что выдавать звуковые предупреждения по данным телеметрии прошивка er9x не умеет (во всяком случае, в современной версии), поэтому если RS232 между передатчиком и аппой не распаян или не работает на передачу от аппы, то предупреждения настраиваются, но не работают.

Как правильно замечено в комментариях, пайка и заливка в аппу телеметрийной прошивки нужны только для получения и настройки телеметрии в самой аппе. На работоспособность соединения приемника с mini v bar по PPM это никак не влияет, и будет работать и с нетелеметрийными приемниками-передатчиками (главное, чтобы приемник мог отдавать PPM или его можно было заставить делать это перепрошивкой).

Кстати, FBL Microbeast тоже отлично подключается к приемнику FrSky одним проводом.