(1.华中科技大学材料成形与模具技术国家重点实验室,武汉 430074; 2.中国航空制造技术研究院,北京 100024)
增材制造经过快速发展,在航空航天、微纳制造、生物医学工程等领域应用前景广阔[1],电子束熔丝增材制造(Electron Beam Fuse Additive Manufacturing,EBF)以其高质量、低成本、快速制造的优点广泛应用于钛合金、铝合金、镍合金等飞行器零件的制造中[2],在制造领域具有独特优势。电子束熔丝增材制造整个生产周期分为前处理、打印成形、后处理3 部分[3],电子束熔丝增材制造中,由于工件堆积成形过程中数模结构特征、凝固收缩、成形精度等多方面因素影响,成形后零件表面精度不够,需要对其机械加工,因此需要对原模型做一定修改,增加一定余量。另一方面由于其逐层堆积凝固特性,需要对一些悬空面进行处理,减少悬空面等结构。
传统模型重建方法只能通过手工进行修改,需要对特征进行大量的分析及重复工作,费时费力,且规范性差,再建过程的低效率导致了整个制造周期的增长。基于三维CAD 软件缺少专用数模再建功能的现状,有必要开发专用的数模特征识别与快捷再建系统,实现对关键特征的识别以及包括识别特征在内的快捷再建功能。
本文以NX 10.0为开发平台,C/C++为开发语言,在Visual Studio 2012 编译环境下,基于NX 二次开发框架下的NX Open API、Block UI Styler和Menuscript 技术[4–5]开发出数模特征识别与快捷再建系统,以应用到数模再建过程中,达到提高再建效率与规范性,缩短生产周期的目的。
从目前电子束熔丝增材制造的经验上看,成形的大型零件中主要存在图1所示的几种典型结构。
针对不同结构,对模型的处理策略也略有不同,本文开发了适用于不同结构再建处理的软件系统。根据结构特征分析及需求分析所要开发的数模再建系统主要分为两大部分:特征识别库和特征再建。其中根据特征的种类,可将特征识别库分为4个模块:孔、凸台、圆角及拐角、支撑面,模块之间相互独立;特征再建分为识别特征的再建和其他特征再建,对于识别特征的再建也是依据特征分类,依附于每个特征的识别模块,即特征的识别与再建连续进行。其他特征,包括腹板上高筋条结构和台阶以及外表面余量补偿都有各自的功能模块。数模再建系统的框架如图2所示。
(1)典型结构特征库。
对于基于设计模型的数模再建,首先要对典型的结构特征进行识别处理。特征库中建立了包括孔、凸台、圆角、拐角、支撑面的识别模块,其中圆角与拐角组合在一起。选定特征所属零件,通过特征特定识别算法的实现,识别零件中符合定义的特征,并储存在特定的数据结构中,通过列表框进行可视化显示,同时提供添加、删除功能。
(2)识别特征的再建。
对于特征库中识别的特征,首先要提取特征的特定结构参数作为其再建的依据,然后输入再建的临界值参数,据此以应用不同的再建规则对特征进行自动再建。特征可能会存在相依关系,故对于特征的处理也应遵循一定的顺序。
(3)其他特征的再建。
对于其他识别困难或因数量较少没有识别必要的结构,如高筋条结构和台阶,应根据结构的特征,通过交互选取方式获取再建所需信息,这些信息包括特征面和特征的参数,再对参数的再建临界值进行规定,然后根据再建要求实现再建,以达到快速再建的目的,节省再建的时间,提高效率。
图1 典型结构特征Fig.1 Typical structural features
图2 数模再建系统框架图Fig.2 Digital model reconstruction system framework
工程中经常有非参数化的三维模型,且模型设计特征可能存在一对多,多对多的映射关系,如何从这类实体模型中提取具有特定工程意义的特征信息是主要难点之一。对于用于电子束加工的模型并不是简单的添加厚度来增加加工余量,不同的结构应该采用符合其加工特性的结构特征重建方法,应以减少加工难度,添加合适余量为准则。
实体模型中最常用的几何表示法是边界表示法(Boundary Representations,B-Rep)和结构实体几何法(Constructive Solid Geometry,CSG)[6–7]。基于不同的实体模型几何表示法,特征识别方法可分为两类:基于边界匹配的特征识别方法和基于体分解的特征识别方法[8–9]。
NX 平台采用Parasolid 内核通过几何边界表示法表示模型,故只能基于边界匹配进行特征识别。由于保密性的要求,设计数模的特征树历史信息通过移除参数功能移除,无法在特征层对象中直接搜索特征。通过对基于边界匹配的特征识别方法的具体研究,采用基于规则的特征识别方法[10],首先定义特征的边界模式,然后从模型的元素层对象开始,在零件模型中搜索面、线、点等特征组成对象,从而实现从零件中的特征识别。基于API 代码的特征识别步骤如下:
(1)获取模型中的面对象,通过函数UF_OBJ_cycle_objs_in_part,找出类型为面的对象,开始遍历。
(2)获取面的相关信息,通过函数UF_MODL_ask_face_data 获取面的类型和信息,与预定义特征边界面对比,符合则可能是待识别特征,否则获取下一个面重复该步骤。
(3)获取边的信息,通过函数UF_MODL_ask_face_data 等获取边的信息,比对是否符合特征边界边模式,若符合则提取特征存入数据库,否则获取下一个面进行步骤(2)。
(4)当对模型完成遍历后,特征识别即完成。该算法的实现流程如图3所示。
识别特征中圆孔、圆台、圆角的特征面都是圆柱面,拐角的特征面为球面或环面,对应于NX Open API 中为“cylinder”、“sphere”、“revolved(toroidal)”类型。边的类型有圆弧和直线。通过对面和边的类型组合判断即可完成识别。
对于异形孔和异形凸台,由多个面组成,需要先搜索入口平面,判断平面是否有孔或凸台的边的入口,即判断平面是否有内环边且内环边为多边形,再通过该边找到邻面,判断邻面类型并构建特征来进行匹配。
在基于边界匹配的特征识别方法中,特征的边界模式中只有面的信息还无法准确地识别特征,还需要特征中边的凸凹性使特征模式更加完整。对于NX 中的三维CAD 零件模型,边的类型分为直线和曲线,其中曲线又包括圆弧、二次曲线、艺术曲线等。针对电子束熔丝增材制造技术数模中的具体边的类型,本文只对直线和二维曲线的凸凹性进行判定[11]。
如图4(a)所示,邻接面f1、f2有公共直线边e,需判断e的凸凹性。
凸凹性判定的基本原理是利用边所依附的两个面的法线向量,具体判定算法实现步骤如下:
(1)平面f3与e 相互垂直且通过e 上的一点,在f1、f2与f3相交边上分别随机选取两点p1、p2,通过函数UF_VEC3_distance 获取两点的距离为d1。
(2)通过函数UF_VEC3_distance 获取面的外法向,将p1沿f1外法线向量平移一个单位得到点p3,同样p2沿f2外法线向量平移一个单位得到点p4,p3和p4两点的距离为d2。
(3)比较d1、d2的大小。若d1>d2,如图4所示[11],则边e为凹边;若d1 图3 特征识别流程图Fig.3 Feature recognition flow chart 对于边e 进行倒圆角操作后,该圆角的凸凹性和边e的凸凹性相同,故可以通过该方法判断圆角的凸凹性。 对于曲线e的凸凹性判定,如图4(b)所示,由于f2为圆柱面类型的曲面,故在圆柱面上取阴影部分的一小段曲面,根据微积分的思想,当所取曲面足够小的时候,可以认为是趋近于面积很小的平面,边e的这部分就可以认为是趋近于直线的圆弧,从而与直线边的凸凹性的判定方法相同。 通过对边的凸凹性判断,可以对孔和凸台、内圆角和外圆角、内拐角和外拐角加以区分,从而实现准确的特征识别。 特征再建是在设计模型的基础上对特征进行操作,使其符合生产要求。对于不同类型与尺寸的特征再建要求不同。再建过程要遵循零件的轮廓表面沿其法线方向均留有充足的工艺余量,同时满足毛坯结构简单及毛坯质量最小的原则。 图4 边的凸凹性判定Fig.4 Judgement of convexity and concavity of edges 根据电子束熔丝成形逐层堆积成形特点,对于平面上的圆孔或异型孔结构,若其开孔方向与加工方向不平行,为避免形成悬空结构可将其填实。若孔隙减小可考虑成形后再打孔以增加孔壁精确度。通过UF_MODL_create_extruded 函数和布尔操作实现;若孔隙较大,则根据孔结构内壁位置向内偏移相应的单边余量,通过UF_MODL_create_face_offset 实现;在圆孔中,孔隙可以认为是圆孔的直径,对于异形孔,孔隙则可以近似认为是孔的边界环的外接圆的半径。同时由于有时候孔的轴向和孔区域堆积方向不同向,此时也需要将孔填实以方便堆积成形。 对平面上凸台结构,一般在选择加工方向的时候使凸台与其平行,避免其悬空,因此这里只考虑增加其切削余量。只需根据凸台外侧位置向外偏移相应的单边余量即可。一般在处理外轮廓表面后再对凸台进行再建。 对于单独的圆角,根据圆角半径与相邻面的补偿余量有不同的再建规则。 当圆角R 小于或等于单边余量时,如图5(a)所示,只需抑制圆角特征,后续对圆角相邻面添加余量时结果相同,也不会影响后续生产加工;当圆角R 大于单边余量时,如图5(b)所示,圆角处的表面沿其法线方向的工艺余量无法保证,为保证加工质量,需要在圆角处额外增加工艺余量,如图5(c)所示,假定圆角两边夹角为α,边长垂线与圆角角平分线的夹角为θ,半径为r的圆弧为圆角按余量补偿值偏移后得到的,是圆角半径与余量补偿值的差值,s 及t的计算过程如下: 图5 不同半径圆角的再建Fig.5 Reconstruction of fillets with different radii 由于实际生产时精度的要求,无法做到图5(c)所示的理想情况,一般通过方块进行额外补偿,具体实现通过NX Open API 中包容盒功能,通过提取圆角的参数,建立相对坐标系,实现包容盒的创建。 在数模中,一般槽结构中会出现较多的圆角和拐角相邻的情况,圆角一般按一定规则聚集在一起。圆角通过拐角相连可以形成环。一个拐角最多与3个圆角相邻,1个圆角最多与2个拐角相邻。 对圆角和拐角类特征再建的第1 步是按照一定规则将其进行组合。对图6所示的圆角,内圆角可以与圆环及底面组合成图7所示结构。 图6 圆角实例模型Fig.6 Fillet instance model 图7 圆角与拐角组合方式Fig.7 Combination of fillets and corners 图8 内圆角及拐角两种再建情况Fig.8 Two reconstructions of fillets and corners 图9 台阶的再建Fig.9 Reconstruction of steps 对于图6所示内圆角的再建有图8所示两种情况,一种是当倒角半径很大且平面面积很大时,只对倒角和拐角进行再建,由于图8(a)所示方法无法满足精度要求,通过长方体包容盒的方式对倒角和拐角进行抑制,这种方式易于EBF 堆积成形,且节省材料。对于包容和高度不一致的情况,可以手动调整到同一高度;另一种情况下,当倒角半径很小或者平面面积很小时,可以通过对平面拉伸从而隐藏倒角和拐角特征,此时不会浪费材料也使成形更加简单,如图8(b)所示。 对于外圆角及拐角,组合方式相同,但再建操作只需对相连的圆角和拐角进行整体抑制。 台阶在EBF 数模中一般存在于外表面,可以看作由上台阶面、过渡面和下台阶面3个面组成,一般台阶面相互平行且都为平面,定义台阶面的高差为台阶差。对存在台阶差的平面结构,由于EBF工艺制造精度限制,若台阶差小于某个双方商定的值,可忽略台阶结构,当成一个平面处理,但需满足各个位置均达到最小工艺余量;若台阶差偏大,则保留台阶结构,各自向外进行余量补偿。 台阶的过渡面可能是与阶梯平面都垂直的平面,也有可能是斜面或圆角面,这种情况多出现在壁板或肋板上。以斜面过渡面为例,如图9(a)所示,当台阶差小于临界值时,处理方法都是以上台阶面为标准,对下台阶面和过渡面进行再建,如图9(b)所示;当台阶差大于临界值时,为了便于路径规划,需要对过渡面进行再建,使其与台阶面垂直,如图9(c)所示。 基于上述方法,本文开发了相应的数模特征识别与快捷再建系统。在NX 10.0 菜单栏中添加系统菜单栏及工具栏界面,如图10所示,通过触发菜单或工具栏按钮调用界面,并通过界面与程序的交互实现系统功能。 通过数模特征识别与快捷再建系统,对图11(a)所示框梁整体结构的部分设计数模进行再建,得到加工数模如图11(b)所示,该模型打印过程为先通过加工底面对下半部分进行堆积,然后将工件进行翻转,对上半部分进行堆积。最终得到的工件进行机械加工后即可得到与设计数模形状一样的工件。 具体再建过程可按以下步骤进行: (1)首先检查模型整体完整性,对模型进行优化。 (2)对环形倒角及圆孔进行特征识别再建,如图12所示。 (3)对圆角及拐角进行的识别与再建,如图13所示。 (4)对阶梯面进行再建,如图14所示,此步骤需要技术人员对模型进行分析,找出符合条件的台阶。 (5)对模型进行检查,对复杂特征和相交特征等系统无法处理的特征依托NX 建模功能进行手动再建;对轮廓面进行余量补偿。 (6)对支撑面进行识别和再建,如图15所示,得到最终再建数模。 (7)导出为STL 格式文件。 图10 系统界面Fig.10 Interface of system 图11 框梁整体结构实例Fig.11 Example of frame beam overall structure 图12 圆孔识别及再建Fig.12 Identification and reconstruction of round holes 图13 圆角和拐角识别及再建Fig.13 Identification and reconstruction of fillets and rounds 图14 阶梯再建Fig.14 Reconstruction of steps 图15 支撑面识别及再建Fig.15 Identification and reconstruction of support faces 通过数模特征识别与快捷再建系统,对模型中的圆孔、圆角、拐角和支撑面等特征实现自动识别,并依据用户输入的控制变量进行自动再建,快捷完成了对设计数模的再建,提高了自动化程度,提高了效率,为整个EBF生产周期的缩短提供了技术保证。 本文介绍了一种基于NX 10.0 平台的实体模型特征识别方法,并应用于电子束熔丝增材制造模型的再建。针对电子束熔丝增材制造的工艺特性,开发了数模特征识别与快捷再建系统。通过特征识别技术,能够快速识别出需要再建的特征,减少了再建过程中的大量重复操作;并且开发出对特征的快捷再建功能,对特征的再建一步到位,减少了操作步骤,缩短了数模再建过程的周期,提高了数模再建设计的规范性。2.3 关键特征再建
3 系统应用
4 结论