Изогнутая проволока перенесла движения виртуальных персонажей в реальность

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

Какое-то время продолжим трудится на общее благо по адресу https://n-n-n.ru.
На новой платформе мы уделили особое внимание удобству поиска материалов.
Особенно рекомендуем познакомиться с работой рубрикатора.

Спасибо, ждём вас на N-N-N.ru

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

Разработка была представлена на конференции SIGGRAPH Asia 2018.

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

Инженеры из Disney Research под руководством Морица Бехера (Moritz Bächer) научились автоматически создавать реалистично двигающихся роботов, состоящих из проволок. Эти проволоки составляют скелетоподобный каркас для роботов, части которого двигаются благодаря натяжению прикрепленных к ним тросов.

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

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

provoloka1.jpgСхема работы алгоритма
/ Hongyi Xu et al. / SIGGRAPH Asia 2018

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

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

Пожалуйста, оцените статью:
Ваша оценка: None Средняя: 5 (2 votes)
Источник(и):

N+1