Летающий робот своими руками

Добавил пользователь Alex
Обновлено: 06.10.2024

Что из себя представляет коптер – летающий робот с несколькими пропеллерами?

1. Основные компоненты. Сенсоры.
2. Архитектура приложения на примерах: Ардуино, PX4.
3. Управляемый и автономный полет.
4. Фото и видео-съемка.
5. Внешнее оборудование. Коммуникация.
6. Области применения.
На видеозаписи доклада можно увидеть поднятие в воздух аппарата, который в полевых испытаниях достиг рекордной точности 10-15 см при полете по прямолинейной траектории.

Кто: Анатолий Филин, Денис Елданди
Где: РИТ 2013
Когда: 22-23 апреля 2013


Анатолий Филин: Сам я бывший разработчик. Сегодня будем рассказывать не о разработке, а об экзотической теме летающих роботов. Я хотел понять: у тех людей, которые здесь собрались – кто когда-нибудь запускал свои самолёты, вертолёты – много народа таких? О, отлично, народу полно. Поэтому этот слайд мы пропускаем.



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



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

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

Пока он летает, если это никого не напрягает, я продолжу говорить.


Если вы захотели заниматься этим делом, надо примерно понимать, где что в мире происходит на данный момент. Существует несколько центров притяжения, центров парообразования в этом мире летающих автономных устройств. Это, прежде всего, Калифорния, 3D Robotics, в которой производят платы АРМ 2 или 2.5 и так далее, который сейчас, собственно, летает. Второй важный для нас центр притяжения – это Швейцария, Цюрих, там находится Цюрихский университет, при котором лаборатория компьютерного зрения, и там разрабатываются, в том числе и платы PX4, с которой мы тоже работали. Ещё важная вещь – Китай или Гонконг – это большая тема — в том случае, если вам захочется собрать своё, вы мимо магазинов Hobby King, естественно, не пройдёте.


С чего надо начать для того, чтобы собрать свой коптер? Надо понять, для чего мы его собираем. Это, прежде всего, вес. Существуют онлайновые калькуляторы – несколько калькуляторов, они достаточно неочевидные в некоторых случаях, в них приходится разобраться. Надо вычислить размер винтов, исходя из размера винтов – размеры рамы, моторов, ESC и, соответственно, батареи. На самом деле у нас, как правило, всё-таки два параметра: вес и продолжительность полёта. Допустим, мы должны летать по каким-то причинам 10 или 15 минут без перезарядки. Чтобы летать дольше, нам нужно увеличить размер батареи и так далее. Соответственно, увеличится вес. Нужно пройти через несколько таких циклов.

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


Это рама. Здесь стоят параметры, в том числе цена. Цена является важным параметром, в некоторых случаях определяющим. Например, эти две рамы примерно одинаковые – одна из Америки, другая из Гонконга. Я пропускаю моторы и ESC, потому что заранее знаю, что времени на это не хватит.



Самое интересное – это, безусловно, плата управления. Здесь нарисована как раз та самая плата, которая стоит в наших двух устройствах. В том вертолётике, который у меня в руках, стоит предыдущая версия. На плате большой чёрный квадрат – это ЦПУ. Естественно, это самый существенный элемент, фактически, это бортовой компьютер. Датчики, из них самые важные – гироскоп, акселерометр, магнетометр, давления. Это варьируется на разных платах.



Последняя вещь, без которой не обойтись – это пульт с приёмником. Здесь тоже придётся выбирать. Есть и топовые модели, есть модели бюджетные. Для всех целей тестирования и разработки хватает бюджетных моделей. Важно, чтобы там было, как минимум, шесть каналов, и, собственно, частота, как правило, будет как раз такая – 2.4 ГГц. Более высокая частота уменьшает диапазон взаимодействия. В этой частоте практически все в России работают. Кроме того, существуют какие-то правила, по которым в стране можно летать на определённой частоте. В России, по-моему – 2.4.


Всего предыдущего, всех этих деталей хватает, чтобы запустить и поднять свой вертолёт. Но хочется большего. Прежде всего, конечно, хочется полететь в некую точку и там зависнуть. Или, например, сфотографировать что-то. Чтобы прилететь в эту точку, нужно найти её координаты. И, соответственно, для того, чтобы прилететь к этим координатам, нужно GPS. GPS существуют самые разнообразные, мы ещё поговорим про точность. Здесь стоит один из лучших GPS, которые существуют, он достаточно бюджетный – в пределах 100 долларов. Плата совместима со всем. Прекрасно летает, поддерживает протокол NMEA, который очень важен в мире GPS.

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

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

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

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


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


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


Внутри IMU есть гирокомпас, гироскоп и акселератор. Данные с него попадают на реализованный внутри пропорциональный PID контролер, который, зная более-менее положение и зная то, к чему надо стремиться – скажем, к горизонтальному положению, — подаёт соответствующую команду на мотор.


