» Программируем квадрокоптер на Arduino (часть 1)

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

Квадрокоптер – отличный вариант проведения свободного времени. Можно купить Arduino дрон в ближайшем магазине или заказать в Китае, но есть альтернатива в виде сборки его своими руками. Да, это вполне реально сделать даже при отсутствии особых навыков и большой денежной суммы, ведь простейшие модели обойдутся вам в сумму 70-80 долларов США. Подобная сумма вполне подъемна даже для бедного студента, который сможет собрать отличный дрон своими руками.

https://youtube.com/watch?v=cf9g8jwUC3Y%3Ffeature%3Doembed

Содержание
  1. Немного теории
  2. Что нам понадобится?
  3. Как собрать программируемый квадрокоптер на Ардуино Уно своими руками?
  4. Шаг №2. Подключение Arduino
  5. Шаг №3. Скетч для Arduino
  6. Шаг №4. Установка программы для Arduino и подключение
  7. Шаг №5. Модификация дрона
  8. На что обратить внимание?
  9. Несколько советов новичкам
  10. Digitrode
  11. Новый игрок на рынке
  12. Безопасность
  13. Выбираем тип и размер квадрокоптера
  14. Другие проекты контроллеров для квадрокоптеров
  15. Относительно дешевый quadcopter на arduino с управлением от телефона, планшета, пк
  16. Подключение к контроллеру
  17. Программное обеспечение
  18. Сборка
  19. Создаем квадрокоптер на базе arduino
  20. Фишки новой модели
  21. Шаг №1. делаем корпус
  22. Необходимые узлы, детали и оборудование
  23. 3-D печать деталей квадрокоптера
  24. Настройка акселерометра-гироскопа (I2C)
  25. Что такое I2C?
  26. Схема подключения Arduino
  27. Подключение к Arduino
  28. Программа для Arduino
  29. Дальнейшая модернизация квадрокоптера на Arduino
  30. АРДУИНО-KIT

Немного теории

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

Перемещение дрона на Arduino и любом другом контролере осуществляется за счет изменения трех параметров:

  • тангаж;
  • крен;
  • рыскание.
Смотрите про коптеры:  Сделайте свою жизнь проще: установите Mi Home на свой телефон сегодня

Первый параметр определяет угол наклона вверх или вниз передней части квадрокоптера, позволяя выполнить снижение или подъем дрона. Крен определяет угол наклона, когда правая часть оказывает ниже или выше левой. Рыскание определяет угол поворота квадрокоптера Arduino вокруг вертикальной оси, проходящей через его центр тяжести, обеспечивая дрону поворот в горизонтальной плоскости на нужный угол.

Arduino – небольшая по габаритам плата (сравнима со спичечным коробком), имеющая собственный микропроцессор и память. На нем есть большое количество контактов для подключения компонентов, а возможность загрузки программы позволяет управлять ими по заданному определенному алгоритму.

» Программируем квадрокоптер на Arduino (часть 1)

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

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

Не потребует Arduino и наличия при сборке паяльника, так как вполне можно обойтись макетной доской и набором перемычек, что одновременно упрощает работу, позволяет быстро исправить какие-то недочеты и ошибки при сборке.

Что нам понадобится?

Перед началом работы нужно подготовить следующие комплектующие:

  • комплект проводов (лучше разноцветных для упрощения монтажа);
  • литиевые аккумуляторы (напряжение 3.7В);
  • транзистор ULN2003A Darlington Transistor (подойдут более мощные аналоги);
  • контролер Arduino Uno;

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

Как собрать программируемый квадрокоптер на Ардуино Уно своими руками?

Проектируем на SolidWorks и распечатываем на 3D-принтере корпус будущего дрона. В качестве прототипа можно взять одну из существующих моделей квадрокоптеров, а если есть навыки, то лучше доработать параметры корпуса за счет сот, которые снижают общий вес устройства. Правда, здесь важно не перестараться, так как излишне облегченный корпус будет легко сноситься ветром в сторону, потребовав соответствующей корректировки пилотом. После распечатки корпуса можно на него установить двигатели и припаять провода.

Обратим внимание, что желательно передние лучи или пропеллеры выполнить другим цветом.

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

» Программируем квадрокоптер на Arduino (часть 1)

Если у вас нет доступа к 3D-принтеру, то альтернативой станет покупка уже готовых лучей в одном из интернет-магазинов. Еще одним вариантом станет изготовление корпуса из подручных средств. Например, раму можно изготовить из куска фанеры, а для лучей, удерживающих двигатели, подойдут пластиковые трубы.

Шаг №2. Подключение Arduino

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

  • VDD-3.3V;
  • GND-GND;
  • INT-digital2;
  • SCL-A5;
  • SDA-A4;
  • VIO-GND.

» Программируем квадрокоптер на Arduino (часть 1)

Для питания платы MPU6050 Arduino допускается использование напряжения 3,3В, а если оно составит 5В, то произойдет выход из строя. На многих платах есть встроенный предохранитель, защищающий систему от повышенного напряжения, но рисковать мы не советуем. Также на плате может быть контакт AD0, который требуется подключать к земле. Для управления двигателями Arduino может понадобиться подача большего напряжения, которое можно повысить транзисторами.

