人在仿真软件金宝app

金宝appSimulink &基于模型的设计

用降阶柔性实体块建模柔性体

今天我很高兴欢迎来宾博客大卫Balbuena.如果您正在使用降阶柔性固体块从simscape multibody.,我强烈建议您阅读David的MATLAB中心贡献。您是否正在从P微分方程工具箱或任何其他第三方有限元分析软件,这将帮助您避免常见错误,并使您快速运行。
---伙计

在这篇文章中,我将介绍一个MATLAB中心提交帮助您验证您的工作流程以生成所需的数据降阶柔性固体堵塞。

在潜水之前,让我们回顾Simsceive Multibody中柔性尸体的演变。

Simsceive Multibody中柔性体的演变

在R2018b之前,Simscape Multibody不包括内置块来建模柔性体。在那些日子里,你必须使用一系列刚体由弹簧和阻尼器连接,正如盖伊在一个以前的帖子.从那时起,我们已经为建模灵活的身体添加了许多新功能!这是一个快速摘要:

释放 描述 图像
R2018b 一般柔性梁 等截面柔性梁 一般柔性梁
R2019b 降阶柔性固体 您可以从组件的CAD几何开始,生成有限元网格,应用CRAIG-BAMPTON FEA子结构方法,并生成缩小级模型 气缸网
R2020a 具有标准截面的柔性梁 图书馆增加了标准的柔性梁 灵活的光束库

现在你可以轻松地构建和模拟一些很酷的东西,比如这个灵活的四杆机构:

柔性四杆机构

降阶柔性体

降阶柔性固体块体不同于其他柔性梁,因为它可以使用有限元软件生成的数据。它需要一个降阶模型(ROM),这可以通过采取CAD几何你的组件,生成一个有限元网格,应用Craig-Bampton FEA子结构方法,生成一个降阶模型。

此块的性质具有挑战:由于它使用来自第三方软件的数据,因此我们(MathWorks)无法检查您提供的数据实际代表您打算的数据。

一旦你有了ROM,你可以输入在Simscape多体块和CAD部分生成的数据:

ROM块参数

ROM数据主要由3个矩阵组成

  • 界面帧起源的矩阵
  • 刚度矩阵
  • 大规模矩阵

文档列出了对ROM的要求.如果你需要操作ROM数据,记住这些是很重要的。需要注意的是文档中的这一行:

节点i的自由度必须保持在U的顺序一世= [T西,T.,T.,R.西,R.,R.]

重要的是要注意缩小阶模型中的边界节点必须与块上的相应接口帧相同.如果您的第三方软件以不同的顺序生成接口帧,则需要重新排序刚度和大规模矩阵以占此差异。

所以,假设你生成了你的ROM数据,你需要更改框架的排序。假设您只有2帧,而且没有动态模式,那么您的$ U $矢量变为:

DOF矢量

和你的起源矩阵将匹配排序:

起源矩阵

有了这个顺序,你的刚度和质量矩阵就有了一个自然的结构。在这种情况下,你可以把刚度矩阵(K)看成2x2分区矩阵

分区刚度矩阵

质量基质将具有相同的结构。

记住上面的图片,现在我们可以交换两帧。这相当于将$U$的前6行与$U$的后6行交换。对于起源矩阵,你可以简单地交换行:

修改起源

为了正确地修改刚度和质量矩阵,您需要排列行和列。下面是你必须对刚度矩阵做的改变的可视化。为了清晰,第一个分区突出显示。

可视化排列

你需要对质量矩阵做同样的事情。这确保了改变你的坐标系的顺序为每个坐标系保持正确的自由度。

故障排除

当导入ROM时,降阶柔性体块会对您提供的矩阵进行一些验证。如果它检测到可疑的东西,将抛出以下警告:

错误的数据误差

所提供的降阶模型数据(质量矩阵、刚度矩阵、界面框架原点)似乎不能正确地描述柔性体的刚体性质。检查提供的数据是否正确、一致。解决此问题,以删除警告。

如果您收到了上面的警告,请继续阅读,因为下面的步骤将帮助您验证ROM生成过程。为了做到这一点,我喜欢用一个简单的形状,因为具有简单的形状,很容易查看您在FEA软件中选择的设置如何转化为Simsceive Multibody

文件Exchange设置

我决定使用具有已知解决方案的简单系统:具有圆形横截面的悬臂梁。您可以使用FEA的首选软件,并为具有这些属性的气缸产生ROM:

  • 半径:r = 0.05 m
  • 长度:L = 1米
  • 密度:ρ= 2700 kg / m ^ 3
  • 杨氏模量:E = 70 GPa
  • 泊松比:0.33
  • 2个接口帧,两端各一个

这是使用这种圆筒的图片啮合使用偏微分方程工具箱.如果在不同的FEA软件中实现此气缸,您应该看到类似的东西。

气缸网

对于具有这些特性的梁,可以手工计算它应如何响应不同的加载条件。下面几节介绍了我通常运行的一些基本测试:

张力

如果你沿着梁的轴线施加一个力$F$,你应该得到一个稳态变形

$$ Delta L = \frac{F \cdot L}{A \cdot E}$$

其中$ a $是梁的横截面积,$ e $是年轻的模量,$ $是光束的长度。

扭转

如果你在扭转梁加载一些扭矩$T$,你应该得到一个稳定的扭转角

$$ theta = \frac{T \cdot L}{G \cdot I_P}$$

其中$G$为剪切模量,$I_p$为极惯性矩。

弯曲

如果你在光束的末端施加一个与光束轴线垂直的脉冲,你应该会得到一个以光束的第一固有频率振荡的响应

$$ \ oomega_1 = 1.87510 ^ 2 \ sqrt {\ frac {e \ cdot i} {\ rho \ cdot a}} = 447.6 \ frac {rad} {s} $$

其中,$I$为转动惯量,$\rho$为密度,$A$为横截面积,$E$为杨氏模量。

验证芯片结果

现在我们知道光束应该如何反应。在我的MATLAB Central提交中,有一个模型复制了上述加载条件,并将模拟响应与我们计算的解析解进行了比较:

用于测试加载条件的模型

您所要做的就是在模型中输入ROM数据。所提供的默认数据是使用减少功能偏微分方程工具箱.如果您对我如何做到这一点感兴趣,提交包含我为此编写的代码。所提供的金宝appSimulink模型比较了ROM响应与柔性圆柱梁。模型画布上的链接将打开绘图,这样你就可以探索结果:

MATLAB的结果图

看到自述有关模型如何设置的更多详细信息,请提交。

现在轮到你了

以下是更多资源让您开始:

尝试缩小的顺序灵活的固体块,让我们知道您在下面的评论中思考。

|

评论

请点击留下评论在这里登录到你的MathWorks帐户或创建一个新的。