System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及cad模型特征识别、尤其涉及一种从cad模型中识别开放槽腔制造特征的方法。
技术介绍
1、在数控机床加工制造领域,为了制造高精尖复杂的产品,同时提高产能,保证产品质量,且不能大幅增加成本,必须实行数字化设计制造,其中计算机辅助设计(cad)是验证复杂产品设计可行性的有效手段,cam是计算机辅助制造的核心,计算机辅助工艺设计(capp)作为cad和cam之间的纽带,技术信息处理和特征提取、工艺规划和集成是最重要的,可根据模型特征解释cad中所包含的设计信息,目前用于特征识别的输入产品数据采用各种中性文件格式,如iges、stl、step等。
2、目前从cad模型中识别开放槽腔制造特征的方法有:
3、1、基于机器学习的识别算法:该算法通过训练一个分类器来识别槽腔;首先从已知的槽腔样本中提取特征,并使用这些特征训练分类器,然后将待识别的零件模型输入分类器,分类器会输出该模型是否包含槽腔以及槽腔的类型和位置等信息。这种方法可以自适应地处理各种形状和尺寸的槽腔,但需要大量的训练样本和计算资源,对数据质量和数量要求较高,机械制造特征识别技术需要大量的高质量数据来进行训练和优化模型,如果数据质量不高或数量不足,可能会导致模型的准确性、稳定性和运行速度变慢或精度下降。
4、2、基于深度学习的识别算法:该算法使用深度学习模型(如卷积神经网络)来识别槽腔,首先需要将零件模型转换为图像或体素数据,并使用深度学习模型对这些数据进行训练和预测;这种方法可以处理复杂的槽腔形状和纹理,但需要大量的训练数据和计
5、3、基于模板匹配的识别算法:该算法通过预先定义一些槽腔的模板,然后将零件模型与这些模板进行匹配,从而识别出槽腔。这种方法可以处理一些形状相似的槽腔,但对于形状差异较大的槽腔,需要定义更多的模板。
6、上述识别算法方案具有计算复杂、对环境敏感、对算法和模型要求较高等缺点,因此有必要对此进行研发,研发一种所需资源更少、计算方式更快的方法来识别cad模型中的开放槽腔制造特征。
技术实现思路
1、本专利技术专利技术方案是为了解决现有技术中指出的技术问题,本专利技术提供了一种从cad模型中识别开放槽腔制造特征的方法,由加载模型数据、数据清理、特征识别算法处理、单一开放槽腔提取处理算法组成;
2、所述加载模型数据的步骤为:cad模型文件使用step格式,通过occt中的stepcontrol_reader类读取step文件中零件拓扑模型并将之保存为实体,通过occt中的topexp_explorer工具找到给定类型的所有子对象数据,即可获取模型的面、线、点等数据;
3、所述数据清理是指先删除不是开放槽腔的相关面,然后对剩下的特征实体拓扑面进行分析,获得开放槽腔的具体数据,再删除边界面、孔特征的相关面、封闭槽腔的相关面,最后得到余下的开放槽腔相关面数据;
4、所述特征识别算法处理的步骤为:
5、步骤1:输入模型实体shape和余下的开放槽腔面数据作为处理对象;
6、步骤2:根据相邻性对面数据进行分组,得到复合的开口槽特征面组;
7、步骤3:对步骤2的一个面组进行单一开放槽腔提取处理算法,从该面组中提取出一个或多个开放槽腔,每个开放槽腔均包含其相关面和加工环的数据;
8、步骤4:删除已识别出来的开放槽腔相关面;
9、步骤5:重复步骤3,直至步骤2中的所有面组均被处理完成;
10、步骤6:处理完毕,算法结束。
11、优选地:步骤2中的分组具体过程如下:取任一拓扑面,在其余的拓扑面中搜索与之相邻的面,相邻则归为同一组,对搜索得到的相邻面进行重复的操作就能获得一组复合开口槽特征面组,对剩下的面组进行上述操作就能获得全部的复合开放槽腔特征面组,是否相邻的判别方法是判断两个面之间是否存在公共边缘。
12、优选地:所述单一开放槽腔提取处理算法的具体步骤如下:
13、步骤(1):以x、y、z轴三个方向为潜在的加工方向轴,确定加工方向轴;判断是否存在圆柱面,若存在,则可确定开放槽腔加工方向轴为圆柱面的轴向方向;
14、步骤(2):根据加工方向轴寻找所有底面,并将整个面组分为底面和侧面两类,底面的确定方法为:判断面的类型,若为平面则计算其法向量,若法向量垂直于步骤1确定的加工方向轴则为底面,否则皆归为侧面一类;
15、步骤(3):若不存在底面,则认为这些面均为一个通槽的侧面,直接进行步骤9,计算此开放槽腔的加工环;
16、步骤(4):将所有底面进行排序;
17、步骤(5):计算第一个底面对应的开放槽腔的实际加工方向,由于底面是在实体上的,实际的加工方向必然是指向实体之外的,因此可以计算出实际的加工方向为垂直于底面且指向实体之外的方向;
18、步骤(6):选择第一个底面,根据此底面和步骤(4)中计算的实际加工方向,对侧面进行判断分类,分为当前槽侧面、待分割面、余下侧面,所述判断方法为:若某个面的所有顶点均在底面之上则归为当前槽侧面,均在底面之下则归为余下侧面,若某个面跨越了底面,则认为是待分割面。
19、步骤(7):若存在待分割面,则使用brepfeat_splitshape工具对待分割面进行切割,brepfeat_splitshape工具为occt提供的面切割工具,输入数据为实体shape和待切割面即切割面上对应的切割线,切割线的确定方法为:首先延申底面,然后计算底面和侧面的交线,此时交线即为切割工具所需的输入切割线。
20、步骤(8):若存在待切割面,则将步骤(7)的切割产生的新面进行分类,同步骤(6)的方法,将侧面分类为当前槽侧面和余下侧面;
21、步骤(9):计算当前槽腔的加工环,所述加工环的计算方法为:将所有侧面向底面投影,所有侧面投影完成之后,计算所有投影结果的凸包,在凸包中存在由面投影的出来的边,和新生成的边;前者为属于槽侧面的实边,后者即为虚边,而此凸包即为所求加工环。
22、步骤(10):将上述所求出的当前槽所属面和加工环作为一个结果保存。
23、步骤(11):重复步骤2,直至面组所有面均被处理完毕。
24、步骤(12):算法结束。
25、优选地:所述步骤(4)的排序规则为:根据在加工方向轴轴向坐标值排序,假如加工方向轴为z轴,则说明所有底面都垂直于z轴,根据底面的z轴坐标大小排序,坐标值大则在前面。
26、优选地:在步骤(1)中,若判断不存在圆柱面,则需要判断是否存在不平行于零件摆正后的笛卡尔坐标系主平面的平面,若存在则表明此平面为开放槽腔的侧面,若不存在,则需要对三个方向分别进行尝试,假设在某一轴方向上,竖直与该轴的面为侧面,记录其数量,再选择侧面数量最多的一轴本文档来自技高网...
【技术保护点】
1.一种从CAD模型中识别开放槽腔制造特征的方法,其特征在于:由加载模型数据、数据清理、特征识别算法处理、单一开放槽腔提取处理算法组成,
2.根据权利要求1所述的从CAD模型中识别开放槽腔制造特征的方法,其特征在于:所述步骤2中的分组具体过程如下:取任一拓扑面,在其余的拓扑面中搜索与之相邻的面,相邻则归为同一组,对搜索得到的相邻面进行重复的操作就能获得一组复合开口槽特征面组,对剩下的面组进行上述操作就能获得全部的复合开放槽腔特征面组,是否相邻的判别方法是判断两个面之间是否存在公共边缘。
3.根据权利要求1所述的从CAD模型中识别开放槽腔制造特征的方法,其特征在于:所述单一开放槽腔提取处理算法的具体步骤如下:
4.如权利要求3所述的从CAD模型中识别开放槽腔制造特征的方法,其特征在于:所述步骤(4)的排序规则为:根据在加工方向轴轴向坐标值排序,假如加工方向轴为Z轴,则说明所有底面都垂直于Z轴,根据底面的Z轴坐标大小排序,坐标值大则在前面。
5.根据权利要求3所述的一种从CAD模型中识别开放槽腔制造特征的方法,其特征在于:在步骤(1)中
...【技术特征摘要】
1.一种从cad模型中识别开放槽腔制造特征的方法,其特征在于:由加载模型数据、数据清理、特征识别算法处理、单一开放槽腔提取处理算法组成,
2.根据权利要求1所述的从cad模型中识别开放槽腔制造特征的方法,其特征在于:所述步骤2中的分组具体过程如下:取任一拓扑面,在其余的拓扑面中搜索与之相邻的面,相邻则归为同一组,对搜索得到的相邻面进行重复的操作就能获得一组复合开口槽特征面组,对剩下的面组进行上述操作就能获得全部的复合开放槽腔特征面组,是否相邻的判别方法是判断两个面之间是否存在公共边缘。
3.根据权利要求1所述的从cad模型中识别开放槽腔制造特征的方法,其特征在于:所述单一开放槽腔提取处理算法的具体步...
【专利技术属性】
技术研发人员:陶建华,陈彬,杨书荣,林炜盛,
申请(专利权)人:湖南机企猫网络科技有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。