Квадрокоптер на ардуино своими руками пошаговая инструкция

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

Необходимые детали и узлы

Прежде чем приступить к сборке квадрокоптера своими руками, необходимо обзавестись всеми необходимыми деталями. Мозгом нашей самоделки станет полетный контроллер 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. Контроллер дает на выходе лишь небольшое напряжение и силу тока, поэтому подключение двигателей напрямую лишено смысла. Вместо этого можно поставить несколько транзисторов, позволяющих увеличить напряжение.

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

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

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

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

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

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

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

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

Как еще можно модернизировать квадрик

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

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

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

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

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

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

Загрузка…

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

У нас впереди:

  1. Базовые понятия (для начинающих коптероводов).
  2. PID-регуляторы с интерактивной web-демонстрацией работы на виртуальном квадрокоптере.
  3. Собственно программа для Arduino и настроечная программа на Qt.
  4. Опасные тесты квадрокоптера на веревке. Первые полёты.
  5. Крушение и потеря в поле. Автоматический поиск с воздуха средствами Qt и OpenCV.
  6. Окончательные успешные тесты. Подведение итогов. Куда дальше?

Материал объемный, но постараюсь уложиться в 2-3 статьи.
Сегодня нас ожидает: спойлер с видео, как наш квадрокоптер полетел; базовые понятия; PID-регуляторы и практика подбора их коэффициентов.

Зачем все это?

Академический интерес, который, кстати, преследует не только меня (1, 2, 3). Ну и, конечно же, для души. Я получил огромное удовольствие во время работы и ощутил настоящее непередаваемое счастье, когда «ЭТО» полетело с моей программой :-)

Для кого?

Данный материал может быть интересен в том числе и людям, которые далеки, или пока только собираются заняться мультироторными системами. Сейчас поговорим про назначение основных узлов квадрокоптера, про то, как они взаимодействуют между собой, про основные понятия и про принципы полёта. Конечно, все знания, которые нам потребуются, можно найти в сети, но нельзя же заставлять выискивать их на просторах необъятного интернета.

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

НЕТ №1!

Не беритесь писать собственную программу для полетного контроллера, пока не попробуете готовые решения, которых сейчас достаточно много (Ardupilot, MegapirateNG, MiltiWii, AeroQuad и т.п.). Во-первых, это опасно! Чтобы управлять квадрокоптером без GPS и барометра нужна практика, а тем более, когда он глючит, переворачивается, летит не совсем туда, куда надо — а этого почти не избежать во время первых тестов. Во-вторых, вам будет во много раз легче программировать понимая, что нужно программировать и как оно должно работать в итоге. Поверьте: математика полета — лишь малая часть кода программы.

НЕТ №2!

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

Базовые понятия

Квадрокоптеры бывают разные, но всех их объединяют четыре несущих винта:

Не смотря на кажущуюся симметрию, пилоту очень важно различать, где у квадрокоптера перед (показан стрелкой). Здесь, как у радиоуправляемых моделей автомобилей: при команде «вперед» квадрокоптер летит не туда, куда смотрит пилот, а туда, куда направлен воображаемый нос квадрокоптера. Это таит в себе опасность: новичкам бывает трудно вернуть к себе подхваченный ветром аппарат, развернутый как-нибудь боком (мы, конечно, не говорим про полеты по камере от первого лица и про «умные» режимы полета с использованием компаса и GPS.) Решению этой проблемы частично могут помочь передние винты или лучи другого цвета, какой-нибудь шарик спереди или разноцветные светодиоды. Но все это оказывается бесполезным, когда пепелац стремительно превращается в точку над горизонтом.

Мы будем летать на раме квадрокоптера формы «X», потому что она мне больше нравится внешне. У каждой конструкции свои плюсы и свое предназначение. Кроме квадрокоптеров есть и другие мультикоптеры. Даже если не считать экзотические варианты, все равно их видов — целая куча!

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

Углы тангажа, крена и рыскания (pitch, roll, yaw) — углы, которыми принято определять и задавать ориентацию квадрокоптера в пространстве.

Иногда слово «угол» опускают и просто говорят: тангаж, крен, рыскание. Но согласно Википедии это не совсем точно. Полет квадрокоптера в необходимом направлении достигается изменением этих трех углов. Например, чтобы полететь вперед квадрокоптер должен наклониться за счет того, что задние моторы закрутятся чуть сильнее передних:

Газ квадрокоптера — среднее арифметическое между скоростями вращения всех моторов. Чем больше газ, тем больше суммарная тяга моторов, тем сильнее они тащат квадрокоптер вверх (НЕ ВПЕРЕД!!! «Тапок в пол» здесь означает наискорейший подъем). Обычно измеряется в процентах: 0% — моторы остановлены, 100% — вращаются с максимальной скоростью. Газ висения — минимальный уровень газа, который необходим, чтобы квадрокоптер не терял высоту.

Газ, тангаж, крен, рыскание — если вы можете управлять этими четырьмя параметрами, значит вы можете управлять квадрокоптером. Их еще иногда называют каналами управления. Если вы приобрели двухканальный пульт, с квадрокоптером вам не совладать. Трехканальный скорее подойдет для маленьких вертолетов: без управления креном летать можно, но на квадрокоптере — не удобно. Если вы хотите менять режимы полета, придется раскошелиться на пятиканальный пульт. Хотите управлять наклоном и поворотом камеры на борту — еще плюс два канала, хотя профессионалы используют для этого отдельный пульт.

Режимов полета существует много. Используется и GPS, и барометр, и дальномер. Но мы хотим реализовать базовый — режим стабилизации (stab, stabilize, летать в «стабе»), в котором квадрокоптер держит те углы, которые ему задаются с пульта не зависимо от внешних факторов. В этом режиме при отсутствии ветра квадрокоптер может висеть почти на месте. Ветер же придется компенсировать пилоту.

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

  • LFW — left front clockwise rotation (левый передний, вращение по часовой стрелке)
  • RFC — right front counter clockwise rotation (правый передний, вращение против часовой стрелке)
  • LBC — left back counter clockwise rotation (левый задний, вращение против часовой стрелке)
  • RBW — right back clockwise rotation (правый задний, вращение по часовой стрелке)

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

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

Различных видов датчиков, которые можно задействовать, очень много. Мы будем использовать ставшие уже почти обязательными во всех квадрокоптерах трехосевой гироскоп и трехосевой акселерометр. Акселлерометр измеряет ускорение, гироскоп измеряет угловую скорость. Благодаря им полетный контроллер узнает текущие углы тангажа, крена и рыскания. Эти датчики бывают встроенными в полетный контроллер, а бывают внешними. Процесс вычисления трех углов по показаниям датчиков — тема для отдельной статьи. Но нам этого здесь знать не надо: за нас все сделает MPU-6050. Это небольшая плата, проводящая необходимые вычисления и фильтрации у себя внутри и выдающая по протоколу i2c уже почти готовые углы. Нам останется их считать, обработать с остальными данными и выдать управляющие сигналы моторам.

Моторы на мультикоптерах потребляют большие токи, поэтому полетный контроллер управляет ими не напрямую, а через специальные аппаратные драйвера, называемые регуляторами скорости (ESC, ре́гуль, е́ска). Эти регуляторы питаются от основного бортового аккумулятора, управляющий сигнал получают от контроллера, а на выходе у них стоит по три провода (A, B, C), которые непосредственно идут к моторам (каждому мотору — свой регуль!)

«Протокол» общения между регулятором и мотором нам не так важен, как «протокол» общения между полетным контроллером и регулятором, ведь нам предстоит из контроллера программно управлять регулятором. Бывают регуляторы, управляемые по i2c, но наиболее распространенные управляются сигналом прямоугольной формы с минимумом 0 вольт и максимумом 3-5 вольт (его называют ШИМ или PWM, а некоторые утверждают, что правильнее — PPM. Подробнее, например, здесь).

