随着三维CAD技术在企业数字化设计与制造中的广泛推广和应用,CAPP系统也逐渐从二维环境转向三维,并获得了不断的完善[1]。基于全三维模型的CAPP系统是一种基于模型定义(model based definition,MBD),用集成的三维实体模型来完整表达产品定义信息的方法,清楚规定三维模型中几何信息、非几何信息、管理属性及 MBD数字化等信息,将工艺模型作为工艺信息载体的方法,将工艺模型的特征信息、机加工艺要求直接三维标注[2]。因此,准确、合理地构建三维工序模型是发展三维CAPP的关键。
CAD零件由毛坯状态向最终零件状态的演变过程中,需经过一个个不同的加工状态,逐步去掉自身多余的材料而最终完成整个的零件加工。这些不同的加工状态用三维立体图形来反映就是各加工工序的工序模型。目前解决方案一是人工交互构建所需的三维工序模型。王恒等[3]提出了面向制造的特征设计,利用特征回退技术生成工序模型,该方法的缺点是在设计时不仅要考虑到零件模型本身,而且要考虑到制造过程中工艺设计的问题,不然就难以得到合适的工序模型。田富君等[4]通过UG 软件的WAVE 参数化建模工具,以时间戳为标记,参数化建立零件的各工序模型,在零件发生变化时,它的后续工艺的零件几何信息也随之发生改变,因此可以很方便地进行全局修改,但是当工序的顺序需要改变时,后续工序需要重新构建,不利于工序顺序的调整。解决方案二是以制造特征体为基本单元,构建三维工序模型。赵敏等[5]采用基于体分解的识别方法获取最大加工特征,逆向生产MBD模型;万能等[6]采用基于图的方法识别出加工特征通过补特征法与半空间法抑制特征,再由工艺员输入表面加工余量创建抑制表面特征的实体,逆向生产MBD模型。刘金峰等[7]提出了运用半空间思想及基本建模方法,构建制造特征本体,并通过布尔加操作生产零件毛坯模型,与获取的制造特征体做布尔减运算创建中间工序模型。但是,以制造特征体为基本单元所构建的三维工序模型不能准确地反映零件加工过程;鉴于三维工序模型是按照粗精加工逐渐生成的,因此构建三维工序模型必须是以加工元体作为基本单元。
本文提出了基于加工元体的三维工序模型构建方法,期待更加精确、合理地展现产品零件由毛坯状态向最终成品动态演变的过程。首先,构建参数化的制造特征/加工元库,建立属性邻接图与制造特征体、制造特征体与加工元体之间的关联关系;接着,采用凸边分解和基面匹配算法提取零件的制造特征;基于识别的结果,自动计算制造特征体的定位坐标系和定形参数值,并依据前驱工序模型进行修正;最后,给定刀具半径和余量值,实现加工元体的定位与实例化,与前驱工序模型做布尔运算,构建三维中间工序模型。
1 总体思路本文所设计的三维工序模型构建总体思路如图 1所示,包括以下4个环节:①构建参数化的制造特征库,该库是制造特征提取和工序模型构建的基础;②采用凸边分解和基面匹配算法,提取给定CAD模型的制造特征;③基于识别结果,自动计算制造特征体的定位坐标系和定形参数,并依据前驱工序模型进行修正;④给定刀具半径和余量值,实例化加工元体,并与毛坯/前驱工序模型做布尔运算,生成三维工序模型。
2 制造特征库的构建本文的制造特征是指工件上一个具有语义的几何实体,它描述了一个工件的材料切除区域,表达一个加工过程的结果。加工元体是依据制造特征的粗加工、半精加工和精加工依次生成的,以余量值变量实现与制造特征体的关联,即制造特征体分解为多个加工元体。在实际的加工过程中,加工元体的转角半径值受刀具半径影响,故增加加工元体转角值参数变量实现与刀具信息的关联。如何依据CAD模型上制造特征几何信息驱动制造特征体的定位和定形,并给定余量值、刀具半径实例化一个加工元体,是制造特征库构建的难点。
本文以M(FV,G,P,M,MV)5组元素来表示制造特征库中的1组制造特征。其中元素FV表示一个集成的参数化制造特征体,标注的定位面来确定制造特征体的物体坐标系,标注的参数变量来确定制造特征体的大小,如图 2a)所示。元素G表示制造特征的属性邻接图,如图 2c)所示,节点表示面,弧表示边,并且对节点和弧赋予不同的属性值。元素P表示制造特征体的参数变量,如图 2d),包括定形参数和定位参数,对于不同含义的变量定义不同的变量名,其中PL表示两平面距离,CR表示圆柱面半径,HD表示拉伸高度,LA表示侧面余量,BA表示底面余量,TR表示刀具半径,A用来确定x轴方向,B用来确定y轴方向,z轴方向由制造特征的放置面确定。元素M表示参数变量P与属性邻接图G的关联关系图,如图 2e)所示。元素MV表示参数化加工元体,其二维截面参数化表达式如图 2f)所示,拉伸高度为HD1-BA,转角半径值取max{CR-VA,TR)。依据制造特征定义方式,从零件模型中获取制造特征的属性邻接图G和放置面,依据关联关系图M,即可计算获得制造特征的参数变量P,然后给定余量值LA、BA和刀具半径TR,实现加工元体MV的定位和定形。当参数变量LA、BA的值为0时,就表示制造特征体,也可表示精加工对于的加工元体;当参数变量LA、BA的值不为0时,则表示非精加工的加工元体。
3 制造特征提取技术依据构建的制造特征库,获取完整的属性邻接图是实例化一个加工元体的必要条件。对加工元体而言,其不仅依赖零件模型的几何信息,同时也依赖前驱工序模型的几何信息。虽然零件模型是保持不变的,可以作为几何面信息获取的固定数据源,但是随着工序演变,前驱工序模型一直随之动态变化。因此需要从零件模型中提取制造特征的几何面信息,并且赋予映射属性;如果是映射面,则需要在实例化一个加工元体时,将该几何面转换为前驱工序模型上的几何面。
基于图的方法[8]从零件属性邻接图中分解出子图,然后与库中预定义的特征模板子图进行图匹配,该方法能有效地识别孤立特征和处理新的特征而无需增加额外的代码,但是很难处理面边丢失的特征。基于图和痕迹的混合方法[9]去识别相交特征,基于凸边的图分解可以有效地分解以几何相交的特征,但处理以体积相交的特征,需要生成虚拟的边界,计算成本太高。基于图和规则的混合方法[10]识别相交特征,该方法可以有效地识别型腔/槽类特征,但定义的槽/型腔类特征不合适三维工序模型的构建。本文为了能处理基面未被破坏、侧面丢失的制造特征,采用凸边分解和基面匹配算法精确提取制造特征。
凸边分解和基面匹配算法是对零件子图进行凸边分解,然后以基面匹配与预定义制造模板匹配,获取制造特征,同时赋予几何面的映射属性。具体步骤如下:
步骤1 从零件模型中获取属性邻接图G(N,R,E,M),其中N表示面属性,R表示环属性,E表示边属性,M表示面的邻接矩阵。
步骤2 依据凸边进行分解,获得系列连通子图集S{g0,g1,…,gi,…,gn},其中n为子图总数。
步骤3 推断子图gi的基面bf。判断子图中粒度最大的节点为基面;如粒度相同,则平面的优先级大于圆柱面。
步骤4 提取连通子图gi的基面bf与制造特征Fj模板基面bf′进行匹配,其中0≤j≤m,m为制造特征库的制造特征总数。
步骤5 设基面bf外环OR,内环集S{IR0,IR1,…,IRk,…IRni},其中ni为基面bf凹内环的总数,不存在凹内环时,ni=0;设模板基面bf′外环OR′,内环集S{IR′0,IR′1,…,IR′l,…,IR′mj},其中mj为基面bf′内环的总数,不存在内环时,mj=0。如果外环OR、OR′相互匹配,内环集S{IR0,IR1,…,IRk,…,IRni与S{IR′0,IR′1,…,IR′k,…,IR′mi能一一匹配,则表示基面bf与基面bf′匹配成功。
步骤6 依据基面bf的外环OR,补偿子图gi的外环侧面并且作为特征的映射面;依据基面bf的内环S{IR0,IR1,…,IRk,…,IRni},补偿子图gi的特征面但不当作映射面。
其中单个环的匹配算法具体步骤如下:
步骤1 设R为子图基面的环,S{e0,e1,…,ei,…,en}为环R顺序相邻的边集合,F{f0,f1,…,fi,…,fn}与S次对应的侧面集,如果对应的侧面fi不存在,则赋值为null,n为R的边总数;R′为库中基面的环,S′{e′0,e′1,…,e′k,…,e′m}为环顺序相邻的边集合,F′{f′0,f′1,…,f′i,…,f′m}与S′依次对应的侧面集m为R′的边总数。
步骤2 判断环R、R′中边总数、直线边总数、圆弧边总数是否一致,一致跳至步骤3,否则结束。
步骤3 设Si是以边ei为起始边并且顺序相邻的边集合,0≤i≤n;判断Si与S′边类型是否依次一致,是跳转至步骤4,否则i=i+1;如果i≥n,结束。
步骤4 依据Si,获得侧面集Fi,与F′的模板面进行匹配,依次判断面类型是否一致。同时如果Fi中相邻的面均存在,还需要判断相邻面的凹凸性与F′是否匹配。否则,i=i+1;如果i < n,跳至步骤3,否则结束。
4 中间工序模型构建中间工序模型其实就是实例化的加工元体与前驱工序模型做布尔运算后的模型,因而构建中间工序模型的关键技术是依据零件模型和前驱工序模型的几何信息实例化加工元。
中间工序模型构建的具体步骤:首先,依据制造特征提取技术,获得制造特征在零件模型上的几何面,并且转换成属性邻接图G;接着依据零件模型上的放置面、定位面A和定位面B计算加工元的定位原点及坐标系XYZ轴,并依据前驱工序模型进行修正;然后根据制造特征库中定形参数集与属性邻接图的关联关系,计算制造特征的定形参数值,并依据前驱工序模型进行修正;最后,实例化的加工元体与前驱工序模型做布尔运算,生成中间工序模型。
4.1 放置面自动获取放置面的获取分为2个步骤,先获取制造特征F在零件模型上的放置面f,然后获取放置面f在前驱工序模型上的映射面f′。
由制造特征提取技术得到制造特征F的面集合S,从零件模型上获取与面集合S相邻的面S′。面集合S′会存在以下情况:如果集合S′只存在一个面,则唯一的面作为特征F的放置面f;如果面集合S′存在多个面,则判断是否与基面平行,并且取与基面距离最大值作为特征F的放置面f。
从放置面f边上的一点生成一条垂直于面的射线,求与前驱工序模型面的交点,与交点距离最短的面f′即为放置面f在前驱工序模型上的映射面。
4.2 加工元定位制造特征F的定位A和定位B存在3种情况,如图 3所示。①孔类特征:定位面fA、fB都属于同一圆柱面,如图 3a)所示。计算圆柱面轴线与放置面f′的交点O,作为加工元坐标系的原点。获取放置面f′的法向量vz,计算vx保证与vz垂直,最后依据vx、vz计算vy,以vx、vy、vz作为加工元坐标系的xyz轴。②定位面fA为平面,定位面fB为圆柱面,如图 3b)所示。计算定位面B的轴线与放置面f′的交点O,作为加工元坐标系的原点。获取放置面f′的法向量vz和定位面fA的法向量vx,依据vx、vz计算vy,并且要求保证vy指向特征实体,否则将vy进行反向处理,以vx、vy、vz作为加工元坐标系的xyz轴。③定位面fA、fB均是平面,如图 3c)所示。计算定位面fA、定位面fB与放置面f′的交点O,作为加工元坐标系的原点。获取放置面f′的法向量vz、定位面fA的法向量vx和定位面fB的法向量vy,以vx、vy、vz作为加工元坐标系的xyz轴。
在实际情况中,当制造特征F的定位面是映射面时,就必须对定位坐标系进行修正处理,解决定位面fA、fB均是平面的情况。判断定位面fA是否属于映射面,如果是则获取定位面fA在前驱工序模型上的映射面f′A,计算定位面fA、映射面f′A的距离d=|fAf′A|,坐标系x轴方向vx需要反方向处理为v′x,坐标系原点o沿着vx方向偏移距离|d+SA|得到新原点o′,作为坐标系的新原点,其中SA为侧面余量值。同理,如果定位面fB是映射面,则获取定位面fB在前驱工序模型上的映射面f′B,计算获取定位面fB、映射面f′B的距离d=|fBf′B|,坐标系y轴方向vy需要反方向处理为v′y,坐标系原点o需要沿着vy方向偏移距离|d+SA|得到新原点o′,作为坐标系的新原点。
制造特征库中预定义的加工元坐标系符合右手螺旋法则,而计算获取的坐标系不一定符合右手螺旋法则。当计算获取的坐标系不符合右手螺旋法则时,对坐标系的z轴方向vz做反向处理为v′z,作为加工元坐标系的z轴方向。
4.3 加工元定形依据制造特征库的构建技术,只要从零件模型中提取出制造特征的对应几何面信息,即可依据参数变量P,参数变量与属性邻接图的关联关系M,计算出制造特征参数变量P的值。具体步骤:①遍历制造特征F的参数变量集P;②通过参数变量Pi的名称确定该参数变量的含义;③依据参数Pi与属性邻接图的关联关系,获取与参数变量关联的几何面;④计算出参数变量Pi的值vi,对于参数变量HD是基面与放置面的距离值。
当制造特征F的几何面存在映射面时,需要对定形参数值进行修正。令fi1,fi2是参数变量Pi关联的几何面,vi是参数变量Pi的值,SA为侧面余量值。如果fi1是映射面并且是平面而fi2是非映射面,则求得fi1在前驱工序模型上的映射面f'i1,计算两面距离di1=|fi1f′i1|,令vi=vi+di1+SA。如果fi1,fi2均是映射面且是平面,则求得fi1,fi2在前驱工序模型上的映射面f′i1,f′i2,计算两面距离di1=|fi1f′i1|和di2=|fi2f′i2|,令vi=vi+di1+di2+2*SA。同时对加工元的拉伸方向进行判定,当加工元坐标系的z轴方向与放置面f′的法向量相反时,则对加工元的拉伸方向进行反向处理。
5 系统实例验证本文以Microsoft visual studio 10和NX 8.0作为开发平台,以C#和NXopen为开发语言。首先,定义该制造特征的参数变量;接着,构建一个集成的参数化制造特征体,在实体模型上标注三维自定义变量,从而实现自定义变量与几何面的关联;最后,构建制造特征的内部参数表达式。加工元体特征通过NXopen提供的API函数,导出由自定义变量驱动的自定义文件(UDF);属性邻接图从实体模型中获取,面边的凹凸性属性进行反向处理;参数变量与几何面的关联关系通过标注的三维尺寸建立。采用本文所提出的制造特征和加工元构建方法,构建了一个制造特征库。
为了更好地表述本文所提的方法,以某机加工零件为例,验证基于加工元体积的三维中间工序模型的构建。如图 4所示,给定配准的CAD模型和毛坯模型,其中内部为CAD模型,外部半透明为毛坯/前驱中间工序模型。按照给定的工艺路线和工艺参数(刀具半径、加工余量值),演示了该零件由制造毛坯向最终成品的动态演变。其中,平面是通过求得映射的前驱工序模型面反向拉伸创建;刀具信息与工步关联,即工步节点下的加工元使用同样刀具信息,每一个加工元分别给定余量值。为了更加直观地显示加工元所对应位置,对布尔运算后的中间工序模型进行深颜色显示。工步节点下最后一个加工元所对应的中间工序模型即为三维工步模型,工序节点下最后一个加工元所对应的中间工序模型即为三维工序模型。
6 结论本文提出了一种基于加工元体积的三维工序模型构建方法,实现了零件的制造毛坯动态演变。该方法可以依据实际零件特征,可方便扩充制造特征库,并且在定义加工元体积中融合了刀具信息,更加贴合实际加工过程;采用凸边分解和基面匹配的制造特征识别算法,分解了几何相交的特征并识别了侧面缺失的制造特征;对于已完成的工艺,只要加工元之间符合约束关系,可修改加工元的余量值和移动加工元在工步节点的位置,快速实现工艺的重新编辑。该方法的局限性在于制造特征与加工元的拓扑结构必须一致,否则无法实现加工元的实例化,而且在制造特征提取过程中无法提取基面被破坏的制造特征。在今后的研究中,会继续研究面向相交特征的制造特征提取与三维工序模型构建。
[1] | Virgilio Q, Louis R, Robert P, et al. Will Model-Based Definition Replace Engineering Drawings throughout the Product Lifecycle?A Global Perspective from Aerospace Industry[J]. Computers in Industry, 2010, 61(5): 497-508 |
Cited By in Cnki (0) | Click to display the text | |
[2] | 姜北北. 基于全三维模型工艺设计技术[D]. 沈阳:沈阳理工大学, 2013 Jiang Beibei. Based on Full Three Dimensional Model of CAPP System[D]. Shenyang: Shenyang Ligong University, 2013 (in Chinese) |
Cited By in Cnki (1) | |
[3] | 王恒, 宁汝新. 面向制造的特征设计和工序图自动生成[J]. 北京理工大学学报, 2004, 24(5):395-398 Wang Heng, Ning Ruxin. Feature Design Based on Design for Manufacturing and Automatic Generation of Process Drawings[J]. Transactions of Beijing Institute of Technology, 2004, 24(5): 395-398 (in Chinese) |
Cited By in Cnki (19) | Click to display the text | |
[4] | 田富君, 田锡天, 耿俊浩, 等. 工序模型驱动的工艺设计方法[J]. 计算机集成制造系统, 2011, 17(6): 1128-1134 Tian Fujun, Tian Xitian, Geng Junhao, et al. Process Planning Method Driven by Process Model[J]. Computer Integrated Manufacturing Systems, 2011, 17(6): 1128-1134 (in Chinese) |
Cited By in Cnki (25) | Click to display the text | |
[5] | 赵敏, 王细洋. 基于体分解的MBD工序模型快速生成方法[J]. 计算机集成制造系统, 2014, 20(08):1843-1850 Zhao Min, Wang Xiyang. Rapid Generation Method of MBD Process Model Based on Volume Decomposition[J]. Computer Integrated Manufacturing Systems, 2014, 20(08): 1843-1850 (in Chinese) |
Cited By in Cnki (1) | Click to display the text | |
[6] | 万能, 苟园捷, 莫蓉. 机械加工MBD毛坯模型的特征识别设计方法[J]. 计算机辅助设计与图形学学报, 2012, 24(08): 1099-1107 Wan Neng, Gou Yuanjie, Mo Rong. A New Feature Recongnition Design Method for MBD Rough Model[J]. Journal of Computer Aided Design & Computer Graphics, 2012, 24(08): 1099-1107 (in Chinese) |
Cited By in Cnki (12) | Click to display the text | |
[7] | 刘金峰, 倪中华, 刘晓军, 等. 三维机加工工艺工序间模型快速创建方法[J]. 计算机集成制造系统, 2014, 20(07):1546-1552 Liu Jinfeng, Ni Zhonghua, Liu Xiaojun, et al. Rapidly Create Method for Inter-Process Model of 3D Machining Process[J]. Computer Integrated Manufacturing Systems, 2014, 20(07): 1546-1552 (in Chinese) |
Cited By in Cnki | Click to display the text | |
[8] | Lockett H L, Guenov M D. Graph-Based Feature Recognition for Injection Moulding Based on a Mid-Surface Approach[J]. Computer-Aiderutud Design, 2005, 37(2): 251-262 |
Click to display the text | |
[9] | Rahmani R, Arezoo B A. Hybrid Hint-Based and Graph-Based Framework for Recognition of Interacting Milling Features[J]. Computers in Industry, 2007, 58(4): 304-312 |
Click to display the text | |
[10] | Sunil V B, Agarwal R, Pande S S. An Approach to Recognize Interacting Features from B-Rep CAD Models of Prismatic Machined parts Using a Hybrid (Graph and Rule Based) Technique[J]. Computers in Industry, 2010, 61(7): 686-701 |
Click to display the text |