Шаг №3. Скетч для Arduino

После подключения к Arduino платы MPU-6050 необходимо загрузить скетч I2C scanner code, куда вставляется код программы. Обратим внимание, что на этом этапе пригодятся хоть минимальные познания в программировании на Arduino, поэтому при отсутствии даже них стоит сделать небольшую паузу и разобраться с особенностями.

» Программируем квадрокоптер на Arduino (часть 1)

Теперь откройте серийный монитор Arduino IDE (он находится в разделе Tools на вкладке Serial Monitors) и убедиться в наличии подключенного 9600. Если все предыдущие этапы были выполнены верно, то будет обнаружено устройство I2C с присвоенным адресом 0х69 или 0х68, который нужно записать. Теперь можно загрузить один из скетчей, который будет постоянно обрабатывать информацию с акселерометра и гироскопа. В интернете подобных скетчей для Arduino достаточно много, поэтому выбирайте любой, но ориентируйтесь на отзывы пользователей. После скачивания подобного скетча проведите его разархивирование. Затем опять перейдите в Arduino IDE и зайдите по адресу sketch-import libraty-add library, куда нужно будет добавить папки с вашими скетчами.

Теперь обязательно откройте файл MPU6050_DMP6. Если у вас был присвоен адрес 0х69, то обязательно нужно расскоментировать строку после #includes, так как по умолчанию присваивается 0х68. На этом этапе уже можно получить первые значения с гироскопа и акселерометра. Для этого загрузите программу и откройте с 115200 окно серийного монитора, следуя дальнейшим инструкциям.

» Программируем квадрокоптер на Arduino (часть 1)

После сборки квадрокоптера на Arduino нужно будет откалибровать параметры акселерометра и гироскопа. Для этого достаточно найти ровную плоскую поверхность и поставить на нее плату. Теперь достаточно запустить скетч для проведения калибровки, после которой имеющиеся отклонения записываться и учитываются в скетче MPU6050_DMP6. Их достаточно прописать один раз и сохранить (в дальнейшем корректировка понадобится только после сбоя данных и не потребует много времени).

Шаг №4. Установка программы для Arduino и подключение

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

» Программируем квадрокоптер на Arduino (часть 1)

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

В интернете можно найти несколько программ Arduino, позволяющий стабилизировать дрон на постоянном уровне в воздухе и затем вести управление им. Стабилизация квадрокоптера осуществляется с помощью двух ПИД-контроллеров. Один из них используется для тангажа (отклонение носа дрона вверх и вниз), а второй для крена (отклонение влево и вправо).

» Программируем квадрокоптер на Arduino (часть 1)

ПИД-регулирование предусматривает использование трех входов (заданное положение, выход, измерение). Выход определяется текущим положением и измерениями, а регулятор стремится изменить этот показатель таким образом, чтобы результат измерения соответствовал заданному положению. Для дрона с четырьмя винтами используется два контроллера, каждый из которых определяет разницу в скорости вращения винтов, расположенных по диагонали. Если она будет равна нулю, то крен и тангаж будут отсутствовать.

Шаг №5. Модификация дрона

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

» Программируем квадрокоптер на Arduino (часть 1)

Для снижения веса всего дрона лучше применять Arduino Uno из-за возможности снять чип процессора и установить на ProtoBoard. Это будет достаточно для выигрыша порядка 30 граммов веса, что при подобных масштабах весьма неплохо. Дополнительно правда понадобится несколько конденсаторов, а если нет желания возиться с дополнительной электроникой, то можете выбрать сразу Arduino Pro Mini.

На что обратить внимание?

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

Например, для управления полетным контроллером сейчас достаточно готовых решений. Если же вы сразу решите писать что-то свое, то высок риск повреждения квадрокоптера. Причина в том, что математика полета составляет минимальную часть всего кода программы, а для управления квадрокоптером без барометра и системы GPS требуется хорошая практика (особенно она понадобится при некорректной реакции дрона Arduino на управляющие команды, что происходит почти всегда).

» Программируем квадрокоптер на Arduino (часть 1)

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

Если вы решите писать программу для контроллера своими руками, то готовьтесь к большим временным затратам, которые неразумны при отсутствии соответствующего академического интереса. Во всяком случае, имеющиеся программы и решения для квадрокоптеров на базе Arduino вполне могут выполнять все стандартные действия (снимать видео, фотографировать, летать свободно и по заданию).

Несколько советов новичкам