Анатолий Филин:Мы показали, как всё летает с пульта. Самое интересное начинается, конечно, с момента автоматического управления. И в том, и в другом автопилоте, с которыми мы работали – можно купить коптер с автопилотом, можно запрограммировать самому – самый очевидный, но нельзя сказать, что тривиальный вариант состоит в полёте по траектории, задаваемой с помощью GPS. Это реальная картинка, снятая из контрольной панели системы управления. Кроме того, более продвинутый режим – это в режиме распознавания препятствий, окружающей среды, когда на коптере стоит одна или несколько видеокамер, которые могут оценивать ситуацию, распознавать, находить и обходить препятствия – это вообще более крутой режим. С этим режимом мы не имели дело.

Просто для информации – существует полуавтономная система Vicon (это фирма, система наверняка как-то называется), которая заключается в том, что коптер летит в относительно небольшом пространстве, окружённом большим числом фотодатчиков. На коптере установлен маячок. Информация о местоположении в реальном времени с очень высокой частотой поступает в управляющий компьютер, который обратно посылает следующую координату, то есть команду на борт.





Существует несколько методик вычисления этих поправок. В двух словах: один из основных элементов неточности, причин неточности – это атмосферные явления, облака, состояния ионосферы и т.д. Если эти два элемента находятся на небольшом расстоянии, то состояние атмосферы предполагается примерно одинаковым, сравнимым. Соответственно, базовая станция знает, какая ошибка до нее доходит, эту ошибку она транслирует на ровер. Ровер применяет эту ошибку на систему координат, которую он получил со спутника.


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


Схема эксперимента примерно такая. Где-то в офисе стояла станция, которая вычисляла эти поправки. Через интернет мы получали её в поле, через модем снимали, через радиолинк посылали на ровер, который находился в нашем коптере. Сначала мы проверили – там происходит довольно значительный период стабилизации. Эта система установилась где-то в 5-10-сантиметровую точность, отрелаксировала туда. После этого – естественно, этот процесс произошёл не за один день, а за несколько месяцев – удалось пролететь с достаточно высокой точностью.



Мы пытались лететь по сетке, думая, что всё будет хорошо. Но оказалось, что сетка – полметра, бетонные дорожки, и точности недостаточно. Поэтому мы тупо летели с севера на юг, с востока на запад, и по лог-файлу среднее отклонение – 16 см. Я думаю, что если оттуда вычесть погрешность GPS и погрешность вычислений, то эта точность увеличится, она не должна уменьшиться.


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


Это полезные ссылки.


Это стол Дениса – слева то, как он выглядел до того, как он начал заниматься этим проектом. Справа – то, что вам предстоит, если вы всем этим займётесь.


Вопросы из зала:

— А ещё полетаем?

Анатолий Филин: Полетаем.

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

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

Анатолий Филин: На самом деле, применений очень много. 2 или 3 дня назад я проезжал рядом с президиумом Академии Наук, и там два молодых оператора пускали вертолёт, такой, как в нашем обзорном слайде в левом верхнем углу (за $700). И они же купили вертолёт, который находится на слайде ниже – тот самый, за 7 тысяч долларов. И занимаются операторской съёмкой. Они закончили ВГИК и, собственно, это большая тема для киноиндустрии. Вторая тема, которая достаточно реальна – где-то 200 коптеров стоимостью по 7 тысяч долларов используются в Афганистане для нахождения мин. Вообще, честно говоря, я не хочу рассказывать про тот проект, которым мы занимаемся, но, на мой взгляд, так же, как 90е годы характеризуются взрывообразным развитием Интернета,, интернет-технологий – гигантские бум, когда создавались Amazon, eBay и так далее – все эти монстры. То текущее десятилетие – это будет десятилетием робототехники. У нас разработческая компания и мы стараемся, в том числе, находиться на грани новых технологий – это интересно, мотивирует и так далее. Но за всем этим стоит некий проект, о котором я расскажу, может быть, на следующей конференции.

— По поводу PX4. Эта плата опенсорсная?

Анатолий Филин: Да, и та, и другая плата FPX4 – это опенсорсная схемотехника и код.

— И второй вопрос. Какой смысл получения координат с точностью до сантиметра? Я тоже летаю на коптерах и самолётах, но они во времени растянуты. Он будет уходить на метр, на два, на три, но это медленный процесс.

Анатолий Филин: Смысл связан с некоторой прикладной задачей, которую мы пытались решить. То, что это достижимо – мы, в принципе, показали. Одно из основных доказательств возможности того, что мы делаем – состоит в том, что можно пролететь с такой точностью.

— Получается, что эта дифференциальная поправка изменяется раз в секунду?

Анатолий Филин: Да, дифференциальная поправка пересчитывается редко. Но сам GPS в нашем случае даёт, по-моему, 20 Гц на выходе. А обработка показаний гироскопа, магнитометра и так далее – это вообще идёт 100 Гц. И пересчёт обратной связи тоже идёт с какой-то частотой – это зависит от алгоритма и быстродействия, но с очень высокой частотой. Это не раз в секунду. 100 Гц вполне достижимо.

— Задача была именно зависнуть в какой-то точке надолго?

