当前位置: 首页 > news >正文

玩转Matlab-Simscape(初级)- 09 - 在Simulink中创建曲柄滑块机构的控制模型

**

玩转Matlab-Simscape(初级)- 09 - 在Simulink中创建曲柄滑块机构的控制模型

**


目录

    • 玩转Matlab-Simscape(初级)- 09 - 在Simulink中创建曲柄滑块机构的控制模型
  • 前言
  • 一、问题描述
  • 二、创建模型
    • 2.1 识别机构中的刚体
    • 2.2 确定刚体之间是如何相互连接的(关节副、约束等)
    • 2.3 孤立每个刚体,简化刚体模型,并定义附着在其上的框架
    • 2.4 使用关节和/或约束来组装刚体
    • 2.5 利用“模型报告”(Model Report) 识别模型创建过程中产生的问题
    • 2.6 利用 Mechanics Explorer 来识别和修复模型的其他问题
    • 2.7 设置关节副目标位置以引导装配至所需位置
    • 2.8 设置多体机构的输入和输出连接。测试和验证模型没问题后,再连接控制器并测试模型。
    • 2.9 细化各个刚体,使模型更准确地表示实际机构
  • 总结


前言

在产品开发中,多体动力学控制仿真是一种常见方法,本文从初学者的角度一点点解开应用Maltab simscape对多体进行仿真的面纱。写这篇博文是为后续做旋翼无人机的多体系统仿真打基础。欢迎各位小伙伴关注、赞赞、留言和收藏。
本文进一步深入学习复杂一点点的机构进行建模。


一、问题描述

下图显示了用作瞄准系统的机构。该问题被简化为平面曲柄滑块机构。下图显示了该机构的原理图草图,仅提取了该机构工作的基本要素(通常在设计过程的早期阶段)。滑块 C 可以在杆 A 上滑动。电机在旋转接头 Ri 处施加扭矩,任务是跟踪旋转角的特定轨迹。

在这里插入图片描述

二、创建模型

构建模型时要遵循的一个关键原则是从简单的近似开始,以使基本机构先能正常工作。在随后的演进中,逐步增加了模型的复杂性,以使其更接近真实物理模型(也可以选择从CAD软件导入3D模型,这样更简单些)。Simscape Multibody 中推荐的模型构建过程可分为以下步骤:
在这里插入图片描述
利用SW中“Simscape Multibody Link”插件工具导出生成一个*.xml文件。
在这里插入图片描述

2.1 识别机构中的刚体

要分析的曲柄连杆机构有四个刚体
1.刚体 A(橙色)
2.刚体B(蓝色)
3.刚体 C(绿色)
4.刚体D(灰色)

2.2 确定刚体之间是如何相互连接的(关节副、约束等)

该机构具有以下关节副

  • 刚体 A 和 D 通过旋转关节 Ro 连接。
  • 刚体 A 和 C 通过棱柱形关节 Pg 连接。
  • 刚体 C 和 B 通过旋转关节 Rg 连接。
  • 刚体 B 和 D 通过旋转关节 Ri 连接。
    此外,刚体 D 刚性地连接到全局世界框架 W(世界坐标系,全局坐标系),因为它是静止的。

2.3 孤立每个刚体,简化刚体模型,并定义附着在其上的框架

将生成的.xml文件,导入matlab simulink,并定义刚体和接口(零件与零件之间的配合运动副)。
利用命令smimport(‘**.xml’)导入xml文件。
通过定义刚体的形状、质量属性以及与其他零件的接口来定义刚体。每个刚体都是孤立地识别和定义的。在上面的例子中,该机构由四个刚体组成:A、B、C 和 D。
在 Simscape Multibody 中定义刚体 A 的形状。一旦定义了物体的形状并设定了它的密度,Simscape Multibody 就可以自动计算惯性。刚入门的小白推荐将刚体的形状简化为长度等于原始零件长度的简单圆柱体,而不是原本相当复杂的形状。
在这里插入图片描述

2.4 使用关节和/或约束来组装刚体

装配联结的过程包括附在刚体上的框架之间的关系建立。

2.5 利用“模型报告”(Model Report) 识别模型创建过程中产生的问题

在 Mechanics Explorer 中,从“工具”下拉菜单中选择“模型报告”选项 中,会显示出关节部分设置出现的错误。在这里可以查看错误。

2.6 利用 Mechanics Explorer 来识别和修复模型的其他问题

选择框架方向时,必须考虑到所需的零配置(关节的零配置是指当所有的关节角度为零时,基座与从动框架之间的相对位置和方向)。当关节角度为零时,通过调整各自主体上基座和从动框架的位置和方向,来定义由关节所关联的两个刚体的相对位置和方向。

2.7 设置关节副目标位置以引导装配至所需位置

打开“模型报告”(Model Report) 以查看此装配配置中关节位置的值。

2.8 设置多体机构的输入和输出连接。测试和验证模型没问题后,再连接控制器并测试模型。

在这里插入图片描述

2.9 细化各个刚体,使模型更准确地表示实际机构

需要注意的是,SW中装配体建立时使用的配合方式,有时在导出xml文件时,会报错,导出的装配约束形式,貌似不能被Simulink识别。另外,3D模型如果发生了重建,Simulink模型又要重建,有些不方便,如何能一键更新呢?这个得再研究研究。


总结

以上就是今天分享的关于Matlab simscape 的基础内容,搭建了一个曲柄滑块机构的控制模型,进一步熟悉整个分析流程,为一步步研究复杂模型,打下基础。欢迎各位小伙伴关注、赞赞、留言和收藏。

http://www.lryc.cn/news/367956.html

相关文章:

  • 手撸一个java网关框架
  • 亮数据代理IP助力高效数据采集
  • VS2022,DLL1调用lib,lib调用DLL2
  • Unity Mirror VR联机开发 房间篇
  • 二叉树—leetcode
  • shell编程(二)——字符串与数组
  • 【数据结构】二叉树专题
  • 开源模型应用落地-LangChain高阶-LCEL-表达式语言(四)
  • Python第二语言(九、Python第一阶段实操)
  • Java异常机制
  • Aws EC2,kubeadm方式安装kubernetes(k8s)
  • python 比较 mysql 表结构差异
  • 【RAG入门教程01】Langchian框架 v0.2介绍
  • python 做成Excel并设置打印区域
  • SpringAI(二)
  • 小白都可以通过U盘重装系统,再也不用花50块钱去安装系统啦
  • android 双屏异显-学习笔记
  • Android Lottie 体积优化实践:从 6.4 MB 降到 530 KB
  • Django前端页面-模板继承
  • 使用HTML、CSS和JavaScript编写一个注册界面(一)
  • 什么是档案数字化管理
  • vuInhub靶场实战系列--prime:1
  • L48---1637. 两点之间不包含任何点的最宽垂直区域(排序)---Java版
  • 在线渲染3d怎么用?3d快速渲染步骤设置
  • 《软件定义安全》之二:SDN/NFV环境中的安全问题
  • Qt图表类介绍
  • 时隔很久运行苍穹外卖项目,出现很多错误
  • 补篇协程:协程(Coroutine)里通过挂起suspend函数实现异步IO操作
  • qmt量化交易策略小白学习笔记第16期【qmt编程之获取北向南向资金(沪港通,深港通和港股通)】
  • 开源项目学习——vnote