ТОП-5 курсов по программированию дронов [2023]

Содержание
  1. Программист дронов
  2. Что делает программист дронов
  3. Чем отличается инженер-разработчик БЛА от программиста дронов
  4. Востребованность профессии
  5. Где работают программисты дронов?
  6. Как стать программистом дронов
  7. Обучение
  8. Профессиональное развитие программиста дронов
  9. Стажёр (intern, trainee)
  10. Джун (junior)
  11. Средний (middle)
  12. Старший (senior)
  13. Ведущий (lead)
  14. Как проходит обучение на платформе
  15. Получить презентацию курса и консультацию специалиста
  16. Часто задаваемые вопросы
  17. Что в программе
  18. Теория
  19. Практика
  20. Итоги
  21. Бонусы обучения в Skillbox
  22. Какие бывают дроны
  23. Автономная навигация
  24. Полетный контроллер
  25. Robot Operating System
  26. Продолжение доступно только участникам
  27. Вариант 2. Открой один материал
  28. Перспективы профессии
  29. Технические характеристики
  30. Глаза
  31. Крылья и тело
  32. AR в DRONE
  33. SDK/API
  34. Nodecopter
  35. GPS, QGroundControl и полет по вейпоинтам
  36. Дополнительные сенсоры
  37. Расписание
  38. Этапы соревнований
  39. Этап 2
  40. Финал. Предметный тур
  41. Требования к команде
  42. Hard skills необходимые для старта
  43. Hard skills необходимые финалистам
  44. Численность команды и роли
  45. Материалы подготовки
  46. Что такое квадрокоптер и для чего это надо

Программист дронов

ТОП-5 курсов по программированию дронов [2023]

Программист дронов разрабатывает ПО для беспилотных летательных аппаратов (БПЛА, дальше – БЛА). Так как индустрия стремительно развивается, востребованность программистов дронов с годами будет только расти. Заработная плата в России начинается от 80 тысяч рублей, опытные и высококвалифицированные программисты могут зарабатывать 150–250 тысяч. Кстати, недавно центр профориентации ПрофГид разработал точный тест на профориентацию, который сам расскажет, какие профессии вам подходят, даст заключение о вашем типе личности и интеллекте.

  • Что делает программист дронов
  • Чем отличается инженер-разработчик БЛА от программиста дронов
  • Востребованность профессии
  • Требования к программисту дронов
  • Где работают программисты дронов?
  • Примеры компаний с вакансиями программиста дронов
  • Как стать программистом дронов
  • Обучение
  • Профессиональное развитие программиста дронов

А вы знали, что находитесь на сайте Центра профориентации ПрофГид? Мы расскажем, подходит ли вам профессия Программист дронов на онлайн профориентации!

Смотрите про коптеры:  Руководство: как использовать Betaflight SoftSerial | RCDetails Blog

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

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

Что делает программист дронов

Вот что делает программист дронов:

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

Чем отличается инженер-разработчик БЛА от программиста дронов

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

ТОП-5 курсов по программированию дронов [2023]

Востребованность профессии

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

На сайтах крупнейших порталов онлайн-рекрутмента hh. ru и superjob. ru пока немного вакансий – до 100 предложений по всей России. Так как область достаточно узкая и программистов, специализирующихся на дронах, мало, профессия очень перспективна, а конкуренции на рынке труда практически нет.

Где работают программисты дронов?

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

Вакансии инженера-разработчика ПО для БЛА предлагают:

  • IT-компании;
  • поставщики и производители квадрокоптеров и дронов;
  • госкорпорации (Росатом, Норникель);
  • научно-исследовательские институты робототехники;
  • правоохранительные органы (ФСБ, ГАИ, ФСО);
  • органы военного управления;
  • промышленные предприятия (строительство, добыча полезных ископаемых и др.);
  • транспортные компании и службы доставки;
  • фермерские хозяйства и агрокомпании.

Как стать программистом дронов

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

Если во взрослом возрасте вы хотите с нуля освоить профессию, то у вас может быть несколько путей:

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

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

ТОП-5 курсов по программированию дронов [2023]

Обучение

В колледжах изучать программирование можно на специальностях группы 09. 00 «Информатика и вычислительная техника»:

  • 09.02.03 Программирование в компьютерных системах;
  • 09.02.05 Прикладная информатика (по отраслям);
  • 09.02.07 Информационные системы и программирование.

Выпускники этих специальностей – это техники-программисты среднего уровня.

В вузах профессию программиста можно получить на направлениях этой же группы или групп 01. 00 «Математика и механика» и 02. 00 – «Компьютерные и информационные науки»:

  • 01.03.02 Прикладная математика и информатика;
  • 01.03.04 Прикладная математика;
  • 01.03.03 Математическое обеспечение и администрирование информационных систем.

