- PVSM.RU - https://www.pvsm.ru -
Чуть больше месяца назад, увидев на канале Russian Hackers в телеграме анонс хакатона, да еще и робототехнического, да еще и проходящего в другой стране, мы с друзьями решили — а почему бы и нет? Мы участвовали в большом количестве хакатонов в России, но никогда не видели, как оно там, за границей. Быстро собравшись и уладив вопрос с визой, мы поехали в Хельсинки собирать роботов из Lego Mindstorms.
В этой статье постараюсь по порядку рассказать, что нам предстояло сделать, стоит ли участвовать, и сколько нам стоило времени и денег съездить. Начнем!
Называлось мероприятие Robot Uprising [1], для того, чтобы принять в нем участие. нужно было не позднее чем за 2.5 недели зарегистрироваться (кстати, было написано о том, что будет проводиться отбор команд, но видимо ссылки на гитхаб с небольшим количеством проектов достаточно чтобы пройти). Основной задачей было собрать робота из выданного нам набора Lego Mindstorms робота, который бы проходил трассу:
Состояла она из нескольких основных этапов:
Как уже было упомянуто раньше, на соревновании действовала балльная система. Баллы на финале получали за стиль кода, чистое прохождение трассы, сложность предпоследнего этапа, степень автономности. Например, за полное ее отсутствие (управление с компьютера/пульта/джойстика) ставили 0 баллов, за захардкоженное прохождение трассы — 100, а максимум в 500 баллов можно было получить, используя машинное обучение.
Баллы также можно было заработать еще до финала — для этого нужно было пройти дополнительные квесты. Чтобы получить доступ к задачам, нужно было найти на сайте пару строк, зашифрованных шифром Цезаря, расшифровать, перейти по ссылке, найти ссылку на еще одну страницу, и там уже было размещено достаточно большое количество квестов разной сложности. Например, были такие задания: есть две картинки с шумом, надо было догадаться, что их надо наложить друг на друга и вычесть, чтобы получить слово, которое нужно предоставить как ответ. Кстати, баллы, полученные до финала можно было еще и тратить, но об этом ниже.
А еще, из интересного, организаторы продумали предысторию и сеттинг. По легенде, хакатон проходил на территории большого автоматизированного завода, на котором производят роботов. И, неожиданно, что-то пошло не так:) Помещение, в котором проводился хакатон, одежда организаторов — все было оформлено в стилистике этой истории, и выглядело это очень круто. И задания, которые нужно было выполнить, тоже были вписаны в этот сеттинг.
Организаторы предоставляли на команду набор Lego Mindstorm, состоящий из контроллера EV3, датчика цвета, сонара, трех движков, гироскопа и проводов, которых хватало, чтобы это подключить. Также в набор входили мелочи, такие как колеса, гусеницы, лего блоки. Набор получился достаточно скудным, неправда ли?
Для того, чтобы нормально решить задачу, такого набора не то чтобы достаточно, поэтому у участников было два варианта — либо привозить с собой дополнительно железо (как оказалось позже, пользоваться можно было любым железом, не только лего — raspberry pi, arduino, разные камеры. Что и делало большинство участников, принося из дома необходимые модули (ну, а у нас с собой не было ровным счетом ничего). Но для тех, кто поступил так же непредусмотрительно как и мы, работал своего рода магазин, в котором можно было обменивать заработанные баллы на модули (правда, заработать он часов за 15 до конца хакатона, что было немного поздновато).
Наверное, необходимо сказать, что контроллер EV3, как и весь набор, никто из команды до хакатона даже в руках не держал. Поэтому, в купе с отсутствием нужных деталей и дополнительного железа, результат мы получили вполне ожидаемый.
До поездки, посмотрев инфу, которую прислали нам организаторы, и немного погуглив, мы обнаружили, что в EV3 стоит армовский микроконтроллер (ARM9), и что туда можно поставить Debian. Обрадовавшись тому, что мы сможем писать на плюсах, а не соединять блоки, мы с нетерпением ждали возможности поработать с новым железом.
Но на деле все оказалось не так радужно, как мы рассчитывали. Поняли мы, что все будет не совсем так, как мы ожидали, как только запустили EV3 и попытались его обновить. Потому что он просто завис. Так же стати происходило при попытке поставить gcc. Промучившись с этим достаточно продолжительное время и докопавшись до менторов и участников других команд, мы выяснили несколько важных вещей: единственный вариант работать с плюсами это кросс-компиляция, почти все команды пишут на питоне (пара человек пыталась что-то делать на JavaScript и C#), а еще что кроме нас было несколько русскоговорящих участников.
Приняв тяжелое решение писать на питоне, мы наконец-то приступили к работе. На самом деле даже после этого мы столкнулись с огромным количеством мелких проблем, но не буду перегружать ими эту статью.
В итоге, к концу хакатона мы успели нормально сделать и отладить только удаленное управление. Но, несмотря на это, мы заняли 11 место из 29, что, как мне кажется, очень неплохо для первого раза.
Теперь расскажу немного о том, что нужно было сделать и сколько денег нам потребовалось на поездку. Первым делом мы написали организаторам и спрашивали о всем, что было нам хоть немного непонятно. После прохождения отбора, по нашей просьбе организаторы отправили нам приглашения для визы, правда они прислали их когда мы уже почти неделю как подали документы. Но, в принципе, визы в Финляндию одни из самых простых, поэтому мы не особо боялись, что нам их не дадут. Нам, кстати, повезло, и через визовый центр оформили их за 5-6 дней. Жилье в Хельсинки дорогое, поэтому мы, как нищие студенты, решили не снимать жилье на время хакатона, а все время писать код или спать там (с этим кстати были проблемы, на сотню человек было всего два гамака и небольшие качели, чего было явно недостаточно). Кстати, на хакатоне было трехразовое питание:)
Добирались мы на самолет из Москвы, но нам повезло, и у Победы была акция, так что вместе с покупкой багажных мест и оплатой выбора мест, билеты стоили достаточно дешево.
И еще пара слов про языковой барьер. У нас в команде из трех человек хорошо на английском говорил только один человек, и двое могли что-то на уровне beginner. И этого было вполне достаточно. В принципе, если ваш уровень английского на уровне 11 класса школы, бояться не надо — в крайнем случае, можно купить местную сим-карту за 6 евро на пять дней и пользоваться гугл переводчиком. Ну и на крайний случай на самом хакатоне мы нашли несколько русскоговорящих финнов, в том числе и среди организаторов.
Примерная смета на три дня поездки:
'' Оформление виз через визовый центр ~5000 рублей (зависит от курса евро).
'' Билеты на самолет 3000 рублей туда-обратно, за багаж и выбор места еще около 1000 рублей.
'' Сим карта, транспортные расходы в Хельсинки ~2000 рублей.
'' Одна ночь в отеле, так как самолет был утром ~1500 рублей
Итого: 12500 за человека.
В заключение хотелось бы сказать, что это был, наверное, лучший по организации хакатон, в котором я участвовал (а их было достаточно много). Участие в нем принесло мне и моим тиммейтам огромный опыт нахождения в IT среде другой страны, и, несмотря на большое количество технических проблем, мы получили массу положительных впечатлений. Кстати, Robot Uprising проводится ежегодно, так что надеюсь встретить в следующий раз там кого-нибудь из читателей этой статьи.
В публикации используются фотографии из группы хакатона [2].
Автор: ZEN_LS
Источник [3]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/python/297703
Ссылки в тексте:
[1] Robot Uprising: https://robotuprising.fi/ru2017/
[2] хакатона: https://www.facebook.com/TheRobotUprising/
[3] Источник: https://habr.com/post/428445/?utm_campaign=428445
Нажмите здесь для печати.