«Протокол» — это громко сказано: чтобы дать команду мотору вращаться с максимальной скоростью контроллер должен отправлять импульсы длительностью 2 миллисекунды, перемежающиеся логическим нулем длительностью 10 — 20 миллисекунд. Длительности импульса в 1 миллисекунду соответствует остановка мотора, 1.1 мс — 10% от максимальной скорости, 1.2 мс — 20% и т.п. Практически длительность нуля не играет никакой роли, важна только длительность самого импульса.

При всей кажущейся простоте, здесь кроется засада: полетные контроллеры бывают разные с разными настройками, регуляторы бывают разные, и минимум (1 мс) и максимум (2 мс) — не универсальны. В зависимости от множества факторов диапазон 1-2 мс может на деле оказаться 1.1 — 1.9 мс. Для того, чтобы регулятор и контроллер говорили абсолютно на одном языке существует процедура калибровки регуляторов. В ходе этой процедуры диапазоны регуляторов изменяются и становятся равными диапазону контроллера. Процедура зашита в программу каждого регулятора и включает в себя несколько простых шагов (шаги могут отличаться в зависимости от производителя — читайте инструкции!):

  • Отключить питание регулятора.
  • Снять с мотора пропеллер.
  • Подать на вход регулятора сигнал, соответствующий максимальной скорости вращения.
  • Подать на регулятор питание. Мотор при этом должен сохранять неподвижность без посторонней помощи.
  • Сделать паузу 1-2 секунды, дождаться характерного писка.
  • Подать на вход регулятора сигнал, соответствующий минимальной скорости вращения.
  • Сделать паузу 1-2 секунды, дождаться характерного писка.
  • Отключить питание регулятора.

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

PWM с точно таким же принципом использует и бортовой приемник. Это небольшое устройство, получающая сигналы радиоуправления с земли и передающая их в полетный контроллер. Чаще всего в полетном контроллере для каждого канала управления (газ, тангаж, крен и т.п.) имеется свой вход на который поступает PWM. Логика взаимодействия проста: команда, например, «70% газ» непрерывно идет с земли на приемник, где преобразуется в PWM и по отдельному проводу поступает в полетный контроллер. Аналогично с тангажем, креном, рысканием.

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

  • Снять пропеллеры с моторов на всякий случай.
  • Каким-либо образом перевести контроллер в режим калибровки радио.
  • Контроллер запускает калибровку радио на несколько десятков секунд.
  • За отведенное время двигаем всеми стиками пульта во все стороны до упоров.
  • Контроллер запоминает максимумы и минимумы для всех каналов управления во внутреннюю память на века.

Итак: во время калибровки радио полетный контроллер запоминает диапазоны приемника по всем каналам управления; во время калибровки регуляторов диапазон полетного контроллера заносится во все регуляторы.

Помимо программы для полетного контроллера необходима еще одна программа: интерфейс настройки полетного контроллера. Чаще всего им является программа для PC, которая соединяется с полетным контроллером по USB и позволяет пользователю настраивать и проверять полетную программу, например: запускать калибровку радио, настраивать параметры стабилизации, проверять работу датчиков, задавать маршрут полета на карте, определять поведение мультикоптера при потере сигнала и многое другое. Мы свой интерфейс настройки будем писать на C++ и Qt в виде консольной утилиты. Вот она, если заглянуть в будущее:

Никто не застрахован от случайностей. Даже десятидюймовые пластиковые винты на маленьких моторах могут оставить кровавые синяки на коже, которые будут болеть еще неделю (проверено лично). Элементарно сделать себе новый макияж и прическу, если зацепить стик газа на пульте, пока несешь включенный квадрокоптер. Поэтому полетный контроллер должен обеспечивать хоть какую-то безопасность: механизм armed/disarmed. Состояние квадрокоптера «disarmed» означает, что моторы отключены и даже команда полного газа с пульта не имеет никакого эффекта, хотя питание подано. Состояние «armed» квадрокоптера означает, что команды с пульта выполняются полетным контроллером. В этом состоянии квадрокоптеры взлетают, летают и садятся. Квадрокоптер включается и должен сразу попасть в состояние disarmed на тот случай, если невнимальельный пилот включает его, когда стик газа на пульте находится не в нуле. Чтобы перевести коптер в состояние «armed» пилоту необхоимо сделать какой-то заранее оговоренный жест стиками пульта. Часто этим жестом является удержание левого стика в правом нижнем углу (газ = 0%, рыскание = 100%) втечении пары секунд. После этого полетный контроллер делает хотя бы минимальную самопроверку и при ее успешном прохождении «армится» (к полету готов!) Другим жестом (газ = 0%, рыскание = 0%) квадрокоптер «дизармится«. Еще одна хорошая мера безопасности — автодизарм, если газ был на нуле втечении 2-3 секунд.

О моторах, аккумуляторах, регуляторах, пропеллерах

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

И все же для общего понимания полезно знать основные моменты.

Аккумуляторы

Среди любителей и профессионалов многороторных систем наиболее распространены литий-полимерные аккумуляторы, как основные источники питания бортовой электроники и моторов. Их различают по емкости, напряжению и максимальной токоотдаче. Емкость, как обычно, измеряется в ампер-часах или миллиампер-часах. Напряжение измеряется в количестве «банок» аккумулятора. Одна «банка» — в среднем 3.7 вольт. Полностью заряженая «банка» — 4.2 вольта. Наиболее распространеты аккумуляторы с количеством банок от трех до шести. Максимальная токоотдача измеряется в амперах, а маркируется, например вот так: 25C. C — емкость аккумулятора, 25 — множитель. Если емкость равна 5 амперам, то такой аккумулятор может отдавать 25 * 5 = 125 ампер. Конечно же параметр токоотдачи лучше брать с запасом, но, в основном, чем он больше, тем дороже аккумулятор. Пример маркировки: 25C 3S 4500mah.

Каждая банка является отдельным аккумулятором. Все они спаяны последовательно. Для того чтобы равномерно заряжать все банки предусматривается баллансировочный разъем с доступом к каждой банке отдельно, и использутся специальные зарядные устройства.

Моторы, пропеллеры, регуляторы

Основной параметр бесколлекторного мотора — его kv. Это количество оборотов в минуту на каждый вольт поданного напряжения. Наиболее распространены моторы с kv от 300 до 1100. Kv ближе к 1000 обычно выбирают для малых квадрокоптеров (1-2 килограмма плюс 500 граммов полезной нагрузки) и ставят на них пластиковые пропеллеры до 12 дюймов в диаметре. На больших мультикоптерах (для поднятия хорошей и тяжелой фото-видео техники) или на долголетах (для рекордов по времени полета) обычно стоят моторы с низким kv (300-500) и огромными карбоновыми пропеллерами (15 — 20 дюймов в диаметре). Kv — не единственный важный параметр мотора: часто можно встретить целые таблицы зависимости мощности мотора и тяги от подаваемого напряжения и типа установленного пропеллера. Кроме того, каждый мотор рассчитан на свой диапазон напряжений (количество банок аккумулятора) и на свой максимальный ток. Если производитель пишет 3-4S, не стоит использовать его с 5S аккумуляторами. Это же касается и регуляторов.

Если мотор рассчитан на ток до 30А, то регулятор стоит рассчитывать на ток до 30 + 10А, чтобы не допускать перегревов. Некачественные или неподходящие регуляторы могут вызвать так называемые «срывы синхронизации» и остановку мотора в полете, и вы узнаете еще один мультироторный термин: «поймал планету.» Еще один важный момент — толщина и качество проводов. Неправильно рассчитанное сечение провода или плохой коннектор могут привести к пожару в воздухе.

Как видите, нюансов очень много. Я не перечислил даже половины, поэтому самому подобрать комплектующие для первого мультикоптера довольно трудно.

Математика стабилизации, ПИД-регуляторы (PID)

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

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

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