Выпускники этих направлений – инженеры-программисты, которым по силам разрабатывать уникальное ПО.

Еще один вариант обучения программированию дронов – это погружение в изучение инженерных особенностей авиационной техники. Например, по программам направления 24. 05 «Интегрированные системы летательных аппаратов» в Московском авиационном институте» готовят инженеров-робототехников, разбирающихся и в механике, и в электронике, и в программной части летательных аппаратов, в том числе и дронов – БЛА.

SkillBox проводит курсы по программированию дронов. Вы познакомитесь с устройством летающей робототехники. Научитесь программировать беспилотники и моделировать полёты дронов в различных условиях. Изучите инструменты для решения прикладных задач с помощью беспилотников. Курс длится 2 месяца. Разработан специалистами МАИ. Даётся рассрочка на 12 месяцев.

Профессиональное развитие программиста дронов

Классификация программистов по уровню мастерства зависит от многих факторов: объема знаний и умений, опыта, автономности в работе, способности принимать организационные решения и управлять командой. Условно по этим параметрам программистов можно разделить на несколько категорий.

Стажёр (intern, trainee)

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

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

Работа подойдет студентам IT-специальностей последних курсов вузов.

Заработная плата стажеров: 30–50 тысяч рублей.

Джун (junior)

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

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

Работа подойдет тем, кто уже имеет общие представления о системах управления БЛА и имеет небольшой опыт в написании подпрограмм.

Заработная плата джуна: 80–120 тысяч рублей.

Средний (middle)

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

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

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

Заработная плата мидлов: 150–180 тысяч рублей.

Старший (senior)

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

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

Заработная плата сеньоров: 200–250 тысяч рублей.

Ведущий (lead)

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

Заработная плата тимлида: от 250 тысяч и выше.

Карьера программистов дронов может развиваться и по горизонтальному принципу: заработная плата и уровень мастерства будут зависеть от масштабов проекта. Перспективой профессионального роста является работа в более крупной компании.

Как проходит обучение на платформе

  • Знакомитесь с платформойПлатформа Skillbox — собственная разработка компании, которую мы постоянно улучшаем. Вас ждут видео, практические задания и общение с кураторами. Доступ к материалам откроется сразу после покупки курса.
  • Получаете знанияКурсы состоят из тематических видео разной длительности. Смотрите их когда и где угодно. Доступ бессрочный, чтобы вы всегда могли вернуться и повторить теорию.
  • Выполняете заданияМы уверены, что навыки отрабатываются только через практику. Поэтому после теории вас ждёт практическая работа или тест. Все задачи приближены к реальным — их можно с гордостью положить в портфолио.
  • Работаете с кураторомПроверкой заданий занимаются кураторы. Это эксперты по теме курса. Они помогут с трудными задачами и подскажут, как улучшить ваши проекты. Общаться с проверяющими кураторами можно прямо на платформе.

Мероприятия для погружения в профессию

  • Введение в летающую робототехникуПознакомитесь с историей появления и применения беспилотных авиационных систем (БАС). Изучите основные проблемы и направления разработок в области беспилотников. Узнаете, как с помощью дронов ведётся наблюдение за объектами и строительством. Установите программы, необходимые для прохождения курса.
  • Основы аппаратных и навигационных комплексов БАСРассмотрите устройство дронов и общие принципы их работы. Изучите самые распространённые навигационные системы. Узнаете, как не допустить типичных ошибок при разработке автономных беспилотников. Поймёте, зачем нужно имитационное моделирование.
  • Базовые теоретические основы разработки летающей робототехникиИзучите основы механики движения и теории автоматического управления беспилотником. Познакомитесь с типовыми системами управления дрона и их реализацией.
  • Разработка симулятора беспилотного летательного аппарата (БЛА)Узнаете, что такое расширенная математическая модель, научитесь применять её на практике. Сможете создавать оптимальную траекторию полёта. Изучите компоненты системы управления беспилотником. Воспроизведёте алгоритм создания симулятора для своего проекта.
  • Основы разработки ПО для летающей робототехникиНаучитесь использовать фреймворк ROS. Узнаете, как работать с системами имитационного моделирования. Изучите основы статистической обработки информации бортовых систем дронов. Познакомитесь с автопилотом PX4. Поймёте, как моделировать датчики и программировать полёты с помощью фреймворка ROS.
  • Основы создания систем технического зрения для автономных БЛАСможете создавать навигационные системы с использованием технического зрения. Разберётесь с калибровкой камеры. Изучите и построите системы навигации и управления БЛА по реперным маркерам или с помощью оптического потока.
  • Основы разработки систем предотвращения столкновений и построение картыУзнаете, какие дальномерные системы применяются для обнаружения препятствий. Освоите алгоритмы построения карты местности. Рассмотрите методы обнаружения препятствий. Научитесь строить карты при помощи лазерного дальномера или стереокамеры.
  • Основы разработки систем планирования пути и облёта препятствийИзучите алгоритмы планирования пути. Узнаете, какие бывают системы облёта препятствий.
  • Основы разработки ПО для группового полётаОсвоите типовые алгоритмы и схемы управления группой БЛА. Познакомитесь со сложными кейсами их реализации. Узнаете, как планировать траекторию группы дронов. Создадите систему управления группой из 5–10 беспилотников.
  • Перспективы профессииУзнаете, каким может быть карьерный путь специалиста-разработчика дронов. Поймёте, чем отличается работа робототехника в разных организациях.
  • Итоговый проект. Система полёта дронаВы создадите систему полёта беспилотника в лесу и примените один из алгоритмов облёта препятствий.

