李旺, 劉厚才, 康輝民, 歐陽智海, 曹正, 周岳, 蔣冠, 段良輝
(1. 湖南科技大學 機電工程學院, 湖南 湘潭 411201;2. 江南工業集團有限公司 數控加工分廠, 湖南 湘潭 411207)
隨著新一代信息技術與制造技術的持續融合,智能制造成為我國制造業轉型升級和創新發展的突破口[1]。其中,異型零件加工工藝的自動化編程設計是實現智能制造的重要環節。異型零件是一種結構形狀多樣、特征復雜且不規則的機械零件。在對異型零件進行編程設計時,往往需要人工完成對其加工特征的選取,存在工作量大、加工工藝設計效率低和編程質量不穩定等問題。而特征識別是實現計算機輔助工藝規劃和計算機輔助制造集成的關鍵,是對零件幾何與拓撲信息的整合。因此,如何實現對異型零件加工特征的快速、準確識別是智能制造需要解決的關鍵問題。
目前,加工特征識別方法主要分為基于圖分解和基于體分解兩類。其中,基于圖分解的方法以屬性鄰接圖(attributed adjacency graph, AAG)和屬性鄰接矩陣(attributed adjacency matrix, AAM)作為特征識別的基礎,可表征零件模型中面與面之間的鄰接關系。如Joshi等[2]在識別零件的加工特征時,將邊界表示的描述轉換為AAG,其中AAG在計算機中以AAM的形式表示。在實際應用中,學者們通常會對AAG和AAM進行二次分解,以實現零件加工特征的快速識別[3-4]。周亞平等[5]采用構建三層次特殊關系鄰接矩陣的特征識別方法,解決了壁板零件多特征復合的復雜相交特征識別問題。華順剛等[6]提出通過檢索和改變零件屬性面鄰接矩陣中的元素來識別鑄件毛坯的平面和曲面特征。張生芳等[7]采用獲取模型柵格高度點云數據的方法,實現了對角盒類零件模型底板和壁面特征的分離與識別。吳曉東等[8]采用AAM完成了特征子圖的匹配,實現了STEP-NC的制造特征識別。此外,還有一些學者通過簡化AAG或加權AAG的方法來實現對零件毛坯加工特征的快速識別[9-10]。但需要指出的是,這些方法雖然可以很好地識別零件獨立的加工特征,但AAG的識別難度會隨著特征面數量的增加而增大,難以有效識別零件的相交特征。
為了解決基于圖分解的方法難以識別復雜加工特征的問題,基于體分解的方法通過有效減少特征體中識別面的數量,大大地降低了對加工特征表示的復雜性,同時體積分解法不存在拓撲結構變化所導致的相交特征識別困難的問題。如劉長毅[11]以基于圖的布爾運算為基礎,完成了體積特征的生成,從而實現了2.5維加工特征的識別。針對多重相交特征識別慢的問題,一些學者提出了識別最大加工特征的體分解方法,有效地減少了對零件的分割次數和單元體數量[12-13]。張賀等[14-15]針對軸類和盤套類零件的加工特征識別,通過選擇分割面和生成加工方法鏈的方法,優化了傳統體分解方法中分割算法復雜、分割效率低等問題。Zubair等[16]針對圓柱體零件提出了一種體分解方法,完成了對稱和非對稱圓柱體零件的加工特征識別。Rameshbabu等[17-18]基于體分解方法,通過優化特征的體積元素組合,實現了對零件相交特征的快速識別。但是,這類體分解方法局限于一定形狀的零件,在描述復雜零件特征時會造成組合爆炸。
綜上所述,盡管學者們在利用基于圖分解和基于體分解的方法識別零件加工特征方面取得了一定的研究成果,但由于缺乏對特征創建的統一規范,使得幾何形狀不同的特征會出現相同的AAM,無法準確地表達特征信息。其次,隨著零件形狀的復雜化,特征體的面數量增加,使得其幾何、拓撲關系變得更加復雜,從而導致零件相交特征的識別效率大大降低。
基于此,針對異型零件的加工特征識別,筆者提出了一種基于圖和體分解的加工特征識別方法。首先,根據異型零件的加工特征和加工工藝,構建其加工特征庫。然后,運用基于圖和體分解的方法,從異型零件被加工部分的體積著手,結合布爾減運算對其相交特征進行單一化處理并建立相應的AAG;同時,構建單一特征的幾何特征矩陣(geometric feature matrix, GFM)和拓撲特征矩陣(topological feature matrix, TFM)。最后,通過與加工特征庫匹配來完成異型零件復雜加工特征的精確識別。
加工特征是指用刀具去除零件毛坯上多余材料后得到的工程所需的幾何形狀。為了實現加工特征的準確識別,應根據零件的實際結構和加工工藝特點,對其加工信息進行分類和規范化表達。在異型零件的制造過程中,其表面經過多次加工處理,形成了復雜的加工特征,須將復雜特征拆分為具有可加工性的單一特征,以確保加工特征識別的準確性。如圖1所示,將異型零件的加工特征分為面特征、槽特征和孔特征等后再進一步細分:將面特征細分為平面、曲面、臺階面等;槽特征細分為封閉槽、半封閉槽、通槽等;孔特征細分為通孔、盲孔等。