Анатолий Филин: Первая, простая задача – зависнуть в точке.

— Вопрос такой. Двигатели электронные ограничены по времени – были ли варианты жидкостные, внутрисгораемые?

Анатолий Филин: Действительно, вопрос батареи – это ключевой вопрос. Продолжительность полёта на данный момент на данном агрегате даже без какой-то нагрузки составляет 15 минут. Существует несколько подходов к решению этого вопроса. Во-первых, действительно, может быть бензиновый двигатель. Дальше – есть батареи, которые работают как электрические, но работают на жидком топливе. Мы не пробовали. Кроме того, американцы придумали лазерную зарядку в воздухе. Солнечная батарея заряжается так.

— Аппараты легче воздуха тоже не рассматривали? Там сразу увеличивается время полёта – до дня.

Анатолий Филин: Я понимаю. Это вполне возможно. Вы дирижабль имеете в виду? Он медленнее, понимаете? А эта штука может лететь 50 км/ч, а то и больше.

— Я не знаю, в чём коммерческая ценность вашего проекта, соответственно, есть варианты.

Анатолий Филин: Да.

— PX4 – вы сейчас на каком этапе, если, опять же, не секрет?

Анатолий Филин: На этапе её освоения. Пока что мы ещё не начали программировать на PX4. Какой-то период есть, кривая – мы находимся сейчас на этапе освоения PX4, мы закупили всё оборудование.

— Выбор операционки реального времени – вы уже приступили, соответственно, к программированию, опыту?

Анатолий Филин: Нет, к опыту – нет. В смысле, к программированию мы приступили, а к PX4 нет.

— Понятно, спасибо.

Анатолий Филин: Спасибо за вопросы. У меня 0 минут 0 секунд.

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




ВИДЕО

КОМПОНЕНТЫ

Каталоги ссылок на Алиэкспресс на этом сайте:

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





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

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

Шаг 1: Необходимые материалы



Также вам понадобится одна большая металлическая скрепка и бусина (для заднего опорного колеса).

Для изготовления каркаса робота использован кусок плексигласа (оргстекла) 12х9,5 см. Можно сделать каркас из дерева или металла, или даже из компакт-дисков.

  • Дрель
  • Суперклей
  • Отвертка
  • Клеевой пистолет (опционально)

Для питания робота используется батарейка 9В (крона), она достаточно компактная и дешевая, но разрядится уже примерно через час. Возможно, вы захотите сделать питание от аккумулятора на 6 В (минимум) или 7 В (максимум). Аккумулятор мощнее батарейки, но и дороже и больше по габаритам.

Шаг 2: Делаем каркас робота



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

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

Можно также просверлить отверстия под провода электромоторов и питания.

Шаг 3: Монтируем электронику




Закрепите на каркасе плату контроллера и драйвер двигателей, используя стойки для печатных плат, винты и гайки. Миниатюрная макетная плата клеится на липкий слой (уже есть на нижней стороне) (фото 1).

Теперь делаем заднее опорное колесо из скрепки и бусины (фото 2). Концы проволоки закрепите на нижней стороне каркаса суперклеем или термоклеем.



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

Шаг 5: Схема подключений



Теперь приступаем к подключению электронных компонентов. Подключение компонентов происходит согласно схеме на рисунке 1.

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

Шаг 6: Код


Код, который приведен ниже, сделан с помощью Codebender.

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

Если робот не двигается, может изменить контакты электромоторов (motorA1 и motorA2 или motorB1 и motorB2).

Шаг 7: Завершенный робот


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

Рассказываю как сделать какую-либо вещь с пошаговыми фото и видео инструкциями.

Результат

+

Лучшая работа

Лучшая работа

+

Шаг 1

Шаг 1

+

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

Справа нашего треугольника рисуем два прямоугольника - это будет правая рука нашего робота.

Шаг 2

Шаг 2

+

Шаг 3

Шаг 3

+

Без левой руки роботу будет сложно, давайте скорей это исправим, рисуем левую руку.

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

Шаг 4

Шаг 4

+

Шаг 5

Шаг 5

+

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

В самом низу треугольника давайте нарисуем небольшой кружок.

Шаг 6

Шаг 6

+

Шаг 7

Шаг 7

+

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

Под наклоном нарисуем два вертикальных прямоугольничка - это будет левая и правая нога.

Шаг 8

Шаг 8

+

Шаг 9

Шаг 9

+

Итак, почти все, нарисуем по два квадрата и 2 прямоугольника - продолжение ножек нашего робота.

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

Шаг 10

Шаг 10

+

УРАААА. У тебя получилось. Дорогой друг, расскажи и покажи всем, что у тебя вышло. Мы опубликуем твой рисунок в "Ваших работах". ПОКАЗАТЬ!

Ваши работы

Работа 3

+

Работа 4

+

Добавить комментарий

ХОТИТЕ ЗНАТЬ НЕМНОГО БОЛЬШЕ ЧЕМ ДРУГИЕ?

Популярные

О портале

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

Читайте также: