一种基于step-nc相交特征自动识别方法

文档序号:6365473阅读:185来源:国知局
专利名称:一种基于step-nc相交特征自动识别方法
技术领域
本发明涉及一种基于STEP-NC相交特征自动识别方法。
背景技术
传统CAD所建立的零件建模一般只包含纯几何拓扑信息,如顶点、边、面以及它们之间的几何关系等。加工特征识别是将这些纯几何信息表示的几何形体转换为具有特定意义的加工特征。近些年来,尽管三维CAD已经逐步采用基于设计特征的建模技术,然而由于设计特征并不总是携带CAPP系统所必须的制造信息。因此在CAPP系统中,加工特征识别是首先应当完成的必要步骤,同时在CAD/CAPP/CAM —体化过程中,不论CAD输出是纯几何信息或者是基于设计特征建模技术生成的设计特征模型,特征识别都可以自动地识别出零件的加工特征,提供了智能转换接口。在特征识别中,一些特征由于之间的几何交叉,造成原特征的边和面丢失或者不完善,形成了一个复杂的几何形体,此类几何形体称为相交特征。到目前为止,比较成熟的相交特征识别方法可以被认为是以下三类方法之一或者其中两个组合而成基于图,基于痕迹或者体积分解方式。这些相交特征识别方法存在一下缺陷
方法在识I) 一些研究者采用添加虚链的方法来提高基于图的特征识别别相交特征方面的能力。这里虚链是指因特征发生相交而丢失的面邻接关系。此类方法存在的问题是不能确保添加虚连接都是正确的,最终需要采用子图匹配来识别出特征,而子图匹配是NP问题,非常耗时。2)基于痕迹的特征识别方法是上世纪90年代提出的。特征痕迹是指一个特征在零件模型中存留的信息。在特征发生相交后,特征的完整边界模式就已经不存在了,但是只要它是零件的一个特征,就一定在零件模型中留有痕迹。相对于其它方法,此类方法能更好的识别相交特征。但是它同样有自己的缺点,比如找出的一个特征痕迹未必能识别出一个特征,对于复杂特征很难找到一个合适的痕迹,同时特征痕迹依赖与具体的特征类型,很难添加新的特征类型。3)体积分解方式主要分为两大类基于立体交替与分解方式和基于单元体方式。此类方法对零件模型分解成凸体集合,然后重新组合,理论上能够识别任意相交特征。但它不能保证得到正确的加工特征,更不可能直接得到想要的加工特征,并且计算量相当大。4)基于图和痕迹的方法中,比较典型的是以最小子图为痕迹找出相交特征。在该算法中存在的问题是首先在添加虚链的时候,将最小子图中的某些凸边当作无用边而排除在外并不是很合理,因为这些凸边本来就是由于特征相交而产生的;其次是一般识别出来的各个特征之间会存在公共体积,在处理公共体积时只能随机从一个已识别出来的特征出发,逐个解决公共体积问题,与此时还会出现新的特征。为了促进制造业的发展完美的实现CAD/CAPP/CAM —体化,1997年欧共体通过OPTIMAL计划,首次提出了 “STEP-NC”概念,STEP-NC是面向现代计算机数控系统的一种新的CAM/CNC数据接口规范,用以取代沿用已久的IS06983 (G代码)。相交特征自动识别在STEP-NC中也是非常重要的步骤,但是目前国内外在此上研究的比较少。STEP-NC中相交特征的识别和传统上相交特征的识别是有所区别的它不是采用显性方式而是隐性方式来描述加工特征,即我们只需要获取特征的相关参数就可以了,最终加工特征表示与原几何模型没有直接联系。