Для многих устройств использующих ПИД-регуляторы существуют инструкции по настройке, а то и несколько в добавок к многочисленным видеонструкциям от самих пользователей. Но чтобы легче ориентироваться в этом многообразии полезно понимать, как же внутри устроены эти регуляторы. Кроме того, мы же собираемся писать собственную систему стабилизации квадрокоптера! Предлагаю вместе со мной самим заново «изобрести» и «на пальцах» понять формулу ПИД-регулятора. Для тех, кому больше нравится сухой математический язык, я рекомендую Википедию, английскую статью, т.к. в русской пока не так подробно изложен материал.

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

В полетный контроллер непрерывно поступают команды с земли: «крен 30 градусов», «крен -10 градусов», «крен 0 градусов (держать горизонт)»; его задача — как можно быстрее и точнее их выполнять с помощью моторов с учетом: ветра, неравномерного распределения веса квадрокоптера, неравномерного износа моторов, инерции квадрокоптера и т.п. Таким образом, полетный контроллер должен непрерывно решать задачу, какую скорость вращения подавать на каждый мотор с учетом текущего значения угла крена и требуемого. Непрерывно — это, конечно, громко сказано. Все зависит от вычислительных возможностей конкретного железа. На Adruino вполне можно одну итерацию цикла обработки и управления уместить в 10 миллисекунд. Это значит, что раз в 10 миллисекунд будут считываться показания углов квадрокоптера, и на их основе будут отправляться управляющие сигналы к моторам. Эти 10 миллисекунд называют периодом регулирования. Понятно, что чем он меньше, тем чаще и точнее происходит регулирование.

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


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

Представим ситуацию: поступает команда «держать горизонт» ( = 0), а квадрокоптер имеет крен влево:

— разность (ошибка) между и , которую контроллер стремится минимизировать.

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

Здесь P — коэффициент пропорциональности. Чем он больше, тем сильнее будет реакция, тем резче квадрокоптер будет реагировать на отклонение от требуемого угла крена. Эта интуитивно понятная и простая формула описывает работу пропорционального регулятора. Суть элементарна: чем сильнее квадрокоптер отклонился от требуемого положения, тем сильнее надо пытаться его вернуть. К сожалению, эту формулу придется усложнить. Главная причина — перерегулирование.

За несколько десятков миллисекунд (несколько итераций цикла обработки) под воздействием пропорционального регулятора квадрокоптер вернется в требуемое (в данном случае горизонтальное) положение. Все это время ошибка и усилие будут иметь один и тот же знак, хоть и становиться все меньше по модулю. Набрав какую-то скорость поворота (угловую скорость) квадрокоптер просто перевалится на другой бок, ведь никто его не остановит в требуемом положении. Все равно что пружина, которая всегда стремится вернуться в начальное положение, но если ее оттянуть и отпустить — будет колебаться, пока трение не возьмет верх. Конечно, на квадрокоптер тоже будет действовать трение, но практика показывает, что его не достаточно.

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

где D — настраиваемый коэффициент: чем он больше, тем сильнее останавливающее усилие. Из школьного курса физики всплывают смутные воспоминания, что скорость изменения любой величины — производная этой величины по времени:

.

И вот пропорциональный регулятор превращается в пропорционально-дифференциальный (пропорциональное слагаемое и дифференциальное):

.

Ошибку вычислить легко, ведь на каждой итерации мы знаем и ; P и D — настраиваемые перед запуском параметры. Для вычисления производной (скорости изменения ) необходимо хранить предыдущее значение, знать текущее значение и знать время, которое прошло между измерениями (период регулирования). И вот она — физика шестого класса школы (скорость = расстояние / время):

.

— период регулирования; — значение ошибки с предыдущей итерации цикла регуляции. Кстати, эта формула — простейший способ численного дифференцирования, и он нам здесь вполне подойдет.

Теперь у нас есть пропорционально-дифференциальный регулятор в плоском «бикоптере», но осталась еще одна проблема. Пусть левый край будет весить чуть больше правого, или, что то же самое, левый мотор работает чуть хуже правого. Квадрокоптер чуть наклонен влево и не поворачивается обратно: дифференциальное слагаемое равно нулю, а пропорциональное слагаемое хоть и принимает положительное значение, но его не хватает, чтобы вернуть квадрокоптер в горизонтальное положение, ведь левый край весит чуть больше правого. Как следствие — квадрокоптер будет все время тянуть влево.

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

Тут есть нюанс. Предположим равна 1 градусу, цикл регулирования — 0.1с. Тогда за одну секунду сумма ошибок примет значение 10 градусов. А если цикл обработки — 0.01с, то сумма наберет аж 100 градусов. Чтобы за одно и тоже время интегральное слагаемое набирало одно и тоже значение при разных периодах регулирования, полученную сумму будем умножать на сам период регулирования. Легко посчитать, что в обоих случаях из примера получается сумма в 1 градус. Вот оно — интегральное слагаемое (пока без настраиваемого коэффициента):

.

Эта формула — не что иное, как численный интеграл по времени функции в интервале от нуля до текущего момента. Именно поэтому слагаемое называется интегральным:

,

где T — текущий момент времени.
Пришло время записать окончательную формулу пропорционально-интергрально-дифференциального регулятора:

,

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

.

Существует несколько ее вариаций, например, можно ограничить модуль интегрального слагаемого, чтобы он не превысил определенный допустимый порог (мы так и будем делать).

Практика

Ну а теперь пришло время для практики подбора коэффициентов. Читателям предлагается JavaScript-страничка с виртуальным квадрокоптером, который он уже видел на картинках:

подбор параметров PID-регулятора для квадрокоптера

(JSFiddle). При первом запуске сразу видно перерегулирование — колебания вокруг требуемого положения. Когда колебания останавливаются, можно наблюдать эффект, что пропорциональный коэффициент не справляется с ошибкой из-за «несимметричного» квадрокоптера (задается галочкой «Asymmetry»). Для настройки доступны параметры P, I, D. Теперь вы знаете что с ними делать. «Скролом» под квадрокоптером можно управлять требуемым значением крена. «Interval (ms):» — интервал регулирования. Уменьшать его — «читерство», но посмотреть как он влияет на качество стабилизации — очень полезно.

Для любителей «чистой» математики можно предложить

настроить абстрактный ПИД-регулятор

Введенные параметры автоматически не применяются: нужно жмакать «Apply». Пара небольших советов: если вам кажется, что квадрокоптер слишком медленно реагирует на управление — можно увеличить P, но слишком большое значение P может привести к перерегулированию. С перерегулированием поможет справиться параметр D, но слишком большие значения приведут к частым колебаниям, или опять к перерегулированию. Параметр I, обычно, в 10 — 100 раз меньше, чем параметр P т.к. его сила в накоплении во времени, а не в быстром реагировании.

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

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

Заключение первой части

В этой статье мы познакомились с базовыми понятиями: квадрокоптер и принцип полета, тангаж, крен, рыскание, газ, газ висения, режим полета stabilize, полетный контроллер, гироскоп, акселерометр, регулятор скорости, ШИМ, калибровка регуляторов, калибровка радио, бортовой приемник, интерфейс настройки полетного контроллера, состояния armed/disarmed, автодизарм.

После этого мы заново изобрели формулу ПИД-регулятора немного каснувшись численного дифференцирования и интегрирования, и на своей шкуре испытали, как настраивать параметры P, I, D на

виртуальном квадрокоптере

.

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

через неделю-другую

, когда появятся силы и время, чтобы соответствовать качеству, продолжу рассказ, как это все программировалось, тестировалось, падало, резало мне пальцы и вовсе улетало в неизвестном направлении. Если вам очень захотелось продолжения — можете напнуть меня здесь или, например, Вконтакте: это немного придает стимула.

В заключении этой части я просто обязан упомянуть человека, который помогал мне в выборе комплектующих и настройке самого сложного (первого!) квадрокоптера на прошивке MegapirateNG и терпеливо отвечал на сотни вопросов по этим самым базовым понятиям: SovGVD, спасибо тебе! :-)