Получить презентацию курса и консультацию специалиста

Ваша заявка успешно отправлена

Наш менеджер свяжется с вами в ближайшее время

ТОП-5 курсов по программированию дронов [2023]

Михаил КолодочкаЛидер команды RegisLab МАИРазрабатывает системы технического зрения, управления и навигации автономных дронов. Победитель чемпионата Worldskills в номинации «Эксплуатация БЛА», соревнований по дрон-рейсингу, конкурса «Робокросс 2017» и хакатона «Первые командные игры дронов 2023» в МФТИ. Автор научных публикаций. Работал в Copter Express. Инженер центра БПЛА МАИ.

Участвует в распродаже Скидка 30% действует 0 дня 00:00:00

Часто задаваемые вопросы

  • Я никогда не программировал дроны. У меня получится?Для уверенного старта в программе крайне желательно уметь решать алгебраические и дифференциальные уравнения, выполнять арифметические операции с матрицами. Кроме того, желательно иметь навыки написания программного кода на языках Python, C++, понимать суть объектно-ориентированного подхода.
  • Какой график занятий? Получится ли совмещать его с работой?Вы можете изучать материалы курса как вам удобно и совмещать это с работой и личной жизнью. Более того, все видео будут доступны и по окончании курса, так что вы сможете освежить свои знания в любой момент.
  • Сколько часов в неделю мне нужно будет уделять практическим заданиям?Всё зависит только от вас. В среднем пользователи платформы занимаются от трёх до пяти часов в неделю.
  • Кто будет меня курировать?У вас будет наставник в Telegram-чате, а проверяющий куратор прокомментирует практические работы и даст полезные советы. Так вы сможете перенять опыт, профессиональные знания и лайфхаки.
  • Действуют ли какие-нибудь программы рассрочки?Да, вы можете купить курс в рассрочку — и спланировать свой бюджет, разбив всю сумму на небольшие ежемесячные платежи.
  • Санкт-Петербург
  • Алматы
  • Киев
  • Минск
  • Москва
  • Волгоград
  • Воронеж
  • Екатеринбург
  • Казань
  • Красноярск
  • Нижний Новгород
  • Новосибирск
  • Омск
  • Пермь
  • Ростов-на-Дону
  • Уфа
  • Челябинск

Что в программе

Курс длится 2 месяца и включает и теоретические основы, и практику.

Теория

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

Практика

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

Итоги

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

Бонусы обучения в Skillbox

У курса есть ряд приятных преимуществ.

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

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

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

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

Какие бывают дроны

Дроны бывают разные. По конструкции различают несколько типов дронов:

  • мультироторный — коптеры;
  • самолетный — fixed wing;
  • гибридный — он взлетает вертикально, потом использует крылья.

Также дроны делятся на потребительские (consumer) и коммерческие (commercial).

Потребительские, как ты понимаешь, — это те, которые можно купить в магазине и использовать как летающую камеру. DJI Phantom и Mavic — хорошие модели. Есть и менее дорогие, но они определенно уступают по качеству. Такие квадрокоптеры используют для съемки разных мероприятий, зданий, исторических объектов. Например, с беспилотника можно сделать серию фотографий здания или памятника, а затем создать из них 3D-модель объекта методом фотограмметрии.

