- Как собрать и настроить квадрокоптер на базе Ардуино (Arduino)?
- Необходимые детали и узлы
- Пошаговая инструкция по сборке
- Как напечатать раму и крепеж
- Как настроить акселерометр гироскопа
- Схема подключения к Arduino
- Скетч для Arduino
- Программа для Arduino
- Подключение к контроллеру
- Как еще можно модернизировать квадрик
- Как новичку собрать квадрокоптер ZMR250 / QAV250 с Aliexpress (1 часть)
- Пролог
- Список к покупке:
- Сборка
- Пайка
- Крепим плату питания, регуляторы оборотов
- Крепим полетный контроллер, приемник
- Соединяем все проводами
- Прикручиваем верхнюю часть рамы, смотрим, что получилось
- Итого:
- О падениях и, что делать пока ждем посылку
- Обещанные ссылки на статьи
Как собрать и настроить квадрокоптер на базе Ардуино (Arduino)?
Здравствуйте, наши уважаемые читатели. В этой статье мы поговорим про то, как собрать квадрокоптер на Ардуино. Это не самая простая, хотя и очень увлекательная задача, результатом решения которой станет появление небольшого беспилотника, спроектированного, собранного, и настроенного собственными руками. Сразу оговоримся, что речь идет о максимально дешевом дроне из наиболее доступных по цене комплектующих.
Необходимые детали и узлы
Прежде чем приступить к сборке квадрокоптера своими руками, необходимо обзавестись всеми необходимыми деталями. Мозгом нашей самоделки станет полетный контроллер Arduino Uno. Его возможностей более чем достаточно для того, чтобы управлять беспилотником.
Помимо микроконтроллера, нам понадобятся:
- Аккумулятор (лучше несколько) на 3.7В
- Плата MPU-6050 (на ней установлены гироскоп и акселерометр)
- Транзистор ULN2003A
- Коллекторные двигатели с полым ротором 0820
- Провода
Необходимо сделать несколько замечаний. Так как мы собираем дешевый самодельный дрон, то наш выбор пал на коллекторные движки с полым ротором (так называемые coreless motors). Они далеко не так надежны, как бесколлекторные двигатели, но зато гораздо дешевле стоят. Кроме того, можно обойтись без дополнительных контроллеров скорости.
Зато невозможно обойтись без гироскопа и акселерометра. Гироскоп необходим для того, чтобы квадрокоптер мог удерживать заданное направление движения, тогда как акселерометр используется для измерения ускорения. Без этих устройств управлять коптером было бы гораздо сложнее (если вообще возможно), так как именно они предоставляют данные для сигнала, регулирующего скорость вращения винтов.
Мы не указали в списке необходимых деталей раму. Ее можно приобрести, а можно распечатать на 3D принтере каркас, лучи и крепления для двигателей. Второй вариант нам кажется более предпочтительным, тем более, что в интернете можно без труда найти проекты квадрокоптера.
Распечатанная на принтере рама окажется не только легкой, но и прочной. Но если доступа к 3D принтеру нет, раму можно заказать.
Пошаговая инструкция по сборке
Как напечатать раму и крепеж
3D принтеры можно найти во многих университетах, лабораториях, коворкингах. Зачастую доступ к ним бесплатный. Модели для печати можно создать самостоятельно, используя для этого, например, Solidworks. А можно воспользоваться уже готовыми решениями, при необходимости изменив параметры.
Как настроить акселерометр гироскопа
Для настройки акселерометра-гироскопа (I2C)мы рекомендуем использовать следующую библиотеку. Ни в коем случае не подключайте плату к напряжению 5В, иначе вы моментально ее испортите.
Вкратце расскажем, чем интересна плата I2C с датчиками. Она заметно отличается от обычной платы акселерометра с тремя аналоговыми выходами для осей X, Y, Z. I2C представляет собой интерфейсную шину, обеспечивающую передачу значительных объемов данных через логические цифровые импульсы.
Аналоговых выходов на плате не много, и в этом большой плюс I2C, ведь в противном случае нам бы пришлось использовать все порты на Arduino, чтобы получить данные от гироскопа и акселерометра.
Схема подключения к Arduino
Прежде чем плата I2C сможет обмениваться данными с Arduino, ее необходимо подключить к контроллеру.
Схема следующая:
- VDD -3.3v
- GND — GND
- INT- digital 2
- SCL — A5
- SDA — A4
- VIO – GND
Еще раз обращаем внимание на то, что для питания необходимо использовать необходимо именно 3.3В. Подключение платы к 5В скорее всего приведет к ее поломке (спасти может только регулятор напряжения, но он далеко не всегда присутствует на плате).
Если на плате присутствует контакт AD0, он подключается к земле (GND).
В библиотеке, на которую мы дали ссылку выше, используются перечисленные каналы.
Скетч для Arduino
Преимуществом выбранного для сборки дрона микроконтроллера является относительная простота работы с ним. Вам не придется читать специальные книги, документы и техническую документацию. Достаточно знать основы программирования Arduino, которые, как вы сейчас убедитесь, не так сложны.
Подсоединив плату MPU-6050 к контроллеру, включите его и перейдите по ссылке.
Нас интересует скетч I2C scanner code, вернее, его код.
Скопируйте программный код, вставьте в пустой скетч, после чего запустите его. Убедитесь, что подключение установлено к 9600 (для этого запустите Arduino IDE через Tools-Serial Monitor). Должно появиться устройство I2C с адресом 0×68 либо 0×69. Запишите или запомните адрес. Если же адрес не присвоился, скорее всего проблема в подключении к электронике Arduino.
Затем нам понадобится скетч, умеющий обрабатывать данные гироскопа и акселерометра. В интернете есть множество вариантов, и найти подходящий не проблема. Скорее всего, он будет в заархивированном виде. Разархивируйте скачанный архив, отройте Arduino IDE и добавьте библиотеку (sketch-import library-add library). Нам понадобятся папки MPU6050 и I2Cdev.
Открываем MPU6050_DMP6 и внимательно просматриваем код. Никаких сложных действий производить не придется, но если был присвоен адрес 0×60, то необходимо расскоментировать строку в верхней части (ее можно найти за #includes) и написать верный адрес. Изначально таv указан 0×68.
Загружаем программу, открываем окно монитора через 115200 и просто следуем инструкции. Через несколько мгновений вы получите данные с гироскопа/акселерометра. Затем следует провести калибровку датчиков.
Установите плату на ровную поверхность и запустите скетч MPU6050_calibration.ino (легко ищется в интернете). Просмотрите код, по умолчанию в нем указан адрес 0×68. После запуска программы у вас появится информация по отклонениям (offset). Запишите ее, она нам понадобится в скетче MPU6050_DMP6.
Все, вы получили функционирующие гироскоп и акселерометр.
Программа для Arduino
По ссылке вы сможете скачать программу для Arduino, с помощью которой коптер будет стабилизирован в полете и сможет зависнуть над землей. В дополнение к программе обязательно скачайте библиотеку с Arduino PID по ссылке.
Программа поможет вам управлять дроном. Алгоритм, используемый для стабилизации, основан на двух PID-контроллерах. Один предназначен для крена, другой – для тангажа.
Разница в скоростях вращения пары винтов 1 и 2 равна разнице в скоростях пары винтов 3 и 4. Тоже самое справедливо и для пар 1, 3 и 2, 4. PID-регулятор производит изменение разницы в скорости, после чего крен и тангаж становятся равными нулю.
Обратите внимание на цифровые пины Arduino для моторов и не забудьте изменить скетч.
Подключение к контроллеру
Для того, чтобы управлять коптером, нам необходимо получить контроль над моторами, подключив их к Arduino. Контроллер дает на выходе лишь небольшое напряжение и силу тока, поэтому подключение двигателей напрямую лишено смысла. Вместо этого можно поставить несколько транзисторов, позволяющих увеличить напряжение.
Для составления схемы нам необходимы:
Все это собирается на монтажной плате и соединяется коннекторами.
На первом этапе следует подсоединить 4 ШИМ выхода (обозначены
) к транзистору. Затем подсоедините коннекторы к движкам, подключенным к питанию. В нашем случае мы используем аккумулятор на 5В, но подойдет и аккумулятор на 3-5В.
Транзисторы должны быть заземлены, а земля на плате Arduino должна быть подключена к земле аккумулятора. Двигатели должны вращаться в правильном направлении, то есть работать на подъем коптера, а не на его крен.
Переключив контакт двигателя с напряжения 5В на транзистор, вы увидите, что ротор изменит направление вращения. Единожды совершив настройку, больше возвращаться к изменению направления вращения ротора не придется. Теперь нас интересует скорость.
Запустив и проверив акселерометр, мы устанавливаем нашу схему на ProtoBoard. За ее неимением, можно использовать и обычную монтажную плату, предварительно напаяв на ней рельсы для контроллера.
Перед тем, как припаивать акселерометр к плате, необходимо выполнить его калибровку на горизонтальной поверхности. Это поможет добиться более точной работы сенсора в будущем.
Как еще можно модернизировать квадрик
Узким местом коптера являются его коллекторные движки. Если поискать, можно найти чуть более крупные и более мощные моторы, чем предложены в нашей статье, но значительного выигрыша в характеристиках не произойдет.
Впрочем, у нас была цель собрать недорогой квадрокоптер своими руками, и именно поэтому использовались дешевые моторы. Бесколлекторные двигатели заметно дороже, но зато они дадут вам заметно большую мощность и надежность. К ним придется докупить еще и контроллеры скорости, но это действительно эффективная модернизация.
Выбор платы Arduino Uno обусловлен тем, что с нее можно довольно легко снять чип и поставить его на ProtoBoard. Это позволяет уменьшить вес дрона на 30 грамм, но придется включить в схему дополнительные конденсаторы. Подойдет и плата Arduino Pro Mini.
Что касается программы Arduino, то ее можно сравнительно легко изменить и дополнить новыми функциями. Главное, что с ее помощью дрон способен в автоматическом режиме стабилизовать свое положение.
На квадрокоптер могут быть установлены дополнительные модули, например, плата приемника, что позволит организовать дистанционное управление дроном.
На этом мы завершаем статью о создании беспилотника на Arduino. Подписывайтесь на наши обзоры и делитесь полезными материалами в социальных сетях. До новых встреч.
Источник
Как новичку собрать квадрокоптер ZMR250 / QAV250 с Aliexpress (1 часть)
Пролог
Сейчас в интернете можно найти несколько полезных туториалов (все ссылки в конце статьи) на тему того, как самому собрать дрон на 250 раме. Но, собирая свой первый квадрик по этим статьям, я столкнулся с проблемами, которые не были никак освещены. А именно: я не нашел полный лист деталей и дополнительного оборудования, который мне нужен, цену полной сборки, а также некоторые практические и теоретические вопросы. Именно поэтому было решено сделать данную статью в виде обобщения моего личного опыта и опыта других людей, дабы помочь новичкам (таким как я) как можно продуктивнее построить свой первый дрон.
1 часть будет посвящена подбору деталей, оборудования, сборке и подключению всех узлов коптера. Программная сторона будет рассмотрена во 2 части.
Сразу отчет о том, что у меня получилось:
На видео заметно, что во время полета у дрона пропали ножки, но об этом позже
Список часто задаваемых вопросов:
В: Не проще ли купить готовый квадрик и летать?
О: Проще, только если вы не собираетесь продолжать улучшать свой дрон и строить другие. То есть хотите просто полетать, а не ломать себе голову и тратить дорогое время. Магазинный дрон в любом случае легче в освоении и проще в эксплуатации. В качестве альтернативы могу предложить MJX Bugs 3. Обзор на него здесь. Цена от
В: Нужно ли паять?
О: Да, нужно!
В: Собрать квадрик самому дешевле, чем купить в магазине?
О: Нет! Считаю это заблуждением. Если вы новичок, а раз вы читаете эту статью, скорее всего так оно и есть, то кроме деталей для квадрокоптера вам понадобится еще уйма всего. Прилагаю список ниже.
Список к покупке:
Для того, чтобы не заморачиваться с подбором основных компонентов, вижу отличную альтернативу в покупке готового набора. Не теряя времени на подбор деталей, вы получите все, что вам нужно.
Все, что вы получите в комплекте. На картинке не показаны соединительные провода от контроллера к передатчику
4000 руб.
1.1 Рама
1.2 Бесколлекторные моторы Marspower MX1806 2280KV на 12 А
1.3 Регуляторы Emax Simon K Series на 12A
1.4 Распределительная плата и провода питания
1.5 Полетный контроллер CC3D (мой выбор NAZE 32 FULL. Его я покупал отдельно, так как CC3D из комплекта сгорел. Разницы в настройке CC3D и NAZE 32 FULL нет. Вот интересная статья о полетных контроллерах).
1.6 Соединительные провода от контроллера к передатчику
1.7 4 пропеллера (2 левых, 2 правых)
1.8 Винты и шестигранники. Не знаю как у остальных, а мне положили аж 4 одинаковых шестигранника для винтиков, которыми крепятся моторы, но ни одного для закручивания винтов на раме
Приемник и передатчик Turnigy 9X
2) Пульт радиоуправления Turnigy 9X 9Ch + приемник (все в одном коплекте)
В: Почему именно эта модель?
О: Во-первых, 9 независимых каналов, то есть огромный запас возможностей на будущее. Во-вторых, огромное количество информации по настройке и прошивке. Очень популярная модель среди моделистов. Но, если вы настроены ОЧЕНЬ серьезно, то советую Turnigy 9XR или 9XR-Pro.
В: Можно ли взять модель подешевле?
О: Да, это полностью ваш выбор. Не советую брать аппаратуру меньше, чем с 6 каналами, так как кроме управления необходимо переключать полетные режимы. Кстати, есть готовые наборы уже с аппаратурой, например, такой.
3) Как минимум 2 дополнительных комплекта пропеллеров (в комплекте 4 шт: 2 левых, 2 правых)
Пропеллеры действительно расходный материал при первых полетах, так что лучше взять с запасом. Как ни странно, но с Китая заказывать дороже, да и ждать долго. Максимальный диаметр 5 дюймов. Я купил здесь.
Аккумуляторы с Aliexpress. Оба вышли из строя. У левого отказала вторая банка, у правого — третья.
Слева: аккумулятор для пульта радиоуправления с JR разъемом (черная головка). Справа: аккумулятор для питания квадрокоптера
4) Как минимум 1 аккумулятор для питания квадрокоптера, а лучше 2
В: Зачем два? Тебе одного мало?
О: Да, мало! Аккумулятора хватает примерно на 10-12 мин полета, а заряжается он 1-2 ч, поэтому, чтобы, войдя в кураж, не идти подзаряжаться, а летать дальше, советую взять пару. Обратите внимание на маркировку аккумуляторов, прочитать про это можно здесь.
Крайне не советую приобретать аккумуляторы из Китая: оба аккумулятора, заказанные мной, вышли из строя, то есть перестали выдавать требуемое напряжение (отказало по одной банке). Да, возможно, дело случая, но с другими аккумуляторами таких проблем не было, да и экономия в 150 руб. не стоит риска.
Turnigy 9X c аккумулятором. Сидит очень плотно, крышка закрывается
5) Аккумулятор для пульта радиоуправления.
1199 руб.
В: Я же уже купил два. Нужен еще один?
О: Так точно. Для передатчика нужен специальный аккумулятор с низким током разряда.
В стандартном наборе пульт идет с креплением для батареек, что не приемлемо при частых вылетах. Объясняю: напряжение батарейки теряют быстро, с зарядкой проблема, а стоимость велика. Также стоит обратить внимание на наличие у аккумулятора JR разъема. В таком случае вам ничего не нужно будет перепаивать. Кстати, если вы собрались покупать другой аккумулятор (не такой как у меня), не поленитесь взять пульт с собой, чтобы примерить его на месте. Мой влезает в стандартный отсек с трудом, но крышка все-таки закрывается.
6) Зарядное устройство для аккумуляторов iMAX B6
iMAX B6 позволяет зарядить банки аккумулятора равномерно при помощи балансировочного разъема. Самая популярная зарядка.
В: Как этим пользоваться? Какие режимы выбрать?
О: Ответы здесь
7) Переходник с XT-60 на T-коннектор
Если берете такие же аккумуляторы для питания квадрокоптера, как и у меня, вам необходим переходник для зарядки, так как в стандартном наборе iMAX B6 его нет.
8) Индикатор напряжения для 1-8 баночного Li-Po аккумулятора
Данная штука покажет напряжение по банкам, а также уведомит вас, когда заряд опустится ниже заданного вами уровня, дабы коптер не упал с высоты и батарея жила долго. Видео о том, как пользоваться.
9) Застежка Tarrot 300 мм для крепления аккумулятора (2 шт. в комплекте). Эластичный ремешок 22*200мм для крепления камеры.
Застежки и ремешки сугубо личное дело. То, каким способом будет закреплен аккумулятор и камера, ограничивает лишь ваша фантазия. Обратите внимание на размеры ремешков.
4 винта на 16 мм вместо 8 мм
300 руб.
10.1 20 шайбочек под винты на раме и винты, удерживающие моторы. Дело в том, что шляпки у винтов маленькие и при натяге они портят раму
10.2 4 винта на 16 мм вместо 8 мм. С помощью таких винтов удалось закрепить еще и ножки, распечатанные на 3D принтере (видео с печати). Стандартные ножки сломались после одного жесткого приземления, нашел альтернативу в напечатанных. Вообще, высокие ножки полезная вещь при взлете с земли или мокрой поверхности
10.3 Термоусадка. Пригодится, когда будете прятать регуляторы
10.4 Пластиковые хомуты 10 см (9 шт.) Для фиксации регуляторов
10.5 Двухсторонний скотч, изолента
10.6 Винт и гайка под камеру. Ситуция подобная ремешкам — полностью ваша фантазия
10.7 Резинки. Пригодятся для фиксации приемника, контроллера, распределительной платы и регуляторов
Защита для пропеллеров, напечатанная на 3D принтере
10.8 Дополнительно: защита для пропеллеров. Печатал ее тоже на 3D принтере. Пригодилась только один раз, когда делал пробный взлет в комнате. После того, как врезался в шкаф, защита разлетелась. Больше ее не использую. Отверстия на защите, кстати, не совпадают с отверстиями на раме. Необходимо либо проделывать самому, либо дорабатывать на компьютере модель.
Всю мелочовку покупал тут1 и тут2.
10) Паяльник само-собой.
11878 — 13217 руб.
Если вы удивлены списком, то стоит заметить, что большая часть всего, что вы купите, послужит вам еще ни один раз.
Также хочу отметить, что цены постоянно меняются, поэтому гарантировать минимальную стоимость по ссылкам я не могу. Уверен, что можно найти дешевле. Я лишь поделился источниками один в один совпадающими с моими.
Сборка
Есть вероятность, что комплект деталей вам придет без инструкции по сборке рамы. Так было у меня. Если так и произошло, то собираем по картинке или видео. На данной стадии не стоит затягивать все винты в «боевой режим», возможно, придется разобрать раму еще не раз. Верхнюю часть на данном этапе прикручивать вообще не стоит, без нее работать с внутренностями коптера удобнее. Также не стоит забывать про шайбочки, о которых я писал выше.
Не забываем про шайбы. У вас конечно же белой пластины нет — это те самые остатки от 3D напечатанных ножек
Очень простая операция, если помнить про направления вращения двигателей. Определитесь, где у вас будет перед. Моторы с черной гайкой, вращающиеся по часовой стрелке, ставим на переднее левое и заднее правое места.
Обратите внимание на расположение двигателей
Крепление двигателей
Пайка
Пайка распределительной платы
Итак, вы уже примерились и решили, как у вас все будет установлено. Время паять. При пайке платы самое главное соблюдать полярность! На какие места паять провода не важно, все зависит от того, как вы собираетесь установить плату.
Припаиваем регуляторы и силовые провода. Соблюдаем полярность. (Мой вариант)
Припаиваем регуляторы и силовые провода. Соблюдаем полярность. (Другой вариант)
Припаиваем регуляторы к моторам
Первым делом снимаем с регуляторов стандартную красную теромоусадку. Для того, чтобы моторы вращались в нужную нам сторону, регуляторы к моторам следует припаять вот так:
Подключение регуляторов к моторам
Думаю, что у вас возник вопрос: куда деть длинные провода от регуляторов. Их можно отпаять и убрать совсем, а можно обрезать под нужную длину. Второй способ для начинающих предпочтительнее, так как меньше шансов перегреть регулятор при пайке.
Полностью отпаянные штатные провода регулятора. Так делать не советую, лучше просто укоротить провода (не обращайте внимание на расположение проводов, картинка взята, чтобы показать другое. Правильная схема сверху)
Припаиваем T-коннектор. Полярность важна!
Крепим плату питания, регуляторы оборотов
Время крепить. Помните, что рама коптера проводит ток, поэтому плата должна быть изолирована от нее. Я посадил ее на два слоя двухстороннего скотча, с одного края притянул хомутом, а после закрепил резинкой.
Крепим плату. Два слоя двухстороннего скотча + хомут + резинка
Регуляторы оборотов я спрятал в термоусадку, посадил на двухсторонний скотч, затянул хомутами и для уверенности затянул резинкой. Выглядит более чем надежно
Крепим регуляторы. Термоусадка + двухсторонний скотч + хомуты + резинка
Крепим полетный контроллер, приемник
В дело опять вступают двухсторонний скотч и резинки. Опять же, чем жестче вы закрепит, тем лучше.
У меня это сделано следующим образом:
Крепим полетный контроллер (1). Трава осталась после краша
Крепим полетный контроллер (2)
Крепим приемник. Торцом он тоже сидит на двухстороннем скотче
Соединяем все проводами
Регуляторы к полетному контроллеру
От каждого из регуляторов у нас идет по 3 провода. Сделать нужно следующее: на трех из четырех регуляторах нужно вытащить из разъема красный провод. Подсоединять провода к контроллеру нужно в определенном порядке, об этом будет рассказано в следующей части.
На трех из четырех регуляторах нужно вытащить из разъема красный провод
Приемник к полетному контроллеру
А вот здесь порядок подсоединения проводов к каждому каналу не важен. Нужно лишь правильно подключить провод питания — белый провод ближе к стороне с наклейкой.
Соединяем приемник с полетным контроллером. Провод питания должен быть расположен белым ближе к стороне с наклейкой
Прикручиваем верхнюю часть рамы, смотрим, что получилось
Я также добавил «крепление для камеры».
«Крепление для камеры»
Итого:
О падениях и, что делать пока ждем посылку
Будьте готовы к тому, что сначала будут падения. А это: сломанные пропеллеры, ножки и камера в моем случае.
Сломанные ножки
Сломанная камера. Кстати, советую дополнительно заклеивать скотчем разъем с флешкой, есть шанс потери при падении
А вот видео с моего самого первого полета:
Чтобы такого не происходило, советую прикупить маленький квадрик для комнатных полетов. За время ожидания скилл управления поднимется очень сильно. Мой выбор пал на Syma X12S. Цена вопроса
Обещанные ссылки на статьи
Рад, если кому-то помог! Также открыт для ваших замечаний и комментариев.
Источник