王 猛
(北京航空航天大學 機械工程及自動化學院,北京 100191)
增材制造(Additive Manufacturing,AM)技術是通過CAD設計數據采用材料逐層累加的方法制造實體零件的技術,又被稱為“3D打印”(3D Printing)、“快速成型”(Rapid Prototyping)[1]。其制造過程中每一層的加工都是首先根據計算機輔助設計數據模型分層后得到截面輪廓數據,進而生成路徑軌跡,并將路徑軌跡轉化為打印設備能夠執行的控制代碼。目前商業化的3D打印設備普遍采用STL格式文件作為數據模型文件,STL模型通過對CAD實體或曲面模型表面三角化得到,有數據冗余、喪失拓撲信息等缺點,用來表達曲面模型時導致模型精度降低,因此人們提出對CAD模型直接分層[2-3]。此外,增材制造的層內路徑規劃對制造效率、成型質量等有重要影響[4-5]。本文利用SolidWorks二次開發,實現對CAD模型的直接分層,并在Visual Studio開發平臺實現路徑規劃。
SolidWorks的三維實體采用B-rep表示,記錄了所有幾何元素的幾何信息和拓撲關系。SolidWorks是基于Windows平臺的三維設計軟件,含有豐富的應用程序接口(API)。本文使用C#開發應用程序,可以嵌入到SolidWorks內部,加載成功后應用程序直接出現在SolidWorks主菜單上。
分層切片的關鍵就是將實體表面與分層平面求交,利用SolidWorks API曲面-曲面截交函數可以免去復雜的曲面求交運算,進而得到輪廓草圖信息。具體步驟如下:
(1) 讀入CAD模型(默認分層方向為Z軸正向);
(2) 獲得零件分層方向坐標極值Zmin和Zmax;
(3) 遍歷CAD模型各個特征表面;
(4) 根據分層厚度h確定切片層數N=(Zmax-Zmin)/h;
(5) 置i=1,構造切平面Z=Zmin+h;
(6) 通過Sketch 3D Intersections()函數將CAD模型表面與Z平面求交;
(7) 提取交線并首尾排序形成完整的輪廓曲線,導出輪廓數據;
(8)i=i+1,如果i≤N,構造新平面Z,并轉到步驟(6)、步驟(7);否則程序結束。
圖1是對葉輪CAD模型的直接分層效果顯示,此葉輪模型Zmin=0,Zmax=36 mm,遍歷CAD模型特征得到61個表面,設置切層厚度為2 mm,得到18個切層。
切平面和CAD模型表面求交后得到的是3D草圖。如圖2所示,葉輪CAD模型表面與第三個切平面相交得到輪廓線,切層草圖曲線是間斷式的,將其歸為直線、圓弧、樣條曲線三種類型,分別對應SolidWorks API的ISketchLine、ISketchArc、ISketchSpline三種對象。對于直線和圓弧以后可被增材制造數控系統識別;對于樣條曲線進行離散插補,根據精度需求設置弓高誤差。同時,制定由直線段、圓弧和樣條曲線組成的2.5維輪廓數據存取樣式,將端點、控制頂點等信息導出,為層內路徑規劃做準備。目前以STL為基礎的增材制造系統廣泛使用CLI、SLC等格式描述切片輪廓,采用線性近似,后續擴展應用能力低。
模型分層切片得到的是輪廓曲線數據,尚需要填充層內區域,為3D打印設備生成路徑軌跡,這就是層內路徑規劃。常見的路徑規劃方式是輪廓偏移式填充和光柵掃描式填充,其他還有分區掃描、分形掃描等方式。

圖1葉輪CAD模型的直接分層效果圖2葉輪第3切層輪廓曲線
輪廓偏移式掃描是將實體輪廓從外向內或從內向外偏移生成路徑軌跡,不易出現階梯效應,表面質量較高,但計算復雜。本文依賴二維圖形庫Clipper對葉輪輪廓生成偏移路徑,如圖3所示。
光柵掃描式填充是用平行線段對輪廓內部填充,它是通過平行掃描線與輪廓曲線求交,將交點按照一定規則進行連接生成路徑軌跡。每一條掃描線與輪廓曲線如果有交點,數目必然為偶數,把這些交點從1到k順次編號,通過“奇-偶”相連的方式,就可以生成位于實體內部的掃描路徑。結合兩種方式的優點,對實體零件可以生成外部為輪廓偏移、內部為光柵掃描的混合式路徑,可使零件表面成形質量較好且內部路徑生成簡單高效,如圖4所示。

圖3一次偏移路徑的生成圖4葉輪的混合式路徑規劃
為了改善增材制造工藝,應考慮路徑軌跡的優化,在電弧焊絲增材制造中,將焊槍作為3D打印的執行部件,在路徑的起點引弧、終點熄弧,容易出現焊體的堆積或者坍塌。而不同傾斜方向的路徑規劃方式會導致不同數目的路徑轉折點,較少的轉折點代表著較少的焊絲回抽和較長的平均路徑長度,因此減少路徑轉折點數目對工藝改善會起到良好作用。
某傾斜方向的路徑轉折點數目最少,意味著該方向掃描線平均長度最長,也意味著截面圖形質點在該方向的質量分布較集中,本文考慮引入主成分分析(Principal Component Analysis,PCA)的方法,提取截面圖形并細化得到能代表該截面的一系列二維數據點,并將二維特征映射到一維,以該維(即主元)方向作為層內路徑規劃的傾斜方向。
為了提取某分層平面上零件實體的質點信息,不能簡單地直接使用分層截面的輪廓數據。均勻地提取數據對于提取截面圖形的主元至關重要,考慮將水平填充掃描線段細分,得到一個二維點陣,作為數據分析對象。設點陣中點的數量為n,第i個數據點的坐標為pi(xi,yi),則截面區域的中心為:
協方差矩陣元素為:

計算協方差矩陣[Cjk]的特征值和特征向量,其中特征值較大者對應的特征向量就是所求主元方向。為了驗證該優化算法的可靠性,考察掃描線在0°~180°不同傾斜方向的路徑規劃,以2°為均勻間隔,用90組掃描線與輪廓曲線求交,通過枚舉測試得到不同傾斜方向的交點數目?,F對圖5所示零件1和零件2進行測試。

圖5 零件1和零件2
用本文的主成分分析方法得到零件1的主元方向向量為(0,1),即Y軸正向,交點數量為74個;而枚舉測試顯示掃描線與X軸正向夾角為90°時交點最少為74個,交點最多會有194個。通過主成分分析得到零件2的主元方向向量為(0.350 1,0.936 7),與X軸正向夾角為69.5°,交點數量為266;而枚舉測試顯示掃描線與X軸正向夾角為72°時交點最少為254個,交點最多會有386個。圖6為轉折點最少時的路徑規劃??梢?,主元方向雖然會與枚舉所得的傾斜方向有所偏差,但使得通過較少的計算和時間復雜度得到一個接近最優解的解,對于路徑轉折點的減少快捷有效。

圖6 最少轉折點的路徑
本文在SolidWorks二次開發平臺上實現了增材制造的直接切片,避免了復雜的曲面求交計算和以STL格式文件為基礎的增材制造中誤差較大的問題;同時開發了層內路徑規劃功能模塊,可以實現輪廓偏移式和光柵掃描式填充,基本滿足復雜外形零件路徑規劃的要求;提出的基于主成分分析的路徑優化算法用少量的計算可以得到較優的路徑規劃方向,改善了增材制造工藝。