Как правило, такие дроны летают на ручном управлении, реже по миссии в автономном режиме по GPS-координатам. Рынок потребительских квадрокоптеров больше чем наполовину принадлежит одной компании — DJI. С ней очень сложно конкурировать, поскольку там делают реально крутой продукт: доступный, функциональный, удобный. Хотя в области квадрокоптеров для селфи DJI начинает теснить компания Skydio со своим дроном R2. Фишка этого дрона в том, что он может летать автономно, например за мотоциклистом в лесу. При этом беспилотник видит все препятствия и прокладывает автономный безопасный маршрут в реальном времени так, чтобы человек всегда оставался в кадре. Реально крутая штука.

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

Пример российской компании, которая активно работает с этой технологией на рынке США, — Traceair.

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

Ну и конечно, у всех на слуху доставка товаров дронами. Не знаю, заработает ли когда-нибудь сервис Amazon Prime Air, но уже сейчас компания Matternet доставляет товары в Цюрихе и некоторых городах США, а компания Zipline давно отправляет медикаменты в полет над просторами Африки. В России успехов тут пока намного меньше, недавно была новость про дрон Почты России, который разбился на первом тесте, а Сбербанк тестирует доставку денег дронами.

Компании Volocopter и Ehang уже имеют летающие прототипы такси, а компания с российскими корнями Hoversurf разрабатывает летающий байк.

В помещениях тоже есть задачи для коммерческих дронов, но пока они не сильно распространены, в этой области идут интенсивные R&D-исследования. Возможные применения для такого вида дронов:

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

Поживем — увидим, какие проекты будут реализованы и задисраптят нашу жизнь. Глобальная цель — сделать систему управления дроном, которой герой фильма «Бегущий по лезвию 2049» мог бы сказать: «Сфотографируй тут все!»

Автономная навигация

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

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

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

Есть еще одна важная проблема: если мы летаем в замкнутом пространстве или между высокими зданиями, то сигнал GPS будет недоступен и необходимо иметь другой источник координат дрона в пространстве. Можно определять свои координаты на борту, обрабатывая видеопоток с бортовых камер — лучше использовать стереокамеры или камеры глубины. Такой алгоритм называется SLAM (Simultaneous Localization and Mapping).

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

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

В итоге получается оценка перемещения камеры в пространстве. Обычно алгоритм SLAM очень требователен к вычислительным ресурсам, но есть камера Intel RealSense T265 с микросхемой, реализующей вычисления SLAM на аппаратном уровне.

Для организации автономного управления дроном необходимо решить три задачи.

  • Определить координаты дрона в пространстве. Использовать для этого GPS-приемник или вычислять на борту координаты, обрабатывая видеопоток алгоритмом SLAM. А лучше использовать оба подхода, чтобы знать как глобальные, так и локальные координаты дрона
  • Построить 3D-карту окружения дрона с помощью сенсоров типа стереокамер, камер глубины, лидаров.
  • Добавить софт для планирования маршрута с учетом цели полета, текущих координат и карты окружения.

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

Полетный контроллер

Непосредственно вращением моторов и полетом дрона управляет полетный контроллер, представляющий собой плату Pixhawk с процессором ARM на борту и прошивкой под названием PX4. Сам программный код PX4 можно скомпилировать в режиме software in the loop как раз для тестирования на персональном компьютере на Intel x84 CPU. Софт PX4 в этом режиме думает, что он работает на реальном железе полетного контроллера, хотя на самом деле он выполняется в симуляционной среде на ПК и получает подменные данные с сенсоров.

ТОП-5 курсов по программированию дронов [2023]

Robot Operating System

Нам потребуется много разных программных модулей. Одни будут работать с сенсорами, другие будут реализовывать SLAM, третьи — строить 3D-карту, четвертые — планировать в ней безопасный маршрут. Для создания этих модулей мы используем Robot Operating System (ROS) — распространенный фреймворк для разработки приложений робототехники. Приложение для ROS представляет собой набор взаимодействующих пакетов, каждый экземпляр которых называется узел, или node.

Один из узлов называется мастер (master node) и отвечает за регистрацию остальных узлов приложения. Каждый узел представляет собой отдельный процесс Linux. ROS предоставляет механизм передачи и синхронизации сообщений между узлами. Существуют как стандартные сообщения, так и определенные программистом. В качестве сообщений выступают данные с сенсоров, видеокадры, облака точек, команды управления и передачи параметров.

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

Для создания пакетов ROS предоставляет возможность использовать языки C++ и Python.

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

Членство в сообществе в течение указанного срока откроет тебе доступ ко ВСЕМ материалам «Хакера», позволит скачивать выпуски в PDF, отключит рекламу на сайте и увеличит личную накопительную скидку!
Подробнее

Вариант 2. Открой один материал