发明内容
本发明要解决的技术问题是,针对现有相交特征识别算法存在的问题以及其在STEP-NC中应用问题,本发明提供一种基于STEP-NC相交特征自动识别方法。采用的技术方案是
一种基于STEP-NC相交特征自动识别方法,包括需完成的加工特征邻接图的构造、相交特征的判定、相交特征的分割、加工特征的匹配及加工特征的STEP-NC表示的必要步骤。其步骤如下
一、加工特征邻接图的构造
(1)首先提取CAD系统生成的中性文件即STEPAP203文件获取类型为ADVANCED_FACE的所有实体,获取每一个ADVANCED_FACE实体的几何性、坐标和法向等信息,建立一个ALVertex对象并将它插入EAAG的顶点列表中。然后遍历ADVANCED_FACE的每一个子实体对象,得到类型为Oriented_edge的有向边列表,获取每一个0riented_ edge实体的端点、几何性、坐标和方向等属性,并计算Oriented_edge的凹凸性,建立一个ALEdge并将其插入到EAAG中对应ALVertex下的边节点列表中;
(2)加工特征邻接图(MFAG)是在扩展属性邻接图(EAAG)中删除零件外轮廓面所表示的结点后形成的连通子图,其外轮廓面判定
dD首先,获取EAAG中的面节点列表ALGVertex [I. . n],遍历每一个面节点,如果面节点
的邻接边都是凸边,则该面可能是外轮廓面,如果面节点的邻接边存在凹边,则该面为加工特征面;
0其次,获取所有可能是外轮廓面的法向量,记为NV[1. . N]。NV中的法向量不重复,即相同外轮廓面的法向量在NV中只记一次;
③最后,遍历所有可能是外轮廓面的面节点,对于一个NV[I],如果有多个可能外轮面
法向与其一致,只有在NV[I]方向上最外面的面节点是轮廓面,其它面节点是加工特征面;
(3)当识别出加工特征面和外轮廓面之后,将EAAG中所有外轮廓面删除。为了保持加工特征面的几何结构完整性,与外轮廓面相连的凸边并不删除,只标记它为虚边。在EAAG的外轮廓面被删除之后,一般会形成多个连通子图,这些连通子图就是加工特征邻接图。二、相交特征的判定,是通过判断加工特征面上是否包含凸边来识别的,分下列情况判定
(I)在多面体零件中,连接两个相邻面的边一般都是凹边和凸边,有时为了避免应力集 中或方便加工,使用光滑的曲面代替多面体中出现的尖角设成光滑的过渡边,对于光滑的过渡边凹凸性的判断如果边的两个相邻面都是凹面,或一个是凹面另一个是平面,则认为该边为凹边;如果边的两个相邻面都是凸面,或一个是凸面另一个是平面,则认为该边为凸边;如果边的两个相邻面,一个是凸面,一个是凹面,则认为该边为中性边。(2)在3D建模时,若在这个3D模型上移除规则的体积,如加工槽、孔或阶梯等所移除的材料体积,就形成了 STEP-NC所定义的基本特征,这些特征与3D模型的轮廓面相交,且相交的边也都是凸边,有时为了满足设计的需要,在这个特征的基础上又移除了部分规则体积得到另一个特征,这两个相交特征相交的边界同样都是凸边,其实在形成相交特征时,3D模型上既形成了新的凹边也形成了新的凸边,但只有在相交边界上的边是凸边,其它地方是凹边,据此可以通过搜索面的凸边来判断是否存在相交特征;
三、相交特征的分割
(I)是通过添加虚连接(VF)弥补因特征相交而丢失的面和边,消除加工特征上的凸边,因为加工特征面上的凸边是由特征相交产生的,所以当该邻接图中不在包含凸边时就说明相交特征分离完毕。虚连接是由两个位置和形状都相同但是法向相反的平面构成,记为(VF+, VF-)。这样添加的虚连接不会对几何形体的整体产生实际影响,因为VF+和VF-相互抵消。对于复杂的相交特征构造的虚连接时,可能使得虚连接之间形成新的凸边,然而新的凸边的数量是收敛的,重复添加虚连接之后就会最终消去所有凸边。(2)因为特征每一条凸边都是由两个加工特征面所共享,添加虚连接时首先要确定它的依赖特征面,如果选择的依赖特征面不合理,则会引起识别出来的特征不合理甚至完全不符合要求。所以通过对包含凸边的特征面建立一个有序队列,按队列的先后顺序添加虚连接,能有效实现相交特征的分离;
四、加工特征的匹配及加工特征的STEP-NC表示
是通过对特征基面进行编码,将这些特征编码存储于数据库中,借助当前比较成熟的数据库查询技术识别出加工特征,利用数据库管理软件SQL Server 2005,将上述特征编码存放在数据库的关系表中。在进行特征匹配时,只需要获取加工特征的特征基面边的相关参数,通过查询语句能够准确快速的识别出加工特征,实现加工特征的STEP-NC表示。上述的相交特征的判定是通过判断加工特征面上是否包含凸边来识别的,在进行判定之前,将与外轮廓面相连的凸边排除在外。本发明是基于图和痕迹相结合的方式来识别相交特征,尽可能的减少生产的独立特征以及优先处理特征基面的原则,构造了有序相交特征拆分因子队列;另外,在特征匹配的时候,对加工特征进行编码,借助当前比较成熟的数据库查询技术识别出加工特征,避免了可能出现非常耗时的子图匹配算法。最后,根据ISO 10303-238协议,将识别出的加工特征以隐性方式存储与STEP文件中,为后续CAPP和CAM提供一致性接口。


