В этом руководстве демонстрируется задача захвата и перемещения банки с напитком с использованием манипулятора UR17G, захвата Robotiq 2F-140 и банки с напитком для создания сцены в Isaac Sim, проверки их поведения и запуска примера захвата и перемещения с помощью элементов управления, созданных агентом.
Для рабочих процессов в робототехнике SimReady означает, что актив был подготовлен со свойствами, необходимыми для определенного сценария использования в симуляции, такими как коллизии, масса, сочленения и приводы сочленений. SimReady Central, открытая библиотека активов на Hugging Face, позволяет повторно использовать активы роботов и объектов с заданными свойствами симуляции и подтверждением проверки профиля. Чтобы узнать больше о библиотеке и ее запуске, прочитайте анонс в блоге.
Что делает актив робота SimReady?
SimReady Foundation определяет, какие функции необходимы активу OpenUSD для сценария использования в симуляции. Его спецификации связывают три уровня:
- Профиль: группа функций для сценария использования, например, корпус робота.
- Функции: возможности, необходимые для сценария использования, например, сочленения, которыми можно управлять.
- Требования: проверки настроек, необходимых для каждой функции, например, настройки привода сочленения.
Для этой задачи эти свойства включают сочленения манипулятора и захвата, а также коллизии и массу актива банки с напитком. Проверка сопоставляет эти настройки с требованиями профиля. Затем симуляция проверяет, может ли собранный робот использовать их для захвата и перемещения банки.
Что входит в состав актива, а что добавляете вы?
Пакеты UR17G, Robotiq 2F-140 и банки с напитком включают модели и их настройки симуляции. Вы собираете сцену и добавляете код задачи, чтобы определить сборку манипулятора и захвата, рабочую поверхность, начальные положения и элементы управления для перемещения манипулятора, а также открытия и закрытия захвата.
Рисунок 2. SimReady Central предоставляет модели активов и настройки симуляции, а пример сцены и элементы управления определяют задачу захвата и перемещения.
Что следует проверить перед запуском задачи захвата и перемещения?
Робот может выглядеть визуально корректно, находясь в неподвижном состоянии в Isaac Sim, но двигаться или взаимодействовать с объектами неправильно во время работы симуляции. Перед запуском захвата и перемещения протестируйте его сочленения, движение и поведение при контакте. Вы можете попросить агента выполнить эти тесты или сделать это вручную в Isaac Sim.
- Настройки сочленений: проверьте пределы сочленений и настройки приводов манипулятора и захвата.
- Движение: протестируйте небольшое движение манипулятора, а также открытие и закрытие захвата.
- Контакт: убедитесь, что банка стоит на рабочей поверхности, не проваливаясь сквозь нее.
Во время захвата и перемещения следите за тем, остается ли банка с напитком в захвате при движении манипулятора. Структуры активов различаются, поэтому используйте настройки в вашей загруженной сцене в качестве отправной точки. Ниже мы пройдем через общий процесс загрузки активов и создания сцены.
Создание симуляции захвата и перемещения в Isaac Sim
Этот пример объединяет манипулятор UR17G, захват Robotiq 2F-140 и банку с напитком в Isaac Sim. Задача состоит в том, чтобы захватить банку, поднять ее, переместить к цели и отпустить. Вы также можете использовать конечную точку службы поиска SimReady Central Space для поиска контента, курируемого OEM-производителями.
Мы также будем использовать передовую модель ИИ, чтобы помочь создать и запустить код задачи в открытой сцене Isaac Sim. Для этого примера мы используем GPT-6 Sol, но комбинация другого агента и модели также может подойти, если она способна загружать необходимые навыки и выполнять Python-код в Isaac Sim (сгенерированный код и результаты могут различаться). Подсказка (промпт) служит отправной точкой. Изучите сгенерированный код и проверьте полученное поведение перед адаптацией задачи.
Необходимое программное обеспечение:
- Установите Isaac Sim 6.2, версию, используемую в этом примере, и проверьте ее системные требования.
- Настройте агента по вашему выбору, который может использовать навыки Isaac Sim. Следуйте документации по навыкам агента, чтобы сделать встроенные навыки доступными для вашего агента.
- Установите Hugging Face CLI, только если вы выберете вариант загрузки активов через командную строку.
- Используйте конечную точку поиска USD.
Шаг 1: Загрузка активов манипулятора робота, захвата и банки с напитком
Откройте SimReady Central и найдите манипулятор UR17G, захват Robotiq 2F-140 и банку с напитком, используемые здесь. Выберите «Загрузить» (Download) для каждого актива, затем используйте «Сохранить в папку» (Save to folder) или предоставленную команду Hugging Face. Сохраняйте все три полные папки активов в целости, чтобы Isaac Sim мог найти их вспомогательные файлы.
Используйте версии активов, указанные в этом примере, и предоставьте своему агенту локальные пути к файлам USD для манипулятора, захвата и банки с напитком. Пример пути к захвату показан ниже; ваше местоположение загрузки может отличаться.
Рисунок 3. Поиск в SimReady Central и интерактивные предварительные просмотры помогают идентифицировать захват Robotiq 2F-140 и банку с напитком, используемые в этом примере.
Рисунок 4. Варианты загрузки банки с напитком включают сохранение пакета активов в папку или использование Hugging Face CLI.
Что сообщает вам проверка актива?
Отчет о проверке манипулятора использует профиль Robot-Body 4.0.0, а отчет о проверке захвата — Robot-Gripper 3.0.0. Оба отчета фиксируют успешное прохождение проверок сочленений с приводом PhysX, которые проверяют настройки привода сочленений.
Проверка профиля SimReady обеспечивает общую базу для повторного использования этих активов. Затем запуск задачи захвата и перемещения проверяет, как манипулятор, захват, банка и контроллер работают вместе в собранной сцене.
Шаг 2: Сборка робота и создание сцены для захвата и перемещения
После загрузки активов используйте своего агента с навыками Isaac Sim, чтобы помочь собрать робота, запустить инструменты проверки и создать элементы управления захватом и перемещением. Вы также можете выполнить эти шаги вручную, используя связанную документацию.
Запустите Isaac Sim из каталога установки с включенным удаленным Python-сервером, чтобы агент мог взаимодействовать с симуляцией через Python:
Если вы используете агента, убедитесь, что вы запускаете его из каталога Isaac Sim, чтобы он мог получить доступ к навыкам, необходимым при выполнении шагов ниже.
Убедитесь, что все три актива отображаются без ошибок отсутствия файлов. Попросите агента проверить пределы сочленений и настройки приводов манипулятора и захвата или проверьте их самостоятельно в Isaac Sim. Робот и захват содержат физические сочленения, которые также можно протестировать и проверить в графическом интерфейсе Isaac Sim. Теперь мы соберем манипулятор и захват, чтобы мы могли управлять сборкой как единым артикулированным механизмом.
Вы можете следовать руководству по сборке робота для ручной сборки. Здесь мы попросим нашего агента завершить сборку и проверить ее для нас:
Пример подсказки (промпта), используемой в этом примере:
В конечном итоге агент использует навыки «isaac-sim-remote» и «usd-articulation», входящие в состав Isaac Sim, для завершения сборки и проверки физики робота. Теперь у нас есть все активы, необходимые для запуска захвата и перемещения: собранный робот и банка с газировкой. Теперь мы перейдем к заключительной части рабочего процесса.
Рисунок 5. Настройки сочленений для манипулятора UR17G и захвата Robotiq 2F-140 в Isaac Sim.
Когда собранный робот и банка находятся в сцене, попросите агента запустить задачу. Оцените поведение симуляции, используя проверки на следующем шаге.
Шаг 3: Тестирование элементов управления и запуск захвата и перемещения
Теперь, когда активы включают свойства симуляции и проверку профилей, мы можем провести тестирование в собранной сцене и с помощью контроллера. Контроллер координирует движение руки UR17G с открытием и закрытием захвата Robotiq 2F-140. Используйте приведенные ниже проверки поведения для оценки задачи, сгенерированной агентом. Чтобы самостоятельно разобраться с контроллером или адаптировать его, см. руководство Добавление робота-манипулятора.
Пример промпта, использованного в данном примере:
Использованные навыки: «isaac-sim-remote», «manipulaiton-ik» и «physics-simulation»
Полная задача проверяет, удерживает ли захват банку во время движения и отпускает ли ее в целевой точке. Сбросьте сцену, а затем запустите последовательность приближения, захвата, подъема, удержания, перемещения и отпускания. Сравните свой результат с вводным видео и критериями успешности ниже.
Рисунок 6. Рука UR17G и захват Robotiq 2F-140 перемещают жестяную банку с напитком из желтой зоны подбора в зеленую целевую зону в Isaac Sim. Показано на скорости 4×.
Если ваш результат отличается, отметьте, на каком этапе последовательности происходит сбой, и попросите агента осмотреть сцену и сгенерировать элементы управления. Перед повторной попыткой верните банку и робота в исходное состояние, чтобы можно было сравнить результаты.
Допущения моделирования:
- Фиксированная установка: банка находится в известном положении, робот закреплен, а рабочее пространство чистое и ровное. Зрение не использовалось, а проверки на столкновения были ограничены.
- Упрощенная банка: деформация и движение жидкости не моделируются, поэтому в данном примере не проверяется сминание.
- Скриптовый захват и движение: горизонтальный захват использует ограничение усилия привода в 2 Н·м, выбранное путем симуляционных тестов, оно не откалибровано под усилия на кончиках пальцев и не рекомендовано производителем. Контакт и трение удерживают банку с напитком, пока рука следует по фиксированным путевым точкам без перепланирования. Технические характеристики усилия зажима для реального оборудования см. в листе продукции Robotiq.
Эти результаты применимы к данной настроенной с помощью скриптов конфигурации. Они не гарантируют надежность при неопределенном положении объектов, других полезных нагрузках или на реальном оборудовании.
Создайте свою следующую симуляцию с активами SimReady
Создайте собственную задачу захвата и перемещения с помощью активов из SimReady Central, а затем задействуйте выбранного агента, чтобы собрать сцену и запустить ее в Isaac Sim.
Откройте для себя активы
- Найдите роботов и объекты: просмотрите SimReady Central на Hugging Face.
- Проверьте поддержку актива: ознакомьтесь с профилями и требованиями в SimReady Foundation, а также с отчетами о проверке актива.
Создайте сцену захвата и перемещения
- Настройте симулятор: следуйте руководству по установке Isaac Sim для версии, используемой в этом примере.
- Подключите вашего агента: следуйте документации по навыкам агента Isaac Sim, чтобы сделать входящие в комплект навыки доступными для вашего агента.
- Соберите робота: следуйте руководству по сборке роботов, если вы предпочитаете соединять руку и захват вручную.
Подготовка и публикация контента
- Начните с CAD: следуйте инструкции по подготовке собственных робототехнических активов.
- Проверьте и отправьте активы: следуйте руководству по отправке в SimReady Central, чтобы сделать ваши активы доступными для других разработчиков.
Для вдохновения изучите голосовую VR-демонстрацию Майкла Вагнера (Michael Wagner). Обе они показывают, как разработчики используют активы SimReady в собственных проектах.
Что вы создадите? Поделитесь своей сценой и результатами в комментариях на Hugging Face, указав использованные активы и версию Isaac Sim.
Успешного творчества!