圖1 異型零件加工特征分類Fig.1 Classification of machining features of specialshaped part
為了實現異型零件加工特征的準確識別,設計了基于圖和體分解的加工特征識別方法,其流程如圖2所示。該識別方法主要包括三部分:特征的搜索與提取、特征矩陣的構建和特征的匹配與識別。

圖2 基于圖和體分解的異型零件加工特征識別流程Fig.2 Machining feature recognition flow of special-shaped part based on graph and volume decomposition
1)特征的搜索與提取。以異型零件的STEP中性文件作為系統數據輸入,獲取零件的點、線、面等幾何和拓撲信息。
2)特征矩陣的構建。采用基于圖和體分解的方法,先將異型零件中所有含凹邊關系的特征轉換成只有凸邊關系的單一特征,以完成特征提取;然后,定義特征面的屬性、位置關系和凹凸性對應的元素值,構建所有單一特征的AAG并建立相應的GFM和TFM。
3)特征的匹配與識別。將異型零件的所有單一特征的GFM和TFM與加工特征庫進行匹配。若匹配成功,則輸出零件加工特征的幾何、拓撲信息,完成加工特征的識別。若匹配失敗,則通過人工設計補充所需的特征矩陣,進而擴充加工特征庫,直到實現所有加工特征的成功識別。
本文采用存儲異型零件三維模型幾何、拓撲信息的STEP AP203文件作為數據輸入。通過對STEP AP203文件進行數據提取,構建相應的AAG。AAG定義為:G=(N,E,T)。其中:N代表圖節點集,E代表圖連接邊集,T代表圖連接邊的屬性集。某異型零件的三維模型及其AAG(實線代表凸面,虛線代表凹面)分別如圖3(a)和圖3(b)所示。采用2個相鄰面和相交邊的矢量計算公共邊的凹凸性[9,19-20]:當2個相交面的公共邊為凸邊時,屬性值為1;當2個相交面的公共邊為凹邊時,屬性值為0。

圖3 某異型零件的三維模型和AAGFig.3 Three-dimensional model and AAG of a certain special-shaped part
異型零件具有多特征復雜相交的幾何結構特點。為了準確識別異型零件的復雜相交特征,采用基于圖和體分解的方法將復雜特征轉換成只含凸邊關系的單一特征。
以封閉槽特征為例,采用獲取坐標點的方式對封閉槽進行體分解。封閉槽的毛坯模型如圖4(a)所示,其中每2個平面都與XOY、XOZ和YOZ平面平行。對于平行于YOZ平面的2個面,X正方向的面為F4,X負方向的面為F1。同理,可得其他4個平面。毛坯加工后形成的封閉槽如圖4(b)所示,槽面依次為F7、F8、F9、F10。經布爾減運算獲得封閉槽的加工體積特征,如圖4(c)所示。在基于圖的布爾運算中,不僅可以呈現零件模型中相鄰面之間的凹凸關系,而且可將零件模型中所有含凹邊關系的復雜特征分解為只含凸邊關系的單一特征。

