Байки и будни подводных робототехников

«Почему мы заняли второе место? Просто у всех всё сломалось во время финала, а у нас ничего не сломалось т.к. не работало.»

2651c5039d9a680e5b84caaf6d642663.png

Я позадавал вопросы нашей владивостокской команде подводных робототехников, они сначала очень неохотно отвечали, а потом их было не остановить…

В: Насколько часто сидели по ночам (в бассейне:)?

Туфанов: Когда я был в команде, это была всегда одна и та же история. В течение года все заняты учёбой, аспирантурой и т.д. и идёт очень неторопливая работа. Программисты (я рассказываю от лица программиста) проектируют, как они перепишут в этом году весь софт, какие у них будут крутые вспомогательные утилиты и т.д. Потом темпы потихоньку наращиваются, а за 2–3 недели до соревнований появляется собственно аппарат (в железе), и тогда уже не до вспомогательных утилит. Вы днями «прорастаете» в бассейне (потому это и называлось у нас «прорасталово») и дописываете код верхнего уровня (собственно, логику прохождения миссий), подбираете параметры и всё такое. Обычно, вы не ночуете в бассейне, а просто поздно уходите (за полночь), но одну или две последних ночи мы обычно проводили-таки в бассейне (фотка в спальных мешках из 2013).

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

В бассейне спать, конечно, то еще удовольствие, но в этом есть свой неповторимый романтизм и элементы тимбилдинга. Когда «конец близок» темпы становятся действительно ударными. Из-за позднего появления аппарата планы обычно сдвигаются, поэтому многие мечты об идеальном коде и остаются нереализованными и переносятся на следующий год. Но, благодаря нашему опыту работы в таких ограниченных временных рамках, нам легче решать проблемы, возникающие на самих соревнованиях, когда стресса в избытке, а времени нет вообще. Как однажды сказал один из наших руководителей во время очередной бессонной ночи перед самым финалом: «Эх, а вот хорошо бы было вообще не есть и не спать! Сколько бы мы тогда всего успели сделать!»

image

Отладка аппарата в ванной комнате своего гостиничного номера. 2012 год.

2012 год


9bfa13b202a65f3ca36b09860c4f8df2.png

Russians place fifth in their first year at RoboSub competition (статья в LA Times)

В: Довольны ли были своими результатами первых соревнований 2012 года?

Туфанов: В 2012 году мы не были уверены даже, что попадём в финал, поэтому 5-е место для нас было приятной неожиданностью. В 2013 году мы значительно лучше подготовились, так что 3-е место было вполне закономерно.

eecd6acb9ab8a466bff834e4603591f5.png

В: Как дебажили софт на месте?

Туфанов: В 2012 году мы участвовали в Robosub в первый раз: программисты были неопытные, софт и аппарат новые. Я помню как Федя исправил гидроакустику, которая перестала работать, как оказалось, из-за того что изменили частоту передачи данных от компаса. Логически эти вещи не связаны, но физически, как оказалось, еще как.

image

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

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

В: Что чаще всего ломается/протекает/глючит?

Чемезов: Если честно, у нас более менее хорошо собран аппарат. Проблем с герметичностью не было. Было две проблемы — что-то было с гидроакустикой и с зарядом аккумулятора (надо всегда проверять заранее).

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

Про программистов.

Чемезов: Так сложилось что есть правило: программистам запрещено трогать аппарат, только смотреть, и если что — помочь перенести.

Не больше.

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

Про еду.

Чемезов: Рассказ с прошлых соревнований. Хоть и чемпионат мира, никакой нормальной системы питания нет. Приезжает «Буритосная» и пытается тебе продать бурито. Там такая полутораметровая мексиканка смотрит на тебя сверху вниз со взглядом:» Жри свой гребаный бурито, грязный гринго».

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

В: С каким набором отверток, паяльников и напильников вы поехали (что надо взять с собой)?

Туфанов: На этот вопрос должен ответить механик/электронщик. Я знаю, что паяльник нужно иметь на 110 Вольт. Он или остаётся с прошлого года, или покупается на месте, или его можно попросить у другой команды — они обычно не отказывают.

