该插件的下载方法及使用方法在matlab官方均有提供
如果看不懂英文,也可以看SolidWorks模型导入到MATLAB(Simulink-Simscape)详细过程这篇文章,博主把英语文档翻译了一遍。
另附matlab端的操作指南和Solidworks端的操作指南。
写在前面:
按照官网给出的链接,进入下载界面,邮箱等信息可以随便填,不重要,填完进入如下界面
下载与matlab版本对应的.zip
和.m
文件,不需要解压.zip
进入下载目录,新建一个脚本,输入
install_addon('zipname')
其中,"zipname"是zip文件的名字,如install_addon('smlink.r2020b.win64.zip
)`
命令行显示类似下图【untitled.m是我创建的脚本,里面只有这一行命令】
每次导出 CAD 装配模型时,Simscape Multibody Link插件都会尝试连接到 MATLAB。要启用连接,您必须将 MATLAB 注册为自动化服务器。
但是从我的使用经验来看,只要导出过一次
.dll
文件,就能永久在Solidworks使用了
可以通过以下两种方式将MATLAB注册为自动化服务器
可以考虑进行完这一步之后再进行一次第二步
至此,matlab端的操作告一段落,接下来的操作在Solidworks端;
若上述步骤完成的顺利,第二或者第三步命令行里会有类似"保存文件到XXX.dll中"之类的字样
这一步需要打开solidworks,跟sw2urdf时的操作一样,点开工具->插件,在其他插件中需那种Simscape Multibody Link
注意配合关系应合理且恰当,所有配合关系均会同步导出到xml文件中。
注意:本插件不需要选择轴和坐标系等,所有关系均根据配合关系自动生成
至此,全部工作已经完成
但是,为了让matlab识别到你的文件,首先需要将生成的实体文件中的中文去掉,并保证文件的绝对路径没有中文。
在matlab中新建一个脚本,输入导入模型的命令后,simulink界面会自动跳出
clear
clc
smimport("XXXXX.xml")
加载界面
simulink界面
调整停止时间后,点击右上角运行:
【此处附gif图片一张】
运行状态可能和我们想的不一致,这是因为系统的重力方向与我们预想的重力方向不同导致的
双击,
我们发现重力是沿y方向的,结合上面的仿真动画,进行修改即可~
似乎第一次运行simscape没有问题,但是同样的文件运行第二次时,就会显示XXX文件/文件夹不存在,原因未知