结构分析边界条件(2)完全约束的必要性

在执行静态分析时,我们需要始终牢记需要完全约束模型。这并不意味着我们必须过度约束模型,而是我们必须拥有最佳边界条件才能成功且准确地完成分析。

人们在执行静态分析时常犯两个错误。

第一个是在执行静态分析时遇到超出自由度限制和出现的类似错误,另一种是在执行自由热膨胀或惯性释放时过度约束模型,导致不切实际的应力。

在本讲座中,我们将讨论正确约束模型的重要性以及用户为实现这一目标可能遵循的最佳策略。

杆单元的静态分析 FEA 方程

静态分析中的关键假设是载荷和边界条件不随时间变化,并且物体没有刚体运动。该分析使用有限元方程 F = KU 求解,其中 K 是刚度矩阵,U 是节点位移矢量。考虑一个具有三个节点 i、j 和 k 的两杆元素。每个节点仅限于一个自由度。这些是当前模型的有限元方程,其中 ui、uj 和 uk 表示节点位移,k 是杆的刚度。

对于第一种情况,我们假设没有定义边界条件。如果我们求解方程组,我们得到 ui = uj= uk,我们可以看到满足这个条件的解有无数个。此案例代表模型没有足够的边界条件来限制刚体运动。刚体运动是指位移解可以是任意非零值的情况,代表无约束运动。

在第二种情况下,让我们添加边界条件 ui = 0 和作用在节点 k 的力 F。当我们求解方程时,我们得到 ui = 0、uj = uk/2 和 uk = 2F/k。由于运动受限,节点 i 处也产生了 F 的反作用力。该反作用力为 -k*uj,与我们在节点 k 处施加的力 F 大小相等且方向相反。在这种情况下,模型(即杆单元)受到充分约束,从而产生节点位移的唯一解。此外,为了避免刚体运动,我们还必须确保所有方向都受到适当的约束,即使在该方向上没有施加力/载荷。

防止刚体运动

例如,如果我们想象一个块位于另一个块上,则只有垂直力起作用。即使不存在侧向力,我们仍然必须防止刚体在横向方向上的运动,以获得独特的解决方案。此要求特定于静态分析,不会出现在动态分析中。如果我们没有正确阻止刚体运动,我们将收到解算器错误,例如超出自由度限制。

我们现在了解了适当约束模型以防止所有六种刚体运动(三种平移和三种旋转)的重要性。但是,如果我们的系统可能位于空中或水下,因此不与地面相连,我们该怎么办?

引入惯性释放(Inertia Relief)方法

借助惯性释放,此类系统的刚体运动可以通过惯性力以最小的约束来平衡。在该技术中,所施加的力和扭矩通过由解算器计算的加速度场引起的惯性力来精确平衡。如果我们有惯性释放,我们仍然希望正确定义约束以防止运动,即使是在不受激励的方向上。回想一下,即使模型没有在给定方向上激励,刚体运动的可能性仍然存在,因此矩阵仍然是奇异(Singular)的。惯性释放方法将在本讲座稍后讨论。

弱弹簧(Weak Spring)

现在,如果一切都失败了,可以选择在机械中激活弱弹簧。这些是自动创建的弹簧,具有足够的刚度来约束刚体运动。弱弹簧功能将为每个零件创建一个假想的边界框,其中为每个零件的 8 个角添加弹簧。因此,如果我们想象一个盒子覆盖每个部分,那么最靠近这 8 个角的每个节点都会在 3 个正交方向 X、Y 和 Z 上连接弱弹簧。所有弹簧的自由端均接地。弹簧刚度由 Mechanical 自动计算并定义为非常低的值。

然而,我们应该经常检查弱弹簧的反作用力,以验证它们是否很低并且不会做任何工作或影响结果。请注意,弱弹簧几乎适用于所有分析,而惯性释放仅适用于静态和屈曲(Buckling)分析。

现在,让我们借助 Ansys Mechanical 中的演练示例更好地理解这些概念。

在实例中,我们将使用一个向前飞行的简单泡沫滑翔机模型。我们的几何结构由完整的模型组成,每个部分都使用发泡聚苯乙烯泡沫材料。滑翔机承受简化的压力载荷来表示升力。我们可以使用计算流体动力学来计算压力载荷并将其映射到我们的模型上,但由于该视频的重点是约束模型,我们将使用简化的压力加载,只是为了向泡沫滑翔机施加一些升力。点质量用于解释泡沫滑翔机中未使用几何模型建模的部分,它精确地位于滑翔机的空腔中,因此我们的滑翔机具有平移和旋转的升力和重量平衡。这意味着我们的滑翔机不会在这些平衡的力和加速度下上升或下降,也不会俯仰或滚动。