Список вещей в ЗИП от Ивана Чемезова
  1. Клава с usb
  2. Паяльник, припой и канифоль
  3. Мультиметр
  4. МГТФ и пилот
  5. Блок электроники запасной
  6. Отвертки (и та гипер большая отвертка бесконечности)
  7. Запасной хаб и гидрофон
  8. Катюшка связи
  9. Документы от аппарата
  10. Рулетка
  11. Источник с щупами
  12. Свинец и плавучесть
  13. 2 булета и защита разъемов, крепеж булета
  14. Крепеж много, м5, м4, м3 и прочие модели BMW
  15. Кещи для настройки компаса Антона
  16. Защита винтов
  17. Комп кулранер и эту ерунду с которой не умеют работать
  18. Насос
  19. Компас запасной
  20. Бампер и трубки на 8 и 10
  21. Аккумуляторы-зарядка
  22. Изолента и скотч, скотч только желтого цвета
  23. Надфиль
  24. Прямые руки
  25. Программатор для супервизора
  26. Usb wi-fi
  27. Магнит
  28. Провод изернет
  29. 3 стальных шарика для цирковых номеров
  30. Стеклотекстолит
  31. Зарядник для телефонов
  32. Трансформатор на 110В
  33. Камера запасная
  34. Мотор и винты
  35. Шуруповёрт
  36. Питание на Poe Lan
  37. Провод hdmi
  38. Ножницы
  39. Кусачки
  40. Молоток
  41. Не забыть мозги

Андрей Сахаров: Уже несколько раз было такое, что какая-то часть багажа по неведомой причине теряется во время перелета (на самом деле, когда у тебя на пути 3 пересадки — это немудрено), поэтому лучше сразу брать еще один запасной аппарат.

image

В: Помогают ли команды друг другу на соревнованиях (запчастями, советами и пр.)?

Чемезов: Да, так когда нам нужен был молоток, мы пошли к женской команде из Техаса, а когда нужен был женский лак, тоже к ним. Но у них не было лака, поэтому пришлось просить суровых бородатых мужиков.

image

Команда девчонок из женского колледжа из Техаса. Примечательно, в этом колледже могут учится все.

Андрей Сахаров: На соревнованиях всегда царит невероятно дружеская атмосфера! Правда, я сам почти не общался с людьми, потому что после первого же тестового запуска всегда появляется куча работы, особенно для программистов. Так что на все предложения «Let«s party hard, comrade!» приходилось отвечать вежливым отказом.

В: Как общаетесь с другими командами после соревнований?

Чемезов: Я до сих пор общаюсь с людьми из другой русской команды. Так, один из членов нашей команды плавно перешел в их команду. Ну и, естественно, организаторы присылают нам разные письма, на которые мы не отвечаем. Единственное, оставил отзыв в их книге предложений.

Андрей Сахаров: Конечно, после соревнований всегда появляются новые контакты, но особо активно мы не общаемся. Исключением стала разве что команда из Сингапура, с которой мы после первых Сингапурских соревнований очень подружились. Они нас и «чили крабом» кормили, и на экскурсии водили по городу и лабораториям. Чудесные ребята. Потом мы даже делились информацией о том, кто как готовится к чемпионату мира, но секретов, конечно не раскрывали :).

image»

История от Максима Спорышева

image

Макс — третий справа.

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

Один произошел в 2016 году — единственный раз, когда мы не вышли в финал.

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

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

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

Главный судья сказал, что в день финала даст каждой команде еще по одному запуску до финалов (по 20 или 30 минут каждой команде). В финал пройдет только одна — лучшая. Но при условии, что наберет более 4000 очков.

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

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

image

Судьи.

Одним из таких заданий было следующее. Жюри включала случайно один из двух маяков, под каждым из которых было свое задание. Аппарат при выходе на случайный маяк должен сам догадаться, какое задание в его районе находится и успешно справиться с его частью. В этом случае дадут не только баллы за частичное задание, но и баллы за корректную навигацию по случайному маяку (около 2000 очков).

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

Проходила только одна команда, даже если набрать 4000 очков (к слову столько мы не набирали, даже когда заняли 3-е место в 2013 и сделали кучу всего). Мы видели, как пара сильных прошлогодних команд неудачно провела свои запуски. И вот был наш запуск, который, как назло, начинается крайне неудачно и аппарат то врезается в стойку ворот, то промахивается по бую.

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

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

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

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

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

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

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

На следующий год нам повезло больше.

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

e2bf5624012b814c3e21f2dde7924077.png

Колян волком смотрит на программистов :)

История Вани Чемезова


Я был, есть и буду ближайшее время — механик-электронщик-тамада-разнорабочий-грузчик аппарата. Если кратко — не программист (чем горжусь).

Igor Tuphanov: Да, к программистам часто такое отношение:) Считается, что они ничего не умеют делать руками, и в общем-то это правда. Когда я был в команде, было правило, что программистам лезть в аппарат не разрешается. Только очень опытным, и только чтобы поменять батарейку.

image

Распределение ролей.

Интересных моментов было море и маленькая лужица. Мы очень интересно проходили через границу (в обе стороны). Во время поездки был специальный инструктаж:

