文章目录

本文是官网教程Model a Simple Link的学习笔记。

建模

在Matlab命令行中输入smnew,即可弹出一个Simscape的多体模型的模板,删除多余的模块,将其连接为如下结构

在这里插入图片描述

这些模块均位于simscape->multibody中,具体位置如下

  • Body Elements:Brick Solid
  • Frames and Transforms:Rigid Transform;World Frame
  • Utilities:Mechanism Configuaration

点击运行后,Matlab的主窗口会出现一个立方体。

双击Brick Solid,进入其设置界面,将其参数修改为

  • 【Dimensions】:[L W H] cm
  • 【Density】rho kg/m^3
  • 【Diffuse Color】rgb

设置两个Rigid Transform的Translation参数如下

参数 Rigid Transform1 Rigid Transform Units
Method Standard Axis Standard Axis Not applicable
Axis -X +X Not applicable
Offset L/2 L/2 cm

由于类似L, W, H这些变量不存在,所以这三个组件都变得有些发红。

生成子系统

同时选中Brick Block和两个Rigid Transform,右键,选择基于所选内容创建子系统,或者使用快捷键Ctrl+G,即可将这三个模块合在一起,变成一个子系统。双击子系统,即可查看子系统的具体组成

在这里插入图片描述

右键子系统,选择封装->创建封装,或者使用快捷键Ctrl+M,即可弹出封装窗口。选择【参数和对话框】选项卡,点击左侧栏的编辑按钮,即可新增一个参数。在参数表格中,需要输入提示和参数名,其中参数名就是刚刚设计的L, W, H这些。具体实例如下

提示 名称
#1 密度 rho
#2 W
#3 H
#4 L
#5 颜色 rgb

关闭时注意保存,这时再双击这个子系统,就会弹出模块参数设置

在这里插入图片描述

将其设为

参数
密度 2700
1
1
20
颜色 [0.25 0.40 0.70]

这时再点击运行,主窗口就会出现长棍子了。

在这里插入图片描述
保存

在构建出自定义的零件后,若想进行复用,则需将其添加到库中。在Simulink的库浏览器中,进入Simulink->User-Defined Functions,右键单击,选择【打开…】,在弹出新窗口后,单击工具栏上的【锁定的库】对其进行解锁,然后就可以把自定义模块复制其中,在复制完成后,再将其重新锁定。

此外,若想修改子系统的名称,只需单击Subsystem,即可重命名。

在这里插入图片描述

Logo

欢迎加入 MCP 技术社区!与志同道合者携手前行,一同解锁 MCP 技术的无限可能!

更多推荐