Решая заняться созданием квадрокоптера на Arduino, обратите внимание на следующие советы:

  • Не усложняйте первую конструкцию, устанавливая экшен-камеру. Вашей задачей остается создание дрона, который сможет взлететь и уверенно держаться в воздухе, а не упасть на землю, сломавшись при первом полете. Если же последнее произойдет, то легко можно разбить экшен-камеру, а это большие расходы.
  • Не гонитесь за большими масштабами, так как на первый раз достаточно создать небольшой рабочий Arduino дрон, над конструкцией которого можно будет дальше работать, совершенствуя и усложняя.
  • Сократите до минимума количество дополнительных элементов и соединений, так как большое число датчиков и всевозможных контролеров не всегда повышает надежность дрона в полете. Значительно лучше создать базовую конструкцию и постепенно ее усложнять, добавляя новые функции и возможности. Это будет значительно разумней и позволит в будущем проектировать «специализированные» дроны.
  • Если вы хотите изготовить квадрокоптер Arduino с камерой, то вам потребуется основание достаточно больших размеров, что снижает устойчивость всей конструкции.

В завершение обратим внимание, что программирование и создание квадрокоптера на базе Arduino – увлекательное, но достаточно сложное дело для новичков, поэтому не опускайте руки, если у вас не получается. Сделать на Arduino дрон вполне реально каждому и поможет в этом масса дополнительной информации и видео, которое вы легко найдете в интернете.

https://www.youtube.com/watch?v=s873edJaZpg

Digitrode

Управлять квадрокоптером – это веселое и интересное занятие. Интереснее может быть только создание своей системы управления такой игрушкой на базе какой-нибудь популярной платформы, например, Arduino. Чем и занялся энтузиаст под ником Dzl. Первым делом он разобрал пульт дистанционного управления для того, чтобы посмотреть, какая радиосистема в нем используется.

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

Радиосвязь обеспечивалась небольшим дискретным радиомодулем. После дополнительного анализа и поиска в интерненте выяснилось, что модуль основан на микросхеме передатчика BK2421, работающего в диапазоне 2. 4 ГГц. Сегодня, в принципе, большинство дешевых игрушек с радиоуправлением основаны на этом модуле.

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

Благодаря «прослушке» с помощью Arduino UNO стал понятен порядок инициализации и режим связи. имеется порядок инициализации.

Не вдаваясь в подробности низкоуровневой коммуникации, при включении пульта и квадрокоптера происходит следующее:

Пульт передает свой уникальный сетевой адрес или ID

Квадрокоптер принимает эту передачу, подтверждает ее и начинает прослушивать канал с данными от этого ID

После подтверждения пульт начинает передавать пакеты данных каждые 20 мс

Можно управлять одновременно несколькими квадрокоптерами, назначив им разные адреса. Передача ID проходит по одному фиксированному каналу, и данные передаются по одному из 12 случайных каналов. Квадрокоптеры автоматически сканируют радиоканалы, пока не найдут данные.

Данные передаются в пакете, состоящем из 8 байт, в следующем формате:

Байт 0 = throttle (газ) 0-255 Байт 1 =Yaw (рыскание) 0-255 Байт 2 =Yaw_trim (подстройка Yaw) 0-128 Байт 3 = Pitch (тангаж) 0-255 Байт 4 = Roll (крен) 0-255 Байт 5 = Pitch_trim (подстройка Pitch) 0-128 Байт 6 = Roll_trim (подстройка Roll) 0-128 Байт 7 = Fly/run 0=fly, 16=run

Затем была создана базовая станция, которая должна связываться квадрокоптерами. В качестве модулей использовались RFM-70, содержащие ту же микросхему BK2421. Следует отметить, что выводы BK2421 толерантны к 5 В, поэтому дополнительные резисторы для 3. 3 В можно не ставить.

https://youtube.com/watch?v=YwSMbRkMw9c%3Ffeature%3Doembed

Для подключения одного и более квадрокоптеров к Arduino была написана специальная библиотека. Эта библиотека должна работать с любыми платами Arduino на базе чипов ATMEGA88 — ATMEGA328P. И в конце видео работы:

Новый игрок на рынке

Tello – это совместное произведение DJI и Intel с молодым стартапом Ryze Technology из того же Китая. Основана компания была в 2023 году. Пока что предприятие нацелено на изготовление дронов, оснащённых камерой, а также с арсеналом всевозможных «умных» функций и возможности обучения. Компания ставит целью повысить интерес молодёжи к современной технике.

В разработке дрона Tello молодому стартапу помогли именитые «гиганты»: от DJI был взят контроллер полёта, а от Intel – установлен мощный процессор. Вся эта мощь умещается в небольшом корпусе, который можно брать с собой куда угодно. Tello умеет «учиться»: владелец получит возможность программировать дрон, причём по заверениям разработчиков это будет настолько легко, что с программированием справятся не только подростки, но даже дети!

Нельзя сказать, что Tello – это продукт от DJI, хотя дрон и похож визуально на Spark. Всё-таки DJI и Intel – скорее партнёры, участвовавшие в разработке квадрокоптера. Кроме того, DJI будут предлагать Tello для покупки в своём онлайн-магазине.

Безопасность

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

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

Не стоит забывать, что сбой контроллера или канала связи может привести к тому, что аппарат улетит от тебя далеко, и тогда для поиска может пригодиться GPS-трекер, установленный заранее на коптер, или же простая, но очень громкая пищалка, по звуку которой ты сможешь определить его местоположение.