圖4 封閉槽特征分解示意Fig.4 Schematic diagram of feature decomposition for enclosed slot
根據圖4,封閉槽加工體積特征的提取步驟具體如下。首先,從STEP AP203文件中獲取封閉槽三維模型上各頂點的坐標,并根據XOY、XOZ、YOZ平面上的最大和最小坐標值,構建封閉槽毛坯模型。然后,通過毛坯模型的頂點坐標,得到F1至F6這6個平面的方程:Ax+By+Cz=D。接著,將其余體積特征對應的頂點坐標代入上述平面方程,若頂點坐標滿足平面方程,則這些頂點屬于同一平面,即具有共面性,可連接形成加工體積特征面;若不滿足平面方程,則這些頂點屬于移除平面。構建經過體積特征面F11上的頂點且平行于毛坯模型表面F3的平面方程A(x+x0)+B(y+y0)+C(z+z0)=D,其中(x0,y0,z0)為體積特征面F11上某頂點的坐標。最后,再次將頂點坐標代入新構建的平面方程,若滿足該平面方程,則這些頂點具有共面性,可連接形成加工體積特征面。
若所獲得的加工體積特征仍存在凹邊關系,則還須對其進行二次分解。如圖5所示的由臺階面和盲孔組合而成的加工體積特征,先通過獲取臺階面和盲孔面的幾何、拓撲信息,計算加工體積特征面中存在的凹邊關系,再對其凹邊相交特征進行分割,完成加工體積特征的二次分解,即將其轉換成只含凸邊關系的單一特征。

圖5 含相交特征的加工體積特征分解示意Fig.5 Schematic diagram of decomposition for machining volume feature containing intersecting features
綜上,基于圖和體分解的異型零件復雜特征處理流程如圖6所示。

圖6 基于圖和體分解的異型零件復雜特征處理流程Fig.6 Complex feature processing process for special-shaped part based on graph and volume decomposition
傳統的AAM是以AAG中面與面之間的鄰接關系和角度關系作為基礎來構建的,但其僅對相鄰2個面的凹凸性進行了描述,無法準確描述異型零件模型的細節特征。
對于圖7所示的2個相似的封閉槽模型,若采用傳統的AAM進行描述,這2個相似的封閉槽模型的AAG和AAM完全相同(圖中“/”表示2個面為同一個面)。但是,封閉槽模型1和封閉槽模型2中的特征面F1(f1)和F2(f2)存在細微差別,而這些差別在傳統AAM中無法呈現,故無法得知特征面的具體屬性。為了彌補傳統AAM無法精準表達零件細微加工特征的不足,本文提出了一種基于特征面關系的GFM和TFM構建方法,其中GFM側重描述零件模型中面與面之間的位置關系,TFM側重描述零件模型中面與面之間相鄰的凹凸性。若面與面不相交,賦元素值為0。針對由n個特征面組成的只含凸邊關系的單一特征,基于其特征面關系構建相應的GFM和TFM,如圖8所示。其中:MG表示GFM,MT表示TFM。

圖7 封閉槽的傳統AAG和AAM構建Fig.7 Construction of traditional AAG and AAM for enclosed slots

圖8 異型零件特征矩陣構建Fig.8 Construction of feature matrix for special-shaped part
由圖8可知,GFM和TFM中的每個元素均由3個數值組成,用于定義面與面之間的關系和面的類型,其具體含義和對應數值如表1所示。表中:N1、N2表示相鄰2個面的類型,包含平面和曲面兩種類型,共有平面與平面、平面與曲面以及曲面與曲面三種組合;N3表示相鄰面之間的關系,包含平行、相交和異向三種關系;N4表示相鄰面之間的凹凸性,包含凸邊和凹邊兩種關系。

表1 GFM和TFM中元素值的定義Table 1 Definition of element value in GFM and TFM
以圖7所示的2個相似的封閉槽特征(2個封閉槽的特征面數相同)為例,基于上述GFM和TFM的構建方法,通過獲取模型中面的類型和面與面之間的拓撲關系,并分析面與面之間的凹凸關系,得到封閉槽的GFM和TFM,結果如圖9所示。在圖9所示的特征矩陣中,虛線框內的特征矩陣表示封閉槽特征面,如特征面f6;虛線外的特征矩陣表示非封閉槽特征面,僅表達非封閉槽特征面與其他特征面的幾何或拓撲關系。與傳統AAM相比,GFM和TFM可以更準確地描述面與面之間的幾何和拓撲關系,解決了AAM易出現無法準確表達加工特征的問題,可為異型零件加工特征的準確匹配與識別奠定基礎。

