FreeCAD有限元悬臂梁应力计算
简介
本文档主要介绍:
1.FreeCad有限元悬臂梁示例的详细解读。
2.以悬臂梁为例,对比有限元FEM悬臂梁示例计算结果和材料力学计算结果。
FreeCAD有限元悬臂梁示例解读
打开FreeCAD,在其起始页有3个有限元的例子,都是悬臂梁的。
从左向右,第1个是2D板壳单元的例子,第2个是3D实体单元的例子,第3个也是3D实体单元的例子,只是采用了新的求解器。
双击打开第2个例子。
可以看到软件界面里红框内的按钮大部分是灰色的。
双击Analysis可以启动分析,此时刚才用红框标注的按钮变成彩色,如下图。
在结构树浏览器里,可以看到Cube特征,即长方体特征,鼠标点击Cube后,可以在组合浏览器里修改长宽高等属性。
比如下图,我把长宽高属性更改为了150mm、10mm、15mm。
双击SolidMaterial,可以更换材料。
FemConstraintFixed为固定约束。
双击FemConstrainForce,更改力值为10。
双击Box_Mesh,更改网格的最大尺寸。
双击CalculiXccxTools,点击“...”更改工作路径(路径不能有汉字)。
点击Write.inp file。
点击Run CalculiXccx。
点击Close。
双击结构树浏览器里的CalculiX static_results,点选感兴趣的结果类型,这里选择的是最大主应力。
可以看到最大值为7022.97kpa=7.02Mpa。
在结构树浏览器中删除原有的Pipeline 和WarpVector 。
材料力学最大主应力的计算
根据材料力学,相对于Y 轴的抗弯截面系数公式为: 6
2
12z W 23max bh h bh I Y
Y ===
使用wxMaxima 对悬臂梁进行数值计算: /*设置软件输出结果为数值*/
if numer#false then numer:false else numer:true; /*梁宽b ,单位mm*/
b:10;
/*梁高h,单位mm*/
h:15;
Wy:1/6*b*h^2;
/*作用在截面上的力,单位N*/
F:10;
/*力臂,单位mm*/
L:150;
/*作用在截面上的弯矩*/
M:F*L;
/*弯矩在截面上产生的最大正应力,单位MPa*/ σ:M/Wy;
计算结果对比
通过对比可以发现,计算结果差异非常大,原因是有限元分析固定约束处存在应力奇异,即使细化网格也没有办法使有限元结果收敛。
在其他有限元软件中也是相同的情况。
悬臂梁有限元计算应力集中的处理方法
通过使用梁单元是否可以避免固定约束处的应力奇异呢?
在FreeCAD 中建立使用梁单元划分网格的悬臂梁的有限元分析模型,其模型树如下图。
各参数的设置如下:
梁的轴线使用OpenSCAD工作台中的“创建参数化的几何图元”创建。
切换到FEM工作台,建立有限元梁截面。
这里的梁宽度Width和高度Height需要根据下一步力约束的方向进行调整。
比如下图Width对应的是上文材料力学计算中的h,
Height对应的是材料力学计算中b。
在梁两端分别位移约束和力约束。
并使用Gmsh建立网格,大小设置为2mm。
双击CalculiXccxTools,写入文件,并运行。
双击CalculiX_static_results,查看结果。
误差:(4214.39-4000)/4000=5.36%,大于工程上所允许的最大值5%.观察上面的网格,可以发现,2mm的网格都是薄片,每个单元的各边长差异太大,可见盲目细化网格,会导致误差大。
更改Max element size的值为10mm,如下图:
运行双击CalculiXccxTools,写入文件,并运行。
最大主应力的最大值为4040.53kPa。
此时,误差:(4040.53-4000)/4000=1.01%<5%.网格的各边差异较小,网格的质量比数量对计算结果更有意义。