Можно импортировать в виртуальный мир в среде робота и робота Simulink® 3D Animation™ 3-D модели, которые заданы с помощью объединенного формата описания робота (.urdf
) или формат описания симуляции (.sdf
). Формат файла URDF является форматом файлов XML, который задает различную модель (обычно робот) свойства. Когда вы импортируете из файла URDF, только визуальное представление модели импортируется. Это представление обычно обращается к файлам форм компонента модели, заданным как файлы ДАУ или STL. Можно импортировать визуальные свойства объектов, существующих в URDF или файлах SDF в соответствующую иерархическую структуру узлов Transform
, содержащих объекты IndexedFaceSet
со структурами.
URDF и файлы SDF используют ДАУ Collada и форматы STL, чтобы задать визуальные свойства объектов сцены.
Чтобы импортировать визуальное представление роботов, в 3D World Editor, выбирают Nodes> Import From. Затем выберите STL File, Physical Modeling XML File, URDF File, SDF File или COLLADA File. Из командной строки MATLAB® можно использовать функцию
, чтобы импортировать vrimport
.urdf
, .dae
, .stl
и файлы .sdf
в виртуальный мир.
Импорт URDF и SDF поддерживает подмножество ДАУ Collada 3D формат файла (объекты, которые обычно присутствуют в файлах SDF и URDF: геометрическая фигура возражает со структурами).
Этот пример импортирует файл ДАУ Collada, fox.dae
, в сцену с предопределенной сеткой, серым фоном и точкой зрения. Голова лисы является сферой с 1-m радиусом, помещенным в источник и смотрящий в направлении VRML +z-axis.
fox.dae
поставляется с программным обеспечением Simulink 3D Animation. Путем является matlabroot/toolbox/sl3d/sl3ddemos/fox.dae
.
От Панели инструментов MATLAB, во вкладке Apps, в разделе Simulation Graphics and Reporting, нажимают 3D World Editor.
В 3D World Editor выберите File> New from Template.
В диалоговом окне файла выберите папку Grids
и затем выберите файл виртуального мира XZGrid.wrl
.
Спасите виртуальный мир в текущей папке. Выберите File> Save as и назовите файл виртуального мира fox_dae.wrl
.
Импортируйте модель DAE. Выберите Nodes> Import From> COLLADA File. Выберите файл fox.dae
.
Откройте узел COLLADA_fox_Transform
и установите поле scale
на 3 для каждой размерности.
В этом примере файл fox.urdf
относится к файлу fox.dae
. Файл URDF преобразовывает исходную модель DAE так, чтобы лиса переводилась в положение [4 1 0] и вращалась так, чтобы это указало на VRML +x-axis направление.
fox.urdf
поставляется с программным обеспечением Simulink 3D Animation. Путем является matlabroot/toolbox/sl3d/sl3ddemos/fox.urdf
.
От Панели инструментов MATLAB, во вкладке Apps, в разделе Simulation Graphics and Reporting, нажимают 3D World Editor.
В 3D World Editor выберите File> New from Template.
В диалоговом окне файла выберите папку Grids
и затем выберите файл виртуального мира XZGrid.wrl
.
Спасите виртуальный мир в текущей папке. Выберите File> Save as и назовите файл виртуального мира fox_urdf.wrl
.
Импортируйте модель URDF. Выберите Nodes> Import From> URDF File. Выберите файл fox.urdf
.
Откройте узел URDF_visual_Transform
и установите поле scale
на 3 для каждой размерности.
SDF является форматом XML, который описывает объекты и среды для средств моделирования робота, визуализации и управления, первоначально разработанного как часть средства моделирования робота Gazebo. Папка, в которой расположен файл model.sdf
, задает имя модели SDF. Этот пример показывает, как импортировать простой механизм ссылки руки.
Пример принимает, что вы имеете
Загрузите папку модели simple_arm
(включая все ее содержимое) от этого сайта модели Gazebo: http://models.gazebosim.org/simple_arm/. Чтобы загрузить все содержание папки, загрузите и распакуйте файл model.tar.gz
.
От Панели инструментов MATLAB, во вкладке Apps, в разделе Simulation Graphics and Reporting, нажимают 3D World Editor.
В 3D World Editor выберите File> New from Template.
В диалоговом окне файла выберите папку Grids
и затем выберите файл виртуального мира XZGrid.wrl
.
Спасите виртуальный мир в текущей папке. Выберите File> Save as и назовите файл виртуального мира simple_arm.wrl
.
Импортируйте модель SDF. Выберите Nodes> Import From> SDF File. В папке simple_arm
выберите файл model.sdf
.
Откройте узел SDF_simple_arm_Transform
и установите поле scale
на 3 для каждой размерности.
Процесс импорта создает в иерархии модели некоторые специальные узлы Transform
, которые облегчают управлять моделями. Каждое вращательное соединение в модели SDF представлено с узлом Transform
с именем начиная с axis_
. Этим узлам задали оси вращения так, чтобы элементы модели последовательно перемещались, если вы устанавливаете угол поворота на различное значение.
Измените угол поворота вращательного объединенного узла. Например, расширьте узел children
, затем узел joint_arm_shoulder_pan_joint
, затем children
, и наконец, axis_arm_shoulder_pan_joint
. Для поля rotation
, набор четвертый элемент к 1.
Если вы сопоставляете этот виртуальный мир с блоком VR Sink в модели Simulink, можно использовать блок VR Signal Expander, чтобы установить только угол поворота (четвертый элемент вектора вращения)
вращения узла Transform
axis_xxx
. Оставьте первые три элемента вектора неизменными. Этот подход сохраняет непротиворечивость робота со способом, которым авторы модели задали перемещение частей робота.
Когда вы импортируете модель, часто это не появляется в начальном представлении виртуального мира. При необходимости создайте точку зрения сделать импортированную модель видимой, когда виртуальный мир откроется. Если импортированная модель не видима:
В 3D World Editor выберите узел ROOT
.
Выберите Nodes> Add> Bindable> Viewpoint.
Чтобы наблюдать импортированную модель, перейдите к подходящему местоположению в сцене.
Заполните свойства точки зрения с текущими настройками камеры. В древовидной панели иерархии щелкните правой кнопкой по точке зрения и выберите Copy values from current camera.
Спасите виртуальный мир.
Импорт URDF преобразовывает иерархию робота ссылок и соединений в VRML или иерархию X3D преобразований. Это импортирует только свойства визуализации из каждой ссылки. Соединения представлены преобразованиями, которые сохраняют оси вращения исходных шарнирных соединений и выравнивание оси призматических соединений.
Импорт SDF преобразовывает иерархию объектов модели SDF в VRML или иерархию X3D преобразований тот же путь как импорт URDF. Это поддерживает подмножество объектов формата SDF и ограничивается визуальными объектами под иерархией элемента Model
. Поддерживаемые элементы Geometry
являются геометрическими примитивами и сетками.