Выбираем тип и размер квадрокоптера

При сборке квадрокоптера выберите подходящий размер аппарата. Бывают такие:

  • Мини квадрокоптер – маленькая модель, с небольшим радиусом действия. Помещается в ладонь, подходит для полетов в помещениях.
  • Трикоптер — модель беспилотника,у которого только три пропеллера. Это делает его легче и маневреннее, однако теряется крутящий момент. Вместо этого используется механизм наклона заднего ротора. Сложно сделать своими руками.
  • Обычный квадрокоптер – простой и недорогой беспилотник. Диагональный размер в среднем 35 см (без пропеллеров). Состоит из минимального набота деталей с целью уменьшения веса устройства. Характеризуется большой скоростью передвижения и маневренностью.
  • Складной квадрокоптер берут в поездки, путешествия, когда важен размер и вес устройства. Складная рама облегчает транспортировку устройства. В самостоятельном изготовлении сложен.
  • Большой квадрокоптер – самый дорогой и тяжелый тип беспилотника. Способен летать на дальние расстояния, оборудован емким аккумулятором, несет сложное фото- и видеооборудование. Делайте самостоятельно только если уже владеете навыками изготовления подобных устройств.

Основные проблемы с маленьким квадрокоптером — его стоимость и вес. Можете поискать моторы побольше и помощнее, но это особо не улучшит его характеристики. Что вам действительно поможет, (если вы готовы отдать больше денег) — это безщеточные (вентильные) моторы.

Для уменьшения веса конструкции лучше всего использовать именно Arduino Uno, так как к этой модели контроллера можно снять «прошитый» чип микропроцессора и установить его непосредственно на вашу ProtoBoard. В результате вы выиграете около 30 грамм веса, что немало при таких масштабах.

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

Другие проекты контроллеров для квадрокоптеров

Ниже приведены несколько других проектов контроллеров для квадрокоптеров на базе Arduino.

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

Для питания сенсоров используется 3. 3 В постоянный ток от Arduino Nano.

Контроллер, выполненный в круглом форм-факторе. Контроллер можно использовать на три- и квадрокоптерах.

Еще один круглый контроллер. Может использоваться для три- и квадрокоптеров. Можно подключить видеокамеру. Предусмотрена стабилизация тангажа и крен.

Предусмотрена проверка питания. Если питание отсутствует, подается сигнал на динамик. Можно запитать плату от отдельного BEC. На контроллере установлен светодиод для отслеживания состояния и питания.

Есть интересные серийные контроллеры для квадрокоптера на Arduino. Например, в пердставленом ниже тоже используется круглый форм-фактор плат. Этот контроллер можно использовать для три- квадро-, гексакоптера. Поддерживаются все фичи MultiWii версии 1. Кроме того, на плате есть встроенный регулятор 3. 3 вольт.

https://youtube.com/watch?v=O8UB5vUIQkw%3Ffeature%3Doembed

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

Не потребует Arduino и наличия при сборке паяльника, так как вполне можно обойтись макетной доской и набором перемычек, что одновременно упрощает работу, позволяет быстро исправить какие-то недочеты и ошибки при сборке.

Относительно дешевый quadcopter на arduino с управлением от телефона, планшета, пк

Прочитав эту статью, вы узнаете, как построить не дорогой квадрокоптер, управляемый с андроид устройства, дистанционного пульта или с компьютера. В этом проекте много шагов, которые вы можете пропустить. Например, вы можете пропустить строительство квадрокоптера и купить готовый в интернете, но вы все равно будете использовать Arduino, чтобы управлять им с вашего планшета или ноутбука. Однако если вы пойдете этим путем, то вы лишитесь удовольствия от комбинирования китайских бамбуковых палочек и дешевой пластмассы от производителей электронных игрушек. Это дешевый проект, самой затратной частью которого, является ArduinoDUE, хотя, можно использовать и что-нибудь подешевле.

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

Processing — открытый язык программирования, основанный на Java. Представляет собой лёгкий и быстрый инструментарий для людей, которые хотят программировать изображения, анимацию и интерфейсы. Используется студентами, художниками, дизайнерами, исследователями и любителями, для изучения, прототипирования и производства. Он создан для изучения основ компьютерного программирования в визуальном контексте и служит альбомным программным обеспечением (имеется в виду то, что каждый *. pde файл визуальной оболочки Processing’а представляет собой отдельное изображение или анимацию, и т. ) и профессиональным производственным инструментом.

Что надо для изготовления рамы

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

Крепления двигателей к раме делаются из палочек для коктейля.

Изолента- используется для крепления платы приемника, электродвигателей к раме. Нитки нужны для скрепления деталей перед склейкой. Цианакриловый клей. Резинка для крепления аккумулятора к раме.

Список электроники для квадрокоптера.

Все эти детали могут быть повреждены во время пробных запусков или во время полетов, поэтому заказывайте с запасом. Ссылки даны для примера. Есть много поставщиков. Лопасти для вертолета Двигатели. Я не нашел двигатели с размерами 4х7 мм на Алиэкспресс нашел вот такие. Моторы должны быть без щеточные.

