«Технология дронов может раскрыть
весь свой потенциал только тогда,
когда сбор и анализ данных достигают
высочайшего уровня автоматизации».
RussianDrone.ru
Профиль «Летающая робототехника» посвящен практической и инновационной деятельности в области автоматизации управления квадрокоптерами при помощи компьютерного зрения, включая автоматический сбор, обработку и анализ данных.
Будущее беспилотников за автоматизацией их полёта и автоматической обработкой данных, вместо десятков операторов беспилотного летательного аппарата — команда программистов, написавших код, может заставить работать сотни дронов. Качественные данные идут вместе с беспилотником, который является самым важным фактором развития индустрии беспилотных летательных аппаратов. Беспилотные летательные аппараты повышают ценность для пользователя при наличии способов быстрой обработки данных без дополнительных усилий в этом процессе. Чем быстрее, точнее и проще будут проанализированы данные, тем выше результат.
На финальном этапе участникам будет предложено разработать систему автоматизированного мониторинга участка нефте- и нефтепродуктопровода при помощи автономного квадрокоптера.
Задачи профиля погружают в профессиональную работу с платформой программируемого квадрокоптера «Клевер» на базе Robot Operating System (ROS), техническим зрением (OpenCv), средством визуализации данных (RVIZ) и платформой для создания автопилотов (PX4). Навыки работы с данными технологиями открывают широкие возможности в области промышленной робототехники, благодаря тому, что все разработанные решения можно масштабировать на промышленные платформы.
Возможности, которые открывает участие в профиле:
Подготовка к WorldSkills, Innopolis Open Robotics, Робофест и Робофинист, а также к международным робототехнических соревнований с использованием автономных дронов (прим. IMAV, MBZIRC).
Практическое погружение в специальность «Эксплуатация беспилотных авиационных систем».
Обучение работе с OpenCV и алгоритмами компьютерного зрения.
Обучение алгоритмам Indoor навигации БПЛА.
Оборудование
«Конструктор программируемого квадрокоптера «COEX Клевер 4 Code» производство ООО «Коптер Экспресс Технологии».Первый отборочный этап будет заключаться в решении задач по техническим школьным дисциплинам — физике и информатике.
Заранее рекомендуется посмотреть разборы задач прошлых лет — это сформирует понимание того, какого рода задачи могут встретиться.
На втором этапе Олимпиады участникам предстоит решить несколько заданий, которые требуют как хороших навыков решения классических задач по программированию, так и общих знаний аэродинамики, устройства и функционирования квадрокоптеров.
Часть заданий этого отборочного этапа будет сформулирована в виде задач, связанных с автономными миссиями квадрокоптера и распознаванием объектов, для решения которых необходимо разобраться со средой симуляции полета квадрокоптера — Gazebo. Участникам предстоит разработать программный код для запуска автономных миссий в симуляторе. Инженерам предстоит разработать дополнительный узел квадрокоптера.
На данном этапе участников ожидают как индивидуальные, так и командные задачи. Для решения каждого блока задач необходимо уметь работать в команде, делегировать и помогать друг-другу, поскольку в ограниченное для второго этапа время один человек может не успеть изучить новый материал, а также разработать решение. Задачи будут формироваться на платформе Stepik, часть задач будет оцениваться автоматически по эталонному решению, а часть будет проверяться и оцениваться экспертами. Результаты командных задач будут приниматься от капитанов команд.
Ссылки на материалы для самостоятельного изучения помогут в подготовке к Олимпиаде.
На этом этапе участникам предстоит решать задачи по информатике и физике.
20.03
Физика 07:30−10:00
Информатика 11:30−14:00
Этап пройдет в распределенном формате.
Заключительный этап состоит из предметного тура и командной задачи.
На предметном туре участникам предстоит решать задачи по информатике и физике.
Командная часть
Разлив нефтепродуктов из трубопровода представляет большую опасность для окружающей среды и людей. Последствия утечек приводят к загрязнению окружающей среды и опасности возгорания или взрыва. В результате утечек содержание нефтепродуктов в водоемах в 10-15 раз превышает предельно допустимые нормы. Экстремальное загрязнение почвы почти в 200 раз превосходит фоновые значения, а десятки тысяч гектаров земли исключены из хозяйственного оборота.
Проблема исследования новых способов обнаружения утечек остаётся открытой. БПЛА для обнаружения утечек используются повсеместно, но их обнаружение происходит не автоматически, а посредством наблюдения оператора за получаемыми данными на станцию управления и постобработки полученных материалов визуального наблюдения.
Участникам будет предложено разработать систему автоматизированного мониторинга участка нефте- и нефтепродуктопровода при помощи автономного квадрокоптера.
Автоматизированная система включает в себя:
Командам предстоит разработать полезную нагрузку для возможности отбора, транспортировки и доставки проб, произвести монтаж разработанного узла, написать программный код для выполнения миссии автономного мониторинга и отладить всю разработанную систему. Как отладочные, так и зачетные миссии запускаются участниками на физическом полигоне самостоятельно.
На данном этапе командная работа является важнейшим пунктом для решения задачи, ввиду того, что все подзадачи переплетены между собой.
Рекомендуем ознакомиться со списком hard skills, а также всеми ссылками с текущей страницы профиля. Всю необходимую информацию для подготовки участников можно найти тут https://clover.coex.tech/ru/
Для организации кружка, или подготовки образовательной программы рекомендуется использовать сайт документации платформы «Клевер» и видеоуроки: https://clover.coex.tech/ru/assemble_4.html, https://www.youtube.com/channel/UCeCu93sLBkcgbIkIC7Jaauw/videos.
При отсутствии необходимого оборудования или возможности проведения занятий в очном формате, рекомендуется: Среда симуляции «Конструктора программируемого квадракоптера Клевер» (https://clover.coex.tech/ru/simulation.html), позволяет пользователям запускать и отлаживать свой код в симуляторе.
Интернет-ресурсы рекомендуемые для обязательного ознакомления наставникам команд участников трека:
Программирование на Python (https://pythonworld.ru/, https://stepik.org/course/67/promo);
Введение в ROS (https://stepik.org/course/3222/promo, https://clover.coex.tech/ru/ros.html);
Техническое зрение (https://clover.coex.tech/ru/camera.html);
Использование OpenCV (https://docs.opencv.org/3.4/, http://robocraft.ru/blog/computervision/264.html, https://github.com/sfalexrog/coex_kb/blob/master/kb014_opencv_python.md);
Видео-уроки (https://www.youtube.com/channel/UCeCu93sLBkcgbIkIC7Jaauw/videos);
Программирование нейронных сетей на Python (https://www.asozykin.ru/courses/nnpython);
Программирование автономного полета (https://clover.coex.tech/ru/index.html).
Физика: электрический ток: сущность, определение, источники тока; сила тока, электрическое напряжение, сопротивление: определение, формулы, измерение; закон Ома; последовательное и параллельное соединение проводников; электрическая цепь и составные её части; определение координат движущегося тела; относительность движения.
Информатика: основы алгоритмизации и объектно-ориентированного программирования; структуры хранения и обработки данных; компьютерная графика; реляционные базы данных и СУБД (системы управления базами данных); методы обработки массивов; компьютерная графика; механизмы обработки исключений построение графиков; работа с библиотеками
Программирование на Python;
Базовые навыки работы с ROS;
Базовые навыки работы с летающими робототехническими системами;
Базовые навыки работы с компьютерным зрением;
Навыки 3D моделирования.
Программирование на Python;
Основы программирования на С++;
Навыки работы с ROS;
Навыки работы с летающими робототехническими системами;
Навыки работы с базами данных;
Базовые навыки работы с компьютерным зрением;
Навыки работы с электрическими схемами;
Навыки работы с паяльником и ручным инструментом;
Пилотирование, предполетная подготовка и тех. обслуживание летающей робототехнической системы;
Базовые навыки работы с нейронными сетями.
Во второй части отборочного этапа, а также в заключительном этапе участвуют команды из трех-четырех человек.
Состав команды:
Роль 1. Инженер-программист (Python) — написание кода для автономного полета коптера, работа с сервером при необходимости, работа в симуляторе Gazebo.
Роль 2. Инженер-программист (С++, Python) — алгоритмы компьютерного зрения, для реализации автономных миссий квадрокоптера, нейронные сети при необходимости. Работа в связке с ролью 1.
Роль 3. Инженер-техник — моделирование и изготовление функционального узла квадрокоптера, тестирование, техобслуживание и пилотирование квадрокоптера.
Роль 4. Капитан/лидер команды — осуществление общего руководства работой команды, распределение обязанностей и контроль соблюдения дедлайнов. Рекомендуется совмещение данной роли с другими ролями.
Во второй части отборочного этапа, а также в заключительном этапе участвуют команды из трех-четырех человек. Роли могут пересекаться. Каждый участник может предлагать свои идеи и пути решения вопросов связанных с составлением алгоритма решения задачи, а также написания кода. Главное, чтобы команда могла эффективно выполнить поставленную задачу.
Использование OpenCV
Видео-уроки
Введение в Python
Программирование на Python
Материалы заданий профиля «Летательная робототехника» Олимпиады КД НТИ 2019/20
Сайт документации платформы «Клевер»
Введение в ROS
Техническое зрение
Использование OpenCV
Использование OpenCV и Python
ROS
Материалы заданий профиля «Летающая робототехника» Олимпиады КД НТИ, 2020/21
Практикумы 2019
Введение в программирование (C++)
Введение в Git
Arduino для начинающих