simulink Simscape Mulitybody 导入CAD装配体分析-Inventor 为例

1.前言

机器人或者其他机械结构使用Inventor 等建模软件设计完成后,常常需要使用Simscape MultiBody多体动力学工具箱进行仿真和分析,下面介绍如何使用Simscape Multibody Link插件直接导入Inventor装配体。

2.安装

在MATLAB官网下载插件:插件下载
找到自己MATLAB版本对应的插件,我的是R2019b,所以选择R2019b下的插件插件选择
注意zip和m文件都要下载下来并且存在一个文件夹下,这里我保存在MATLAB安装文件夹的CAD_link/Inventor目录下,路径为:D:\MATLAB\CAD_link\Inventor,这个路径下面要用,zip文件不要解压
文件保存
然后以管理员的身份启动MATLAB(否则第三步会因为权限不足而失败),在MATLAB命令行输入以下命令注册上述安装文件的路径,也就是上面保存文件的路径,注意替换成自己保存的文件路径

addpath('D:\MATLAB\CAD_link\Inventor')

然后接着输入命令

install_addon('smlink.r2019b.win64')

这里的smlink.r2019b.win64就是下载下来的压缩文件名,要替换成自己的

3.注册MATLAB为自动化服务器

每次导出CAD装配模型时,Simscape MultiBody Link插件都会尝试连接到MATLAB。要实现连接,必须将MATLAB注册为自动化服务器。在MATLAB命令行输入:

regmatlabserver

就可以将MATLAB注册为自动化服务器。

4.启用插件

在MATLAB命令行输入:

 smlink_linkinv

就可以启用插件。

5.从Inventor 输出CAD模型

打开一个Inventor装配体(.iam文件,打开.ipt文件不会显示这个插件) 在附加模块下会看到安装的插件已经出现在菜单栏中,点击Export Simscape MulityBody…按钮就可导出模型。
导出CAD模型
这里导出的文件在D:\Desktop\My_robot_foot_leg 下:
导出文件

6.simulink导入模型

在MATLAB命令行输入以下命令:

smimport('D:\Desktop\My_robot_foot_leg\foot_leg_con.xml')

D:\Desktop\My_robot_foot_leg\foot_leg_con.xml 要替换成自己的导出文件路径。导如得到以下框图:
导入得到的框图
注意
检查导入的模型是否存在额外的刚性连接,因为导入时MATLAB会用刚性连接取代不支持的CAD约束。

7.使用建议

不建议导入整个装配体,因为如果装配体零件太多,仿真非常困难,因此一般导入简化后的模型进行分析。