Плата приемника эта плата содержит все компоненты- гироскоп, акселометр, ESC (система курсовой устойчивости), CPU который все эти компоненты объединяет. Литий полимерный аккумулятор:1 x 240mah 1S ‘LiPo. Можно использовать разные аккумуляторы с меньшей или большей емкости. Если вы решите построить октакоптер, то вам понадобиться более емкая батарея.

Список аппаратного контроля квадрокоптера.

Это те части вашего будущего вертолета, которые позволят ему принимать ваши команды. Приемопередатчик Учтите что в комплекте должны быть два модуля. И это не тоже самое что NRF24L01, что бы ни утверждал продаван.

Макетная плата-на ней вы будете монтировать радио модуль и подключать его к Arduino. Резистор 22кОм- значение его не особо критично. Провода для соединения радио модуля. OTG переходник для вашего андроид устройства.

OTG Hubsan-пульт дистанционного управления-это не обязательно, но удобно.

Создание каркаса.

Каркас изготавливается из бамбуковых палочек, скрепленных крест на крест с трубочками от коктейлей. Все это склеивается вместе супер клеем. 1: Распечатайте шаблон SVG в прикрепленном файле. Он сложнее, чем должен быть, но также используется для строительства октокоптера. Шаблон нужен, чтобы сделать правильный квадрат.

Отрежьте нитку по длине вашего предплечья.

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

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

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

Положите шаблон на ровную поверхность, лучше использовать стекло.

Разместите ваши связанные вместе палочки, как показано на фото.

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

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

Повторите все тоже самое для второго кронштейна.

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

Обрежьте палочки примерно на длину 2 см с обеих сторон.

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

Следующий этап состоит из пайки ваших 4 моторов к плате 4Х приемника. Первое, что надо – это припаять провода питания на нижнюю часть платы. Далее мы будем ссылаться на эту ориентацию (плата лежит на “спине”)

Как подключать моторы.

Сборка радиоуправления на arduino.

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

Вам нужны 6 контактов на плате А7105. Слева GND. Справа-SDIO, SCK, SCS, GND, VCC.

Припаяйте жесткий одножильный провод, длиной 2 см, к каждому указанному выводу. Вставьте А7105 в макетную плату, так как показано на фото. Соедините выводы GND на плате arduino и два на А7105. Соедините вывод 3. 3V на Arduino c выводом VCC на плате А7105. На разъеме SPI Arduino, соедините вывод MOSI с одним из выводов резистора , другой конец резистора соедините с пином SIDO на А7501.

По этой ссылке можно посмотреть где находится вывод MOSI Вывод SCK Arduino c выводом SCK А7105 , SCS с платы А7105 на пин 10 Arduino. Синий резистор на фото не является частью проекта.

Нижеследующий скетч использует хакнутую версию PhracturedBlue’s hubsan X4 и A7105 оригинал кода можно посмотреть здесь.

Программное обеспечение для Андроид

Это программноеобеспечениедает вам простой контролер полета на базе андроид устройства. Для управления используется акселерометр и сенсорный экран вашего устройства. Планшет или телефон будет обмениваться данными с Arduino через порт USB.

Программное обеспечение для ПК В архиве программа, которая управляет коптером через последовательный порт. Управляется коптер с помощью курсорных кнопок, и кнопок “A”/”Z”- дроссель. Автор сделал попытку заставить следовать коптер за объектом определенного цвета, но это пока не работает. Обещал выкладывать обновления.

Подключение к контроллеру

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

Для составления схемы нам необходимы:

  • Arduino
  • Двигатели
  • Транзисторы

Все это собирается на монтажной плате и соединяется коннекторами.

На первом этапе следует подсоединить 4 ШИМ выхода (обозначены ~) к транзистору. Затем подсоедините коннекторы к движкам, подключенным к питанию. В нашем случае мы используем аккумулятор на 5В, но подойдет и аккумулятор на 3-5В.

Транзисторы должны быть заземлены, а земля на плате Arduino должна быть подключена к земле аккумулятора. Двигатели должны вращаться в правильном направлении, то есть работать на подъем коптера, а не на его крен.

Переключив контакт двигателя с напряжения 5В на транзистор, вы увидите, что ротор изменит направление вращения. Единожды совершив настройку, больше возвращаться к изменению направления вращения ротора не придется. Теперь нас интересует скорость.

https://youtube.com/watch?v=3S1Sq64dJuc%3Ffeature%3Doembed

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

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

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

ПИД-регулятор (назначение и настройка)

Proportional Integral Derivate (PID) или Пропорционально-интегрально-дифференцирующий регулятор (ПИД) — часть программного обеспечения полётного контроллера, которое считывает данные с сенсоров и вычисляет, как быстро должны вращаться моторы, чтобы сохранить желаемую скорость перемещения БЛА.

