MATLAB/Multibody学习——单摆模型/坐标转换

MATLAB/multibody初学

软件版本:MATLAB R2019a
学习目标:理清物理建模时的坐标转换问题,建立简单的单摆模型。
1.创建一个新文件:命令行输入smnew,会生成一个Simscape Multibody模型模板,或者直接在simulink中自己创建;
2. 为了更好的理解坐标系的转换功能,我们先建立一个简单的连杆模型,了解一下坐标系的变换。
3. 复制一个Rigid Transform,完成如下图所示的连线,Solid、Transform1和Transform中的参数设置如下:

系统连接图:Alt
参数设置:
在这里插入图片描述
4.完成参数设置和系统连接之后将它们设置成一个子系统,然后对子系统进行Mask(封装),打开Mask编辑器,然后在Parameters&Dialog中将我们之前在创建Solid时填写的参数写进去,如下图所示:
在这里插入图片描述
5.然后双击子系统块,就可以对实体的相关参数进行设置,具体参数如下图:
在这里插入图片描述
6.最后点击Simulation>Update Diagram就可以看到可视化的3D模型,你可以查看Solid块通过两个坐标变换生成的坐标系,以及他原来的坐标系。
在这里插入图片描述
通过上面这个简单的例子应该可以很清晰的了解整个物理建模以及坐标转换的过程。

下面来制作一个单摆:
1.拖入一个Solid和Revolute Joint,要使用上面建好的连杆模块,然后连接如下图:
在这里插入图片描述
2.Solid参数设置如下:
在这里插入图片描述
3.旋转副默认使用base和follower坐标系的Z轴作为旋转轴,所以在Mechanism Configuration中将重力方向设置在-Y方向,保证单摆能够在重力作用下运动。
4.设置好单摆旋转关节的初始位置:
关节参数设置:
在这里插入图片描述
5.在Simulation>Model Configuration Parameters中将求解器改为ode15s(stiff/NDF),是官方推荐的求解物理模型的求解器。然后将最大仿真步长改为0.01,Help文档里边描述的是这个步长在仿真速度和准确性之间达到了一个很好的平衡。
6.电机运行,在Mechanics Explore里边可以看到结果。
7.可以调整一下视图方向再查看结果,在view convention当中将Y轴设置成朝上。最后发现摆杆连接旋转副的位置是在正方体块的中心的,两个坐标系正好重合。

本文大部分内容来自MATLAB Help文档。

  • 2
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值