В награду тем, кто смог промотать всю эту простыню, выкладываю обещанное маленькое видео, как наш квадрокоптер с нашими «изобретенными» ПИД-регуляторами, на нашей программе для Arduino Mega 2560 летает:

Конечно, ему не хватает GPS, как в коммерческих и массовых продуктах, немного не хватает устойчивости, но зато — НАШ, и мы знаем его вдоль и поперек до последнего множителя при интегральном коэффициенте! И это действительно круто, что сегодня нам доступны такие технологии.

Разве не в прекрасное время мы живем?!

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

В какое время мы живем?

Проголосовали 1772 пользователя.

Воздержались 248 пользователей.

На чтение 20 мин. Просмотров 432 Опубликовано 15.10.2019

Содержание

  1. Что такое квадрокоптер и для чего это надо
  2. Необходимые детали и узлы
  3. Теория полета
  4. Пошаговая инструкция по сборке
  5. Скетч для Arduino
  6. Рама
  7. info
  8. Как еще можно модернизировать квадрик
  9. Моторы и пропеллеры
  10. info
  11. Питание и контроллеры питания
  12. Бортовой компьютер и сенсоры
  13. Безопасность
  14. Безопасность
  15. Управление
  16. info

Что такое квадрокоптер и для чего это надо

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

Коптеры обычно различают по числу используемых моторов — начиная от бикоптера с двумя моторами (как GunShip из фильма «Аватар») и заканчивая октакоптером с восемью. На самом деле число моторов ограничено только твоей фантазией, бюджетом и возможностями полетного контроллера. Классическим вариантом является квадрокоптер с четырьмя моторами, расположенными на перекрещивающихся лучах.

Такую конфигурацию еще в 1920 году попытался соорудить француз Этьен Омишен (Étienne Oehmichen), и в 1922 году у него это даже получилось. По сути, это самый простой и дешевый вариант сделать летательный аппарат, способный без особых проблем поднимать в воздух небольшие камеры вроде GoPro. Но если ты собираешься взлетать с серьезной фото- и видеотехникой, то стоит выбирать коптер с большим числом моторов — это не только увеличит грузоподъемность, но и добавит надежности, если в полете выйдет из строя один или несколько моторов.

Необходимые детали и узлы

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

Помимо микроконтроллера, нам понадобятся:

  • Аккумулятор (лучше несколько) на 3.7В
  • Плата MPU-6050 (на ней установлены гироскоп и акселерометр)
  • Транзистор ULN2003A
  • Коллекторные двигатели с полым ротором 0820
  • Провода

Необходимо сделать несколько замечаний. Так как мы собираем дешевый самодельный дрон, то наш выбор пал на коллекторные движки с полым ротором (так называемые coreless motors). Они далеко не так надежны, как бесколлекторные двигатели, но зато гораздо дешевле стоят. Кроме того, можно обойтись без дополнительных контроллеров скорости.

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

Теория полета

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

Три эти угла принято называть крен, тангаж и рыскание. Крен — это поворот аппарата вокруг его продольной оси (оси, которая проходит от носа до хвоста). Тангаж — это поворот вокруг его поперечной оси (клюет носом, задирает хвост). Рыскание — поворот вокруг вертикальной оси, больше всего похожий на поворот в «наземном» понимании.

schema

Основные маневры (слева направо): движение по прямой, крен/тангаж и рыскание

Пошаговая инструкция по сборке

3D принтеры можно найти во многих университетах, лабораториях, коворкингах. Зачастую доступ к ним бесплатный. Модели для печати можно создать самостоятельно, используя для этого, например, Solidworks. А можно воспользоваться уже готовыми решениями, при необходимости изменив параметры.

Как спроектировать собственный квадрокоптер - «Хакер»

Для настройки акселерометра-гироскопа (I2C)мы рекомендуем использовать следующую библиотеку. Ни в коем случае не подключайте плату к напряжению 5В, иначе вы моментально ее испортите.

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

Аналоговых выходов на плате не много, и в этом большой плюс I2C, ведь в противном случае нам бы пришлось использовать все порты на 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.

Все, вы получили функционирующие гироскоп и акселерометр.

Рама

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

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

Как спроектировать собственный квадрокоптер - «Хакер»

Самый простой вариант для любителей DIY — пойти в OBI, «Леруа Мерлен» или на строительный рынок и купить квадратную алюминиевую трубу 12 × 12, а также алюминиевый лист толщиной в 1,5 мм. Для того чтобы сделать раму из таких материалов типа «четыре палки и крепеж», достаточно дрели или ножовки по металлу.

Oehmichen № 2, пилотируемый ква- дрокоптер француз- ского инженере Этьена Омишена, запущенный в 1922 году

Oehmichen № 2, пилотируемый квадрокоптер французского инженере Этьена Омишена, запущенный в 1922 году

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

Длина лучей выбирается исходя из диаметра используемых пропеллеров, так, чтобы после их установки расстояние между окружностями вращающихся винтов было не менее 1–2 см, и уж тем более эти окружности не должны пересекаться. Моторы, устанавливаемые на лучах, должны быть равноудалены от центра рамы, где будет располагаться «мозг», и (в большинстве случаев) находиться на одном расстоянии друг от друга, образуя равносторонний многоугольник.

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

info

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

Как еще можно модернизировать квадрик

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

Как спроектировать собственный квадрокоптер - «Хакер»

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

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

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

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

Моторы и пропеллеры

Из-за вращения моторов в разные стороны приходится использовать разнонаправленные пропеллеры: прямого вращения (против часовой) и обратного вращения (по часовой). Обычно используются двухлопастные пропеллеры, их легче балансировать и найти магазинах, в то время как трехлопастные дадут больше тяги при меньшем диаметре винта, но доставят много головной боли при балансировке.

Как спроектировать собственный квадрокоптер - «Хакер»

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

Регулятор скорости,  он же ESC

Регулятор скорости,
он же ESC

У любого пропеллера есть два основных параметра: диаметр и шаг. Их обозначают по-разному: 10 × 4.5, 10 × 45 или просто 1045. Это означает, что диаметр пропеллера 10 дюймов, а его шаг 4,5 дюйма. Чем длиннее пропеллер и больше шаг, тем большую тягу он сможет создавать, но при этом повысится нагрузка на мотор и увеличится потребление тока, в результате он может сильно перегреться и электроника выйдет из строя.

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

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

А вот и моторчик  на 850 kV

А вот и моторчик на 850 kV

И наконец, бесколлекторные моторы. У моторов есть ключевой параметр — kV. Это количество оборотов в минуту, которые сделает мотор, на поданный вольт напряжения. Это не мощность мотора, это его, скажем так, «передаточное число». Чем меньше kV, тем меньше оборотов, но выше крутящий момент. Чем больше kV при той же мощности, тем больше оборотов и ниже момент.

info

Более прочный материал — дюраль (Д16Т). Практически не гнется, достаточно пружинистый, и его применяют в авиации. Профили из него в ОБИ не продаются, но можно поймать на Митинском рынке на третьем этаже, на рынке ТВЦ «Строй» тоже были.

Питание и контроллеры питания

Капитан подсказывает: чем больше мощность мотора, тем больше батарейка ему нужна. Большая батарейка — это не только емкость (читай, время полета), но и максимальный ток, которая она отдает. Но чем больше батарейка, тем больше и ее вес, что вынуждает скорректировать наши прикидки относительно винтов и моторов.

На сегодняшний день все используют литий-полимерные батарейки (LiPo). Они легкие, емкие, с высоким током разрядки. Единственный минус — при отрицательных температурах работают плохо, но если их держать в кармане и подключать непосредственно перед полетом, то во время разряда они сами слегка разогреваются и не успевают замерзнуть. LiPo-элементы вырабатывают напряжение 3,7 В.

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

