单层STL数据生成3D打印及有限元统一网格的方法

2022-01-04 06:24刘尚蔚胡雨晨魏鲁婷
浙江水利水电学院学报 2021年5期
关键词:水管矢量尺寸

刘尚蔚,胡雨晨,魏鲁婷,魏 群

(华北水利水电大学 水利学院,河南 郑州 450045)

水工建筑物中存在很多形状特殊、结构复杂的部分,3D打印技术可以将其快速打印成型,并应用在水利施工与模型试验等方面。随着BIM技术的快速发展和在水利行业的广泛应用,BIM三维模型与快速成型技术也已紧密结合。STL模型具有良好的几何适应性,以“Polygan Soup”的方法可精确表示各种复杂结构[1],对于实体数字图形产生闭合的STL网片(称为实体类STL网格),通过切片技术获得3D打印的数据格式,目前已广泛应用于快速成型技术。这种STL三角面网格由于其闭合特性,包括了内部的孔洞或凹凸体造型,有边界、有厚度,并有不同材料属性制约的STL网格集合体的网格错综复杂,无论用于是三维打印数据还是转化为四面体或六面体单元,对模型精细化要求高,必须切割成规则的形状,费时费力[2]。这使得利用三维数字模型进行3D打印成型并进行有限元网格转化和计算,常常需要借助专业软件进行处理。

目前常用的摄影成像或激光扫描所得到的三维模型仅仅是所见表面的模型[3],其形成的STL网格是单层表面类STL网格,不具有厚度尺寸,这与三维建模形成的STL实体类闭合网片有着很大的区别。魏鲁双[4-5]等对于单层表面STL网格进行等厚度处理,形成等厚度3D打印模型,并转化为有限元网格,将3D打印技术与有限元网格融合,提出了薄壁结构和钢桁架的STL文件与转换方法,提供了3D打印与数值计算网格融合一体的快速实用技术。在此基础上,本文对非均匀厚度的表面类STL网格的打印数据处理提供了新方法,并以某水电站变厚度尾水管为例,得到实际验证。

1 STL文件与有限元网格转化

1.1 STL文件

STL文件格式简单,只包含三角面片网格的三个角点和法矢量信息,无拓扑关系,文件所需存储空间小,成型快,已经成为3D打印的标准打印格式,大多数三维建模软件都可以输出,如AutoCAD、3DMAX、Catia、Pro/E等[6]。

图1 STL三角面片外法线与角点图

solid Object 01

facet normal (x,y,z)/*第一个三角单元的法矢量*/

outer loop

vertex(xi,yi,zi)/*第一个单元的第一点坐标*/

vertex(xj,yj,zj)/*第一个单元的第二点坐标*/

vertex(xk,yk,zk)/*第一个单元的第三点坐标*/

endloop

endfacet

......

facet normal(x,y,z)/*第m个三角单元的法矢量*/

outer loop

vertex(xi,yi,zi)/*第m个单元的第一点坐标*/

vertex(xj,yj,zj)/*第m个单元的第二点坐标*/

vertex(xk,yk,zk)/*第m个单元的第三点坐标*/

endloop

endfacet

endsolid Object 01

其中,“solid”表示一个模型,“Object01”则表示该模型的名称,“endsolid”表示整个文件的结束,“facet normal”到“endfacet”间包含一个三角形面片的单元信息,“facet normal”表示三角形外法线方向单位矢量,“outer loop”到“endloop”间包含的是三角形面片三个角点的三维坐标,“endfacet”表示一个三角面片信息的结束。

1.2 STL文件的处理

STL文件在存储数据时依次存储每个单元的法矢量和三个角点的坐标信息,这会使得同一节点被重复存储[10]。在转化有限元数据格式的过程中,设置阈值(r),将阈值范围内的点合并归类,清除奇异点,处理后的点重新排列生成整体节点坐标。

某STL文件中包含m个三角面片单元,用整体单元矩阵表示如下:

(1)

根据数据精度给定阈值(r),对阈值内点进行合并归类消除奇异点后,节点数由3*m个变为n个,n个整体节点矩阵如下:

(2)

由m个单元表示整体单元矩阵如下(a、b、c、...、n1、n2、n3均为上述n个整体节点矩阵中的元素):

(3)

1.3 STL三角网格转化为有限元网格

STL三角网格作为有限元计算网格仍然不理想,需通过编写程序,处理邻近点、狭长单元,得到符合转化要求的STL外表面网格,再拉伸生成有限元体网格。STL外表面网格生成及转化为有限元网格的流程见图2。

图2 STL网格转化有限元网格流程图

1.3.1 三角网格优化处理

STL文件中的三角网格存在节点重叠、间距较近、网格角度过大或过小等问题,造成外表面三角网格无法直接用于有限元体网格的生成,因此需要通过程序对网格进行清除奇异点处理,以满足有限元计算要求。

如果相邻两单元节点重叠,则会造成节点和单元数据重复;如果间距较近,则出现狭长单元等问题。给定一阈值(r)判定节点是否重叠或间距较近,节点P3、P4间距若等于0(见图3),则判定为重叠节点,重复节点和单元应删除;若小于r(见图4),则判定为节点间距较近,需合并节点并删除单元。合并、删除节点和单元后将修改节点与单元编号,得到符合有限元计算,形成质量良好的外表面网格(见图5)。

图3 两节点重叠的三角网格图

图4 两节点距离较近的三角网格图

图5 优化后的三角网格图

1.3.2 生成有限元网格

有限元外表面网格的节点沿着某一节点所连接的所有三角单元的合矢量的负方向拉伸,新节点构成了体单元内表面网格,将归入拉伸前的总节点编号及相应单元中。由STL网格转化得到的有限元网格为六节点五面体的退化六面体网格(见图6)。

