Опыт постройки коптера: WLtoys V949 + MultiWii 2.0

в 13:47, , рубрики: arduino, diy или сделай сам, multiwii, quadcopter, робототехника, метки: , , ,

Добрый день! Хочу представить вниманию сообщества свой небольшой проект мини-квадрокоптера на основе MultiWii 2.0.

image

Лирическое отступление или история проекта

Начнем с предыстории, иначе понять, почему коптер получился именно таким, какой он есть, будет весьма затруднительно.
В 2011 году, на 5-м курсе университета, мне хотелось собрать своего маленького робота just for fun, однако колесная платформа как-то не притягивала, и решено было собирать что-нибудь летающее. Самым простым вариантом мне тогда показался вертолет. Но просто так строить летающего робота было не интересно, я решил присовокупить его к своему дипломному проекту «разработка системы дистанционного управления подвижным объектом».

Spec-list вертолета:

деталь название ссылка кол-во
платформа Fire Fox EP200 www.hobbyking.com/hobbyking/store/uh_viewItem.asp?idProduct=8938 1
двигатель (BLDC) V623-4500vk N/A 1
регулятор (ESC) HobbyKing Red Brick 25A ESC www.hobbyking.com/hobbyking/store/uh_viewItem.asp?idProduct=18003 1
сервопривод (Servo) NoName 3.7g N/A 4
аккумулятор (LiPo, АКБ) Rhino 1050mah 2S 7.4V 20C www.hobbyking.com/hobbyking/store/uh_viewItem.asp?idProduct=7307 2
Зарядное устройство (ЗУ) IMAX RC B3 rctimer.com/ 1
Передатчик (Tx) &
Приемник (Rx)
MSP-EXP430G2
430BOOST-CC110L
www.ti.com/tool/430boost-cc110l
www.ti.com/tool/msp-exp430g2
1+1
Гироскоп (Gyro) HobbyKing GA250 AVCS Gyro www.hobbyking.com/hobbyking/store/uh_viewItem.asp?idProduct=15318 1

Я был (да в прочем, и остаюсь) новичком в постройке подобных аппаратов и поэтому столкнулся с рядом проблем, в частности IMAX B3 оказался горелым, и мне пришлось в авральном режиме паять свое ЗУ (о нем как-нибудь в другой раз). В итоге, на момент защиты, как ни странно, мне удалось собрать собственную Rx/Tx систему, однако сам вертолет превратился в долгострой.

Дипломный проект был представлен в виде стенда: image

Здесь обозначены: токовый шунт (1), ESC (2), Rx (3), тумблер питания (4), BLDC + тахометр (5), аккумулятор (6) и дисплей тахометра (7). Все это добро управлялось с помощью невзрачного вида программы, которой я планировал управлять вертолетом.

image

Hate!
Вернемся же к нашему зарядному устройству. Оно шло ко мне 2 месяца, и обращаться в PayPal было уже поздно. Однако по детской наивности я, написал в RCtimer просьбу вернуть мне деньги. Они решили эту проблему кардинально, удалив IMAX B3 из своего ассортимента, а вместе с ним, очевидно и мои комментарии.

Прошло какое-то время, защита прошла на ура, все шло по плану. Пора бы и честь знать! Были докуплены / изготовлены следующие комплектующие:

деталь название ссылка кол-во
Rx/Tx Turnigy 6XS FHSS www.hobbyking.com/hobbyking/store/uh_viewItem.asp?idProduct=24903 1
шестерня (pinion) Custom изготовлена на заводе 1

Итак, собрал, настроил, ключ на старт… Дальше все как в тумане:

  • разбита механика хвостового винта;
  • разбиты посадочные скобы (landing gear brace);
  • двигатель больше не заводится;
  • сильно задето самолюбие.

Проанализировав ситуацию, я выяснил, что во всем виновата радиоаппаратура, которая через пару минут после включения сильно разогревается и перестает нормально работать.

Hate!

Ругался я с HobbyKing-ом месяца 2, обращался в PayPal который ответил, что продавец вернет мне деньги, как только я пришлю им посылку обратно. Отправил я посылку, прошел еще месяц, мне приходит ответ с PayPal, что мол, посылка пропала и мне никто ничего не вернет. Проходит еще 3 месяца, мне возвращается посылка (в итоге за все про все я заплатил 750руб), на мой резонный вопрос «какого лешего?» дама из моей, горячо любимой Почты России ответила, что «получатель отказался забирать посылку». Бог им судья решил я и потопал восвояси…

Постройка коптера

С последних событий прошел один год. Я перестал считать себя самым неудачливым «пилотом» на свете и купил недостающие детали для своего вертолета (в т.ч. новый ресивер Turnigy RX7000S). Но вертолеты меня уже особо не интересовали. В это время, я натолкнулся на очень интересный материал с Hackaday. Глаза загорелись, и родился новый проект!

Spec-list коптера:

