Мы создаём платформу управления человекоподобными роботами. Чтобы роботы могли устойчиво двигаться, взаимодействовать с окружающей средой и выполнять полезные задачи в реальных условиях, необходимо много разнообразных и качественных данных. Мы развиваем инструменты и процессы, которые позволяют собирать, структурировать и использовать эти данные для обучения и улучшения нейросетевых моделей.
Важная часть этого процесса — удобный и надёжный интерфейс взаимодействия человека с роботом. Он должен позволять оператору безопасно управлять роботом, записывать демонстрации и контролировать качество собираемых данных даже при нестабильной сети и ограниченных ресурсах бортовой платформы.
Почему эта задача интересна:
Мы ищем разработчика, который поможет превратить исследовательские скрипты и прототипы в рабочие инструменты телеуправления и сбора данных для ежедневного использования.
Разработка и развитие инструментов сбора данных на роботе
Вы будете создавать на C++ компоненты для непрерывной записи данных с сенсоров, состояния робота и действий оператора. Предстоит обеспечить согласованность данных и контроль их качества, а также сделать процесс устойчивым к сбоям отдельных компонентов.
Интеграция с пайплайном хранения и обработки
Вам предстоит организовать автоматическую доставку собранных данных с робота в инфраструктуру хранения и дальнейшей обработки. Нужно будет реализовать механизмы повторной отправки данных и восстановления после сбоев, а также уведомления об ошибках, мониторинг задержек и полноты данных.
Удалённое телеуправление роботом
Вы будете развивать систему безопасного управления роботом на расстоянии: передачу команд, видео и телеметрии между оператором и роботом. Важно обеспечить предсказуемое поведение системы при нестабильном соединении, высокой задержке или потере связи и предоставить оператору понятную информацию о состоянии робота.
Превращение R&D-прототипов в рабочий инструмент
Вместе с исследователями и операторами вы будете улучшать пользовательские сценарии, автоматизировать типовые действия и создавать инструменты диагностики. Цель — снизить когнитивную нагрузку на оператора и сделать сбор данных воспроизводимым и удобным для ежедневной эксплуатации.
Масштабирование на разные робототехнические платформы
Вы будете проектировать архитектуру и интерфейсы так, чтобы инструменты можно было переносить между разными моделями роботов с минимальными изменениями. Предстоит отделять общую логику от платформенной, развивать адаптеры и поддерживать единое поведение системы на всём парке роботов.
Больше о бэкенде в Яндексе — в канале Yandex for Backend