Найти в Дзене
deventica.io

Робот, камера, два колеса.

В эру информационных технологий существует достаточно большое количество необычных и интересных проектов, с которыми сталкиваются сотрудники IT компаний. Мне же, в свою очередь, довелось поработать над таким интересным проектом как две линейки роботов, обозначим их “Mark I” и “Mark II” от крупной компании-призера международных конкурсов робототехники.

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

Первым крупным шагом компании на мировой арене, было участие в международном конкурсе робототехники под названием ANA Avatar Xprize от японской авиакомпании ANA в далеком 2021 году. Это было достаточно популярное соревнование, поскольку команд там было очень много и помимо нескольких русских участников за приз боролись больше сотни групп робототехников со всего мира.

-2

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

-3

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

-4

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

Благодаря роботу Джонни и идеям, которые использовались для его разработки, команда создала две линейки роботов, а именно Mark I и Mark II, о которых я уже говорил ранее. И пусть первая так и не получила широкого развития, я все же не могу не рассказать о ней, поскольку она лично мне показалась наиболее интересной.

Сам из себя Mark I представляет собой урезанную версию своего предшественника. Это подвижный робот на колесной платформе, на вершине которого встроена видеокамера и микрофон. Как понятно из его конструкции, он мог перемещаться по комнате посредством команд пользователя, подключающегося к нему, а также передавать голос и видео гостя. Само изображение с камеры пользователя было на “голове” робота, создавая общее подобие человеческой фигуры.

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

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

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

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

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

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

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

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

-9

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

А как собственно работалось с ними? Что же по итогу было такого особенного в их тестировании?

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

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

-10

Из-за этого мне пришлось ввести такую вещь как ежедневные тесты. Это был простенький чек-лист вроде “зайти на робота”, “послушать”, “посмотреть”, “видно и слышно меня”, “покрутиться на месте” и т.п. Они занимали 10-15 минут на одного робота и позволяли быстро оценить общее его состояние. Все результаты тестов вносились в таблицу и позволяли увидеть общую статистику за n количество дней. Так команда наглядно могла оценить разницу в подходах к сборке роботов и какие запчасти дадут лучший результат. Единственный минус - это нудное выполнение каждый день одних и тех же действий, причем для огромного количества роботов. Пожалуй, это был один из самых тяжелых проектов, в которых данный минус профессии тестировщика был возведен в абсолют.

-11

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

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

И самое ужасное, что эти проблемы невозможно предусмотреть и как-то описать в тестовой документации, которой можно всегда следовать. Каким образом можно изначально написать тест-кейс для случая, когда через 50 минут звонка забивалось хранилище памяти и видеотрансляция от гостя начинала лагать? Или когда после трех суток простоя в режиме ожидания робот намертво зависал? Или когда при резком повороте вниз головы одного робота он бился “подбородком” о подставку из-за неправильно выставленных углов поворота? И таких неожиданно вскрывающихся кейсов было больше десятка. Фактически, у меня даже не существовало какой-либо продвинутой тестовой документации, ибо она была неэффективна и не нужна здесь.

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

Что же в итоге?

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

Даниил Мальков QA-Engineer

____________________________________________________________________________________

Подпишитесь чтобы не пропустить новые статьи, впереди много интересного!

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