玩转Matlab-Simscape(初级)- 02 -对单摆模型进行仿真

**

玩转Matlab-Simscape(初级)- 02 - 对单摆模型进行仿真

**


前言

在产品开发中,多体动力学控制仿真是一种常见方法,本文从初学者的角度一点点解开应用Maltab simscape对多体进行仿真的面纱。写这篇博文是为后续做旋翼无人机的多体系统仿真打基础。
本文用两种方法对一个简单的倒立摆进行建模仿真。目的是对比和掌握通过SW软件建立复杂模型,并将其导入simscape中进行控制系统仿真分析的方法。
欢迎各位小伙伴关注、赞赞、留言和收藏。


一、一级简单倒立摆

一级倒立摆(钟摆)是最简单的机械系统。由两部分构成:摆杆和固定座,二者通过一个铰链关节联结。结构如下图所示。在这里插入图片描述

二、建模过程

2.1 建模

  • 在Matlab命令窗口中,输入 smnew,打开Simscape Multibody 模型模板;
  • 删除“Rigid Transform”、“Simulink-PS Converter”、“PS-Simulink Converter”、“Scope”这些本例中不用的模块;
  • 将文中玩转Matlab-Simscape(初级)- 01 - 从一个简单模型开始学习之旅自定义的连杆模型添加到该例中;
  • 添加一个铰链关节模块;
    在Simulink Library中 Simscape→Multibody→Joints→Revolute Joint可以找到该铰链关节模块。
    【关于“Revolute Joint”模块:表示作用于两个框架之间的回转关节。该关节具有一个旋转自由度,由一个回转原语表示。该关节限制了两个框架原点重合,并且基础框架和跟随框架的z轴也必须重合,同时允许跟随框架的x轴和y轴围绕z轴旋转。在“属性”下的可展开节点中,指定关节原语的状态、驱动方式、感知能力及内部机械特性。应用这些设置后,块将显示相应的物理信号端口。端口B和F分别为表示基础框架和跟随框架的框架端口。关节的方向由跟随框架相对于基础框架的相对运动来定义。】
    在这里插入图片描述
    双击“Brick Solid”模块,定义如下参数。
    在这里插入图片描述
    在这里插入图片描述
  • 将各模块联结,如下图所示。
    在这里插入图片描述

2.2指定重力

为了能让杆在重力作用下运动,设置重力加速度矢量沿Y轴向下,双击“Mechanism Configuration”模块进行配置如下。
在这里插入图片描述

2.3 设置摆的起始位置

双击“Revolute Joint”模块,设置摆杆的初始角度位置(这里设置为0度)
在这里插入图片描述

2.4 求解器配置

MODELING选项卡中点击Model Settings进行求解器参数设置:求解器选择ode15s,最大步长设置为0.01。
在这里插入图片描述
在这里插入图片描述

2.5运行模型

一级简单摆模型

2.6保存模型

将模型保存,后续继续使用。

三、 从SW中导入3D模型到Simscape Multibody

3.1 在SW中建立3D装配模型

在SW中创建一个由连杆和基座构成的简单摆3D模型,如下图所示。
在这里插入图片描述

3.2 将上述3D模型通过Simscape Multibody Link插件导出

将装配体模型导出,并自定义命名为“Mylink_SW.xml
在这里插入图片描述

3.3 从Matlab中导入3D模型

在Matlab命令窗中输入smimport(‘Mylink_SW.xml’),打开模型如图所示。

smimport(‘Mylink_SW.xml’)
在这里插入图片描述

3.4 对模型进行预处理

更新模型,如图所示,发现摆杆与座的初始角度跟第一种方法不一致,这里需要做些调整才可以。此外,一般还需要调整模型的坐标系,重力场才能进行仿真。由于这个模型比较简单,所以仅调整铰链关节的初始角度就可以。
在这里插入图片描述

3.5 运行仿真

仿真结果如图所示。

一级简单摆模型-SW


总结

以上就是今天分享的关于Matlab simscape 的基础内容,简单分享了在Simscape中搭建一级简单摆模型,同时用另一种方法从SW创建3D模型,并将其调入Matlab供分析用。重点掌握第二种方法,为将来深入学习和研究复杂装配体的建模和控制仿真打下基础。欢迎各位小伙伴关注、赞赞、留言和收藏。

  • 32
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值