主要内容

smimport

导入CAD,URDF,或机器人系统工具箱模型

    描述

    例子

    HdataFileName] = smimport(modelSource从CAD、URDF或Robotics System Toolbox模型创建Simscape多体模型。

    modelSource是文件或对象为进口的名字。对CAD模型使用XML文件,对URDF模型使用URDF文件,以及rigidBodyTree(机器人系统工具箱)对象用于Robotics System Toolbox™模型。XML文件必须符合Simscape多体XML模式, URDF文件必须符合URDF规范.创建机器人系统工具箱需要一个许可rigidBodyTree对象。

    H模型的句柄是和吗dataFileName是支持文件的名称,该文件在导入的CAD金宝app模型中存储块参数的数值—在结构数组中填充了块中引用的MATLAB变量。数据文件提供了一种机制,用于在CAD模型更改时更新导入的模型。从URDF文件或rigidBodyTree对象不依赖数据文件作为块参数。

    XML文件可以来自不同的来源。例如smexportonshape功能CAD模型转换成XML文件。这Simscape™多体™链接插件能够转换Autodesk Inventor®,PTC®和SolidWorks®CAD模型成XML文件。对于其他CAD应用程序和多体建模工具,Simscape多体XML模式使创建自定义模型导出应用程序成为可能。

    CAD,URDF和rigidBodyTree所有模型都共享相同的组件。这些是(i)刚体,也称为CAD模型中的部件和URDF模型中的链接,以及(ii)运动学约束,在某些情况下打包为关节。刚体导入Simulink金宝app®凭借雄厚的子系统和刚性变换块。约束映射到关节,齿轮,和其他约束块。

    URDF模型包含<链接>元件又包含联合> <元素。同样地,rigidBodyTree对象包含rigidBody对象和rigidBodyJoint对象。在创建的Simscape多体模型中,关节成为刚体的兄弟姐妹和特征,不是在刚体子系统内部,而是在它们旁边。关节限制和home位置持续存在,后者作为位置状态目标,在适当的关节块中。

    请注意

    联合限制从URDF进口rigidBodyTree模型而不是从CAD模型。如果你一定要,通过启用接块关节限制和设置极限位置,以适当的值手动重现CAD模型的关节限制。

    例子

    ___= smimport (___、名称、值)创建Simscape多体从自定义名称的CAD,URDF,或机器人系统工具箱模型模型或重新生成之前已导入CAD模型的数据文件。大多数的名称 - 值对参数仅适用于CAD模型。用ImportMode再生参数数据文件和PriorDataFile捉无意改变模型,如除去的部分的或在其名称中的变化。

    例子

    全部折叠

    导入一个机械臂的CAD模型。该模型使用Simscape Multibody Link以XML格式导出。XML文件被命名sm_robot.xml,它是Simscape多体安装的一部分。

    导入模型,并将其存储在内存中无标题.您可以稍后更改名称。由于模型是XML格式的,你可以省略其名的扩展名。

    smimport(“sm_robot”);

    更新图表以组装模型并在Mechanics Explorer中可视化它。在造型选项卡上,单击更新模型

    CAD模型通常假定y- 轴为纵轴而Simscape多体模型假设z-轴。其结果是,导入的模型显示在屏幕上的机器人的仰视图。要更改视图惯例,使用视图公约下拉列表。

    在Mechanics Explorer工具条中,设置查看公约参数Y向上(XY前)并选择一个标准的视点,例如等角,如下所示。

    导入机械臂的CAD模型,并将其与名称保存在活动文件夹robotto.为参数数据文件命名robottos_data_file

    smimport(“sm_robot”'型号名称''robotto'......“DataFileName”'robottos_data_file');

    重新生成机械臂的进口CAD模型的数据文件。为了避免覆盖原始数据文件,将新文件命名robottos_new_data_file

    smimport(“sm_robot”'ImportMode'“数据文件”“DataFileName”......“robottos_new_data_file”“PriorDataFile”'robottos_data_file');

    点导入模型到新的数据文件,并重新初始化模型工作区。

    探测= get_param (bdroot,“modelworkspace”);hws.DataSource =“MATLAB文件”;hws.FileName =“robottos_new_data_file”;hws.reload

    要使用Model Explorer完成相同的操作,首先,选择造型>设计>模型工作区打开模型资源管理器。接下来,在模型资源管理器的模型层次中,左键单击模型工作区.在模型工作区面板中,输入robottos_new_data_file.m文件名称参数,然后单击从源代码重新初始化按钮以应用更改。

    导入人形机器人的URDF模型。该模型被命名为sm_humanoid.urdf,它是Simscape多体安装的一部分。

    导入模型,并将其存储在内存中无标题.您可以稍后更改名称。由于模型是URDF格式的,所以需要文件扩展名。

    smimport(“sm_humanoid.urdf”);

    使用Mechanics Explorer更新图表以在初始配置中可视化模型。在造型选项卡上,单击更新模型

    模拟模型。这种仿人机器人缺乏控制系统,在重力作用下摆动不稳定。肩线在URDF模型中作为根体,导入后固定在world frame中。

    你可以修改模型和编程机器人的运动。这仿人机器人给出一个简单的例子。您可以输入sm_import_humanoid_urdf在MATLAB®命令提示符。

    导入一个rigidBodyTree对象为LBR iiwa系列机械手。该模型是Robotics System Toolbox安装和URDF模型的一部分iiwa14.urdf

    转换URDF模型转换成ribidBodyTree目的。

    iiwaRBT = importrobot ('iiwa14.urdf');

    请注意

    一个机器人系统工具箱许可证才能运行importrobot(机器人系统工具箱)

    导入iiwaRBT对象转换成的Simscape多体。

    iiwaSM = smimport(iiwaRBT);

    使用Mechanics Explorer更新图表以在初始配置中可视化模型。在造型选项卡上,单击更新模型

    输入参数

    全部折叠

    导入文件或对象的名称,指定为字符串标量或字符向量。对CAD模型使用XML文件,对URDF模型使用URDF文件,以及rigidBodyTree为对象机器人系统工具箱模型。如果文件扩展名丢失,该模型被假定为XML格式。如果文件路径丢失,文件被认为是在MATLAB的路径。

    例子:“robotto.xml”

    数据类型:字符|细绳

    名称-值参数

    指定可选的逗号分隔的对名称,值参数。姓名参数名和价值是相应的价值。姓名必须出现在引号内。可以以任意顺序指定多个名称和值对参数Name1, Value1,…,的家

    例子:smimport( 'sm_robot', 'MODELNAME', 'robotto', 'DataFileName', 'robottos_data_file');

    CAD导入过程中使用的模型拓扑简化模式。集ModelSimplification:

    • bringJointsToTop将刚性连接的部件分组为子系统,并将节点提升到模型层次结构的顶层。

    • groupRigidBodies将刚性连接的部件分组为子系统,但在模型层次结构中保留关节的原始位置。

    • 没有一个按原样导入模型,而不进行简化。

    进入模型顶层的关节使用基于关节类型的通用名称进行重命名—例如,Revolute_Joint1.由严格连接的组件组成的子系统根据字符串被赋予通用名称RigidSubsystem——例如,RigidSubsystem1.此参数仅适用于CAD导入。

    例子:“ModelSimplification”、“bringJointsToTop”

    数据类型:字符|细绳

    选择生成新的模型或更新现有的模型数据。集ImportModemodelAndDataFile产生一个新的模型和数据文件。集ImportMode数据文件为先前导入的模型生成新的数据文件。函数并不更新框图本身。如果没有指定ImportMode,函数将运行在其中modelAndDataFile模式。此参数仅适用于CAD导入。

    例子:'ImportMode', '数据文件'

    数据类型:字符|细绳

    的名字Simscape多体模型,指定为逗号分隔的一对组成的'型号名称'以及字符向量或字符串标量。模型以SLX格式保存。这个论点在什么时候是无效的ImportMode被设置为数据文件.如果没有指定型号名称时,模型文件以多体描述文件命名。如果多体描述文件的名称与MATLAB命名规则不一致,则使用稍作修改的版本。

    例子:'MODELNAME', 'robotto'

    数据类型:字符|细绳

    支持参数数据文件的名称,金宝app指定为逗号分隔对,由“DataFileName”以及字符向量或字符串标量。数据文件是一个M文件,其块参数值在导入中引用Simscape多体模型。如果没有指定DataFileName,数据文件的多体描述文件命名。如果多体说明文件名与MATLAB的命名规则不一致,修改后的版本代替。此参数仅适用于CAD导入。

    例子:'DataFileName', 'robottos_new_data'

    数据类型:字符|细绳

    最后一个参数数据文件的名称,指定为逗号分隔对,由“PriorDataFile”以及字符向量或字符串标量。现有数据文件可以帮助确定需要特别注意的变化,如新的物理单位,添加和删除组件,以及模型的拓扑结构的变化。该参数才有效ImportMode被设置为数据文件.此参数仅适用于CAD导入。

    例子:“PriorDataFile”、“robottos_original_data”

    数据类型:字符|细绳

    在参数数据文件中提供的MATLAB数据结构,指定为逗号分隔的一对组成的名称“VariableName”以及字符向量或字符串标量。属性中所有块参数的数值Simscape多体模型。如果没有指定PriorDataFile也不VariableName,该数据结构的名称smiData.如果您指定PriorDataFile但不是VariableName时,数据结构名称派生自先前的数据文件。此参数仅适用于CAD导入。

    例子:“VariableName”、“robottosData”

    数据类型:字符|细绳

    输出参数

    全部折叠

    Simscape多体模型,作为模型句柄返回。使用模型句柄来获取或设置模型参数,例如使用get_paramset_param功能。

    数据类型:

    参数数据文件的名称,作为字符向量返回。该文件是一个M文件,其块参数值在导入中引用Simscape多体模型。此输出仅适用于CAD导入。

    数据类型:字符

    另请参阅

    |(机器人系统工具箱)

    介绍了R2012b