圖9 不同封閉槽的GFM和TFM對比Fig.9 Comparison of GFM and TFM for different enclosed slots
為了實現異型零件加工特征的自動匹配與識別,需人工設計對應的加工特征庫。表2所示為人工設計的異型零件加工特征庫中部分加工特征的GFM和TFM。加工特征庫具有擴容性,可根據實際的加工需求人工設計補充。

表2 異型零件的加工特征庫(部分)Table 2 Machining feature database of special-shaped parts (part)
異型零件加工特征的匹配與識別流程如圖10所示。首先,根據得到的異型零件單一特征,構建相應的GFM和TFM,并獲取其主對角元素的個數a;同時,讀取加工特征庫中對應加工特征的GFM和TFM中主對角元素個數b并進行對比,若a=b,則完成特征矩陣的初步篩選。然后,以與加工特征庫中GFM和TFM中每行元素的數值為準,與初步篩選得到的GFM和TFM逐行進行匹配,若匹配成功,則完成對單一特征的識別。上述任一環節未成功,則須先通過人工設計補充所需的特征矩陣,進而擴充加工特征庫,再進行特征矩陣的匹配,直到完成所有特征的識別。

圖10 異型零件加工特征的匹配與識別流程Fig.10 Matching and recognition flow of machining features for special-shaped part
根據上文所提出的方法,以Microsoft Visual Studio 2019平臺為開發環境,利用SolidWorks 2019軟件進行二次開發,建立基于圖和體分解的異型零件加工特征識別系統,其用戶界面如圖11所示。以圖3所示的異型零件對所設計的識別系統進行可行性驗證。首先,將表2所示的加工特征的GFM和TFM添加至識別系統的加工特征庫中。然后,輸入圖3所示異型零件的STEP中性文件,通過文件解析獲取該零件的幾何、拓撲信息,并基于圖和體分解的方法對零件進行特征分解并建立相應的AAG,同時基于AAG構建GFM和TFM。最后,將構建的GFM和TFM與加工特征庫中的GFM和TFM進行對比匹配,實現對零件加工特征的識別。

圖11 異型零件加工特征識別系統運行界面Fig.11 Operation interface of machining feature recognition system for special-shaped part
系統運行結果顯示,該異型零件的加工特征可分解為3個單一特征,如圖12(a)所示,由上至下依次為臺階面、半封閉槽和盲孔,其對應的GFM和TFM如圖12(b)所示。通過匹配發現,特征矩陣MG1和MT1與加工特征庫中臺階面的GFM和TFM一一對應,即識別到臺階面特征;特征矩陣MG2和MT2與加工特征庫中半封閉槽的GFM和TFM一一對應,即識別到半封閉槽特征;特征矩陣MG3和MT3與加工特征庫中盲孔的GFM和TFM一一對應,即識別到盲孔特征。

圖12 某異型零件的加工特征分解及其GFM和TFM構建Fig.12 Machining feature decomposition and its GFM and TFM construction of a certain special-shaped part
結果表明,基于圖和體分解的異型零件加工特征識別方法能夠將復雜的加工特征分解成單一特征,可有效減少特征面的數量,進而減少工作量。對于圖3所示的某異型零件,利用本文識別方法可在2 s內準確識別出其所有的加工特征,驗證了該方法能夠快速準確地識別異型零件的加工特征。
1)提出了基于圖和體分解的異型零件加工特征識別方法,實現了對異型零件復雜加工特征的準確、快速識別,可為智能化生產的實現提供理論依據。
2)基于體分解的方法,運用布爾減運算將異型零件的特征分解為只含凸邊關系的單一特征,有效地減少了特征面的數量,大大降低了對加工特征表示的復雜性。
3)提出了用GFM和TFM來描述異型零件加工特征的方法,并定義了GFM和TFM中元素值的編碼規則,解決了傳統AAM易出現無法準確表示加工特征的問題。同時,采用與加工特征庫匹配的方式進行加工特征的快速識別,可為后續異型零件加工工藝的自動編制提供理論基礎。