Разработчики готовых к полёту БЛА как правило оптимально настраивают параметры ПИД-регулятора, поэтому большинство RTF беспилотников отлично пилотируются прямо из коробки. Чего не скажешь про кастомные сборки БЛА, где актуально использование универсального полётного контроллера подходящего для любой мультироторной сборки, с возможностью регулировки значений PID до тех пор, пока они не будут соответствовать требуемым характеристикам полёта конечного пользователя.

» Программируем квадрокоптер на Arduino (часть 1)

Сборка

Прежде всего, подготавливаем и соединяем лучи и раму. Если нет возможности напечатать раму на 3D принтере, то вместо нее используйте обычную фанеру. В месте соединения деталей рамы установите силовую плату. Закрепить ее следует внизу в центральной части.

Далее установите полетный контроллер сверху. Очень важно, чтобы он был размещен точно по центру, поэтому лучше всего замерить место, где он будет находиться. Крепить эту деталь стоит саморезами нужного размера. Затем закрепите приемник и передатчик, для этого подойдет суперклей. Также подготовьте площадки на концах лучей.

Следующим шагом идет установка батареи. Используйте два аккумулятора Zippy Compact по 3700 мА·ч. Крепить их необходимо по диагонали сразу к двум лучам. Используйте для этого широкий пластиковый ремешок и скотч. Крестовина в центральной части также подойдет для установки аккумуляторов. Между крестовиной и контрольной панелью имеется пространство, туда просуньте ремешок для крепления аккумуляторов.

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

Создаем квадрокоптер на базе arduino

Не обязательно покупать беспилотник в магазине — теперь вы можете сделать квадрокоптер на базе arduino самостоятельно. Дрон будет иметь мощное автономное питание и функционировать на стабилизационный системе, основой которой будет база Arduino. Если сделать летательный аппарат своими руками, можно сэкономить приличную сумму. Покупной коптер стоит минимум 80 долларов. Если вы создадите его самостоятельно, это обойдется примерно в 60 условных единиц.

» Программируем квадрокоптер на Arduino (часть 1)

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

Летающую модель с 4 ножками можно сотворить своими руками. Процесс не покажется вам сложным, а наоборот, доставит удовольствие, но только при условии изучения инструкции и пошагового ее соблюдения. Прежде всего, перед процессом создания дрона, стоит определиться с элементами, которые будут использованы в работе. В качестве контролера, как и предполагалось, будем использовать платформу Arduino — это недорогая, но качественная база, которая обеспечит устройству бесперебойную работу.

Для создания беспилотника важно правильно подобрать двигатели. Бесщеточные достаточно мощные, но их стоимость составляет минимум 20 долларов, это означает, что устройство обойдется около 80 долларов. В данном случае стоит отдать предпочтение щеточному варианту — намного дешевле, и не требуют установки дополнительных контроллеров.

Так же необходимо позаботиться о приобретении качественного мотора, а затем заняться его стабилизацией. Здесь не обойтись без акселерометра и гироскопа. Так определим угол наклона и ускорение. Данные сенсоры — для создания мощной модели. Чтобы сделать квадрокоптер своими руками с управлением Arduino, вам понадобятся:

  • аккумуляторы на 3,7 В литиевого типа;
  • провода;
  • транзистор не слабее ULN2003A Darlington Transistor;
  • моторы Coreless Motors;
  • микроконтроллер 0820 Coreless Motors;
  • гироскоп;
  • акселерометр;
  • инструменты для спаивания;
  • 3D принтер.

Первое, что следует сделать – это создать раму для будущего квадрокоптера. Каркас получится легким и прочным, если воспользоваться 3D принтером. Затем следует настроить акселерометр и гироскоп. Не нужно подключать к 5 В — это может привести к тому, что плата испортится. Лучше отдать предпочтение 3. 3 В. Необходимо учесть, что в большинстве плат есть специальный регулятор напряжения.

» Программируем квадрокоптер на Arduino (часть 1)

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

Как оказалось – это вполне реальная задача. Процесс не доставит вам забот, зато можно сэкономить большую сумму. Если возникли сомнения по поводу запуска вашего устройства, инструкцию о том как это сделать читайте здесь. При правильном обращении квадрокоптер на базе arduino прослужит долго.

Фишки новой модели

Квадрокоптер Tello относится скорее к дронам для развлечения (фандронам), чем к категории дронов с камерой. Этот малыш умеет совершать забавные трюки и сальто в воздухе, что доставит массу удовольствия пилотам младшего возраста. Tello можно без опаски запускать с ладони и сажать на неё в автоматическом режиме. Причём запуск можно произвести лёгким подбросом квадрокоптера в воздух.

Tello имеет целый ряд предустановленных функций для фото- и видеосъёмки (например, Circle Mode, 360 Grad, Up-and-Away). Стабилизация изображения производится цифровым образом, не механически. За это отвечает встроенный 14-ядерный процессор от Intel. Квадрокоптер снимает 5 Мп фото. Кроме того, Tello совместим с VR-очками. И при этом его вес – всего 80 гр

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

Шаг №1. делаем корпус

https://youtube.com/watch?v=Laibu0cr7Ko%3Ffeature%3Doembed

Необходимые узлы, детали и оборудование

