Simscape Multibody入门指南3-单摆模型


前言

`本人研究生期间正在做机器人轨迹跟踪方向,希望能通过使用Simscape Multibody来做机械臂轨迹跟踪,并用PID或其他方法对机械臂轨迹误差进行修正,因此根据官方文件自学Simscape Multibody,对文档进行翻译,删减,保留本人操作过程来记录学习过程。但由于本人水平有限,文章可能某些地方存在问题,请各位评论指正。

一、创建单摆模型

1.教程概述

钟摆是最简单的机械系统。 该系统包含两个刚体,一个连杆和一个固定枢轴,通过转动关节连接。 在本教程中,将使用上一篇单连杆模型创建的自定义模块对钟摆进行建模和仿真。 Revolute Joint 模块提供连杆和世界坐标系之间的旋转自由度。
在这里插入图片描述

2.构建模型

1.在MATLAB命令行输入smnew。打开Simscape Multibody模块库和具有常用模块的模板。
2. 删除Simulink-PS Converter, PS-Simulink Converter, Scope,和 Rigid Transform模块。
3. 将单连杆模型中创建的子系统拖动到该模型中,命名为Simple Link。
4. 在 Simscape >Multibody > Joints库中找到Revolute Joint模块并将其拖动到模型中。
5. 按照下图的方式连接这些模块。当您指定关节状态目标、规定关节驱动输入或感知关节动态变量时,Revolute Joint的接口方向就变得很重要,切换接口连接会影响模型组装和仿真。
6. 在Solid对话框中,指定以下参数,将模块命名为Base。
在这里插入图片描述
在这里插入图片描述

3.指定重力

Revolute Joint使用基坐标系和从动坐标系的公共Z轴作为关节旋转轴。为了确保钟摆在重力的作用下发生振荡,改变重力矢量,使其不再与Z轴对齐。在Mechanism Configuration对话框中,将Uniform Gravity > Gravity参数设置为[0 -9.81 0]。
在这里插入图片描述

4.设置单摆起始位置

使用 Revolute Joint对话框中的 State Targets菜单来指定所需的关节角度。选择StateTargets > Specify Position Target,在value输入所需的关节角度。value为0对应于水平钟摆的起始位置。
在这里插入图片描述

5.求解器配置

  1. 在Simulink编辑器菜单栏中,选择Simulation > Model Configuration Parameters.
  2. 在Solver选项卡中,将解算器参数设置为ode15s (stiff/NDF),该求解器是物理模型的推荐选择。
  3. 在Solver details > Max step size中将最大步长设置为0.01,然后单击“OK”。较小的步长提高了仿真的精度,但也会增加仿真时长,因此需根据模型折衷选取。
    在这里插入图片描述

6.模型仿真

  1. 在Simulink编辑器菜单栏中,选择Simulation > Update diagram,打开Mechanics Explorer浏览器查看模型3D视图。

  2. 在Mechanics Explorer工具栏中,检查 View convention参数是否设置为Y up (XY Front),保证重力在屏幕上垂直对齐。设置完一定要选择一个标准视图按钮(前视,左视等),来刷新Mechanics Explorer的显示。通过单击Save explorer configuration to model button按钮来保存可视化设置。
    在这里插入图片描述

  3. 模型仿真。在Simulink编辑器菜单栏选择Simulation > Run,生成在重力作用下钟摆物理模型的动画。
    在这里插入图片描述

7.保存模型

将模型保存名为simple_pendulum的文件夹中。在下一篇如何分析一个单摆中重用此模型。

  • 4
    点赞
  • 19
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

喵星球在发光

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值