一种基于3D打印数据处理软件平台的实现方式
技术领域
本发明涉及自动控制领域,尤其是一种基于3D打印数据处理软件平台的实现方式。
背景技术
3D打印又称增材制造,是一种不需要模具就可以通过叠加原理实现CAD模型到实物转换的快速成型技术。该技术在新产品开发和个性化产品定制等方面具有传统加工技术无法取代的优势。目前根据打印原理,3D打印的方法可分为:立体光刻、熔融沉积成型、激光选区熔化和分层实体制造。3D打印成型过程可分为离散和堆积两个相反的过程。离散是指对三维CAD模型进行分层切片处理,获得具有一定厚度的二维轮廓,分层切片处理后的数据经过进一步处理,并根据不同工艺的要求与3D打印数控成型技术相结合,以使数控***根据生成的代码以平面方式加工,实现层层叠加的堆积过程。
三维CAD模型的数据处理是3D打印技术的重要环节,直接决定打印件的精度和成型质量。根据不同的打印工艺,3D打印***处理的材料也不同。在用于生产精密工程部件的SLM和SLS技术工艺开发中,3D打印***仍采用传统的方法,需通过大量的正交试验进行反复验证,在不同加工工艺下测试相应的力学性能,从而得出最佳的加工工艺参数范围及相应的科学数据。这一过程无疑延长了产品产出时间和增加成本,也无法充分发挥3D打印的优势。而且现有的3D打印***需要手动为零件添加支撑结构,加工准备时间长,无法保证成型的质量。
发明内容
为了解决上述技术问题,本发明的目的是:提供一种效率高、成本低和成型质量好的,基于3D打印数据处理软件平台的实现方式。
本发明解决其技术问题所采用的技术方案是:
一种基于3D打印数据处理软件平台的实现方式,包括:
A、构建待加工零件的三维模型,并根据构建的模型生成相应的STL文件;
B、采用OpenGL可视化技术对生成的STL文件进行可视化处理,从而实现STL文件的三维模型重建以及对模型的渲染和操作;
C、根据STL文件中三角面片的位置和拓扑关系对可视化处理后的三维模型进行快速分层切片处理,并为待加工零件的三维模型自动添加支撑结构;
D、根据分层切片处理的结果和加工材料的特性,采用生死单元法对待加工零件基于SLS和SLM技术工艺的加工过程进行模拟,然后根据模拟的结果对待加工零件进行参数选择和模型优化,从而得到待加工零件的最优打印参数和最优加工模型。
进一步,所述步骤B,其包括:
B1、对生成的STL文件进行读取和修复处理;
B2、采用OpenGL可视化技术对修复后的STL文件进行三维模型重建,并对STL文件的三维模型进行光照选取、材质选取和颜色渲染;
B3、对重建后的三维模型进行缩放、平移、旋转、镜像和选取操作。
进一步,在所述步骤C中根据STL文件中三角面片的位置和拓扑关系对可视化处理后的三维模型进行快速分层切片处理这一步骤,其具体为:
C11、将STL文件的三角面片按照其最小高度进行分组排序;
C12、动态建立一个三角面片表,并在此三角面片表中建立局部的三角面片邻接拓扑关系;
C13、根据分组排序的结果和三角面片表进行切片处理。
进一步,所述步骤D,其包括:
D1、根据分层切片处理的结果和加工材料的特性,采用生死单元法对待加工零件的SLS和SLM加工过程进行模拟;
D2、根据模拟的结果对待加工零件进行参数选择和模型优化,从而得到待加工零件的最优打印参数和最优加工模型。
进一步,所述步骤D1,其包括:
D11、导入待加工零件的三维模型,并进行加工材料属性定义和进行网格划分;
D12、杀死网格中除第一层之外的所有单元;
D13、以第一层单元为当前层单元,并为当前层施加初始条件和边界条件,加载激光能量至当前层;
D14、计算当前层单元的传热,得到当前层单元的温度分布;
D15、根据当前层单元的温度分布计算当前层单元的相变和热应力;
D16、判断所有面的计算是否完成,若是,则执行步骤D2,反之,则更新激光能量项和边界条件,然后返回步骤D14。
进一步,所述步骤D16,其包括:
D161、判断当前线的计算是否完成,若是,则执行步骤D162,反之,则除掉当前层的载荷,并在更新激光能量项和边界条件后返回步骤D14;
D162、判断当前面的计算是否完成,若是,则执行步骤D163;反之,则将激光能量移动到下一条线,然后除掉当前层的载荷,并在更新激光能量项和边界条件后返回步骤D14;
D163、除掉当前层的激光能量和边界条件,并激活下一层的单元进行相变和热应力计算;
D164、判断所有面的计算是否完成,若是,则执行步骤D2,反之,则将激光能量移动到下一层,然后除掉当前层的载荷,并在更新激光能量项和边界条件后返回步骤D14。
进一步,所述步骤D2的参数选择包括:工艺参数选择、材料选择和颜色选择。
进一步,在所述步骤C中为待加工零件的三维模型自动添加支撑结构这一步骤,其具体为:采用基于投影区域的支撑自动生成算法为待加工零件的三维模型自动添加支撑结构。
本发明的有益效果是:结合STL文件中三角面片的位置和拓扑关系来进行快速分层切片处理,大幅度提高了分层效率,减少了内存开支和等待时间;增设了采用生死单元法对待加工零件基于SLS和SLM技术工艺的加工过程进行模拟的过程,并可以根据模拟结果进行最优打印参数的选定,克服了传统通过大量的正交试验进行加工工艺参数范围选定的缺陷,节省了产品产出时间和减少了成本;可以自动添加支撑结构,减少了加工准备时间且可以保证成型的质量。
附图说明
下面结合附图和实施例对本发明作进一步说明。
图1为本发明一种基于3D打印数据处理软件平台的实现方式的整体流程图;
图2为本发明步骤B的流程图;
图3为本发明据STL文件中三角面片的位置和拓扑关系对可视化处理后的三维模型进行快速分层切片处理的流程图;
图4为本发明步骤D的流程图;
图5为本发明步骤D1的流程图;
图6为本发明步骤D16的流程图;
图7为本发明实施例二STL文件的读取和分析流程图;
图8为本发明实施例二3D打印数据处理软件平台的结构框图;
图9为本发明实施例二对SLS和SLM加工过程的模拟流程图。
具体实施方式
参照图1,一种基于3D打印数据处理软件平台的实现方式,包括:
A、构建待加工零件的三维模型,并根据构建的模型生成相应的STL文件;
B、采用OpenGL可视化技术对生成的STL文件进行可视化处理,从而实现STL文件的三维模型重建以及对模型的渲染和操作;
C、根据STL文件中三角面片的位置和拓扑关系对可视化处理后的三维模型进行快速分层切片处理,并为待加工零件的三维模型自动添加支撑结构;
D、根据分层切片处理的结果和加工材料的特性,采用生死单元法对待加工零件基于SLS和SLM技术工艺的加工过程进行模拟,然后根据模拟的结果对待加工零件进行参数选择和模型优化,从而得到待加工零件的最优打印参数和最优加工模型。
参照图2,进一步作为优选的实施方式,所述步骤B,其包括:
B1、对生成的STL文件进行读取和修复处理;
B2、采用OpenGL可视化技术对修复后的STL文件进行三维模型重建,并对STL文件的三维模型进行光照选取、材质选取和颜色渲染;
B3、对重建后的三维模型进行缩放、平移、旋转、镜像和选取操作。
参照图3,进一步作为优选的实施方式,在所述步骤C中根据STL文件中三角面片的位置和拓扑关系对可视化处理后的三维模型进行快速分层切片处理这一步骤,其具体为:
C11、将STL文件的三角面片按照其最小高度进行分组排序;
C12、动态建立一个三角面片表,并在此三角面片表中建立局部的三角面片邻接拓扑关系;
C13、根据分组排序的结果和三角面片表进行切片处理。
参照图4,进一步作为优选的实施方式,所述步骤D,其包括:
D1、根据分层切片处理的结果和加工材料的特性,采用生死单元法对待加工零件的SLS和SLM加工过程进行模拟;
D2、根据模拟的结果对待加工零件进行参数选择和模型优化,从而得到待加工零件的最优打印参数和最优加工模型。
参照图5,进一步作为优选的实施方式,所述步骤D1,其包括:
D11、导入待加工零件的三维模型,并进行加工材料属性定义和进行网格划分;
D12、杀死网格中除第一层之外的所有单元;
D13、以第一层单元为当前层单元,并为当前层施加初始条件和边界条件,加载激光能量至当前层;
D14、计算当前层单元的传热,得到当前层单元的温度分布;
D15、根据当前层单元的温度分布计算当前层单元的相变和热应力;
D16、判断所有面的计算是否完成,若是,则执行步骤D2,反之,则更新激光能量项和边界条件,然后返回步骤D14。
参照图6,进一步作为优选的实施方式,所述步骤D16,其包括:
D161、判断当前线的计算是否完成,若是,则执行步骤D162,反之,则除掉当前层的载荷,并在更新激光能量项和边界条件后返回步骤D14;
D162、判断当前面的计算是否完成,若是,则执行步骤D163;反之,则将激光能量移动到下一条线,然后除掉当前层的载荷,并在更新激光能量项和边界条件后返回步骤D14;
D163、除掉当前层的激光能量和边界条件,并激活下一层的单元进行相变和热应力计算;
D164、判断所有面的计算是否完成,若是,则执行步骤D2,反之,则将激光能量移动到下一层,然后除掉当前层的载荷,并在更新激光能量项和边界条件后返回步骤D14。
其中,当前层的载荷,包括当前层的激光能量和边界条件。
进一步作为优选的实施方式,所述步骤D2的参数选择包括:工艺参数选择、材料选择和颜色选择。
进一步作为优选的实施方式,在所述步骤C中为待加工零件的三维模型自动添加支撑结构这一步骤,其具体为:采用基于投影区域的支撑自动生成算法为待加工零件的三维模型自动添加支撑结构。
下面结合说明书附图和具体实施例对本发明作进一步详细说明。
实施例一
本实施例对本发明采用ANSYS有限元热分析工具和生死单元技术进行SLS和SLM模拟加工过程的相关理论进行说明。
(一)有限元法
有限元分析的基本原理是将原本连续的模型体离散化,即将连续的实体分解为有限多个互相连接、形状规则的微小单元块,通过每个小单元块所假设的描述某一物理特性的近似函数来求解整个模型的函数,从而将原来复杂的无限自由度问题转为有限自由度问题,使得求解简单化,适用于各种复杂模型、复杂边界条件以及复杂的材料特性等问题的求解。有限元求得的解并非准确值,而是一个近似值,其精确程度取决于划分的单元块。
(二)生死单元技术
“生死单元技术”是ANSYS公司为了模拟诸如焊接、切削加工、激光烧结、隧道开掘之类的动态过程而开发的一种新技术。在该技术中,单元的生死功能是通过修改单元刚度的方式实现的。单元被“杀死”时,它不是从刚度矩阵删除了,而是它的刚度降为一个很小的值。杀死的单元的刚度乘以一个极小的减缩系数(默认值为1E-6)。为了防止矩阵奇异,该刚度不设置为0。与之相似,当单元“活”的时候,也是通过修改刚度系数的方式实现的。所有的单元,包括开始被杀死的,在求解前就已存在,这是因为在分析过程中刚度矩阵的尺寸不能改变,所以,被激活的单元在建模时就被建立,以实现后续的“生死”功能。当单元被重新激活时,它的刚度、质量与荷载等参数被还原到真实状态。
实施例二
参照图7,本发明的第二实施例:
本发明一种基于3D打印数据处理软件平台的实现方式,分成三个部分:STL文件的三维模型重建及对模型的渲染和操作、对三维模型的分层及自动添加支撑、SLS和SLM的加工过程模拟及基于此结果的参数选择和设计模型优化。下面逐一对这三部分进行说明。
(一)STL文件的三维模型重建及对模型的渲染和操作
STL格式由于具有容易转换、表示范围广、分层算法简单等特点,为大多数3D打印***采用,已成为3D打印行业实际上的工业标准。STL件有两种格式:ASCII格式和二进制格式。其中,二进制的STL文件要比ASCII格式的文件小得多(一般是1/5),但ASCII格式可以直接阅读和检查。图8是STL文件的读取和分析流程。
对于3D打印数据处理软件而言,三维模型的显示是其必不可少的功能,因此必须对STL文件进行三维可视化处理。一般而言,三维模型的显示功能需达到以下几个要求:
1)能显示具有真实感的三维模型;
2)支持线框模式和阴影模式;
3)能提供光照、不同材质及颜色选择;
4)支持模型的缩放、平移、旋转、镜像、选取等功能。
为了实现上述功能,本发明采用了OpenGL可视化技术来对STL文件进行操作。
(二)三维模型的分层及自动添加支撑
3D打印采用逐层打印的方式实现增材制造,因此,必须对STL文件沿高度方向进行分层,以获得准确的二维轮廓信息。为了提高分层效率,本发明先将STL文件的三角面片按照其最小高度进行分组排序,以减少三角面片与切片平面位置关系判断的次数;然后动态建立一个三角面片表,并在此活性表中建立局部的三角面片邻接拓扑关系,最后再在此基础上进行切片处理,使得到的交点集合是有序的,以直接获得首尾相连的有向封闭轮廓,从而获得较高的切片效率。
支撑结构是使用3D打印设备加工零件的重要组成部分。支撑结构不仅可以保证悬空部位能够正确成型,还能防止热应力引起的变形,保证零件能够被完整地加工出来。但是目前的3D打印软件无法实现支撑结构的全自动添加,大多数情况下需要手动添加支撑,不仅费时,而且很难保证质量。有鉴于此,本发明选取了基于投影区域的支撑自动生成算法自动添加支撑的算法,以节省加工准备时间,保证成型质量。
基于投影区域的支撑自动生成算法是BOX型自动生成算法的改进算法。它在各分层截面上作支撑域时,不是以零件原型在XOY平面上的投影的最小包络矩形作为边界范围,而是采用其在XOY平面上的投影作为边界范围,投影域范围内的实体截面用实体材料进行填充,而其它区域则用支撑材料进行填充,这样,得到一个以零件原型的投影域为底面的柱体,然后将支撑材料去掉,从而最终得到零件的原型。
(三)SLS和SLM的加工过程模拟及基于此结果的参数选择和模型优化
SLS和SLM技术在加工金属或者陶瓷材料时,材料在短时间内经历剧烈的温度变化。在此过程中产生的热应力往往无法及时消除,如果热应力过大,会导致零件变形甚至开裂,致使零件达不到设计要求甚至加工失败。为了更好的发挥SLS和SLM的技术优势,有必要在加工之前根据零件的模型特点和材料特性对加工过程进行模拟,根据模拟结果选择加工参数,以获得符合要求的零件。但目前的3D打印软件没有这一功能。
由于3D打印是增材制造过程,本发明采用“生死单元技术”对这一过程进行模拟,以克服了传统通过大量的正交试验进行加工工艺参数范围选定的缺陷。
SLS和SLM的加工过程是本发明的重要组成部分。该部分将帮助用户更加直观地了解打印过程,并对加工过程中的热变形、残余应力过高等潜在问题提供解决方案。同时,该部分将帮助用户选择打印参数、规划打印路径及修改设计模型以更好的适应3D打印的特点。图9是针对SLS 和SLM加工过程的模拟流程图。
3D打印虽然在加工复杂形状零件方面具有无与伦比的优势,但是它也有其自身的局限。目前,大多数3D打印工艺均是采用逐点扫描的方式加工零件,当某些特征小于激光光斑或者喷嘴直径时,或者设计中存在直角特征时,3D打印将无法按照设计方案加工出符合要求的零件。本发明对现有的模型设计进行了优化,根据模拟的结果指导用户修改模型,消除应力集中、更改无法加工的部分的设计,以适应3D打印的特点,更好的发挥3D打印的优势。
此外,本发明还建立了包括高分子材料、陶瓷材料和金属材料在内的标准材料库供用户选择,同时,建立了数据处理和交换的工艺标准,打破现有软件只针对某一种工艺的局限,可以在不同工艺中使用,更加方便。
与现有技术相比,本发明具有以下优点:
a、采取了一种全新的分层策略,将STL文件中三角面片的位置和拓扑关系结合使用,大幅度提高了分层效率,减少了内存开支和等待时间。
b、在常见分层软件的基础上增加对SLS 和SLM技术的生产过程的仿真模拟模块,通过对采用本发明的技术来对3D打印过程进行深入分析,从而找到针对不同结构、不同材料的最佳打印参数;同时还可以根据SLS和SLM工艺的特点,对现有模型进行修改,以适应3D打印的设计需要。
c、突破以往手动添加支撑结构的局限,开发了自动添加支撑的算法,以节省加工准备时间,保证成型质量。
d、建立了包括高分子材料、陶瓷材料和金属材料在内的标准材料库供用户选择,同时,建立数据处理和交换的工艺标准,打破现有软件只针对某一种工艺的局限,可以在不同工艺中使用。
以上是对本发明的较佳实施进行了具体说明,但本发明创造并不限于所述实施例,熟悉本领域的技术人员在不违背本发明精神的前提下还可做作出种种的等同变形或替换,这些等同的变形或替换均包含在本申请权利要求所限定的范围内。