×
02.04.2020
220.018.12f7

СПОСОБ УПРАВЛЕНИЯ РОБОТОМ С ПОМОЩЬЮ КОНТРОЛЛЕРОВ И ШЛЕМА ВИРТУАЛЬНОЙ РЕАЛЬНОСТИ

Вид РИД

Изобретение

Юридическая информация Свернуть Развернуть
№ охранного документа
0002718240
Дата охранного документа
31.03.2020
Краткое описание РИД Свернуть Развернуть
Аннотация: Изобретение относится к области управления роботом и может быть использовано для антропоморфных роботов, роботов манипуляторов, медицинских, военных, а также космических роботов. Способ управления осуществляют с помощью контроллеров и шлема виртуальной реальности. Производят калибровку системы координат шлема и контроллеров относительно тела пользователя, вычисляют масштабный коэффициент кинематики робота по отношению к кинематике человека, получают текущие координаты углов Эйлера контроллеров и шлема виртуальной реальности и передают от сервера клиенту. Полученные координаты контроллеров и шлема преобразовывают в координаты робота, используя ранее рассчитанный масштабный коэффициент. Рассчитывают углы сочленений робота по преобразованным координатам, преобразовывают полученные углы Эйлера контроллеров и шлема в углы робота и передают данные на исполнительные механизмы робота по проводному или беспроводному каналу связи. В результате повышается эффективность работы оператора с роботом на удаленном расстоянии в режиме реального времени, исключается эффект рассогласования действий между пользователем и роботом и повышается точность и скорость управления. 3 з.п. ф-лы.
Реферат Свернуть Развернуть

Область техники, к которой относится изобретение

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

Уровень техники

Из уровня техники известен способ управления роботом (https://hi-news.ru/technology/v-mit-nauchilis-upravlyat-robotami-s-pomoshhyu-virtualnoj-realnosti.html, опубл. 06.10.2017).

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

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

Заявленное изобретение устраняет указанные недостатки и позволяет достичь заявленный технический результат.

Раскрытие изобретения

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

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

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

производят калибровку системы координат шлема и контроллеров относительно тела пользователя;

вычисляют масштабный коэффициент кинематики робота по отношению к кинематике человека;

получают текущие координаты углов Эйлера контроллеров и шлема виртуальной реальности и передают от сервера клиенту;

преобразовывают полученные координаты контроллеров и шлема виртуальной реальности в координаты робота используя ранее рассчитанный масштабный коэффициент;

рассчитывают углы сочленений робота по преобразованным координатам;

преобразовывают полученные углы Эйлера контроллеров и шлема виртуальной реальности в углы робота;

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

При калибровке системы координат шлема и контроллеров относительно тела пользователя, определяют длину перемещения рук и длину перемещения тела пользователя.

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

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

Осуществление изобретения

Для реализации способа необходимо: визуальная среда разработки (например, компьютерных игр типа Unity visual studio), шлем и контроллеры виртуальной реальности (например, типа HTC Vive), персональный компьютер поддерживающий систему виртуальной реальности, сервер - программное приложение работающее с контроллерами и шлемом виртуальной реальности, клиент - программное приложение подключаемое к серверу для приема данных от контроллеров и шлема, а также расчёта углов сочленений робота и преобразования рассчитанных данных в известный протокол для дальнейшей передачи преобразованных данных роботу, сервер робота - программное приложение принимающее преобразованные данные от клиента и передающее команды на исполнительные механизмы, а также для считывания текущих параметров исполнительных механизмов, таких как: температура, ток, напряжение, текущее положение и передача их клиенту; беспроводное или проводное интернет подключение, робот с известной кинематической схемой.

Заявленный способ включает следующие этапы:

производят калибровку системы координат шлема и контроллеров относительно тела пользователя;

вычисляют масштабный коэффициент кинематики робота по отношению к кинематике человека;

получают текущие координаты углов Эйлера контроллеров и шлема виртуальной реальности и передают от сервера клиенту;

преобразовывают полученные координаты контроллеров и шлема виртуальной реальности в координаты робота используя ранее рассчитанный масштабный коэффициент;

рассчитывают углы сочленений робота по преобразованным координатам;

преобразовывают полученные углы Эйлера контроллеров и шлема виртуальной реальности в углы робота;

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

1) Калибровка шлема и контроллеров относительно тела пользователя;