Например, твои моторы потребляют 10 А каждый и их четыре штуки, а батарея имеет параметры 2200 мА · ч 30/40C, таким образом, коптеру требуется 4 • 10 A = 40 A, а батарея может выдавать 2,2 A • 30 = 66 A или 2,2 А • 40 = 88 А в течение 5–10 секунд, что явно будет достаточно для питания аппарата. Также эти коэффициенты напрямую влияют на вес аккумулятора. Внимание!

Как спроектировать собственный квадрокоптер - «Хакер»

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

Элементы батареи объединяют последовательно или параллельно. При последовательном включении увеличивается напряжение, при параллельном — емкость. Схему подключения элементов в батарее можно понять по ее маркировке. Например, 3S1P (или просто 3S) — это три последовательно подключенных элемента. Напряжение такой батареи будет 11,1 В. 4S2P — это восемь элементов, две группы, подключенных параллельно по четыре последовательных элемента.

Однако моторы подключаются к батарее не напрямую, а через так называемые регуляторы скорости. Регуляторы скорости (они же «регули» или ESC) управляют скоростью вращения моторов, заставляя твой коптер балансировать на месте или лететь в нужном направлении. Большинство регуляторов имеют встроенный стабилизатор тока на 5 В, от которого можно питать электронику (в частности, «мозг»), можно использовать отдельный стабилизатор тока (UBEC).

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

Китайцы и тут подсуетились, и часто можно встретить регуляторы скорости с уже обновленной прошивкой. Не забывай, что такие регули не следят за состоянием аккумулятора и могут разрядить его ниже 3,0 В на банку, что приведет к его порче. Но в то же время на обычных ESC стоит переключить тип используемого аккумулятора с LiPo на NiMH или отключить уменьшение оборотов при разрядке источника питания (согласно инструкции), чтобы под конец полета внезапно не отключился мотор и твой беспилотник не упал.

Как спроектировать собственный квадрокоптер - «Хакер»

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

Два силовых провода, идущих от регулятора, надо подключить к батарейке. НЕ ПЕРЕПУТАЙ ПОЛЯРНОСТЬ! Вообще, для удобства регуляторы подключают не к самой батарейке, а к так называемому Power Distribution Module — модулю распределения энергии. Это, в общем-то, просто плата, на которой припаяны силовые провода регуляторов, распаяны разветвления для них и припаян силовой кабель, идущий к батарее. Конечно, батарею не надо припаивать, а надо соединить через разъем. Ты же не хочешь перепаивать батарею каждый раз, как она сядет.

Бортовой компьютер и сенсоры

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

• компас и GPS вместе добавляют такие функции, как удержание курса, удержание позиции, возврат на точку старта и выполнение маршрутных заданий (автономный полет). К установке компаса стоит подойти внимательно, так как на его показания сильно влияют расположенные рядом металлические объекты или силовые провода, из-за чего «мозги» не смогут определить верное направление движения;

• сонар или УЗ-дальномер используется для более точного удержания высоты и автономной посадки; • оптический сенсор от мышки используется для удержания позиции на малых высотах; • датчики тока определяют оставшийся заряд аккумулятора и могут активировать функции возврата на точку старта или приземление.

Сейчас существует три основных открытых проекта: MultiWii, ArduCopter и его портированная версия MegaPirateNG. MultiWii самый простой из них, для запуска требует Arduino с процессором 328p, 32u4 или 1280/2560 и хотя бы одним датчиком-гироскопом. ArduCopter — проект, напичканный всевозможным функционалом от простого висения до выполнения сложных маршрутных заданий, но требует особого железа, основанного на двух чипах ATmega.

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

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

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

Наконец, стоит упомянуть еще один компьютер — PX4, отличающийся от клонов Arduino тем, что у него есть UNIX-подобная операционная система реального времени, с шеллом, процессами и всеми делами. Но надо предупредить, что PX4 — платформа новая и довольно сырая. Сразу после сборки не полетит.

Как спроектировать собственный квадрокоптер - «Хакер»

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

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

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

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

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

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

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

Управление

Немного про радиоаппаратуру. Сейчас практически все передатчики для летающих моделей работают на частоте 2,4 ГГц. Они достаточно дальнобойные, и этот частотный диапазон не так зашумлен, как, например, 900 МГц. Для полета вообще-то достаточно четырех каналов: газ, рыскание, тангаж, крен. Ну а восьми каналов точно хватит и на что-нибудь еще.

info

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

Как спроектировать собственный квадрокоптер - «Хакер»

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

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

Introduction: How to Make a Drone Using Arduino UNO | Make a Quadcopter Using Microcontroller

Introduction

Visit My Youtube Channel

A Drone is a very expensive gadget(product) to buy. In this post I am going to discuss, how I make it at cheap?? And How can you make your own like this at cheap price…Well in India all the materials(motors, ESCs etc.) are very expensive(at least for me). So I decided to make it on, as cheapest as possible.

The frame and the Flight Controller is DIY. The frame is made up of scraped aluminium antenna(bar), aluminium celling fan blade and Woods. Arduino UNO along with MPU6050(gyro+Accle) is used as a flight Contrller.

At first Check The VIdeos From my Youtube Channel….

PArt-1 & Part-2………

Step 1: ​Step-1:-Materials Used

These are the materials Used for my Drone You can use any parts/materials as your requirement. If you want to make it as cheap as possible then you can go with the material list below.

1) 1000KV Brushless motor*4pcs

2) 30 Amp ESCs*4pcs

3) 1045 Propeller*4pcs

4) Arduino UNO + MPU6050

5) Perfboard (verroboard)

6) 1.5k,1k and 300E resistors and 1pcs LED.

7) Heat Shrink tube (I am using Electrical Insulation Tape)

8) Double Sided Tape, Soldering Iron, Soldering Wire etc.

9) A plastic Box (for Electronics)

10) 2200 mah or Higher li-po battery.(minimum 30C recommended)

11) Aluminium bar(hollow), Aluminium plate and Woods(soft).

12) Transmitter and receiver (Mine is Flysky-i6x with X6B receiver)

>>>>Buy From link below———-Please use link below to buy stuff…. Don’t worry you don’t have to pay more…..if you bought the stuffs from link below…I will get small kick back…(commission)…..

Link for India….

Motor+ESC+prop

Balance Charger. For lipo or Better to buy this one

Lipo battery

Arduino UNO

MPU6050

Berg Strip+perf board

Xt60 Connector

Transmitter and receiver

Li-Po Voltage checker

For Out of India…….(Banggood)

Transmitter and receiver

Brushless motor

30 Amp ESC

Li-Po Battery

Li-Po Battery Charger

Lipo voltage Checker

Arduino uno

MPU6050

XT60 Connector

1045 propeller

Gearbest…

Flysky fs-i6x with X6B receiver

Li-po battery 11.1v

Lipo voltage checker

Li-Po Battery Charger

Arduino UNO

Mpu6050 Gyro+Accelerometer

XT60 Connector

Brushless motor CW

Brushless Motor CCW

4*30Amp ESCs

1045 Propeller

Heat shrink tube

Step 2: ​Step-2:-Motor Mounting

When you bought the Motors the Motor mount and some screws comes with it. mount the aluminium motor mount using the screws comes with it. (see picture). Mount that to motor Using Screws…

Step 3: ​Step-3:-How to Make a Frame…

I am using old aluminium (yagi) antenna, Soft Wood, and aluminium plate(fan Blade) to make frame. Cut 4 pcs of aluminium bar each of 20cm. Centre plate Dimention is about 11*18cm….The wooden Motor mount is about 10cm long and Diameter of 4.5cm (where motor mounted).

Fix the bars of aluminium with Center plate using screws( as your Requirement) and slide in the motor mount under the aluminium bars and……Here your frame is ready….(check Pictures) also a video of frame Work is on my Youtube Channel…..Check that out..

Step 4: ​Step-4:-Mounting All Things (ESCs and Motors to Frame)

Now mount the motors to it’s wooden motor mount using screws and Nuts (any types) and connect the ESC wire with it (Randomly) and fix the ESCs using Electrical tape or zip ties in my case it’s Electrical tape (it’s cheaper than Zip ties). After connecting all Motors and ESCs cut the +ve and –ve Wire of ESCs and connect all ESCs using Wires or PDB as your setup..I am Using Wires Because there is no space in my frame for ESCs…..And you’re Done…..

