【MATLAB 学习笔记】 SimMechanics 流程攻略(1)

在寻找虚拟样机的漫漫长路中,最终回归到了传统的办法——MATLAB


概念摘自百科:

SimMechanics 立足于Simulink 之上,是进行控制器和对象系统跨领域/学科的研究分析环境。SimMechanics 为多体动力机械系统及其控制系统提供了直观有效的建模分析手段,一切工作均在 Simulink 环境中完成。


中文学习资料不多,在YouTube上找到密歇根大学的Gordon Parker教授的教学视频共5集,看完之后决定开坑记录一下,顺便巩固复习。

地址:https://www.youtube.com/watch?v=iVrjuHYtr_o


====================================================================

本章将做一个简单的弹簧阻尼滑块系统。



在MATLAB的command window中键入:

smnew


此时会弹出两个窗口,一个是simmechanics的library,一个是工作窗口。


library可以再simulink中的库中找到:

simulink >> simscape >> simmechanics >> second generation



我们回到工作窗口:



插播几条simulink的操作:

左键拖动 —— 移动

右键拖动 —— 复制

中键拖动 —— 移动视图

滚轮   —— 放大缩小

空格 —— 调整视图至全局

ctrl + R    —— 旋转元件方向

双击元件 —— 调整参数

右键元件 >> properties  —— 修改备注


回到上图:


这三个元件为基本环境配置,大多数情况下不去修改它。

solver configuration 求解器配置 。。。不动它

world frame 世界坐标系,接下来一切的机构或者系统都是基于这个根的。

mechanism configuration 双击打开可以修改重力场参数(大小或方向)


下面来修改这个系统的主角,滑块mass,双击solid:



右边为预览窗口,左边为description和properties,我们仔细看下properties部分:


>>Geometry   几何

           >> Shape   形状

                              

                               圆柱,球体,方块,椭圆,多棱柱,自定义柱体,旋转体,来自文件。

>> Inertia  惯性

          >> density 密度

          >> mass 质量

>> Graphic 图形

          >> color 颜色

          >> opacity 透明度

(以上,做了一下百度翻译的工作。。)


将solid的参数修改为如下:



简单设置一下备注:

右键solid,选择properties >> Block Annotation

这里设置备注可以将元件内部的参数调出来,实时地显示。

在左边菜单中找到两个参数,双击到右边,进行一些装饰。



确定后,发现solid元件旁边的备注为:(灰色字为备注,黑色的是名字需要手动修改)



接下来,配置弹簧阻尼。


在库中找到,Joints >> Prismatic Joint 添加进系统。

双击修改参数:



Internal Mechanics 内部力学

                equilibrium position 静态位置,弹簧原长。

                spring stiffness 弹性系数

                damping coefficient 阻尼系数


再返回来介绍 State Targets

勾选specific position 特定的位置,我们设置5cm,意思为阻尼弹簧的初始位置。


sensing中的position表示,输出末端的位置。


在设置一下阻尼弹簧的备注:


效果如下:




现在我们有了世界坐标系,阻尼弹簧,以及滑块。

接下来将这些东西联系在一起。


首先,利用随创建就有的Rigid Transform,将阻尼弹簧安装到世界坐标系。




链接如下图:



这里稍微解释一下,transform中,B表示base,F表示follower,连接的时候顺序不能颠倒。

在spring中由于我们勾选了sensing中的position,所以会有一个p的输出口,输出位置量。然而这里输出的位置量,为一个物理量我们要通过PS converter将物理量转化为数字量,在接到scope示波器中显示。


运行一下可以看到模拟阻尼弹簧滑块系统:


左边的结构树可以看到每个元件的坐标系,可据此参考修改各元件之间的位置关系。


双击示波器查看波形:



可能波形不是很光滑,运动跳帧明显,可在simulink中的设置修改参数如下:




这样运动就变得流畅了。



  • 39
    点赞
  • 234
    收藏
    觉得还不错? 一键收藏
  • 21
    评论
SimMechanicsMatlab软件中的一个工具箱,用于建立和仿真机械系统的动力学模型。SimMechanics基于多体动力学原理,可以帮助工程师和科研人员设计和分析机械系统的运动和力学行为。 Matlab 2018b版本中的SimMechanics提供了一些新的功能和改进,使得建立和仿真机械系统的过程更加简单和高效。 首先,Matlab 2018b的SimMechanics引入了一个新的照相机视角命令,可以通过设置不同的视角和视野参数,自定义模型的显示效果,方便用户更好地观察和分析模型的运动和变化。 其次,SimMechanics还加入了一些新的组件,如可连接约束,非完整约束等,使得模型的建立更加灵活。用户可以根据实际需要,选择适当的约束和连接方式,准确描述和分析机械系统的动力学行为。 另外,Matlab 2018b的SimMechanics还增加了一个快速仿真器,可以加速仿真过程,提高仿真效率。该快速仿真器使用了高效的数值算法和优化技术,可以在减少计算时间的同时保证仿真结果的精度。 此外,SimMechanics还提供了可视化工具和数据处理功能,使得用户可以直观地观察和分析仿真结果,进一步优化模型。 总之,Matlab 2018b的SimMechanics是一个功能强大的工具,能够帮助用户建立和仿真复杂的机械系统模型,并提供直观的可视化和数据处理功能,方便用户进行系统设计和性能分析。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值