деталь название ссылка кол-во
платформа WLtoys V949 BNF www.banggood.com/Wholesale-WLtoys-V949-Beetle-RC-Quadcopter-Mini-UFO-BNF-p-57271.html 1
Микроконтроллер (MCU) Arduino Pro Mini 8MHz 3.3v www.ebay.com/itm/Redesign-Pro-Mini-atmega328-3-3V-8M-Replace-ATmega128-Arduino-Compatible-Nano-/200914924969?pt=LH_DefaultDomain_0&hash=item2ec77675a9 — Arduino 1
Передатчик (Tx) Turnigy 6XS www.hobbyking.com/hobbyking/store/uh_viewItem.asp?idProduct=24903 1
Приемник (Rx) Turnigy RX7000S www.hobbyking.com/hobbyking/store/uh_viewItem.asp?idProduct=28472 5*
аккумулятор (LiPo, АКБ) Turnigy Nano-Tech 600mAh 1S www.hobbyking.com/hobbyking/store/uh_viewItem.asp?idProduct=20385 3
Авионика (Gyro, Acc) MPU-3050
MPU-6050
Жестоко выдрано из WLtoys V949
cм. Hate! — спойлер ниже
1
2**
Зарядное устройство (ЗУ) Custom Самоделка (двух сортов) 2
Дополнительно Turnigy Voltage Booster for Servo www.hobbyking.com/hobbyking/store/uh_viewItem.asp?idProduct=11784 1

* – как сломался первый ресивер – описано ранее, второй сломался от короткого замыкания (сам виноват), купил еще 3, на всякий случай, итого – 5шт.
** – два модуля заказывались в разных магазинах, в разное время, о первом читайте далее, второй пока еще в пути.

Плюсами такой конфигурации я считаю:

  • возможность использовать гироскоп от WLtoys V949;
  • возможность использовать светодиоды, конденсаторы, различные разъемы, MOSFET-ы и диоды шоттки от WLtoys V949;
  • наличие аккумулятора (и даже зарядного устройства) в комплекте WLtoys V949;
  • возможность питания гироскопа непосредственно от Arduino (Arduino на 3.3v выбрана не случайно).

В качестве программной платформы я решил использовать MultiWii 2.0. В конечном итоге, схема аппарата имеет следующий вид:

image

Схема выполнена в DipTrace 2.7.

На мой скромный взгляд, тут все должно быть понято. Эта схема, практически полностью копирует оригинальную «Connecting Diagrams» с сайта MultiWii: www.multiwii.com/connecting-elements.
Интерес, возможно, вызовет разводка платы, вот ее 3D модель:

image

Хотя плата (да и проект в целом), наверное, не представляет собой ничего выдающегося, я решил поделиться ею со всеми желающими: github.com/geovas/DCwii. Плата изготовлена по технологии ЛУТ:

image

Но ведь должно было случиться чего-нибудь нехорошее, правда? Один из элементов, а именно GY-521 уже после сборки оказался сломанным!

Hate!

Я попросил продавца выслать мне новую платку взамен бракованной (предварительно оставив ему bad feedback). Согласились мы на том, что я исправлю feedback, а заодно закажу у него что-нибудь еще, при этом он докинет мне в посылку новую GY-521. Посылка пришло, но каково же было мое удивление, когда я не обнаружил в ней заветную деталь! Ну что же, еще один bad feedback (на этот раз по-настоящему гневный). Он предложил вернуть деньги и «удивился», что я так и не получил деталь. Я согласился, однако он потребовал, чтобы я сначала изменил свой отзыв. Я, конечно же, не согласился. Как ни удивительно сей гражданин Китая, быстро исчез с моего горизонта и больше мне не писал. Ну что же, и ему Господь судья!

А мы продолжаем, на момент поломки гироскопа аппарат выглядел так:

image

Единственная идея, которая меня посетила на тот момент, была использовать MPU-3050 из платы управления WLtoys V949. Сказано сделано:

  • Ножницами по металлу была вырезана часть платы с гироскопом.
  • Старый MPU-6050 был отключен.
  • Новый «модуль» был приклеен поверх старого и подпаян.

Выглядит отвратительно, но работает же! На фото ниже, модуль «франкенштейн» выделен красным:

image

На сегодняшний день я заказал новый MPU-6050, однако, он еще где-то в пути.

Прошивка коптера

Последним оплотом сопротивления, оказалась MultiWii. Я, конечно, сразу нашел Fork для 8MHz-версии Arduino Pro Mini, однако был удивлен, когда понял, что с моей конфигурацией работать он не будет. В итоге пришлось повозиться. Приведу ссылку на свой Fork MultiWii 2.0: github.com/geovas/multiwii-firmware/tree/master.

Основные особенности моей прошивки следующие:

  • работа с Arduino Pro Mini 8MHz 3.3v;
  • поддержка работы с двигателями постоянного тока (ДПТ);
  • ДПТ можно полностью остановить;
  • Возможность работы с гироскопом MPU-3050m.

После несчетного количества крашей (благо маленький коптер оказался достаточно прочным), мне удалось настроить аппарат. Настройку я осуществлял через MultiWii WinGui, которую, как и саму MultiWii пришлось допиливать под 8MHz контроллер, но это уже совсем другая история.

Предлагаю небольшое видео первого полета коптера, как наладится хорошая погода (ну или выпадет снег) попробую по запускать его на природе.

P.S.

  1. Проекты на GitHub будут постепенно развиваться, если вы тоже строите коптер на основе WLtoys V949 или аналогичного аппарата, буду рад выслушать ваши предложения и замечания, а также поделиться опытом!
  2. Друзья! Если вы найдете в моей статье какие-то ошибки или неточности, сразу сообщите мне об этом.
  3. Если вам не понравились «злобные ставки», не стесняйтесь — говорите. Их цель — показать «честный процесс постройки аппарата» со всеми трудностями с которыми мне пришлось столкнуться и важную заповедь подобных проектов — смирение, ибо без него не было бы и статьи. Если подобным врезкам не место на хабре, то так тому и быть! Спасибо за понимание.

Автор: geovas333

Источник


* - обязательные к заполнению поля


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js