图1是本发明的基于STEP-NC相交特征自动识别的体系结构图。图2是本发明的加工特征邻接图。图3是本发明的生成相交特征拆分因子列表的流程图。图4是多面体零件图。图5、图6是带有开口槽的零件图。图7是两个特征之间带有公共体积的零件图。图8是STEP-NC机于特征的工艺规划图。图9、图10、图11、图12、图13、图14是相交特征的分割图。
具体实施例方式一种基于STEP-NC相交特征自动识别方法,包括需完成的加工特征邻接图的构造、相交特征的判定、相交特征的分割、加工特征的匹配及加工特征的STEP-NC表示的必要步骤。其步骤如下 一、加工特征邻接图的构造
(1)首先提取CAD系统生成的中性文件即STEPAP203文件获取类型为ADVANCED_FACE的所有实体,获取每一个ADVANCED_FACE实体的几何性、坐标和法向等信息,建立一个ALVertex对象并将它插入EAAG的顶点列表中。然后遍历ADVANCED_FACE的每一个子实体对象,得到类型为Oriented_edge的有向边列表,获取每一个0riented_ edge实体的端点、几何性、坐标和方向等属性,并计算Oriented_edge的凹凸性,建立一个ALEdge并将其插入到EAAG中对应ALVertex下的边节点列表中,参见图I ;
(2)加工特征邻接图(MFAG)是在扩展属性邻接图(EAAG)中删除零件外轮廓面所表示的结点后形成的连通子图,其外轮廓面判定,如图2所示
〔I)首先,获取EAAG中的面节点列表ALGVertex [I. . n],遍历每一个面节点,如果面节点
的邻接边都是凸边,则该面可能是外轮廓面,如果面节点的邻接边存在凹边,则该面为加工特征面;
0其次,获取所有可能是外轮廓面的法向量,记为NV[1. . N]。NV中的法向量不重复,即相同外轮廓面的法向量在NV中只记一次;
③最后,遍历所有可能是外轮廓面的面节点,对于一个NV[I],如果有多个可能外轮面
法向与其一致,只有在NV[I]方向上最外面的面节点是轮廓面,其它面节点是加工特征面;
(3)当识别出加工特征面和外轮廓面之后,将EAAG中所有外轮廓面删除。为了保持加工特征面的几何结构完整性,与外轮廓面相连的凸边并不删除,只标记它为虚边。在EAAG的外轮廓面被删除之后,一般会形成多个连通子图,这些连通子图就是加工特征邻接图。二、相交特征的判定,是通过判断加工特征面上是否包含凸边来识别的,分下列情况判定
(I)在多面体零件中,连接两个相邻面的边一般都是凹边和凸边,有时为了避免应力集中或方便加工,使用光滑的曲面代替多面体中出现的尖角设成光滑的过渡边,如图4的e2和e3分别是凸边和凹边,el和e4是由曲面和平面相切的交线,属于光滑的过渡边。对于光滑的过渡边凹凸性的判断如果边的两个相邻面都是凹面,或一个是凹面另一个是平面,则认为该边为凹边;如果边的两个相邻面都是凸面,或一个是凸面另一个是平面,则认为该边为凸边;如果边的两个相邻面,一个是凸面,一个是凹面,则认为该边为中性边。据此可知el和e4分别为凸边和凹边。(2)在3D建模时,若在这个3D模型上移除规则的体积,如加工槽、孔或阶梯等所移除的材料体积,就形成了 STEP-NC所定义的基本特征,这些特征与3D模型的轮廓面相交,且相交的边也都是凸边,有时为了满足设计的需要,在这个特征的基础上又移除了部分规则体积得到另一个特征,这两个相交特征相交的边界同样都是凸边,其实在形成相交特征时,3D模型上既形成了新的凹边也形成了新的凸边,但只有在相交边界上的边是凸边,其它地方是凹边,据此可以通过搜索面的凸边来判断是否存在相交特征。
如图5的加粗边界为开口槽和外表面的交线,都是凸边。通常情况下,该图形被认为是一个独立特征,但在STEP-NC中,为了描述工件外表面的加工,定义了平面特征,此处可以认为是平面特征和开口槽相交而成,因此相交的边界边应该是凸边。如图6,el和e2为两个开口槽相交的边界,均为凸边。
三、相交特征的分割
本发明是通过添加虚连接(VF)弥补因特征相交而丢失的面和边,消除加工特征上的凸边,因为加工特征面上的凸边是由特征相交产生的,所以当该邻接图中不在包含凸边时就说明相交特征分离完毕。虚连接是由两个位置和形状都相同但是法向相反的平面构成,记为(VF+,VF-)。这样添加的虚连接不会对几何形体的整体产生实际影响,因为VF+和VF-相互抵消。对于复杂的相交特征构造的虚连接时,可能使得虚连接之间形成新的凸边,然而新的凸边的数量是收敛的,重复添加虚连接之后就会最终消去所有凸边。虚连接以凸边为基础拓展形成的封闭平面,这个封闭平面不存在内环。对于凸边的端点的处理方式如下
(I)如果端点是两凸边的交点,且交点为凹点,则该点不需要做任何处理。(2)如果端点是两凸边的交点,且交点为凸点,则沿着其中一条凸边方向拓展。(3)如果端点是凸边和凹边或外轮轮廓面的边的交点,则沿着凹边或外轮轮廓面的边的方向进行拓展。因为特征每一条凸边都是由两个加工特征面所共享,添加虚连接时首先要确定它的依赖特征面,如果选择的依赖特征面不合理,则会引起识别出来的特征不合理甚至完全不符合要求。我们需要尽量满足以下三个要求,当不可能同时满足时,按下述顺序优先满足前面的要求。I特征之间不能有公共体积
如果两个特征之间有公共体积,意味着在刀具移除公共体积的材料的时候会出现重复走刀,这是应该避免的。从图7可以看出,el是面f2和面f7的相交边界,有以下两种方法添加虚链方法1,基于面f7扩展虚链接形成虚面fVl ;方法2,基于面f2扩展虚链接形成虚面fv2。方法I得到三个不含公共体积的slotl(fl,f2,f3)、slot2(f4,f5,f6)和slot3(f7, f8, f9),方法2得到两个包含公共体积的交叉slotl (fl, f2, f3, f4, f5, f6)和slot2 (f7, f8, f9),很显然方法I符合我们的要求。2虚链接数量最少
这意味着得到较少加工特征,STEP-NC基于特征的工艺规划也会比较简单。如图7,在加工工程中,按方法I添加虚面后,可按图8 (a)移除材料的体积,即三个加工特征;按方法2添加虚面后,则只能按图8 (b)移除材料的体积,即四个加工特征。因为方法I得到的加工特征少,因此方法I比较合理。3特征基面优先原则
特征基面不仅是在几何上与特征的其它面相连,在设计或加工过程中还经常用基面作为参考面,如果特征基面上存在凸边,优先通过特征基面扩展虚连接往往得到比较理想的结果,如图9,因为fl为特征基面,应当通过fl扩展虚连接消除凸边el。为了满足上述要求,为包含凸边的特征面建立一个有序队列
M = (ml, m2,mk) , mi = F(fj,C¥ES, num isBaseface) I < i < k
其中fj表示特征面的编号,CVES表示fj上相连凸边的集合,num表示CVES的数量,isBaseface表示f」是否为特征基面。在上述有序队列中,num越大,fj越靠前,如果两个特征面num相等,则isBaseface为真的排在前面。生成相交特征拆分因子列表的流程图如图3。添加虚链之后,本发明把此时MFAG的面分为四类实体面(EntitiyFace)、虚面(VirtualFace)、分割面(SplitFace)和复合面(CompoundFace),将MFAG的边也分为四类实体边(EntitiyEdge)、虚边(VirtualEdge)、分割(SplitEdge)和复合边(CompoundEdge)。如图10 fl和f2是实体面,当添加虚面f3之后,(04243)就被当做特征的一个面,这个面称为复合面;图11 :f I是实体面,当添加虚面f3之后,f I被分割成两个面,分别属于不同特征的特征面,此时的两个面被当做分割面。在相交特征分割的时候,从头到尾依次为队列中的节点所对应的特征面添加相关虚连接,完善特征的几何拓扑结构,消除特征面的凸边,接着将队列中其它包含这些凸边的节点的num减1,同时将CVES中对应的凸边删除,如果num等于0,则将该节点从队列中移除,最后将头节点从队列中移除,直到队列为空时说明特征分割完毕。四、加工特征的匹配及加工特征的STEP-NC表示
本发明将不可再分解的MFAG与IS0/IS 10303-224中定义的制造特征所对应的MFAG进行匹配,识别出制造特征。在进行匹配的时候,根据特征基面边的特性来判断两者是否为同一类型特征。在基本独立加工特征面中,特征基面是最重要的一个加工面,它与其它加工特征面直接相连,它的边界可以区分STEP-NC中所定义的加工特征,还可以确定相交特征加工顺序。以下是三类常见制造特征的匹配规则
(I)如果MFAG的特征基面只有一个边与侧面相邻,则说明这个MFAG对应着step特征。如图12所示,f2为特征基面,它只有一个边与侧面fl相连,因此为step特征。(2)如果MFAG的特征基面的边界边围成了一个圆,则说明这个MFAG对应着hole特征。如图13所示,fl为特征基面,它的边界边围成了一个圆,因此为hole特征。(3)如果MFAG的特征基面的边界边构成了一个多边形,这说明这个MFAG对应着pocket特征。如图14所示,f2为特征基面,它的边界边构成了一个长方形,因此对应着pocket 特征。
根据特征基面边的数目、几何性、虚实性以及对应边的关系对IS0/IS 10303-238定义的特征进行编码,编码表结构如下
权利要求
1.一种基于STEP-NC相交特征自动识别方法,包括需完成的加工特征邻接图的构造、相交特征的判定、相交特征的分割、加工特征的匹配及加工特征的STEP-NC表示的必要步骤,其特征在于步骤如下 一、加工特征邻接图的构造 (1)首先提取CAD系统生成的中性文件即STEPAP203文件获取类型为ADVANCED_FACE的所有实体,获取每一个ADVANCED_FACE实体的几何性、坐标和法向等信息,建立一个ALVertex对象并将它插入EAAG的顶点列表中,然后遍历ADVANCED_FACE的每一个子实体对象,得到类型为Oriented_edge的有向边列表,获取每一个Oriented_ edge实体的端点、几何性、坐标和方向属性,并计算Oriented_edge的凹凸性,建立一个ALEdge并将其插入到EAAG中对应ALVertex下的边节点列表中; (2)加工特征邻接图(MFAG)是在扩展属性邻接图(EAAG)中删除零件外轮廓面所表示的结点后形成的连通子图,其外轮廓面判定 (£首先,获取EAAG中的面节点列表ALGVertex [I. . n],遍历每一个面节点,如果面节点的邻接边都是凸边,则该面可能是外轮廓面,如果面节点的邻接边存在凹边,则该面为加工特征面; <2其次,获取所有可能是外轮廓面的法向量,记为NV[1. . N], NV中的法向量不重复,即相同外轮廓面的法向量在NV中只记一次; 最后,遍历所有可能是外轮廓面的面节点,对于一个NV[I],如果有多个可能外轮面法问与其一致,只有在NV[I]方向上最外面的面节点是轮廓面,其它面节点是加工特征面; (3)当识别出加工特征面和外轮廓面之后,将EAAG中所有外轮廓面删除,为了保持加工特征面的几何结构完整性,与外轮廓面相连的凸边并不删除,只标记它为虚边,在EAAG的外轮廓面被删除之后,一般会形成多个连通子图,这些连通子图就是加工特征邻接图; 二、相交特征的判定,是通过判断加工特征面上是否包含凸边来识别的,分下列情况判定 (1)在多面体零件中,连接两个相邻面的边一般都是凹边和凸边,有时为了避免应力集中或方便加工,使用光滑的曲面代替多面体中出现的尖角设成光滑的过渡边,对于光滑的过渡边凹凸性的判断如果边的两个相邻面都是凹面,或一个是凹面另一个是平面,则认为该边为凹边;如果边的两个相邻面都是凸面,或一个是凸面另一个是平面,则认为该边为凸边;如果边的两个相邻面,一个是凸面,一个是凹面,则认为该边为中性边; (2)在3D建模时,若在这个3D模型上移除规则的体积,如加工槽、孔或阶梯等所移除的材料体积,就形成了 STEP-NC所定义的基本特征,这些特征与3D模型的轮廓面相交,且相交的边也都是凸边,有时为了满足设计的需要,在这个特征的基础上又移除了部分规则体积得到另一个特征,这两个相交特征相交的边界同样都是凸边,其实在形成相交特征时,3D模型上既形成了新的凹边也形成了新的凸边,但只有在相交边界上的边是凸边,其它地方是凹边,据此可以通过搜索面的凸边来判断是否存在相交特征; 三、相交特征的分割 (I)是通过添加虚连接(VF)弥补因特征相交而丢失的面和边,消除加工特征上的凸边,因为加工特征面上的凸边是由特征相交产生的,所以当该邻接图中不在包含凸边时就说明相交特征分离完毕,虚连接是由两个位置和形状都相同但是法向相反的平面构成,记为(VF+, VF-),这样添加的虚连接不会对几何形体的整体产生实际影响,因为VF+和VF-相互抵消,对于复杂的相交特征构造的虚连接时,可能使得虚连接之间形成新的凸边,然而新的凸边的数量是收敛的,重复添加虚连接之后就会最终消去所有凸边; (2)因为特征每一条凸边都是由两个加工特征面所共享,添加虚连接时首先要确定它的依赖特征面,如果选择的依赖特征面不合理,则会引起识别出来的特征不合理甚至完全不符合要求,所以通过对包含凸边的特征面建立一个有序队列,按队列的先后顺序添加虚连接,能有效实现相交特征的分离; 四、加工特征的匹配及加工特征 的STEP-NC表示 是通过对特征基面进行编码,将这些特征编码存储于数据库中,借助当前比较成熟的数据库查询技术识别出加工特征,利用数据库管理系统将上述特征编码存放在数据库的关系表中,在进行特征匹配时,只需要获取加工特征的特征基面边的相关参数,通过查询语句能够准确快速的识别出加工特征,实现加工特征的STEP-NC表示。
2.根据权利要求I所述的一种基于STEP-NC相交特征自动识别方法,其特征在于所述的相交特征的判定是通过判断加工特征面上是否包含凸边来识别的,在进行判定之前,将与外轮廓面相连的凸边排除在外。
全文摘要
一种基于STEP-NC相交加工特征的自动识别方法,包括加工特征邻接图的构造、相交特征的判定、相交特征的分割、加工特征的匹配及加工特征的STEP-NC表示。首先,采用基于图和痕迹相结合的方式来识别相交特征,这里的痕迹是指特征因为相交而产生的凸边,为保证特征之间不能包含公共体积,尽可能的减少生产的独立特征以及优先处理特征基面的原则,构造了有序相交特征拆分因子队列;其次,在特征匹配的时候,对加工特征进行编码,借助当前比较成熟的数据库查询技术识别出加工特征,避免了可能出现非常耗时的子图匹配算法。最后,根据ISO10303-238协议,将识别出的加工特征以隐性方式存储与STEP文件中,为后续CAPP和CAM提供一致性接口。
文档编号G06F17/50GK102629287SQ20121004806
公开日2012年8月8日 申请日期2012年2月29日 优先权日2012年2月29日
发明者舒启林 申请人:沈阳理工大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1