Заинтересовала статья, но нет возможности стать членом клуба «Xakep. ru»? Тогда этот вариант для тебя!
Обрати внимание: этот способ подходит только для статей, опубликованных более двух месяцев назад.

Я уже участник «Xakep. ru»

Перспективы профессии

Тут поднимается важный вопрос — что вы должны знать и уметь, чтобы быть востребованным специалистом? Должно быть знание ROS, Linux, языков программирования Python и C++, библиотеки OpenCV, умение визуализировать результат, работать с научной литературой, проводить сравнение и анализ алгоритмов, навык работы с «железом», умение портировать алгоритмы на реальный аппарат. О многом говорилось в курсе и в конце будет большой итоговый проект, который вы должны выполнить — но все равно еще во многом придется разбираться самостоятельно, углублять знания и доводить до автоматизма имеющиеся навыки. Как и в любой профессии, в принципе.

Технические характеристики

Квадрокоптер Parrot AR. Drone 2. 0 оснащен четырьмя моторами мощностью 14,5 Вт, которые выдают 28 500 RPM. В редукторе используются шестерни из нилатрона для понижения шумов. На контроллере каждого мотора используется 8 MIPS AVR CPU, а сам контроллер влагоустойчив. Максимальная скорость полета — 18 км/ч. На борту квадрокоптера установлены две видеокамеры:

  • фронтальная HD-камера с разрешением 720p, 30 FPS с углом объектива в 92 градуса;
  • нижняя QVGA-камера (320 х 240), 60 FPS с углом объектива 64 градуса. Ее AR.Drone также использует для замеров горизонтальной скорости.

«Мозги» дрона представляют собой 1 ГГц ARM Cortex A8 процессор с 800 Гц DSP TMS320DMC64x для видео, 1 Гбит DDR2 RAM на 200 МГц. И управляется это все с помощью Linux 2. Соединение с «пультом» управления (которым в штатном варианте являются iOS- и Android-девайсы) происходит по Wi-Fi. Так что коптер несет на себе Wi-Fi-точку. Ориентация в пространстве происходит за счет трехосевого гироскопа, трехосевого акселерометра, трехосевого магнитометра (магнитный компас), датчика давления и ультразвукового высотомера (на самом деле дальномера). На борту также есть USB-разъем для подключения внешнего накопителя. GPS-приемника в штатной комплектации нет, но об этом чуть ниже.

Несмотря на то что AR. Drone — это коммерческий продукт для конечного потребителя, его компоновка позволяет без проблем подключать к нему дополнительные аппаратные компоненты или вмешиваться в работу существующих. При подвеске на дрон дополнительного оборудования весом до 150 граммов это не сказывается на качестве его полета — динамике и стабилизации. При подключении аккумулятора к квадрокоптеру происходит загрузка его ОС и инициация систем. Также включается Wi-Fi-точка, к которой можно подключиться любым Wi-Fi-устройством. Изначально управление коптером доступно только с iOS- или Android-девайсов, но на projects. ardrone. org можно найти способы для подключения с ноутбуков и настольных ПК с Wi-Fi. Поскольку у AR. Drone есть открытый API, то подключаться к нему можно с чего угодно, лишь бы там работал софт с использованием штатных библиотек.

Таким образом, мы просто можем зайти на квадрокоптер с правами root. Что это дает? Ну, например, в рамках контеста Positive Hack Days CFT 2012 было задание на перехват управления дроном, которое успешно решили. А на соревновании DroneGames 2012 был продемонстрирован вирус, которым заражался один дрон, и далее тот начинал заражать им другие дроны в зоне видимости, перехватывая управление ими. Имея под рукой BusyBox и рутовый доступ к нему, можно делать и не такое. Это полезная функция для энтузиастов, но дыра в безопасности для злоумышленников. Поэтому для Wi-Fi AR. Drone можно установить защиту WPA2, используя мод ardrone-wpa2 из GitHub и защитить свой дрон от кулхацкеров. Еще один недостаток Wi-Fi — у него ограниченный радиус действия, при выходе из которого квадрокоптер принудительно приземлится. Что будет под дроном в этот момент: ровная площадка, лес или вода — его не сильно волнует. Конечно, можно без проблем поставить более мощную Wi-Fi-антенну для расширения радиуса, но есть и другие способы. Например, при помощи Arduino и типовых для авиамоделирования модулей приемника и передатчика радиус полета дрона повышается до 1,5–2 км. Но можно сделать радиус полета вообще практически бесконечным — с помощью той же Arduino и GSM-модуля координировать полет дрона можно через сотовую сеть. Главное, чтобы в зоне полета было устойчивое сотовое покрытие.

Глаза