******Caution:-Remove all Props while setup…and Don’t Try to Fly Inside the Home….

Step 5: ​Step-5:- Flight Controller

Make a Flight Controller using Arduino UNO and MPU6050…My flight controller is based on the Joop Brokking’s YMFC-AL and it’s a Auto leveling Quad…make the connections as Diagram below……

****Special Thanks to Joop Broking for the Arduino Sketch**** Check his video……

Step 6: ​Step-6:- Connecting the ESCs and Receiver to FC

********Don’t Connect ESCs BEC wire(5 volt)…only connect signal wire******

********And power the receiver using Arduino’s 5 volt supply*******

Now connect the signal wires of ESCs as Describe Below….also shown in the Diagram…

ESC connection…….

Digital pin-4 to ESC1 (Right Front CCW)

Digital pin-5 to ESC2 (Right rear CW)

Digital pin-6 to ESC3 (Left rear CCW)

Digital pin-7 to ESC4 (Left front CW)

Receiver Connection….

Digital pin-8 to Receiver Channel 1

Digital pin-9 to Receiver Channel 2

Digital pin-10 to Receiver Channel 3

Digital pin-11 to Receiver Channel 4

Step 7: Step-7:- Flight Controller Setup (Upload the Sketch)

******Don’t Connect the Flight Battery at This Time******

Now Download the Arduino IDE and Sketch below and extract the Zip file..you will find YMFC-Al schematics, Readme file, ESC calibration Code, Setup Code and Flight Controller Code…..

Arduino IDE

Flight Controller sketch

1)….At first Upload code and open Serial monitor at 56000b and follow the Steps in the Video below…

2) If no Error occurred then upload the ESC calibration Sketch after uploading the code…put Your transmitter at full throttle and connect the Flight Battery after some beeps put Down the throttle (I think this method not works on all types and brands of ESCs,,,,But for mine it’s works perfectly)……

3) After uploading the ESC calibration sketch…Upload the Flight Controller Sketch…..and Your FC is ready….

Step 8: Step-8:-Electronics Box Installing and Prop Mounting.

After completing all electronics works put the all electronics in the Electronics box and complete all wirings and stuffs…..Now mount the CCW propellers to CCW motors and CW prop to CW motors…..And You are Ready to Fly……….

The Hardest part of making this quad is to Tune PIDs…….as your Design…

I’ve Broke 2 pairs of Prop and Electronics box while trying to fly it….

Soooooo,,,,,,Have a Good Fly…………

If you like this project then please … Please Subscribe to my Channel…Also consider Support my future Projects Through my Patreon campaign or Donate Through Paypal….Even an small amount can help a lot.

And if you have any confusion or suggestion about this project or my other projects then please Comment Below…..

Введение

Теперь, когда вы выбрали или спроектировали раму БПЛА, выбрали моторы, несущие винты, ESC и батарею, можно приступить к выбору полётного контроллера. Полётный контроллер для мультироторного беспилотного летательного аппарата представляет собой интегральную схему, обычно состоящую из микропроцессора, датчиков и входных/выходных контактов. После распаковки контроллер полёта не знает какой конкретный тип или конфигурацию БПЛА вы используете, поэтому изначально необходимо будет установить определенные параметры в программном обеспечении, после чего заданная конфигурация загружается на борт

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

ArduinoDroid — Arduino IDE

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

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

ArduinoDroid – легкий в использовании софт. Проводит редактирование, компилирование и загрузку кодов в плату с мобильного устройства или планшета. Так же рекомендуется проводить редактирование шифра или заливать готовый, если программа забанена..

Как еще можно модернизировать квадрик

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

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК

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

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

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

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

Зачем все это?

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

У нас впереди:

  1. Базовые понятия (для начинающих коптероводов).
  2. PID-регуляторы с интерактивной web-демонстрацией работы на виртуальном квадрокоптере.
  3. Собственно программа для Arduino и настроечная программа на Qt.
  4. Опасные тесты квадрокоптера на веревке. Первые полёты.
  5. Крушение и потеря в поле. Автоматический поиск с воздуха средствами Qt и OpenCV.
  6. Окончательные успешные тесты. Подведение итогов. Куда дальше?

Материал объемный, но постараюсь уложиться в 2-3 статьи. Сегодня нас ожидает: спойлер с видео, как наш квадрокоптер полетел; базовые понятия; PID-регуляторы и практика подбора их коэффициентов.

Академический интерес, который, кстати, преследует не только меня (, ). Ну и, конечно же, для души. Я получил огромное удовольствие во время работы и ощутил настоящее непередаваемое счастье, когда «ЭТО» полетело с моей программой

Расширение возможности на Ардуино

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

Упомянутая программная технология применяется для решения интернет-задач, поэтому для визуализации «Умного дома» используется язык Java Script (именно с его помощью создается обработчик и сервер). Результаты можно увидеть на экране компьютера или ПК.

Для реализации задуманного подойдет ноутбук, обычный ПК или Raspberry Pi. Применение такой системы позволяет увеличить ее возможности. Так, если на плате Ардуино имеется небольшой объем памяти, на сервере такие ограничения отсутствуют. Программа пишется таким образом, чтобы обеспечить полное управление платформой.

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

Программа может запомнить время, когда владелец ложится отдыхать и отключать нагрев воды. Таких нюансов, которые при необходимости вносятся в программу, множество. Именно наличие внешнего ПК дает большие возможности контроллеру на Ардуино.

Приложение Blynk

Этакий разработчик идей, имеющий открытый вход  к запуску на платформе Ардуино. Главное требование в использовании – наличие интернета: Wi-Fi или мобильный трафик. Только в этом случае Blynk будет готов к выполнению. Начать использование можно спустя несколько  минут, после окончания настроек. Программой поддерживается АО по выбору пользователя.

Основные функции приложения Blynk заключаются в управлении устройствами при помощи удаления и добавления протоколов HTTP,  а также запросов GET и POST. Значения параметров можно обновлять и получать. Запросы обновляются в самом приложении.

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

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

Скетч для управления роботом на Arduino по Bluetooth через смартфон на Android

В своём скетче я реализовал следующие функции:

  • Движение вперед
  • Движение назад
  • Разворот влево
  • Разворот вправо
  • Плавный поворот влево при движении вперед
  • Плавный поворот вправо при движении вперед
  • Плавный поворот влево при движении назад
  • Плавный поворот вправо при движении назад
  • Остановка
  • Установка скорости 0%
  • Установка скорости 10%
  • Установка скорости 20%
  • Установка скорости 30%
  • Установка скорости 40%
  • Установка скорости 50%
  • Установка скорости 60%
  • Установка скорости 70%
  • Установка скорости 80%
  • Установка скорости 90%
  • Установка скорости 100%

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

4. Общение с нуля

Все, что мы рассмотрели до сих пор, использует уже существующие сервисы, чтобы помочь вам подключаться различными способами, но что, если вы хотите получить полный контроль над каждым аспектом приложения Android? Почему бы не сделать это самостоятельно с нуля?

Харихаран Матхаван проведет нас через весь процесс в этом обширном пошаговом руководстве . Созданное здесь приложение предназначено просто для открытия USB-соединения и передачи последовательных данных назад и вперед между приложением и платой Arduino. Это отличный способ познакомиться с Android Studio и сборкой приложений в целом.

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

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК

Хотя существуют способы создания приложений для Android без кодирования , стоит изучить основы кодирования на Java. Создание собственных приложений — это круто, но, прежде чем вы узнаете об этом, у вас может быть совершенно новая карьера. !

Расположение элементов

Расположение контактов и разъемов влияет на простоту сборки.

Многие пилоты смотрят только на технические характеристики полетных контроллеров и упускают важность дизайна/компоновки элементов. Хорошие пример — CLRacing F7 и Kakute F7

