Matlab-Simscape自学系列文章目录
1.了解Simscape Multibody Link模块
2.掌握Simscape Multibody 模块
3.掌握Simscape Electrical模块
4.掌握Simscape Driveline 模块
5.了解Simscape Fluids模块
6.了解Simscape Battery模块
7.掌握Simscape Mechanical Interfaces 模块
8.掌握Implement Component Behavior Using Simscape
9.掌握Interfacing Simscape Models with Simscape Electrical Specialized Power Systems
10.掌握Simscape Multibody Pane: General
文章目录
前言
在多体动力学仿真中,Simscape Multibody 提供了丰富多样的几何建模工具,每种建模工具提供了独特的功能。本文将详细介绍模型倒入工具,帮助读者更高效地构建多体系统模型。
一、概要
要从CAD、URDF或Robotics System Toolbox™模型创建Simscape Multibody模型,请使用smimport函数。该函数解析模型,提取必要的数据,并使用Simscape Multibody块重新构建其主体、约束和关节的装配。
URDF模型必须在URDF文件中,Robotics System Toolbox模型必须在rigidBodyTree(Robotics System Toolbox)对象中,而CAD装配必须在合适的XML格式中。要将CAD装配体转换为XML文件,可以使用smexportonshape函数或Simscape Multibody Link插件。要转换Onshape® CAD装配,请使用smexportonshape。对于Autodesk® Inventor®、PTC® Creo™或SolidWorks®模型,请使用Simscape Multibody Link插件。您也可以从其他来源转换模型。
二、函数介绍
函数名称 | |
---|---|
step1:smexportonshape | 从Onshape导出CAD装配模型 |
step2:smimport | 导入CAD、URDF或Robotics System Toolbox模型 |
三、模型倒入的三种方式详述
3.1桌面CAD导入
- 安装Simscape Multibody Link插件
- 将CAD装配转换为Simscape Multibody模型、
- 入CAD装配模型
使用smimport函数将CAD装配模型导入Simscape™ Multibody™软件。
3.2 Onshape CAD导入
可以将Onshape®软件中的CAD装配模型(以一个人形机器人为例)导入到Simscape™ Multibody™环境中。导入过程分为两个步骤,基于smexportonshape和smimport函数。
- Step1: 使用smexportonshape函数导出模型:smexportonshape将装配模型导出为符合Simscape Multibody XML模式的中间XML文件。
- 在MATLAB®命令提示符下,导航到一个您具有写入权限的文件夹,例如:
cd C:\Users\JDoe\Documents\Models - 将模型URL存储在名为assemblyURL的MATLAB变量中:
assemblyURL = “https://cad.onshape.com/documents/5817806f96eae5105bfa5085/w/15ab3bfb58cacbf427d77ff3/e/181493813f84966648a8db1b”; - 导出模型并将XML文件名保存在名为exportedModel的变量中:
exportedModel = smexportonshape(assemblyURL);
系统可能会提示您登录您的Onshape账户。smexportonshape函数将为该模型生成XML多体描述文件,并为各种部件几何形状生成一组STEP文件。
- Step2: 使用smimport函数导入XML多体描述文件:smimport函数将中间XML文件转换为原始Onshape模型的Simscape Multibody版本。
- 该函数将生成人形机器人的Simscape Multibody模型。
smimport(exportedModel);
在模型的基础上进行构建,例如通过添加控制系统来驱动各个关节。
3.3导入URDF模型
可以将URDF模型导入到Simscape™ Multibody™环境中。导入过程基于smimport函数,只需一步即可完成。smimport函数直接将URDF模型转换为等效的Simscape Multibody模型。具体如下操作:
- 要将URDF文件添加到当前MATLAB®会话的搜索路径,请输入:
openExample(“sm/DocImportedURDFModelExample”);
addpath(genpath(“ImportedURDFSupport”)); - 导入URDF模型:
smimport(“Humanoid.urdf”)
该函数生成人形机器人的Simscape Multibody模型。文件扩展名是必需的,以识别导入文件为URDF。更新导入的模型(在建模选项卡中,点击更新模型。)以在初始状态下打开静态可视化。
总结
通过本文的介绍,我们深入了解了Simscape Multibody 中各种关节的特性及其适用场景。无论是简单的平移或旋转,还是复杂的多自由度运动,这些关节都能满足不同的建模需求。掌握这些关节的使用方法,将为多体动力学仿真提供更强大的工具,助力工程师和研究人员实现更精准的系统设计与分析。