На персональном компьютере с подключенной системой виртуальной реальности HTC Vive, в визуальной среде разработки Unity visual studio, производим калибровку системы координат шлема и контроллеров по отношению к пользователю. Основная цель калибровки заключается в определении параметров тела пользователя и его текущей позиции. Для решения поставленной задачи достаточно знать: длину перемещения рук пользователя из положения - руки согнуты в локтях, локти опущены вниз вдоль тела, запястья прижаты к груди, в положение - руки вытянуты перед собой, параллельно друг к другу и перпендикулярны туловищу, - руки вытянуты вверх параллельны друг другу, - руки вытянуты в стороны, перпендикулярно туловищу; длину перемещения тела из положения сидя - min в положение стоя - max; углы Эйлера контроллеров и шлема системы виртуальной реальности - голова расположена прямо, запястья рук не согнуты. Фиксация координат рук из точки min в точку max производиться путем нажатия и удержания кнопок на левом и правом контроллере системы виртуальной реальности. После того как руки будут вытянуты т.е. находится в точке max, кнопки на контроллерах отжимаются. Для фиксации координат туловища необходимо встать ровно, держа голову прямо, зажать кнопку на одном из контроллеров, после чего сесть и отпустить кнопку.

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

Считываются следующие параметры:

- начальное положение тела со шлемом в момент калибровки, в положении сидя;

- начальный поворот левой и/или правой руки с контроллерами;

- начальный поворот тела со шлемом;

- максимальная положение левой и/или правой руки с контроллерами;

- минимальное положение левой и/или правой руки с контроллерами;

- максимальное положение тела со шлемом вдоль оси OZ;

- минимальное положение тела со шлемом вдоль оси OZ.

Все данные передаются на сервер, где вычисляются параметры рук и туловища оператора, используя следующие формулы:

где

- длина перемещения левой и/или правой руки с контроллерами;

- длина перемещения тела со шлемом вдоль оси OZ.

2) Вычисление масштабного коэффициента кинематики робота по отношению к кинематике человека.

Зная кинематическую схему робота, а также вычисленные параметры тела пользователя можно посчитать масштабный коэффициент кинематики робота по отношению к кинематике человека:

где

- масштабный коэффициент для левого и/или правого манипулятора.

- длина перемещения левого и/или правого манипулятора;

- масштабный коэффициент высоты робота.

3) Получение текущих координат, углов Эйлера контроллеров и шлема виртуальной реальности и их дальнейшая передача от сервера клиенту.

После расчета масштабных коэффициентов начинается непрерывная передача следующих данных от сервера к клиенту:

, , , , , , ,

где

- текущие положение левой и/или правой руки с контроллерами;

- текущие положение тела со шлемом вдоль оси OZ;

- текущие углы Эйлера контроллеров;

- текущие углы Эйлера шлема.

4) Преобразование полученных координат системы виртуальной реальности, в координаты робота используя ранее рассчитанный масштабный коэффициент.

Для того чтобы координаты контроллеров изменялись относительно начальных координат шлема виртуальной реальности, необходимо учесть смещение этих координат:

- смещение координат шлема относительно начальной координаты в момент калибровки.

Тогда:

,

где - координата, левого и/или правого, рабочего органа или захвата манипулятора;

- матрица смещения координат по осям OX, OY, OZ, левого и/или правого, рабочего органа или захвата манипулятора.

Координаты базы робота или туловища вдоль оси OZ получаем следующим образом:

5) Расчет углов сочленений робота по преобразованным координатам используя метод обратной кинематики. Преобразование полученных Эйлеровских углов системы виртуальной реальности, в углы робота, используя матрицу вращения.

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

При использовании геометрического подхода решение производится в два этапа:

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

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

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

Для управления базой или туловищем, запястьем и головой робота в дополнении используется переключатель:

Значения индикаторов задаются пользователем до начала решения обратной задачи кинематики, а значения переключателей могут задаваться в процессе решения.

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

;

.

6) Передача данных на исполнительные механизмы робота любым известным способом, по проводному или беспроводному каналу связи.

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

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

Источник поступления информации: Роспатент
+ добавить свой РИД