官网教程链接MATLAB官网教程链接

  • 2
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
epson机器⼈编程范例_SimulinkSimscapeMultibody机器⼈仿 真(⼀) 最近⼀直在做机器⼈仿真,⽤于多⾜机器⼈的步态规划。但经过这段时间的调试和软件选型,发现现在中⽂⽹站上相关的资料还是偏少,所 以想开设⼀个⼩系列来分享⼀下⼼得,希望对各位有所帮助。 软件选型 软件选型 先说⼀下结果:最终选择了⽤Simulink SimscapeMultibody。 最开始因为组⾥前⾯的机械臂项⽬⽤的是ROS,并且开发相对成熟,所以开始就希望基于ROS上已有的物理仿真环境,也就是gazebo进⾏ 开发。但后⾯发现gazebo不是很成熟: 1. 在应⽤过程中会遇到很多的bug:对于⼩数值⽀持不好:特别是在计算惯量的时候,因为开了各6次幂导致很多时候会出现下溢出,直 接在反应在仿真中就是:模型下陷,⼀开始仿真除⾮固定,否则就会陷在地⾯⾥,或者莫名其妙被弹飞。(为了解决这个事笔者基本 快把gazebo的底层给看完了……被⾃⼰蠢到了) 2. gazebo的调试可以说是没有任何便利性可⾔(虽然很丢⼈,但写makefile还是给从java转过来的笔者留下了很深的阴影)主要是IDE 不好⽤……不知道CS⼤神们有没有什么优雅的解决⽅案。 本来是希望matlab做规划算法, 然后通信控制gazebo中机器⼈(笔者嫌⿇烦所以⽤了两台电脑,其实⼀台也可以,可以⽤虚拟机,或者 win10的linux⼦系统,⾄于linux上装matlab,我就不是很清楚了),以此来进⾏运动控制。但经过两个⽉的gazebo后,最终下定决⼼放 弃gazebo…… 之后听过楼上有⼈⽤过unity3D开发物理仿真环境。下好了试了⼀下……在调了⼀天的UI字字号后,果断放弃……(但到头来⼯作的时候 还是逃不掉⽤unity)其实真正使⽤国故城中⽤unity3D遇到的问题和gazebo会差不多,但解决难度会低很多,如果各位有兴趣的话还是可 以尝试下的,说不定⽤了⼀下之后就会爱上做三维渲染了,⼿动滑稽。 之后偶然间发现matlab中有⼀个Simscape Multibody模组。点开看了⼀下,嗯~有内味。简单来说Simscape Multibody⼊门要更简单, 但是基本的建模思想和上⾯两个软件都是⼀致的,并且作为simlunk的成员,这种图形编程能在更⼤程度上降低coding时的出错概率,这⼀ 点在IDE不是很强⼤的情景下是⼗分重要的。所以最终选择了⽤Simscape Multibody。 稍稍总结⼀下:如果要搭建有物理环境的机器⼈仿真平台,使⽤的⼯具更准确来说是引擎,底层的思路都是⼀致的:底层物理逻辑,上⾯套 上⼀个图形显⽰层,当处理接触交互时还需要加上⼀个在物理层中加⼊碰撞;⽽与运动相关的所有逻辑的理论基础就是各位喜闻乐见的机器 ⼈学(动⼒学)——⽤变换来表⽰⼀切,掌握了这些之后再看上⾯这些引擎,甚⾄是市⾯上常见的游戏引擎,就明朗很多了。(话说这⼀套 仿真做下来还真能去找个游戏开发的⼯作……) PS:不知道是不是我电脑的缘故,低版本matlab(2016a)中的Simulink Simscape Multibody较容易崩溃,建议各位⼯程中真要⽤最 好还是换到最新的matlab。(⽤的时候记得打开git)
Simulink是一种功能强大的模拟软件,它可以用于建立和分析连杆机构。连杆机构是由多个连杆链接在一起的机械结构,通过这些连杆的相对运动实现力和运动的转换。 在Simulink中,我们可以使用Simscape库来建立和模拟连杆机构。Simscape库提供了许多可以用于创建物理系统模型的组件,其中也包括连杆机构相关的组件。我们可以使用这些组件来建立偏航传动、平面机构和空间机构等不同类型的连杆机构模型。 在建立连杆机构模型时,我们需要定义每个连杆的长度、质量、惯性、关节类型以及连接方式等参数。在Simulink中,我们可以使用连接器和连接线将连杆组件连接在一起,以模拟连杆机构的运动。 Simulink中的Simscape库还提供了一些可以应用于连杆机构的外部力和运动输入源,例如旋转力矩和线性力。我们可以使用这些输入源来模拟外部力对连杆机构的影响,以及通过输入源来操控机构的运动。 一旦我们建立了连杆机构模型,我们可以使用Simulink的仿真功能来模拟机构的运动和力学行为。通过仿真,我们可以观察连杆机构的运动轨迹、关节力和速度等变化情况,并且可以根据仿真结果进行优化和改进。 总而言之,SimulinkSimscape提供了一个方便、灵活和强大的工具,用于建立和分析连杆机构。通过Simulink的仿真功能,我们可以更好地理解和优化连杆机构的运动和力学特性,从而帮助我们设计出更好的机械系统。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

安布奇

喜欢的朋友给点支持和鼓励吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值