«В LA все люди подкаченные, зализанные. Поэтому будьте готовы к брутальным мачо пограничникам». И действительно, на таможне к нам с батареей, подошел покоритель женских сердец и мягким как бархат голосом сказал: «Что это у вас такое (показав на батарею), можно я посмотрю? Ммм, тяжеленькая…. Я у вас её позаимствую ненадолго, не огорчайтесь».

Какими бы мы ни были тренированными, это всё же было очень суровое испытание.

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

Нам приходилось взламывать собственные номера.

Мы единственные кто запускали аппарат с айфона (и вообще наша команда может спокойно рекламировать Apple).

Команда Калтека весьма странно управляла своим детищем. Их аппарат гарцевал как в последний раз. А капитана команды Корнелла снова закинули в бассейн (Совпадение? У них каждый год новый капитан).

image

Главный организатор (Дейв) в этом году носил резиновую уточку на плече.

А у индусов аппарат вместо того, чтобы «выстрелить торпедой в кальмара», решил протаранить его на полной скорости.

Ещё мы поняли что Wi-Fi работает, только если он примотан ЖЕЛТЫМ скотчем.

Сейчас мы уже знаем, что проблема была в криворукой сборке роутера D-link. В этом мире нашелся еще один бракодел, помимо меня.

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

История от Андря Сахарова


Если нужна история, то первым делом вспоминается 2013 год, когда в аэропорту Сан-Диего мы обнаружили, что у нас бесследно пропала сумка, в которой находилась одна из важнейших деталей аппарата… и все мои вещи.

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

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

И вот, когда мы уже прошли через все стадии принятия неизбежного, а розыгрыш «путевок» в финал был близок к своему завершению, наш руководитель при помощи какой-то невероятной и крайне могущественной магии, а также своих связей в высших кругах, материализовал для нас точную копию утерянной реликвии. Мы моментально пришли в полную боеготовность (еще бы!), и за ту единственную попытку, что у нас была, вырвались в финал. Другие команды были порядком удивлены таким развитием событий. Выступили мы конечно не идеально, но для такого хардкора — очень даже неплохо. А вот мою футболку с пакманом так и не нашли.

Водолазы


00f7ecc010d2d44f587768a8b0241d77.png

Указания водолазу по поводу работы с аппаратом в воде.

Туфанов : Бассейн большой и глубокий. Аппарат может залечь на дно и его надо будет доставать, аппарат может запутаться в препятствиях. Бывает, что аппарат надо останавливать (использовать kill switch, который, по правилам, должен быть у каждого аппарата), пока он не натворил беды. В общем, это сложно и небезопасно. Это могут делать только специально подготовленные люди.

Организаторы как-то договариваются с ВМФ (всё-таки, соревнования проходят на их территории), и на соревнованиях всегда есть команда водолазов ВМФ (navy divers).

image

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

image

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

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

image

Андрей Сахаров: Дайверы, хоть и кажутся крайне суровыми, на самом деле очень добродушный и интересный народ. Был забавный случай, когда дайвер не до конца понял, как устроен kill-switch нашего аппарата и не смог его самостоятельно отключить, но он догадался поднять его над поверхностью воды, чтобы мы смогли отправить команду отключения по Wi-Fi.

Аппарат все это время естественно изо всех сил маслал движками, поднимая брызги и стараясь заглубиться. А тяга у него нешуточная, как дайверу удалось его удержать — даже не представляю. Но на то он и военный ныряльщик:) А когда он вернулся на берег, то изрек нечто эпичное вроде: «Я уже слишком стар для всего этого!»

image

Приколы


b5dd19af10bc0459a12973c76b3ee089.png

Всю неделю Дейв (технический директор робосаба) ходил с надувной уткой.

926196077b9e5ad19d56dae7458ed4a9.png

В один из дней утка Дейва таинственным образом исчезла, а на стене с миссиями появилась записка…

106b192611ade52b9ab9f039c0677647.png

Одно из художеств на стене посвященное Дейву, кстати не единственное))

5ed34624b77dbbe996a403e013603d28.png

Парень из университета Мериленда каждый день разрисовывает доску с миссиями.

1dab08660611be378e241009599c604b.png

Футболки Корнелльского университета уже как минимум второй год веселят людей :)

image

У Сингапура (NUS) тоже прикольный слоган: «I have no control but it«s okay».

image

image

image

image

Zoz Brooks — бессменный корреспондент и ведущий Робосаба. На время афтерпати он открывает собственный барбершоп, где каждый быстро и совершенно бесплатно может сделать модную, но довольно специфическую стрижку «как у Зоза» :)

P.S.


image

Это Владивосток, детка!

Читать еще

© Geektimes