图6 三角形内表面网格拉伸图

以图6为例,推导同一节点连接的所有单元的合矢量的生成公式及拉伸距离:

(4)

(5)

(6)

(7)

(8)

(9)

根据矢量归一化特性有:

(10)

(11)

式(11)中:D表示物体厚度;DL表示合矢量负方向的截距。

(12)

由式(10)—式(12)得:

(13)

由式(10)—式(13)可求得内表面网格点的坐标:

(14)

式(14)中:x、y、z分别表示外表面三角网格点坐标;x′、y′、z′分别表示内表面三角网格点的坐标。

2 变尺寸等厚度STL表面模型的3D打印数据处理方法

通过理论研究得到单一厚度STL表面模型生成有限元网格的方法,在此基础上提出变尺寸等厚度STL表面模型的3D打印数据处理方法。

变尺寸等厚度结构三维模型如图7所示。在处理STL文件得到满足转化条件的外表面网格后,沿着合矢量负方向进行拉伸,不同于单一厚度结构外表面拉伸,其外表面要先沿着合矢量负方向拉伸一个厚度hL1,沿合矢量负方向得到新节点p1,再沿着合矢量负方向拉伸一个距离hL2-hL1,沿合矢量负方向得到新节点p2,过新节点p2向边L作垂线生成垂足点p3,点p3取代点p2与其他节点相连接,生成变尺寸等厚度网格图如图8所示。

图8 变尺寸等厚度网格图

求变尺寸等厚度结构同一节点连接的所有单元的合矢量及拉伸距离公式:

(15)

(16)

根据适量归一化特性有:

(17)

(18)

需拉伸的距离:

(19)

式(19)中:h1表示为图8中左侧较薄部分的物体厚度;hL1表示为合矢量负方向的截距,即生成退化六面体网格需沿合矢量负方向拉伸的距离。

(20)

式(20)中:h2表示为图8中右侧较厚部分的物体厚度;hL2表示为合矢量负方向的截距;hL2-hL1为表面需要拉伸的距离。

由式(20)可求得变尺寸等厚度结构内表面网格点p1、p2、p3的坐标。p1点坐标:

(21)

式(21)中:x、y、z分别表示变尺寸等厚度结构外表面三角网格点坐标;x′1、y′1、z′1分别表示变尺寸等厚度结构内表面p1点的坐标。

p2点坐标:

(22)

式(22)中:x、y、z分别表示变尺寸等厚度结构外表面三角网格点坐标;x′2、y′2、z′2分别表示变尺寸等厚度结构内表面p2点的坐标。

p3点坐标:

(23)

式(23)中:x、y、z分别表示变尺寸等厚度结构外表面三角网格点坐标;x′3、y′3、z′3分别表示变尺寸等厚度结构内表面p3点的坐标。

3 实例计算

为验证表面类STL网格转化为有限元计算网格的适用性,以某水电站弯肘式尾水管为例,进行了如下计算尝试。实例计算选用的水电站弯肘式尾水管,其直锥段上部半径1.65 m,下部半径2.33 m,高度3.66 m;弯肘段上部为圆结束处为方,上部中心到弯管结束水平距离6 m,高4.46 m;扩散段为入口到出口水平距离为8.85 m。入口出口均为矩形,入口长8.98 m,宽2.89 m;出口长8.98 m,宽4.46 m。

3.1 尾水管模型建立及有限元网格生成

得到3D打印格式的STL文件,通过程序转化为有限元网格,最后导入到有限元软件中计算。通过程序生成得到的有限元法表示的部分点坐标和单元信息的文件如图9所示,基于该文件可生成不同格式的有限元文件,不同格式的有限元文件可导入不同的有限元软件中计算,本文将有限元文件导入ANSYS中,生成的有限元网格如图10所示。

图9 文件中部分节点

图10 尾水管有限元网格细部图

3.2 水电站尾水管有限元计算

在ANSYS Workbench中进行有限元计算,力学参数及工况设定如下:

(1)设定模型边界条件:尾水管底部固定。

(2)材料力学参数:尾水管材料为钢;密度为7 890 kg/m3;弹性模量为2.06×1011Pa;泊松比为0.27。

(3)在工况1情况下,对尾水管施加一个自重荷载;工况2:对尾水管同时施加一个自重荷载和静水压力。工况1下计算得到尾水管的总变形图、正应力图、等效应力图见图11-图13;在工况2情况下,计算得到总变形图见图14-图16。由图11-图16可知,尾水管的应力及变形情况均在正常情况范围内。

图11 尾水管总变形图

图12 尾水管Z向应力图

图13 尾水管等效应力图

图14 尾水管总变形图

图15 尾水管Z向应力图

图16 尾水管等效应力图

4 结 语

本文基于激光扫描或摄影成像获取的表面模型进行3D打印数据格式处理及有限元网格的转化,在单层表面STL网格的基础上得到单一厚度的3D打印数据格式,并提出了可变厚度的STL表面模型3D打印数据及有限元网格的新方法。结合某水电站尾水管建立单层表面模型进行有限元网格转化,设定尾水管受自重和静水压力两个工况下进行有限元计算,得到尾水管变形、应力状态。通过这一尾水管实例,对于复杂水工结构利用表面类STL网格转化为有限元网格,探索出一种新的途径。

猜你喜欢
水管矢量尺寸
CIIE Shows Positive Energy of Chinese Economy
一种适用于高轨空间的GNSS矢量跟踪方案设计
矢量三角形法的应用
安奇奇与小cool龙(第五回)
首席水管工
小赛和水管
D90:全尺寸硬派SUV
基于矢量最优估计的稳健测向方法
三角形法则在动态平衡问题中的应用
佳石选赏