我们的目标是实现接近 1 g 的平移加速度,这本质上是平衡升力所需的 1 g 重力加速度,惯性缓解摘要报告的旋转加速度接近于零。我们将使用 3-2-1 规则来提供最小但足够的约束来防止刚体运动。将分析应力和变形的结果,并验证力反作用值,以确认我们的模型没有过度约束。

在Ansys Mechanical中打开如下飞机模型:

将模型每个零件的材料设为发泡聚苯乙烯:

在飞机模型中部放置一个20g的点质量模拟飞机的质量。

在飞机的四个机翼下方施加30Pa的压力模拟飞机受到的升力:

网格大小设为2mm,生成网格:

尝试对模型进行求解,软件报错显示没有足够多的约束来防止刚体运动:

模拟无法完成,显示以下错误:

接下来让我们对模型进行一些调整。

在分析设置中打开惯性释放(Inertia Relief)

惯性释放将加速度场应用于模型的所有元素,以平衡所施加的载荷。它可以抵消所有刚体加速度,使模型处于静态平衡状态。在我们的例子中,当泡沫滑翔机向前飞行时,它会受到净升力的作用,以及由于其质量乘以加速度而产生的相等且相反的力。这个相等且相反的力是滑翔机上计算的惯性加速度负载。

现在,为了正确约束模型,我们将使用 3-2-1 规则。

使用 3-2-1 规则可以帮助我们提供最小但足够的约束来防止 6 种刚体模式,同时防止过度约束。这意味着您将 3 个平移自由度约束应用于一个节点,然后对另一个节点进行 2 个平移 DOF 约束,该节点与节点的节点坐标系的 3 个轴之一对齐。顺便说一句,节点坐标系默认与全局笛卡尔坐标系对齐。应约束在第二个节点处的自由度应与前两个节点之间的线正交,因此换句话说,不要将 DOF 约束在两个节点的方向上。现在,这可以防止刚体绕 2 个轴旋转,但仍然可以使刚体自由膨胀。最后,选择一个与前两个节点不共线的节点,并将其约束在与这三个节点形成的法线最对齐的 DOF 方向上。这将限制第三刚体旋转,但仍然允许物体无阻力地自由膨胀,以便适应物体的不受约束的生长,例如自由热膨胀。

下面我们来看如何在此模型飞机上应用3-2-1法则:

在左侧尾翼选在如下顶点,添加位移约束,将xyz三个方向的位置设为0。这样模型飞机限制了三个方向的位移,但是没有现在三个坐标轴的旋转。

在右侧机翼选择一个顶点,添加位置约束,限制xz两个方向的位移,这些模型飞机就现在了所有自由度除了在y方向上的旋转。

最后在尾翼上选择一个顶点,添加位移约束,将z方向的位移设为0,这样就限制了y轴方向的旋转,模型得到完全约束。

下面我们重新对模型进行求解。

变形情况如下,机翼两侧向上翘起:

应力情况,机翼根部收到应力。

在”Solution Inforamtion“中查找Inertia Relief Summary:

我们可以观察到,惯性释放摘要显示平衡滑翔机所需的平移和旋转加速度的值接近于零,除了 -9.86 m^2/sec 加速度值接近 1g,需要在垂直方向平衡滑翔机。由于我们在模拟过程中没有施加任何重力,惯性释放已经计算出精确的值来平衡所施加的升压力。

现在,让我们检查 3 个位移边界条件下的力反作用。单击静态结构。将 3 个位移边界条件拖放到“解决方案”上。

我们可以观察到,3 个位移边界条件下的反作用力值接近于零,这充分确认了模型得到了正确的约束,而没有过渡约束。

小结

  • 执行成功的分析需要我们正确约束模型。如果我们的模型约束不足,我们就会有刚体运动,而过度约束的模型可能表现得太僵硬,并可能产生不切实际的应力。
  • 执行自由热膨胀或惯性释放的用户需要正确定义约束以防止刚体运动,即使是在未激发的方向上。可以使用 3-2-1 规则或弱弹簧选项。
  • 如果适用,使用对称区域自然可以防止刚体在垂直于对称方向上的运动以及通过对称平面的旋转。

了解这些关键概念后,我们可以更加确信我们的仿真模型已受到适当的约束。