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模型中識別開放槽腔制造特征的方法,其特征在于:所述單一開放槽腔提取處理算法的具體步...
【專利技術屬性】
技術研發人員:陶建華,陳彬,楊書榮,林煒盛,
申請(專利權)人:湖南機企貓網絡科技有限公司,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。