Система дистанционного управления мобильным РТК через виртуальный интерфейс с эффектом присутствия

Система дистанционного управления мобильным РТК через виртуальный интерфейс с эффектом присутствия

Аннотация

В данной работе представлено описание возможной реализации дистанционного управления мобильным робототехнического комплекса с использованием технологии виртуальной реальности. Для увеличения возможностей оператора был разработан макет из стереопары RGB камер, установленных на двухосевой подвес, а в качестве устройства для погружения в виртуальную среду был использован шлем виртуальной реальности HTC Vive Pro. Сама виртуальная среда воспроизводилась с помощью среды разработки Unity3D. Таким образом оператор получал видеоизображение окружающей среды со стереоскопическим эффектом, а двухосевой подвес повторял движения головы оператора для большего эффекта телеприсутствия.

Система управления

Выбор двигателя был осуществлен на основе проведения ряда опытов, по результатам которых были получены рабочие частоты и амплитудные значения скорости и ускорения в двух плоскостях: вертикальном и горизонтальном. Синтез корректирующего устройства проведен для привода горизонтального вращения частотным методом. Раработка платы управления проводилсь с учетом установки её в непосредственной близости к исполнительному двигателю. Однако для разработки макета использовались уже готовые привода с аналогичными характеристиками.

Двухосевой подвес

В качестве стереокамеры используется модуль стереозрения TrackingCam от компании «Прикладная робототехника». В качестве приводов используются сервоприводы Dynamixel MX–28T и MX-64T. Детали распечатаны на 3D принтере.

3D модель и макет двухосевого подвеса.

Обработка изображений

Вся экосистема проекта разработа с помощью ROS1. Для получения данных с камер запускается нода, которая эмулирует работу alive-запросов, по которым камера отдает кадры с камер, а полученные кадры отправлет топики. Стереопара калибруется средствами ROS, а обработка изображений с помощью библиотеки OpenCV.

Вид с левой камеры и карта глубины
Вид с левой камеры и карта глубины.

Unity3D

Для связи C#-скриптов с топиками ROS в данном решении используется библиотека ROS#. Благодаря переписаному шейдеру получилось рендерить текстуру объекта для каждого глаза по отдельности. От шлема в приводы по UART передавались команды для синхронизации поворота головы оператора и подвеса. В интерфейсе допольнительно демонстрировалась карта глубины.

Cтереоскопический вид в VR шлеме
Cтереоскопический вид в VR шлеме.

Итог

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