Два отличных полётника, с уверенностью могу их порекомендовать, но глядя только на компоновку скажу, что CLRacing F7 однозначно выигрывает, все контактные площадки расположены по краям платы и сгруппированы по выполняемым функциям. Контакты на Kakute скучкованы, в результате легко получить комок проводов

Хорошие пример — CLRacing F7 и Kakute F7. Два отличных полётника, с уверенностью могу их порекомендовать, но глядя только на компоновку скажу, что CLRacing F7 однозначно выигрывает, все контактные площадки расположены по краям платы и сгруппированы по выполняемым функциям. Контакты на Kakute скучкованы, в результате легко получить комок проводов.

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК

Полетный контроллер CL Racing F7

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК

Полетные контроллер Kakute F7

Это дело вкуса, а он у всех разный.

Arduino Bluetooth Controller

Следующая программа в нашем списке – удачно названный Контроллер Arduino  Bluetooth. Это приложение имеет большую значимость относительно триггеров на изменения в загруженных скетчах, и меньшую значимость для программирования Arduino. Контроллер Arduino по Bluetooth посылает данные на вашу плату по Bluetooth, что дает вам возможность послать серийные данные нажатием кнопки. Вам потребуется модуль Bluetooth для вашей платы, хотя модуль HC-06 широко используется и доступен всего лишь за $3.

Заслуживает упоминания тот факт, что программа загружается на английском языке, хотя на картинках Play Store указан итальянский язык!

Модернизация Motor Shield

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

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК

Меня этот нюанс совсем не устраивает. Именно поэтому я решил взяться за паяльник и привести Motor Shield к удобному для меня виду.

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК

Аккуратно выдрал родные панельки контактов и выкинул их нафиг.

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК

Установил на их место нормальные.

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК

В таком виде модулем стало пользоваться гораздо удобнее. Теперь я смогу нормально подключить провода от Bluetooth в разъемы, а не припаивать их намертво к контактам на Motor Shield.

Начало работы

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

Этапы

При организации системы «Умный дом» на базе Ардуино, стоит действовать по следующему алгоритму:

  • Инсталляция программного кода;
  • Конфигурация приложения под применяемое устройство;
  • Переадресация портов (для роутера);
  • Проведение тестов;
  • Внесение правок и так далее.

В Сети имеется весь необходимый софт на применяемое оборудование — его достаточно скачать с официального сайта и установить (ссылку смотрите выше).

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

Последовательность действий при подключении к компьютеру

Чтобы начать работать с Ардуино в Windows, сделайте следующие шаги:

  • Подготовьте необходимое оборудование — USB-кабель и Arduino.
  • Скачайте программу на странице arduino.cc/en/Main/Software.
  • Подсоедините плату с помощью USB-кабеля. Проследите, чтобы загорелся светодиод PWR.
  • Поставьте необходимый набор драйверов для работы с Ардуино. На этом этапе стоит запустить установку драйвера и дождаться завершения процесса. После жмите на кнопку «Пуск» и перейдите в панель управления. Там откройте вкладку «Система и безопасность» и выберите раздел «Система». После открытия окна выберите «Диспетчер устройств», жмите на название Ардуино и с помощью правой кнопки мышки задайте команду обновления драйвера. Найдите строчку «Browse my computer for Driver software!», кликните по ней и выберите соответствующий драйвер для вашего типа платы — ArduinoUNO.inf (находится в папке с драйверами). Это может быть UNO, Mega 2560 или другая.
  • Запустите среду разработки Ардуино, для чего дважды кликните на значок с приложением.
  • Откройте готовый пример (File — Examples — 1.Basics — Blink).
  • Выберите плату. Для этого перейдите в секцию Tools, а дальше в Board Menu.
  • Установите последовательный порт (его можно найти путем отключения и подключения кабеля).
  • Скачайте скетч в Ардуино. Кликните на «Upload» и дождитесь мигания светодиодов TX и RX на плате. В завершение система показывает, что загрузка прошла успешно. Через несколько секунд после завершения работы должен загореться светодиод 13 L (он будет мигать оранжевым). Если это так, система готова к выполнению задач.

Работа с роутером

Для полноценной работы «Умного дома» важно правильно обращаться с роутером. Здесь требуется выполнить следующие действия — открыть конфигурацию, указать адрес Arduino IP, к примеру, 192.168.10.101 и открыть 80-й порт

После требуется присвоить адресу доменное имя и перейти к процессу тестирования проекта

Учтите, что для такой системы запрещено применение открытого IP-адреса, ведь в этом случае высок риск взлома через Сеть

После требуется присвоить адресу доменное имя и перейти к процессу тестирования проекта. Учтите, что для такой системы запрещено применение открытого IP-адреса, ведь в этом случае высок риск взлома через Сеть.

UART (последовательные порты)

UART расшифровывается как Universal Asynchronous Receiver/Transmitter, что означает асинхронный последовательный порт.

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

У каждого последовательного порта два контакта: TX — для передачи, RX — для приема. Запомните, TX на периферийном устройстве подключается к RX на полетном контроллере и наоборот!

Пример: на полётнике есть UART3 (контакты R3 и T3) и UART6 (контакты R6 и T6). Вы можете назначить им задачи на вкладке Ports в Betaflight конфигураторе.

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК

Количество последовательных портов в полетном контроллере

Возможно, вам потребуются (а может и нет) дополнительные последовательные порты, чем больше свободных есть, тем проще будет в будущем.

Количество портов зависит от дизайна платы и используемого процессора. Например, на ПК с F1 обычно только 2 порта, у F3 и F4 может быть от 3 до 5, а у F7 — шесть или даже 7.

F1 F3 F4 F7
2 порта 3-5 портов 3-6 портов 6-7 портов

Инвертирование сигнала последовательного порта

Процессоры F3 и F7 могут инвертировать сигнал встроенным инвертором, а F1 и F4 — нет.

Сигналы Frsky SBUS и SmartPort являются инвертированными, поэтому владельцам ПК на F3 и F7 повезло, такие данные понимаются без проблем (F3 и F7 — более новые серии процессоров, подробнее тут).

Однако, более старые процессоры, типа F1 и F4 требуют наличия внешнего инвертора сигнала, который и подключается к соответствующему последовательному порту. Для удобства пользователей некоторые ПК на F4 уже имеют схемы для инверсии сигналов SBUS и SmartPort, так что приемник подключается напрямую к ПК. Если встроенного инвертора нет, то вам придется использовать одно обходных решений, например, программную эмуляцию последовательного порта (soft serial) или найти неинвертированный сигнал на приемнике.

Если портов не хватает, можно использовать программную эмуляцию (soft serial) чтобы «создать» ещё больше портов. К сожалению, эмулируемые порты работают медленнее аппаратных (нельзя выставить большую скорость) и не подходят для важных задач, где требуется быстрая реакция, например не подойдут для работы с приемниками. Ну и, конечно, программная эмуляция требует довольно много ресурсов процессора.

Прием данных от устройства

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

Полученные данные будут в форме необработанных байтов. Нам придется перекодировать их в читаемый формат, например, UTF-8. Затем они добавляются в с помощью специального метода . Это делается так потому, что любые изменения в пользовательском интерфейсе могут выполняться только в потоке пользовательского интерфейса. Так как данный будет запущен, как фоновый поток, то он не может напрямую повлиять на пользовательский интерфейс.

Открытие соединения

Во-первых, давайте определим метод для кнопки Begin. При нажатии необходимо выполнить поиск всех подключенных устройств, а затем проверить, совпадает ли VendorID подключенного устройства (ID поставщика) с VendorID Arduino. Если совпадение найдено, то у пользователя должно быть запрошено разрешение. Каждое ведомое USB устройство имеет ID поставщика (Vendor ID) и ID продукта (Product ID), которые могут быть использованы для определения того, какие драйвера должны использоваться для этого устройства. Vendor ID для любой платы Arduino равен 0x2341 или 9025.

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