Для проекта квадрокоптера с управлением от Arduino нам понадобятся:

  • – провода;
  • – литиевые аккумуляторы на 3.7 В;
  • – транзистор: ULN2003A Darlington Transistor (можно взять транзистор, который поддерживает нагрузки и побольше);
  • – моторы: 0820 Coreless Motors;
  • – микроконтроллер: Arduino Uno;
  • – 3D принтер или доступ к нему для печати деталей конструкции квадрокоптера;
  • – инструменты (в том числе паяльник и умение им пользоваться!).

Ссылки для заказа необходимого электронного оборудования, которое использовалось в проекте из Китая

  • КУПИТЬ литиевые аккумуляторы 3.7 В (Будьте внимательны, среди предлагаемых товаров Вам надо найти именно подходящий Вам!);
  • КУПИТЬ транзисторы ULN2003A;
  • КУПИТЬ двигатели;
  • КУПИТЬ Arduino Uno R3;

3-D печать деталей квадрокоптера

» Программируем квадрокоптер на Arduino (часть 1)

» Программируем квадрокоптер на Arduino (часть 1)

» Программируем квадрокоптер на Arduino (часть 1)

В результате вы получите что-то вроде такого:

» Программируем квадрокоптер на Arduino (часть 1)

» Программируем квадрокоптер на Arduino (часть 1)

Настройка акселерометра-гироскопа (I2C)

» Программируем квадрокоптер на Arduino (часть 1)

Не подключайте к 5 В!

Рекомендуем использовать вот эту библиотеку для Arduino: Github.

В этом примере использовалась плата MPU6050 от SparkFun. На Amazon она стоит около $10, работает хорошо. Аналогичный Китай на Aliexpress или Ebay предлагает подобные платы по цене до 5 долларов. Тоже отлично работает.

Что такое I2C?

На простых платах акселерометра все логично и понятно: на ней предусмотрены отдельные аналоговые выходы для осей X, Y и Z. Каждый выход соответствует отдельной оси акселерометра. Если вы теперь взглянете на плату с I2C, поймете, что тут все несколько запутаннее. I2C – это стандарт обмена данными, при котором большие объемы информации передаются с помощью цифровых логических импульсов вместо аналоговых выходов. MPU6050 предоставляет вам 6 контролируемых осей (3 для гироскопа и 3 для акселерометра). Если бы они все были аналоговыми, нам пришлось бы задействовать все аналоговые порты на Arduino Uno. С протоколом I2C мы задействует гораздо меньше контактов для подключения.

Схема подключения Arduino

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

GND -> GND

SCL -> A5

SDA -> A4

VIO -> GND

Если вы запитаете от 5 В, плата может испортиться, так что будьте внимательны и используйте именно 3. 3 В. На некоторых платах MPU6050 есть регулятор напряжения, который выполняет роль предохранителя, но рисковать все равно не стоит. Если на вашей плате есть контакт AD0, его надо подключить к земле (GND). В нашем случае контакт VIO подключен к AD0 на самой плате, так что подключать пин AD0 не надо.

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

После того как вы подключили MPU-6050 к вашему Arduino, включите его и загрузите скетч I2C scanner code.

Если вы все сделали правильно, должно обнаружиться устройство I2C и ему присвоиться адрес 0x68 ил 0x69. Запишите его. Если появились ошибки, проверьте подключение.

Теперь вам надо загрузить скетч, который обрабатывает информацию с акселерометра/гироскопа. По сети гуляет не один вариант подобных скетчей, рекомендуем использовать вот этот. После перехода по ссылке, нажмите “Download Zip”. После скачки, разархивируйте архив. Потом этого откройте Arduino IDE. Перейдите в sketch->import library -> add library. Вам надо будет добавить обе папки: I2Cdev и MPU6050.

