smimport

Импортируйте CAD, URDF или модель Robotics System Toolbox

    Описание

    пример

    [H,dataFileName] = smimport(modelSource) создает модель Simscape Multibody из CAD, URDF или модели Robotics System Toolbox.

    modelSource имя файла или объекта для импорта. Используйте XML-файлы для Моделей CAD, файлы URDF для моделей URDF и rigidBodyTree (Robotics System Toolbox) возражает для моделей Robotics System Toolbox™. XML-файлы должны соответствовать XML-схеме Simscape Multibody, и файлы URDF должны соответствовать спецификации URDF. Лицензия Robotics System Toolbox требуется, чтобы создавать rigidBodyTree объекты.

    H указатель модели и dataFileName имя вспомогательного файла, который, в импортированных Моделях CAD, хранит числовые значения параметров блоков — в массиве структур, заполненном с переменными MATLAB, на которые ссылаются в блоках. Файл данных обеспечивает механизм, чтобы обновить импортированную модель, если Модель CAD изменяется. Модели импортируются из файлов URDF или rigidBodyTree объекты не используют файлы данных для параметров блоков.

    XML-файлы могут прибыть из других источников. Например, smexportonshape функция преобразует Модели CAD в XML-файлы. Плагин Simscape™ Multibody™ Link может преобразовать Изобретателя Autodesk®, PTC®, и SolidWorks® Модели CAD в XML-файлы. Для других приложений CAD и инструментов моделирования сборок, XML-схема Simscape Multibody позволяет создать пользовательское приложение экспорта модели.

    CAD, URDF и rigidBodyTree модели вся доля те же компоненты. Это (i) твердые тела, также известные как части в Моделях CAD и ссылки в моделях URDF и (ii) кинематические ограничения, упакованные, в некоторых случаях, как соединения. Твердые тела импортируют как Simulink® подсистемы с телом и блоками Rigid Transform. Ограничения сопоставляют в соединение, механизм и другие ограничительные блоки.

    Модели URDF содержат <link> элементы, которые в свою очередь содержат <joint> элементы. Аналогично, rigidBodyTree объекты содержат rigidBody объекты и rigidBodyJoint объекты. В созданной модели Simscape Multibody соединения становятся одноуровневыми элементами к твердым телам и функциям что не в подсистемах твердого тела, но вместе с ними. Пределы соединений и исходные положения сохраняются как состояния положения в соответствующих объединенных блоках.

    Примечание

    Объединенные пределы импортируются из URDF и rigidBodyTree модели, но не от Моделей CAD. Воспроизведите объединенные пределы Моделей CAD вручную, если вы должны — путем включения объединенных пределов в блоках соединений и установки предельных положений на соответствующие значения.

    пример

    ___ = smimport(___,Name,Value) создает модель Simscape Multibody из CAD, URDF или модели Robotics System Toolbox с пользовательским именем или регенерирует файл данных ранее импортированной Модели CAD. Большинство аргументов пары "имя-значение" применяется только к Моделям CAD. Используйте ImportMode регенерировать файлы данных параметра и PriorDataFile отлавливать непреднамеренные изменения в модели, такие как удаление части или изменения на его имя.

    Примеры

    свернуть все

    Импортируйте Модель CAD роботизированной руки. Модель была экспортирована в формате XML с помощью Simscape Multibody Link. XML-файл называют sm_robot.xml, и это - часть вашей установки Simscape Multibody.

    Импортируйте модель и сохраните ее в памяти как Untitled. Можно поменять имя позже. Когда модель находится в формате XML, можно не использовать расширение на его имя.

    smimport('sm_robot');

    Обновите схему, чтобы собрать модель и визуализировать его в Mechanics Explorer. Во вкладке Modeling нажмите Update Model.

    Модели CAD часто принимают ось Y как вертикальную ось, в то время как модели Simscape Multibody принимают ось z. В результате импортированная модель появляется вид снизу робота на экране. Чтобы изменить вид представления, используйте View convention выпадающий список в Mechanics Explorer.

    В полосе инструмента Mechanics Explorer, установленной параметр View Convention на Y up (XY Front) и выбор стандартная точка зрения, такая как Isometric, показанный ниже.

    Импортируйте Модель CAD роботизированной руки и сохраните его в активной папке с именем robotto. Назовите файл данных параметра robottos_data_file.

    smimport('sm_robot','ModelName','robotto',...
    'DataFileName','robottos_data_file');

    Регенерируйте файл данных для импортированной Модели CAD роботизированной руки. Чтобы постараться не перезаписывать исходный файл данных, назовите новый файл robottos_new_data_file.

    smimport('sm_robot','ImportMode','dataFile','DataFileName',...
    'robottos_new_data_file','PriorDataFile','robottos_data_file');

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

    hws = get_param(bdroot,'modelworkspace');
    hws.DataSource = 'MATLAB File';
    hws.FileName = 'robottos_new_data_file';
    hws.reload

    Чтобы сделать то же использование Model Explorer, во-первых, выбирают MODELING> DESIGN> Model Workspace, чтобы открыть Model Explorer. Затем в Иерархии модели Model Explorer, щелкните левой кнопкой по Model Workspace. В панели Model Workspace введите robottos_new_data_file.m в параметре File Name и нажимают кнопку Reinitialize from Source, чтобы применить изменение.

    Импортируйте модель URDF гуманоидного робота. Модель называют sm_humanoid.urdf, и это - часть вашей установки Simscape Multibody.

    Импортируйте модель и сохраните ее в памяти как Untitled. Можно поменять имя позже. Когда модель находится в формате URDF, расширение файла требуется.

    smimport('sm_humanoid.urdf');

    Обновите схему, чтобы визуализировать модель в ее начальной настройке с помощью Mechanics Explorer. Во вкладке Modeling нажмите Update Model.

    Симулируйте модель. Гуманоидный робот испытывает недостаток в системе управления и качается беспорядочно при получении по запросу силы тяжести. Линия плеча служит корневым телом в модели URDF, и таким образом, это фиксируется к мировой системе координат после импорта.

    Можно изменить модель и программировать движения робота. Гуманоидный Робот показывает простой пример. Можно открыть пример путем ввода sm_import_humanoid_urdf в MATLAB® командная строка.

    Импортируйте rigidBodyTree объект для LBR iiwa последовательный манипулятор. Модель является частью установки Robotics System Toolbox и модели URDF под названием iiwa14.urdf.

    Преобразуйте модель URDF в ribidBodyTree объект.

    iiwaRBT = importrobot('iiwa14.urdf');

    Примечание

    Лицензия Robotics System Toolbox требуется запуститься importrobot (Robotics System Toolbox).

    Импортируйте iiwaRBT объект в Simscape Multibody.

    iiwaSM = smimport(iiwaRBT);

    Обновите схему, чтобы визуализировать модель в ее начальной настройке с помощью Mechanics Explorer. Во вкладке Modeling нажмите Update Model.

    Входные параметры

    свернуть все

    Имя файла импорта или объекта в виде строкового скаляра или вектора символов. Используйте XML-файлы для Моделей CAD, файлы URDF для моделей URDF и rigidBodyTree объекты для моделей Robotics System Toolbox. Если расширение файла отсутствует, модель принята, чтобы быть в формате XML. Если путь к файлу отсутствует, файл принят, чтобы быть на пути MATLAB.

    Пример: 'robotto.xml'

    Типы данных: char | string

    Аргументы name-value

    Задайте дополнительные разделенные запятой пары Name,Value аргументы. Name имя аргумента и Value соответствующее значение. Name должен появиться в кавычках. Вы можете задать несколько аргументов в виде пар имен и значений в любом порядке, например: Name1, Value1, ..., NameN, ValueN.

    Пример: smimport ('sm_robot', 'ModelName', 'robotto', 'DataFileName', 'robottos_data_file');

    Режим упрощения топологии модели, чтобы использовать во время импорта CAD. Установите ModelSimplification к:

    • bringJointsToTop сгруппировать жестко соединенные части в подсистемы и продвинуть соединения верхний уровень в иерархии модели.

    • groupRigidBodies сгруппировать жестко соединенные части в подсистемы, но отпуск соединяется в их исходных местах в иерархии модели.

    • None импортировать модель, как, без упрощения.

    Соединения, принесенные к верхнему уровню модели, переименованы с помощью родовых названий на основе объединенного типа — например, Revolute_Joint1. Подсистемам жестко соединенных компонентов, которые группировались, дают родовые названия на основе строки RigidSubsystem— например, RigidSubsystem1. Этот аргумент применяется только к импорту CAD.

    Пример: 'ModelSimplification','bringJointsToTop'

    Типы данных: char | string

    Опция, чтобы сгенерировать новую модель или обновить существующие данные модели. Установите ImportMode к modelAndDataFile сгенерировать новую модель и файл данных. Установите ImportMode к dataFile сгенерировать новый файл данных для ранее импортированной модели. Функция не обновляет саму блок-схему. Если вы не задаете ImportMode, функция запускается в modelAndDataFile режим. Этот аргумент применяется только к импорту CAD.

    Пример: 'ImportMode','dataFile'

    Типы данных: char | string

    Имя модели Simscape Multibody в виде разделенной запятой пары, состоящей из 'ModelName' и вектор символов или строковый скаляр. Модель сохранена в формате SLX. Этот аргумент не допустим когда ImportMode установлен в dataFile. Если вы не задаете ModelName, файл модели называют в честь файла описания мультитела. Если имя файла описания мультитела противоречиво с правилами именования MATLAB, немного модифицированная версия используется вместо этого.

    Пример: 'ModelName','robotto'

    Типы данных: char | string

    Имя файла данных параметра поддержки в виде разделенной запятой пары, состоящей из 'DataFileName' и вектор символов или строковый скаляр. Файл данных является файлом M со значениями параметров блоков, на которые ссылаются в импортированной модели Simscape Multibody. Если вы не задаете DataFileName, файл данных называют в честь файла описания мультитела. Если имя файла описания мультитела противоречиво с правилами именования MATLAB, модифицированная версия используется вместо этого. Этот аргумент применяется только к импорту CAD.

    Пример: 'DataFileName','robottos_new_data'

    Типы данных: char | string

    Имя последнего файла данных параметра в виде разделенной запятой пары, состоящей из 'PriorDataFile' и вектор символов или строковый скаляр. Предшествующий файл данных помогает идентифицировать изменения, требующие особого внимания, такие как новые физические единицы измерения, добавленные и удаленные компоненты и изменения топологии модели. Этот аргумент допустим только когда ImportMode установлен в dataFile. Этот аргумент применяется только к импорту CAD.

    Пример: 'PriorDataFile','robottos_original_data'

    Типы данных: char | string

    Имя структуры данных MATLAB, обеспеченной в файле данных параметра в виде разделенной запятой пары, состоящей из 'VariableName' и вектор символов или строковый скаляр. Эта структура содержит численные значения всех параметров блоков в модели Simscape Multibody. Если вы не задаете никакой PriorDataFile ни VariableName, структуру данных называют smiData. Если вы задаете PriorDataFile но не VariableName, имя структуры данных выведено из предшествующего файла данных. Этот аргумент применяется только к импорту CAD.

    Пример: 'VariableName','robottosData'

    Типы данных: char | string

    Выходные аргументы

    свернуть все

    Модель Simscape Multibody, возвращенная как указатель модели. Используйте указатель модели, чтобы получить или установить параметры модели, например, с помощью get_param и set_param функции.

    Типы данных: double

    Имя файла данных параметра, возвращенного как вектор символов. Файл является файлом M со значениями параметров блоков, на которые ссылаются в импортированной модели Simscape Multibody. Этот выход применяется только к импорту CAD.

    Типы данных: char

    Представленный в R2012b