Если первое условие выполняется, и если пользователь дал разрешение, то начать соединение с устройством, у которого Vendor ID совпадает с необходимым нам Vendor ID. Кроме того, если принято широковещательное сообщение о подключении или отключении устройства, вручную вызывать методы для кнопок Start и Stop. определяется с использованием устройства и соединения в качестве аргументов. В случае успеха открыть и установить соответствующие параметры. Значения параметров для Arduino Uno равны: 8 бит данных, 1 стоповый бит, бита четности нет, управление потоком выключено. Скорость передачи данных может быть 300, 600, 1200, 2400, 4800, 9600, 14400, 19200, 28800, 38400, 57600 или 115200 бит/с, но мы будем использовать стандартные 9600 бит/с.

Xiaomi Mi Max 3

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК
КАКОЙ СМАРТФОН ВЫБРАТЬ ДЛЯ УПРАВЛЕНИЯ КВАДРОКОПТЕРОМ? 3

Xiaomi Mi Max 3 во мнениях многих людей считается планшетом с возможностью совершения звонков. Действительно, экран с диагональю 6,9 дюйма в формате 18:9 впечатляет. Разрешением 2160×1080 пикселей , что делает отличным изображение как при просмотре фильмов, просмотра фотографий или использования приложения для пользователя дрона. 

Телефон Xiaomi работает на основе процессора Qualcomm Snapdragon 636 с 4 ГБ ОЗУ. Долгое время работы обеспечивает аккумулятор емкостью 5500 мач. Имея в кармане этот смартфон, не понадобится часто использовать зарядные устройства. Xiaomi Mi Max 3 по сравнению с другими смартфонами такого класса, является также гораздо дешевле.

Технические данные:

  • экран: 6,9 дюйма
  • разрешение: 1080×2160 px
  • процессор: Qualcomm Snapdragon 636
  • ОПЕРАТИВНАЯ память: 6GB
  • аккумулятор: 5500 мач
  • камера:12 Мп + 5 Мп

Как это выглядит физически

Для контроля открытия на калитку, двери дома и вход кладовки устанавливаются герконовые датчики. Питание системы отопления осуществляется через силовое реле-повторитель, которое в свою очередь запускается от платы автоматического включения, управляемого Ардуино.

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК

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

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

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

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК

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

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

Текущая установка сохраняется в энергонезависимой памяти Ардуино, и читается в момент рестарта микроконтроллера. Информация о форс-мажорных обстоятельствах отправляется на телефон владельца.

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

Итак, что потребуется:

Наименование Количество
Ардуино-реле 220 В на 4 контакта 1
Реле-повторитель для высокой нагрузки 2
GSM модуль SIM900 1
Arduino UNO R3 1
Реле-повторитель для коммутации 5 В работающее от сети переменного тока 220 В 1
Диоды зеленые 2
Кнопки 2
Резисторы 10 kОм 5
Резисторы 220 Ом 5
Диоды красные 2
Фоторезистор 1
Терморезистор 1
Резистор 2.2 кОм 1
Конденсатор 0.1 мкФ 1
Электролитный конденсатор 470 мкФ, 6.3 В 1

Также потребуется необходимое количество провода для соединения датчиков и выполнения силовых линий.

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

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК
Один из сборных дронов Чтобы упростить покупку первого квадрокоптера, но дать основы его создания, стоит брать комплекты дронов, в которые уже включены все необходимые детали аппарата. Их прочность, мощность и возможности уже выбраны согласно строению и весу итогового БПЛА.

Подбор материалов и комплектующих

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

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

Детали с Али экспресса

Один из бюджетных вариантов, представленный на Aliexpress для самостоятельной сборки, без ухудшения функциональности квадрокоптера – Flysky i6 F450. Его цена находится в районе 12086 рублей.

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

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК
Что идет в комплекте

В наборе идут:

Наименование Характеристики
Рама Четырех лучевая. Материал – стекловолокно и полиамидный нейлон.
Двигатель 4 штуки, 53 грамма каждый
ESC Simonk 30A, 4 шт.
Контроллер полета APM V2.8.0
Сенсоры GPS датчик 8n
Модуль питания 5В, 2А
Винт 8 штук
Звуковой сигнализатор уровня разряда
Кабели питания и соединения компонентов
Передатчик, приемник и пульт управления
Аккумуляторов нет. Необходимо докупать самостоятельно. Пользователи, уже купившие этот дрон, рекомендуют 3300 mAh 25c.

Для обеспечения съемки квадрокоптером понадобится камера, она приобретается отдельно. В первый, самостоятельно собранный дрон, обычно устанавливают ее версию попроще.

Сборка

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

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

В конце устанавливается камера в предназначенное для этого место на раме дрона.

Настройка и отладка

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

Выбор и установка прошивки

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

Калибровка

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

Аппарат должен находиться в воздухе неподвижно. Если это не так, то имеет место перекос положения датчика или самого контроллера. Калибровка производится выравниванием сенсора и платы АРМ в нормальное, ровное относительно винтов положение.

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

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

Один из первых шагов — создание рамы нашего квадрокоптера. Было решено пойти по пути наименьшего сопротивления и напечатать раму на 3D принтере. Помимо простоты изготовления, каркас, напечатанный на 3D принтере, получается достаточно легкий благодаря печати «сотами». Детали были спроектированы в Solidworks. Ниже представлены все твердотельные модели. Все можете их спокойно скачать и отправлять на печать. Детали сохранены в формате .stl. Если хотите, можете их смело дорабатывать и изменять с использованием того же Solidworks. Модели параметрические, так что если вы решите использовать другие моторы, достаточно просто изменить несколько параметров в модели и вы получите готовый каркас под ваши габаритные размеры квадрокоптера.

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПКОтносительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПКОтносительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК

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

Относительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПКОтносительно дешевый Quadcopter на Arduino с управлением от телефона, планшета, ПК

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

Один из первых шагов — создание рамы нашего квадрокоптера. Было решено пойти по пути наименьшего сопротивления и напечатать раму на 3D принтере. Помимо простоты изготовления, каркас, напечатанный на 3D принтере , получается достаточно легкий благодаря печати «сотами». Детали были спроектированы в Solidworks. Ниже представлены все твердотельные модели. Все можете их спокойно скачать и отправлять на печать. Детали сохранены в формате.stl. Если хотите, можете их смело дорабатывать и изменять с использованием того же Solidworks. Модели параметрические, так что если вы решите использовать другие моторы, достаточно просто изменить несколько параметров в модели и вы получите готовый каркас под ваши габаритные размеры квадрокоптера.

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

Virtuino

Программа для Андроид, предназначенная для мониторинга сенсора. Управляет электро устройствами через Bluetooth, Wi-Fi или Интернет.

При помощи Виртуино создаются:

 Приложение способно совмещать несколько проектов в один. Управляет отличными платформами единовременно через Bluetooth и Wi-fi. Бесплатно в использовании. Относится к подкатегории System Maintenance. Есть возможность проектировать внутреннее оформление с разной визуализацией.

К ним относятся:

  • светодиоды;
  • переключатели;
  • диаграммы;
  • счетчики;
  • аналоговые приборы.

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

Управление Ардуино через компьютер

Функция Serial.available() получает количество байт доступных для чтения из последовательного порта. Это те байты которые отправлены с компьютера и записаны в буфер последовательного порта. Буфер Serial monitor Arduino может хранить максимум до 64 байт. Функция используется также при взаимодействии Bluetooth модуля к Ардуино и полезна при отладке устройства на этапе проектирования.

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

Понравилась статья? Поделить с друзьями:
  • Квадрокоптер mobicaro discovery инструкция управления
  • Квадрокоптер из детского мира инструкция
  • Квадрокоптер mobicaro discover s61 инструкция по джойстику
  • Квадрокоптер е58 инструкция на русском
  • Квадрокоптер mobicaro asterus с удержанием высоты 7143350 1 инструкция