我们在做静力学分析时,有时会遇到这种情况:一个结构,在对其进行受力分析时,它是平衡的,但在ANSYS中计算的时候,软件会报错,求不出结果来。比如下图所示一根杆,两端受到等值反向共线的力F作用,根据二力平衡公理,这根杆是平衡的。下面,我们使用ANSYS计算一下这个结构。
Step1:建立模型。
在SCDM中建立一个方杆,其横截面为10mm*10mm的正方形,长度为100mm。
回到Workbench,
双击Model进入Mechanical。
Step2:网格划分。
默认网格划分,网格尺寸为2mm。
Step3:载荷及边界条件。
载荷设置为两端面受拉,拉力大小为100N。
Step4:求解。
求解过程中首先弹出来一个警告:大体意思是
没有足够的约束对来防止刚体运动,这可能导致求解出现警告或者错误。
紧接着又出现一个警告:大体意思是求解过程中由于病态矩阵出现了警告或错误,可能是由于不合理的材料特性、模型约束不足或接触相关问题造成的。
软件继续求解,便出现了错误:大体意思是节点2253的UY自由度上出现了问题,可能是由于不合理的材料特性、模型约束不足或接触相关问题造成的。
我们考虑,为什么在2253号节点上出现了问题了呢?我们的模型在理论力学上很明显是处于平衡状态的,为什么不能求解呢?笔者分析如下:
1.该模型处在一个三维空间内,我们施加两个力,模型的确在这两个力的作用下是平衡的,但是此时的模型在空间中
处于一种悬浮的状态,没有约束去限制它的运动,只要空间中有一个力,或者某个力偏离了杆的轴线方向,无论这个力有多么小,都会打破这种平衡,从而导致刚体 位移。
2.两端面施加了等值反向共线的力F,软件在计算过程中,会将力F分配到两端面的节点上,分配的过程中难免会有误差,最终导致在杆的轴线方向上,左右两端面的力并不平衡,从而导致刚性位移。
这种情况该怎么处理呢?下面介绍两种方法:
方法一: 弱弹簧Weak Springs。
求解前,点击Analysis Settings,将Solver Controls中的
Weak Springs设置为On,弹簧刚度设置为Program Controlled,开启弱弹簧功能。然后求解。
求解过程中出现了一个警告:大体意思是物体可能会产生刚体运动,软件把弱弹簧加上了。这样,求解顺利完成,观察求解结果,应力为1MPa,正确。
弱弹簧的作用原理是什么呢?我们观察Solution Information的Geometry,发现软件在端面的节点上,添加了Spring,分布在端面的8个顶点上,每个顶点3个,来约束每个顶点上节点的3个自由度。
我们观察Solution Information的Worksheet,发现求解过程中多了24个弹簧单元Combine14,证实了软件在计算过程中,自动添加了弹簧单元完成了计算。
在Analysis Settings,我们将弹簧刚度设置为Program Controlled,软件会将弹簧刚度设置为多少呢?我们将结构导入到ANSYS经典,在弹簧单元的实常数中,我们发现弹簧单元的刚度为0.00040000000000005N/mm,确实很弱,这样来说,不仅解决了刚体运动的问题,而且不会对结构的应力应变结果造成实质的影响。
在Analysis Settings,弹簧刚度设置方法除了Program Controlled,还有Factor和Mmanual两种。
Factor: 设置因子。其值等于
Program Controlled标准值乘以你在Factor输入的值。
M m anual: 直接输入刚度值。
在本例中,弱弹簧功能(Weak Springs)
帮助我们避免了刚体运动,完成了计算,是不是就意味着只要出现了刚体运动,就可以使用弱弹簧功能(Weak Springs)呢?答案是否定的。
分析中若使用了弱弹簧,在求解完成以后,我们要插入一个Force Reaction的Probe,用来探测弱弹簧的支反力,以表征这个弱弹簧对结构产生的影响。设置方法如下:
提取支反力结果,我们发现,弱弹簧产生的总体支反力仅为1.13e-12N,可以忽略不计,所以,该结构使用弱弹簧是没有问题的。在此,笔者也提醒一句,弱弹簧若非必需,则不用,尽量在结构上想办法来防止刚体 位移。
方法二:使用固定约束等效其中的一个力F。
我们知道,如果只看受力,可将该结构等效为下图所示结构,此时约束一端的支反力依然为F。
我们将Step3:载荷及边界条件设置为一端受拉,一端为固定约束。关掉弱弹簧,然后求解。
提取应力结果,除固定约束处存在应力奇异外,其余位置应力依然为1MPa。
至此,本文结束。
免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删