Видеокамеры, установленные на борту квадрокоптера, играют разные роли. Фронтальная камера транслирует видеопоток 720p по Wi-Fi на управляющее устройство. Этот поток можно записывать на устройстве (эту функцию предлагают стандартные приложения) или подключить внешний USB-накопитель к самому дрону, и запись будет вестись на него. На накопителе должно быть минимум 100 Мб свободного пространства и файловая система FAT32.

Вертикальная камера, расположенная в нижней части корпуса дрона, дает QVGA-разрешение. В ПО AR. Drone заложена функция отслеживания горизонтальной скорости с использованием вертикальной камеры по принципу, аналогичному принципу в компьютерных мышках.

Говоря о видео, нельзя не упомянуть звук: микрофонов на борту AR. Drone нет. Это понятно, потому что шум от четырех моторов забил бы любой микрофон. Опыты, проведенные с подвешиванием камер GoPro к AR. Drone и записью видео со звуком, показали, что качество звука даже при использовании алгоритмов шумоподавления оставляет желать лучшего. Но что мешает кому-то выйти с гениальным решением этой проблемы и удивить весь мир?

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

Крылья и тело

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

Поведение в воздухе регулируется настройками приложений. Углы, скорости реакций, ограничения высот и ряд других параметров хорошо регулируются настройками. Квадрокоптер умеет делать боковой переворот на 360 градусов. Выполнять этот маневр лучше с запасом высоты, так как на завершающем этапе он теряет где-то 40–50 см высоты. Остальные же маневры выполняются в штатных приложениях или за счет наклона устройств, тогда приложение получает информацию с гироскопов мобильного устройства и передает команды на рули, или за счет нарисованных на экране джойстиков. Возможна и комбинация этих методов.

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

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

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

AR в DRONE

Теперь пара слов о том, почему дрон имеет такое название. Название AR. Drone происходит от Augmented Reality Drone. Создатели сразу закладывали идею создания дополненной реальности при помощи квадрокоптера. Реализуется эта идея простым способом: на картинку, получаемую с камер устройства, накладываются дополнительные образы, и вокруг этого строятся игры. В App Store от Apple есть ряд бесплатных игр, выпущенных Parrot и использующих подход дополненной реальности. Коротко о некоторых из них:

Freeflight — бесплатное приложение от Parrot, доступное для скачивания в App Store и Google Market. Приложение предоставляет возможность для пилотирования AR. Drone и обновления его прошивки. После запуска (особенно первого) лучше сразу запустить функцию проверки наличия обновленной прошивки, и если она есть, то поставить ее.

ТОП-5 курсов по программированию дронов [2023]

Интерфейс управления Freeflight

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

Упасть «камнем» в штатной ситуации он может только в одном случае — если нажать кнопку аварийного отключения питания. При этом винты моментально обесточиваются. Во всех остальных случаях он или сядет сам, или дождется, пока его посадят. Также в приложении есть социальная составляющая, которая называется AR. Drone Academy. Но об этом чуть ниже. Субъективно приложение оставляет приятное впечатление — запустил, и полетели.

Rescue — очень занимательная штука. В комплект поставки дрона входит специальная картинка, которую дрон распознает как базу. Она будет использоваться для посадки и как центр происходящих событий. При запуске одной из миссий в пространстве вокруг дрона (виртуальном, естественно) появляются различные предметы, которые надо собирать. Количество зависит от объема доступного помещения. По мере сбора предметов начинают появляться неприятельские летательные объекты, которые надо сбивать ракетами. Hunter — мультиплеер-игра, где один игрок управляет дроном, а второму лучше убегать. Здесь идет игра в войнушку между человеком, на котором специальная кепка, и дроном. У человека также смартфон, и он может «стрелять» по дрону. Но кепка в комплекте с дроном не идет, а быстро найти ее не получилось. Хотя на eBay она, конечно, есть.

ТОП-5 курсов по программированию дронов [2023]

Дополненная врагами реальность

Race — для этого приложения требуются физические аксессуары: «пончики», через которые надо пролетать, и финишные конусы. Суть — гонки на время через подготовленные трассы.

ТОП-5 курсов по программированию дронов [2023]

Прохождение трасс на время

ТОП-5 курсов по программированию дронов [2023]

Карта спотовна примереМосквы

SDK/API

ТОП-5 курсов по программированию дронов [2023]

  • Library — набор high-level API для доступа к функциям дрона;
  • Tool — набор готовых библиотек для симуляции геймпада, обработки видеопотоков, навигационных данных и прочего;
  • Engine — шаблоны проектов для iOS-приложений с описанными методами и контролами.

