В прошлом году мы проводили конкурс летающих роботов. Нужно было быстро пролететь по лабиринту, обойти препятствие, после разглядеть маркер посадки, приземлиться на него, взлететь и вернуться. В рамках конкурса всё это прошёл один робот из 536 заявленных.
Вот эти парни выиграли миллион
Их робот прошёл лабиринт за 6:45. Это немало, но дрон делал несколько заходов на финишный маркер (принимал его за стартовый, на который нужно было приземлиться в конце).
Наш робот пролетел вне конкурса за 4:01. Вот его код на Гитхабе.
На этот раз мы всё так же не можем претендовать на приз, но играем вместе с вами. Задача нового этапа — пролететь быстрее 6:15 минут, за которые мы пролетели обновленный полигон (про то, как именно мы его обновили, ниже) и забрать, наконец, свои 200 тысяч рублей.
Небольшой экскурс в прошлое
- Отчёт с финала конкурса, фото, видео, ошибки и результаты.
- Как мы готовили своего робота к прошлому конкурсу.
- Отчёт победителей и немного скриншотов из глаз робота.
А теперь о настоящем конкурсе
Видео про то, как мы летали эталонное время, которое нужно побить в новом этапе конкурса.
Схема полигона прошлого этапа конкурса. Было два препятствия:
В этом году полигон остался тем же — 37,4 на 8,8 метра, но препятствий стало больше — минимум 1,8 метра зазора между ними:
Что конкретно поменялось?
- Миллион в призовом фонде остался. Но призов теперь пять штук, и каждый — по 200 тысяч рублей.
- Финала, как в прошлом году, не будет. Каждая команда, допущенная до полетов, сама определяет день своей попытки и согласует его с организаторами.— Чтобы победить, нужно пролететь лабиринт быстрее нас. Мы сделали это за 6 минут и 15 секунд. Побеждают первые пять участников, выполнивших эту задачу. Так что не затягивайте с вашими попытками.
- Перегородок на полигоне стало больше – теперь препятствий десять. Их расположение очень близко к тому, что изображено на схеме.
- Зачётных попыток три, а не две.
Что надо знать про полигон?
Он тот же. Покрытие стен то же самое, что и на прошлом финале,— полимер, цвет RAL 5024 (в некоторых местах есть сколы и облезлости после зимы). Уровень освещенности будет зависеть от погоды, маркеры контрастные (белый на черном и черный на белом). Перегородки радиопрозрачные и закреплены при помощи бордюрных камней. Раньше полигон накрывала сетка с полиэтиленом, теперь — просто сетка. Поэтому участники должны учесть, что от дождя и ветра они не застрахованы. Наш эталонный полет мы совершали в условиях небольшого снега с дождем, что внесло некоторые помехи в работу наших датчиков. Так что прежде чем записываться на тесты или выполнение конкурсного задания, смотрите прогноз погоды. Для тестирования у вас есть два полных дня на реальном полигоне, но учтите, что вы можете оказаться не единственной командой на полигоне в эти дни. Впрочем, прошлым летом это никого не смущало.
Особенности
- Робот должен быть автономным. Вычислитель может находиться на борту или на наземной станции. Если для управления вы используете радиоканал, то помните про зашумленность эфира: в прошлом году это создавало сложности для многих участников.
- В прошлом году были лужи — они могут стать проблемой в задачах распознавания или навигации по камере.
- Если вы отлаживаете вашего робота в помещении, не забывайте, что на полигоне будет ветер.
- Ориентироваться по магнитометру скорее всего не получится из-за железобетонных конструкция здания.
- Если вы используете лидар, то учитываёте, что в солнечную погоду на улице он может вести себя не так, как в помещении: дальность может быть понижена, а определенные сектора могут вообще выпадать из измерений. Проверяйте.
- Обязательна защита винтов. Плюс у вас должен быть пульт экстренного отключения, который во время попытки будет в руках судьи.
- Можно использовать как кастомные летающие платформы, так и готовые, вроде ArDrone. Это конкурс не только конструкторов, но и разработчиков ПО, поэтому если у вас было готово из коробки всё, кроме реализации логики выполнения задания, это тоже считается.
- Не делайте робота слишком большим. Помните, что минимальная ширина проходов между препятствиями – 1 м 80 см.
- Высота полёта сверху ограничена сеткой, которая находится на высоте 2,7-3 метра от пола. Пол в основном ровный, но нужно учесть, что местами встречаются выступы до 10-15 см в высоту, вроде защитных сеток для кабелей или крепежных элементов конструкций. Если вы посмотрите видео с нашим полетом, то можете их разглядеть.
- Навигация любая. GPS, лидары, ультразвук камеры, триангуляция по радиомаякам и так далее. Если собираетесь использовать дополнительно наземное навигационное оборудование, имейте ввиду, что устанавливать его внутри зоны полёта нельзя..
- Есть ограничения напряжению (48 В), радиочастотам, мощности излучателей и так далее — всё по нашим стандартам и нормативам.
Подробнее про технические особенности конкурса читайте в правилах. Ссылка на них – в конце топика.
Про нас
Эталонное время, которое нужно побить, мы показали на все том же дроне, на той же платформе (Mikrokopter LX). На этот раз все элементы дрона мы поместили на новую раму из композитных материалов. При этом все алгоритмы управления и навигации мы оставили неизменными, только перенастроили параметры под условия нового полигона и под новую раму, чтобы поаккуратнее летать.
Наши датчики:
- Сонар для определения высоты
- Камера для распознавания посадочного маркера
- Лидар для построения динамической карты и локализации робота в пространстве.
- Данные по углам и угловым скростям мы берем из IMU Mikrokopter
- Вычислитель – на базе Intel NUC i3. ОС – Ubuntu 12.04. Используемые библиотеки: OpenCV и ROS. Для моделирования полетов мы использовали симулятор Gazebo.
Про участников прошлого конкурса
Мне кажется, что мало кто из участников предыдущего конкурса сможет обойтись малыми доработками и сможет подготовиться к новому этапу за неделю-другую. Большинство команд затачивали свое решение под конкретную схему полигона, так что добавление препятствий спутает им все карты. Переделывать и тестировать придется немало.
Хронология
- До 1 октября — приём заявок. Он уже открыт с 1 апреля. Требования к заявкам достаточно суровые. По сути, в вашей заявке вы должны показать, что уже можете что-то показать на нашем полигоне.
- После подачи заявки можно будет согласовывать с огранизаторами дни тестов и зачетной попытки.
- 15 октября — дедлайн по зачётной попытке. Но, как я уже упоминал выше, конкурс может закрыться раньше, если до 15 октября найдётся 5 участников, совершивших полёт быстрее обозначенного времени.
Ссылки:
- Ещё раз код нашего робота. Интересен он тем, что можно посмотреть, какими мы пользовались инструментами и библиотеками. Возможно, он поможет вам при разработке вашего собственного решения.
- Правила
- Заявки сюда — robots@croc.ru. Подробнее, что нужно для заявки, тут.
Автор: AVY