Планер беспилотник своими руками

Самодельный летающий дрон с камерой, который следует за вами на автопилоте (на основе Arduino)


В наши дни дроны — это очень популярные игрушки. На рынке можно найти профессиональные летающие дроны и дроны для любителей. У мастера, автора данной статьи, есть четыре беспилотника (квадрокоптеры и гекскоптеры), потому что он любит все, что летает, но 200-й полет не так интересен и становится скучно, поэтому он решил создать свой собственный дрон с некоторыми дополнительными возможностями. Мастер любит программировать на Arduino и проектировать схемы и гаджеты, поэтому он начал его строить. В самоделке использован контроллер полета MultiWii, основанный на чипе ATMega328, который также используется в Arduino UNO, поэтому программирование довольно простое. Этот беспилотник может быть подключен к смартфону на Android, который отправляет свои данные GPS на беспилотник, который сравнивает эти данные с его собственным сигналом GPS, а затем начинает следовать за телефоном. Поэтому, если двигаться по улице, дрон будет следует за вами. Конечно, есть много недостатков, однако дрон следит за телефоном, снимает видео, а также имеет ультразвуковой датчик расстояния, чтобы избежать препятствий в воздухе. Это особенности самодельного беспилотника.

Шаг 1: Основные свойства

Дрон работает почти полностью автоматически, вам не нужно управлять им, потому что он следует за вашим телефоном, который обычно находится всегда с вами, ультразвуковой датчик помогает обходить деревья, здания и другие препятствия, а GPS выдает очень точные данные о местоположении, но давайте посмотрим, что мы имеем в итоге:

— Аккумулятор 1000 мАч, хватает на 16-18 минут непрерывного полета;
— ультразвуковой датчик, чтобы избежать препятствий в воздухе;
— Модуль Bluetooth для получения данных с телефона;
— Микроконтроллер на основе Arduino;
— встроенный гироскоп;
— регулируемая максимальная высота (5 м);
— при низком заряде батареи, дрон автоматически падает на телефон; (желательно держать телефон в руках)
— затраты на постройку дрона около 100 долларов;
— можно запрограммировать на что угодно;
— с помощью GPS можно отправить беспилотник по любым координатам;
— дизайн в стиле квадрокоптера;
— оборудован 2-мегапиксельной видеокамерой 720p HQ;
— весит 109 г;





— Паяльник;
— Клей-пистолет;
— резец;
— Кусачки;
— Супер клей;
— Двухсторонняя клейкая лента;
— Резинки;

— MultiWii 32kB Flight Conroller;
— Модуль последовательного GPS;
— Серийный I2C конвертер;
— Модуль Bluetooth;
— Ультразвуковой датчик;
— Кусок жесткой пластмассы;
— Соломинки из кафе;
— зубчатая передача;
— Двигатели;
— Пропеллеры;
— Винты;
— L293D Motor Driver (это был неудачный выбор драйвера, будет исправлено во второй версии);
— 1000 мАч литий-ионный аккумулятор;

Шаг 3: Сборка пропеллеров





Мастер купил эти пропеллеры с моторами на Алиэкспресс, они являются запасными частями для дрона Syma S5X, но они оказались полезными и для данной самоделки.

Читайте также:  Мебель для детского домика своими руками

Шаг 4: Принципиальная схема

Всегда смотрите на схему во время работы и будьте осторожны со связями.

Шаг 5: Пайка двигателей к драйверу управления







Теперь вам нужно спаять все кабели от двигателей до ИС драйвера двигателя L293D. Посмотрите на картинки, они говорят гораздо больше. Вы должны подключить черный и синий провода к заземлению и положительные провода к выходам 1-4. L293D может управлять этими двигателями, но мастер рекомендует использовать силовые транзисторы, потому что этот чип не может работать со всеми четырьмя двигателями при высокой мощности (более 2 А).






Пожалуйста, обратите внимание на вторую картинку, на которой показано, как оборудовать пропеллеры. Используйте крепкие трубочки-соломинки из кафе и кусок пластмассы для сборки рамы. Используйте немного горячего клея и супер клея для всех четырех винтов, затем проверьте соединения. Очень важно, чтобы пропеллеры находились на одинаковом расстоянии друг от друга.

Шаг 7: Добавление проводов к драйверу L293D