Среди одной из стандартных возможностей, реализуемых API, распознавание нескольких стандартных графических паттернов. В комплекте поставки дрона идет изображение для калибровки распознавания «базы для посадки» и сине-оранжевые липучки для наклейки их на объекты, которые надо отслеживать. Во-первых, этот функционал активно используется в играх для обнаружения дроном «противника». Во-вторых, наличие упрощенного способа распознавания объектов открывает интересные перспективы. Таким образом разработчику не надо углубляться в алгоритмы компьютерного зрения и реализовывать с нуля распознавание образов. Например, можно наклеить штатную липучку на велосипедный/лыжный/сноубордический шлем и написать программу, по которой дрон будет следовать за шлемом, обеспечивая аэровидеосъемку твоего путешествия в HD.

Единственный минус подобной эксплуатации — ресурс аккумулятора. Штатный аккумулятор имеет напряжение 11,1 В, ресурс 1000 мА • ч и обеспечивает около восьми минут полета, что не очень много. Но в продаже имеются и аккумуляторы емкостью 2300 мА • ч, что увеличивает время эксплуатации вдвое. Можно подумать, что, взяв с собой ящик аккумуляторов, будешь просто менять их по ходу действия. Но это не очень хорошая идея. Моторы AR. Drone не предназначены для длительной непрерывной эксплуатации — это обратная сторона малого энергопотребления и достойной тяги. Поэтому при непрерывной эксплуатации с заменой аккумуляторов они просто перегреются, что может привести к печальным последствиям и неожиданной встрече с землей.

Nodecopter

Продолжая тему программного управления AR. Drone, нельзя не коснуться мода под названием Nodecopter. Это мод, с использованием которого управлять полетом дрона можно с помощью Node. Для разработчиков это несколько более дружественный способ, нежели писать и компилировать код на Си с использованием API-библиотек. Это также снижает некий «порог вхождения» за счет того, что разработка под Node. js значительно проще, чем под Си, и таким образом большее количество людей может принимать участие в программировании под AR. Drone.

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

GPS, QGroundControl и полет по вейпоинтам

С помощью Node. js можно раздавать коптеру команды лишь в стиле «повернись направо на 0,5», «сделай флип налево» и прочее в таком стиле. Но для полета по маршруту этого мало или как минимум это неудобно. Встроенного GPS-приемника в квадрокоптере нет. Проблема решается разными способами. Например, возможна установка на него внешнего GPS-приемника с помощью Arduino. Также Parrot в феврале этого года анонсировала выпуск подключаемого GPS-модуля. Он подключается к бортовому USB-разъему и передает координаты устройству. Кроме того, он содержит в себе четырехгигабайтный накопитель и выполняет функцию флешки для записи видео. Анонсированный модуль поддерживает протокол MAVLink, что дает возможность использовать, например, софт QGroundControl, с помощью которого можно расставить заранее маршрутные точки и запустить дрон для полета по ним. А поскольку MAVLink имеет открытый исходный код и API, это позволяет писать любой софт для навигации дрона.

Дополнительные сенсоры

Открытость платформы AR. Drone и доступность его аппаратных компонентов делают его легко модифицируемым. С помощью мода Dronduino можно без труда интегрировать AR. Drone с Ardiuno Nano. Таким образом можно совместно использовать возможности платформ и добавлять на квадрокоптер дополнительные сенсоры, системы навигации, освещение, звуковые динамики, управление с джойстика и многое другое.

Интеграция управления AR. Drone с такими девайсами, как Nintendo Wii и Microsoft Kinect, уже давно не фантастика. Сенсоры распознают движения «пилота» и передают команды на квадрокоптер. Да, написание софта для Microsoft Kinect требует определенной квалификации, но для того API/SDK и делаются. Но если посмотреть дальше, то выходит, что «пульт» уже и не так уж нужен. На Kickstarter был размещен девайс под названием MYO — это браслет, который надевается на руку, получает информацию, считывая электрическую активность в мышцах двигающейся руки, и передает команды по Bluetooth. В проморолике было показано управление AR. Drone с помощью такого браслета. Он еще недоступен публично и все еще ожидает своего выхода на рынок, но ролики выглядят крайне многообещающе. То есть, если предположить, что проблему управления дроном мы решили и пульт больше не нужен, осталось решить вопрос с выводом телеметрии дрона. И тут приходит мысль об очках. Ведь если вывести всю необходимую информацию на очки и обеспечить управление с помощью носимого браслета, то и пульт больше не нужен.

Расписание

«Технология дронов может раскрыть

весь свой потенциал только тогда,

когда сбор и анализ данных достигают

высочайшего уровня автоматизации».

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

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