После того как вы установили библиотеки, откройте файл MPU6050_DMP6 (MPU6050 -> Examples). Рекомендую вам его просмотреть, даже если вы не особо ориентируетесь в коде. Если у вас присвоился адрес 0x69, вам надо раскомментировать одну строку в верхней части кода (после #includes), так как по умолчанию стоит 0x68. Теперь программа должна компилироваться.

Загрузите программу, откройте окно серийного монитора (в этот раз с 115200) и следуйте инструкциям. Поздравляю, так как сейчас вы должны были получить значения с акселерометра/гироскопа через Arduino!

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

Теперь у вас есть рабочий, безусловно полезный, акселерометр/гироскоп.

Подключение к Arduino

Подключение акселерометра мы рассмотрели. Следующий шаг – заставить Arduino управлять моторами. Плата Arduino предоставляет на выход небольшое значение силы тока и напряжения, так что вместо того, чтобы подключать моторы напрямую к цифровым выходам платы, мы используем транзисторы для “усиления” напряжения.

Начнем сборку электросхемы. На этом этапе нам понадобятся Arduino, моторы, транзисторы (монтажная плата и коннекторы). Схема подключения приведена ниже, под необходимыми текстовыми пояснениями. Подключите четыре ШИМ выхода (отмечены на Arduino знаком ~ ) к транзистору, как это показано на рисунках. После этого подключите коннекторы к моторам, которые подключены к источнику питания. В приведенном проекте квадрокоптера использовался источник питания 5 В, но должна подойти и батарея 3-5 В.

Убедитесь, что транзисторы заземлены, и земля на Arduino подключена к земле от источника питания. Убедитесь, что роторы двигателей вращаются в правильном направлении (они должны обеспечивать подъем квадрокоптера, а не крен). Если вы переключите контакт мотора с 5 В на транзистор, ротор двигателя начнет вращаться в противоположном направлении. После настройки изменять направление вращение двигателей больше не придется. Изменять мы будем только скорость.

После запуска акселерометра и его проверки, необходимо установить все на ProtoBoard (можно использовать монтажную плату, на которую напаять рельсы для установки на Arduino. Можно пойти по более элегантному пути и приобрести Proto Shield). Не стоит припаивать транзистор на плату для прототипирования. Лучше использовать для него сокет с контактами, чтобы вы могли его в любой момент заменить.

В нашем случае мы припаяли акселерометр к плате и только после этого провели калибровку. Но практика показывает, что это не совсем правильно. Для увеличения точности показаний гироскопа/акселерометра, его лучше сначала откалибровать на ровной поверхности и только потом припаять.

» Программируем квадрокоптер на Arduino (часть 1)

» Программируем квадрокоптер на Arduino (часть 1)

» Программируем квадрокоптер на Arduino (часть 1)

» Программируем квадрокоптер на Arduino (часть 1)

» Программируем квадрокоптер на Arduino (часть 1)

» Программируем квадрокоптер на Arduino (часть 1)

» Программируем квадрокоптер на Arduino (часть 1)

» Программируем квадрокоптер на Arduino (часть 1)

Программа для Arduino

» Программируем квадрокоптер на Arduino (часть 1)

Можете почитать по поводу ПИД-регулирования на Вики, если вы не знакомы с этими регуляторами. PID класс для Arduino использует три входа: заданное положение, измерение и выход. Выход зависит от текущего положения и измерений. ПИД-регулятор старается изменить выход таким образом, чтобы измерения соответствовали заданному положению. В алгоритме используется интересная математика. Алгоритм ПИД-регулирования старается отработать таким образом, чтобы значения оставались максимально стабильными.

В нашем алгоритме для стабилизации используется два ПИД-контроллера: один для тангажа и другой для крена. Разница в скорости вращения пропеллеров 1 и 2 будет такой же как и разница в скорости пропеллеров 3 и 4. Аналогично для пар 1,3 и 2,4. После этого ПИД-регулятор изменяет разницу в скорости, выводя тангаж и крен в нуль.

Не забудьте проверить какие цифровые пины с Arduino идут к моторам и соответственно изменить скетч.

Дальнейшая модернизация квадрокоптера на Arduino

» Программируем квадрокоптер на Arduino (часть 1)

Основные проблемы с маленьким квадрокоптером – его стоимость и вес. Можете поискать моторы побольше и помощнее, но это особо не улучшит его характеристики. Что вам действительно поможет, (если вы готовы отдать больше денег) – это безщеточные (вентильные) моторы. По характеристикам они на порядок лучше, но в довеску к ним надо использовать контроллеры скорости, что сделает квадрокоптер дороже.

Для уменьшения веса конструкции лучше всего использовать именно Arduino Uno, так как к этой модели контроллера можно снять “прошитый” чип микропроцессора и установить его непосредственно на вашу ProtoBoard. В результате вы выиграете около 30 грамм веса, что немало при таких масштабах. Дополнительно вам надо будет использовать еще несколько конденсаторов и т. Или, как альтернативный вариант, можно использовать Arduino Pro Mini.

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

АРДУИНО-KIT

» Программируем квадрокоптер на Arduino (часть 1)

  • Квадрокоптеры
  • Лопасти
  • Двигатели
  • Контроллеры
  • Передатчики
  • Рамы

» Программируем квадрокоптер на Arduino (часть 1)

Новости и Новинки сайта в VK. com

Курьер до дома в течении часа:

0-999руб – 200 руб

1000-2999руб – 110 руб

3000руб – бесплатно

» Программируем квадрокоптер на Arduino (часть 1)

Доставка по Омску

-Сб. с 12-00 до 18-00

При доставке СДЭК / Boxberry / Почта России вы получите точную сумму доставки до удобного для вас пункта выдачи. Доставка от 5000 руб бесплатно (Доставка Boxberry)

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

» Программируем квадрокоптер на Arduino (часть 1)

Доставка по СНГ

» Программируем квадрокоптер на Arduino (часть 1)

Омск, ул. Маяковского 65, Цокольный этаж, АРДУИНО-KIT 644010

Понедельник – Пятница

11:00 – 14:00 / 15:00 – 19:00

11:00 – 14:00 / 15:00 – 17:00

WeChat
Изображения товаров могут отличаться от оригинала, уточняйте у продавца: цвет, модель, производителя.

Оцените статью
Радиокоптер.ру
Добавить комментарий