Припаяйте провода к оставшимся контактам микросхемы. Это поможет подключить контакты Arduino к входам / выходам. Теперь пришло время построить схему.



Все модули включены в комплект контроллера полета, который мастер заказывал заранее, так что просто нужно соединить их вместе. Bluetooth идет к последовательному порту, сначала GPS в преобразователе I2C, затем в порту I2C. Теперь данную схему можно установить на свой дрон.

Шаг 9: Крепление электрической цепи к раме







Используйте двустороннюю ленту и сначала добавьте GPS. Эта губчатая лента удерживает все на месте, поэтому приклейте каждый модуль один за другим на пластиковую деталь. По окончанию следует подключить контакты привода двигателей к MultiWii.

Шаг 10: Соединение двух цепей





Входные контакты поступают на D3, D9, D10, D11, остальные должны быть подключены к контактам VCC + и GND.





Мастер использовал несколько резиновых лент, чтобы прикрепить батарею к дрону. Держится довольно крепко.

Шаг 12: Ультразвуковой датчик





Датчик гидролокатора закреплен на дроне резиновой лентой и подключен к контактам D7 и D6 контроллера MultiWii.

Шаг 13: Программирование чипа



Вы должны использовать модуль Serial FTDI для программирования чипа. В комплект чипа входит модуль программатора.

Шаг 14: Программное обеспечение




Мастер не знает, загружено ли программное обеспечение на чип или нет, но здесь он объясняет, что делать. Сначала загрузите официальную библиотеку MultiWii на свой компьютер. Извлеките файл .zip, затем откройте файл MultiWii.ino. Выберите «Arduino / Genuino UNO» и загрузите его на свой чип. Теперь ваш микроконтроллер имеет все предустановленные функции. Гироскоп, свет, Bluetooth и даже маленький ЖК-дисплей (который не используется в этом проекте) работает с загруженным кодом. Но этот код можно использовать только для проверки работоспособности модулей. Попробуйте наклонить дрон, и вы увидите, что моторы будут вращаться из-за гиросенсора. Нам следует изменить код контроллера, чтобы дрон следовал за телефоном.

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

Читайте также:  Ловушка для комаров домашняя своими руками

GitHub — ссылка на программное обеспечение

Шаг 15: Изменение кода

Мастеру пришлось изменить код датчиков и контроллера, который давал подсказки для ATMega328, но теперь модуль Bluetooth выдает три GPS-координаты, и в зависимости от них движется дрон.

Шаг 16: Приложение для телефона

Мастер использовал приложение SensoDuino, которое можно загрузить из плей маркет гугла. Подключитесь к дрону через Bluetooth и включите GPS TX и регистрацию данных. После этого приложение телефона готово.



В качестве камеры использована дешевая китайская камера. Эта камера использовалась во многих проектах мастера и всегда показывала отличные результаты. Весит она всего 15 г и может снимать хорошее видео.

Шаг 18: Тестирование .



Расстояние соединения составило около 8 м, что более чем достаточно для такого беспилотника, как этот.

Источник

Собираем свой маленький беспилотник

Будем делать вот такой, маленький, как на картинке, беспилотный автомобиль.

Вот так выглядят маленькие беспилотники

Как я дошёл до этого

Мне всегда были интересны темы беспилотников и роботов, но руки до такого не доходили — боялся слишком большого объёма навыков, которые потребуются для этого.

В марте-апреле 2020го года, когда сидение дома уже порядком поднадоело, понял, что я созрел для беспилотников. И, вдохновлённый статьёй Беслана, принялся изучать вопрос и заказывать необходимые комплектующие на Али и в других магазинах.

Приезжали заказы в разное время, поэтому, из всего, что попадало под руку, собирал первые версии беспилотника (тогда ещё ни разу не беспилотного).

Первые шаги

Начиналось всё с черепахоподобного поделия из картона, котому требовался сетевой провод. Провода от двух веб камер были перетянуты кабельными стяжками. А машинка не была соединена с компьютером, и я управлял ей с радиопульта от RC машинки.

В качестве мозга для беспилотника я выбрал Nvidia Jetson Nano Developer kit, а в качестве тачки — Remo Hobby S-Max — это то немногое, что осталось в беспилотнике по сей день.

Рабочий прототип из картона и макетных плат