На финальном этапе участникам будет предложено разработать систему автоматизированного мониторинга участка нефте- и нефтепродуктопровода при помощи автономного квадрокоптера.

Задачи профиля погружают в профессиональную работу с платформой программируемого квадрокоптера «Клевер» на базе Robot Operating System (ROS), техническим зрением (OpenCv), средством визуализации данных (RVIZ) и платформой для создания автопилотов (PX4). Навыки работы с данными технологиями открывают широкие возможности в области промышленной робототехники, благодаря тому, что все разработанные решения можно масштабировать на промышленные платформы.

Возможности, которые открывает участие в профиле:

  • Подготовка к WorldSkills, Innopolis Open Robotics, Робофест и Робофинист, а также к международным робототехнических соревнований с использованием автономных дронов (прим. IMAV, MBZIRC).
  • Практическое погружение в специальность «Эксплуатация беспилотных авиационных систем».
  • Обучение работе с OpenCV и алгоритмами компьютерного зрения.
  • Обучение алгоритмам Indoor навигации БПЛА.

«Конструктор программируемого квадрокоптера «COEX Клевер 4 Code»  производство ООО «Коптер Экспресс Технологии».

Этапы соревнований

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

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

Этап 2

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

Часть заданий этого отборочного этапа будет сформулирована в виде задач, связанных с автономными миссиями квадрокоптера и распознаванием объектов, для решения которых необходимо разобраться со средой симуляции полета квадрокоптера — Gazebo. Участникам предстоит разработать программный код для запуска автономных миссий в симуляторе. Инженерам предстоит разработать дополнительный узел квадрокоптера.

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

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

Финал. Предметный тур

На этом этапе участникам предстоит решать задачи по информатике и  физике.

Этап пройдет в распределенном формате.

Заключительный этап состоит из предметного тура и командной задачи.

На предметном туре участникам предстоит решать задачи по информатике и физике.

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

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

Автоматизированная система включает в себя:

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

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

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

Требования к команде

  • Физика: электрический ток: сущность, определение, источники тока; сила тока, электрическое напряжение, сопротивление: определение, формулы, измерение; закон Ома; последовательное и параллельное соединение проводников; электрическая цепь и составные её части; определение координат движущегося тела; относительность движения.
  • Информатика: основы алгоритмизации и объектно-ориентированного программирования; структуры хранения и обработки данных; компьютерная графика; реляционные базы данных и СУБД (системы управления базами данных); методы обработки массивов; компьютерная графика; механизмы обработки исключений построение графиков; работа с библиотеками

Hard skills необходимые для старта

  • Программирование на Python;
  • Базовые навыки работы с ROS;
  • Базовые навыки работы с летающими робототехническими системами;
  • Базовые навыки работы с компьютерным зрением;
  • Навыки 3D моделирования.

Hard skills необходимые финалистам

  • Программирование на Python;
  • Основы программирования на С++;
  • Навыки работы с ROS;
  • Навыки работы с летающими робототехническими системами;
  • Навыки работы с базами данных;
  • Базовые навыки работы с компьютерным зрением;
  • Навыки работы с электрическими схемами;
  • Навыки работы с паяльником и ручным инструментом;
  • Пилотирование, предполетная подготовка и тех. обслуживание летающей робототехнической системы;
  • Программирование нейронных сетей на Python;
  • Программирование автономного полета;
  • Навык работы в симуляционной среде Gazebo;
  • Базовые навыки работы с нейронными сетями.

Численность команды и роли

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

Роль 1. Инженер-программист (Python) — написание кода для автономного полета коптера, работа с сервером при необходимости, работа в симуляторе Gazebo.

Роль 2. Инженер-программист (С++, Python) — алгоритмы компьютерного зрения, для реализации автономных миссий квадрокоптера, нейронные сети при необходимости. Работа в связке с ролью 1.

Роль 3. Инженер-техник — моделирование и изготовление функционального узла квадрокоптера, тестирование, техобслуживание и пилотирование квадрокоптера.

Роль 4. Капитан/лидер команды — осуществление общего руководства работой команды, распределение обязанностей и контроль соблюдения дедлайнов. Рекомендуется совмещение данной роли с другими ролями.

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

Материалы подготовки

  • Введение в Python
  • Программирование на Python
  • Материалы заданий профиля «Летательная робототехника» Олимпиады КД НТИ 2019/20
  • Сайт документации платформы «Клевер»
  • Введение в ROS
  • Использование OpenCV и Python
  • Материалы заданий профиля «Летающая робототехника» Олимпиады КД НТИ, 2020/21
  • Введение в программирование (C++)
  • Введение в Git
  • Arduino для начинающих

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

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

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

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