Затем машинка стала обрастать новыми компонентами: появились беспроводная сеть, лидар, IMU и остальные.

В процессе добавления я осваивал кучу нового:

Учился работать с разными устройствами

Осваивал нейронные сети и машинное обучение

Узнавал про алгоритмы, специфичные для роботов и беспилотников

Паял, резал, клеил и всячески работал руками и головой

Когда картон и макетные платы стали слишком замедлять процесс — приобрёл недорогой, но большой 3D принтер, а провода спаял с нужными разъёмами.

Сперва спроектировал всё из картона и соплей (но с котиком)

Почти рабочий прототип

А потом уже сделал корпус из пластика. В процессе пришлось освоить проектирование в CAD (использовал FreeCAD) и разобраться с настройкой принтера.

Потом писал алгоритмы, исправлял баги и добавлял датчики.

Что получилось

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

камера (ночного видения), чтобы смотреть и распознавать объекты

Читайте также:  Обои своими руками цвет

однолучевой лидар и лазерные датчики расстояния, чтобы строить карту стен и других препятствий

управление машинкой, чтобы ехать, куда хочется

колёсная одометрия и IMU, чтобы понимать куда вы заехали

Уже есть несколько готовых скриптов (Jupyter notebook’ов):

чтобы просто поуправлять машинкой с джойстика, глядя при этом на картинку с камеры и на вид сверху, построенный по лидару

беспилотный режим: машинка сама исследует помещение, строит его карту и ищет жертву живность (людей, кошек и собак), а, найдя такой объект, — следует за ним

Я потратил много времени и оттоптал много разных граблей и велосипедов, и теперь хочется поделиться своим опытом и наработками с сообществом.

Что требуется (список компонентов)

RC машинка Remo Hobby Smax 1:16 RH1635

Контроллер мотора, у меня такой: SURPASS HOBBY KK 35A ESC Waterproof Electric Speed Controller for 1/16 RC Car Brushless Motor Power system

Одноплатный компьютер Nvidia Jetson Nano Developer Kit

Микро SD карта на 64 GB (возможно, влезет и на 32)

wi-fi карточка типа такой и пара антен с IPEX разъёмом (USB свистки с wi-fi показали себя очень плохо)

Два датчика Холла типа KY-003 для Arduino

магнит примерно такого размера: 20x3x2 мм

камера, работающая с Jetson Nano; у меня IMX219 8MP Infrared Night Vision 160 Degree FOV + 2 Infrared LED Lights

система питания для jetson’а типа T208 или T200 на 18650 акумуляторах и сами аккумуляторы или повербанк (но тут нужно брать с хорошим током и нужно будет stl модельку для корпуса под него исправить)

однолучевой лидар типа YDLIDAR X2L

IMU типа Bosh BNO055

ШИМ плата PCA9685 для соединения контроллера двигателя и Jetson’а

Конвертер логических уровней для преобразования из 5V в 3.3V и обратно

короткий USB — USB-C дата кабель (чтобы заменить слишком длинный кабель от лидара)

(опционально) два датчика расстояния; у меня VL53L0X (6 pin)

доступ к 3D принтеру

провода, коннекторы, стяжки, инструменты и т.д.

руки, которые смогут всё это соединить

Более подробно и со ссылками есть на github проекта.

Как собрать

Сделал туториал по сборке в виде нескольких видео.

Там же видео проездов и обсуждение задач и проблем.

Часть 1. Рассказываю, что и зачем делаю, соединяю основные компоненты.

Часть 2. Паяю, соединяю компоненты проводами.

Часть 3. Гоняю, рассказываю про софт и алгоритмы.

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

Ссылки

Код, STL модели для печати, описание и ссылки есть на github проекта.

Видео есть на моём канале, там же будут выходить новые серии.

Обсуждение этого и других интересных проектов роботов и беспилотников в telegram канале.

Что дальше

Буду дорабатывать алгоритмы:

добавлю лидарную одометрию (ранее не успел допилить NDT, а теперь можно будет доделать)

добавлю салки/прятки с кошкой

другие алгоритмы исследования и детекции

Добавлю манипулятор, чтобы можно было собирать с пола игрушки в ящик.

Попробую другие датчики для колёсной одметрии: магнитный датчик угла.

Источник

Оцените статью
Своими руками