陳光霞
CHEN Guang-xia
(江漢大學(xué) 機(jī)電與建筑工程學(xué)院 工業(yè)設(shè)計(jì)系,武漢 430056)
激光快速成型技術(shù)是近年來新出現(xiàn)的快速成型技術(shù)之一,它是以粉末為材料,將CAD模型轉(zhuǎn)換成零件,利用激光快速成型技術(shù)可以節(jié)約新產(chǎn)品的開發(fā)時(shí)間70%以上,使產(chǎn)品投放市場(chǎng)時(shí)間節(jié)省90%左右[1]。所以可以極大地提高企業(yè)的市場(chǎng)競(jìng)爭(zhēng)力,具有較廣闊的應(yīng)用前景。
激光快速成型系統(tǒng)主要由軟件系統(tǒng)與硬件系統(tǒng)組成。而軟件系統(tǒng)的優(yōu)劣直接影響和控制著整個(gè)加工過程,直接影響零件的成型質(zhì)量與加工效率,在快速成型系統(tǒng)中起著至關(guān)重要的作用,是激光快速成型系統(tǒng)的核心技術(shù)之一。
本文對(duì)激光快速成型軟件系統(tǒng)開發(fā)過程中的關(guān)鍵技術(shù)進(jìn)行了詳細(xì)論述。
激光快速成型軟件系統(tǒng)的總功能是:將三維CAD模型的數(shù)據(jù)轉(zhuǎn)換成數(shù)控加工指令,控制數(shù)控設(shè)備和激光器完成激光加工操作。
根據(jù)軟件系統(tǒng)功能需求,激光快速成型軟件系統(tǒng)可以劃分為四個(gè)功能模塊:STL文件的讀取與顯示模塊、切片處理模塊、掃描填充模塊以及加工控制模塊。如圖1所示。
圖1 系統(tǒng)功能模塊示意圖
本文主要以二進(jìn)制STL文件為研究對(duì)象,根據(jù)二進(jìn)制STL文件的格式規(guī)定,要實(shí)現(xiàn)二進(jìn)制STL文件的讀取,應(yīng)建立以下數(shù)據(jù)結(jié)構(gòu):
1)點(diǎn)的數(shù)據(jù)結(jié)構(gòu)如下:
struct Tripoint3d{
f
l oat x;
f
l oat y;
f
l oat z;};
2)Normal向量的數(shù)據(jù)結(jié)構(gòu)如下:
struct TriNormal{
f
l oat x;
f
l oat y;
f
l oat z;};
3)三角形的數(shù)據(jù)結(jié)構(gòu)如下:
struct Triple{
Tripoint3d pt1;
Tripoint3d pt2;
Tripoint3d pt3;
TriNormal normal;};
4)直線的數(shù)據(jù)結(jié)構(gòu)如下:
struct Line{
Tripoint3d spt;
Tripoint3d ept;
TriNormal normal;
BOOL fl ag;};
5)其他一些重要的數(shù)據(jù)結(jié)構(gòu):
typedef struct linelist{//直線的單向鏈表
Line line;
struct linelist *next;}LineList;
struct contour{//環(huán)的數(shù)據(jù)結(jié)構(gòu)
LineList contourline;
int SliceID;//切片層數(shù),即是第幾層切片
BOOL fl ag;//環(huán)使用標(biāo)志};
STL文件的顯示技術(shù)主要包括以下兩個(gè)方面。
2.2.1 立體模型的顯示
本文采用OpenGL實(shí)現(xiàn)STL文件的顯示,因?yàn)镺penGL具有強(qiáng)大的圖形功能,且提供了VC編程環(huán)境所需的庫函數(shù)及頭文件,可以很方便地在VC編寫的應(yīng)用程序中顯示圖形[2]。
立體模型的顯示主要分為兩種:立體光照模型與立體線框模型。如圖2(a)所示是義齒支架的線框模型顯示,圖2(b)是義齒支架的光照模型顯示。STL文件模型顯示算法如下:1.SetModelColorWithOpenGL 2.SetLightsWithOpenGL
圖2 義齒支架模型顯示結(jié)果圖
3.DisplaySTLModeWithOpenGL(FacetsCount,F(xiàn)acetsArray, FacetsNormalArray)
4.CASE UserActions OF {
Case1:Display illumination model;
Case2:Display frame model;
…}
2.2.2 立體模型的旋轉(zhuǎn)、縮放和平移
為了便于用戶更好地觀察立體,并選擇最佳的切片方向,更利于激光快速成型加工,在立體模型顯示功能中還包括立體的旋轉(zhuǎn)、縮放和平移。
立體的空間坐標(biāo)系與計(jì)算機(jī)屏幕坐標(biāo)系是有區(qū)別的。立體對(duì)象在空間處于三維坐標(biāo)系中,但計(jì)算機(jī)圖形的點(diǎn)是生成三維對(duì)象的二維圖象,所以,將立體對(duì)象的三維坐標(biāo)轉(zhuǎn)換到屏幕上的象素位置,要經(jīng)過一定的視見變換。
三維圖形的幾何變換矩陣如式(1)所示。
三維圖形的旋轉(zhuǎn)、縮放和平移等操作都可以從(1)式矩陣變換得到。如繞Y軸進(jìn)行三維旋轉(zhuǎn)變換,利用此矩陣對(duì)每一個(gè)點(diǎn)進(jìn)行旋轉(zhuǎn),具體旋轉(zhuǎn)矩陣如式(2)所示。
式中θ為旋轉(zhuǎn)角度。
2.3.1 切片技術(shù)
把任意一個(gè)空間三角形與切平面的關(guān)系分為下列六種情況,如圖3所示。平面在截切STL文件立體時(shí),程序?qū)θ切闻c切平面的位置關(guān)系進(jìn)行判斷并作相應(yīng)的處理,求出三角形與切平面的交線,其流程如圖4所示。
圖3 三角形與切平面的關(guān)系
圖4 切片算法流程圖
2.3.2 切片輪廓的整理
對(duì)零件進(jìn)行了切片處理后,再根據(jù)每一層切片的交線整理出一個(gè)或多個(gè)截面輪廓。其算法流程圖如圖5所示。
為了避免STL文件不連續(xù)的缺陷,保證不論在什么情況下,都可以生成封閉的截面輪廓,當(dāng)?shù)谝粭l線段的起點(diǎn)PIS與最后一條線段的終點(diǎn)Pne不相同時(shí)(在一定的范圍內(nèi),如坐標(biāo)差≤0.001mm),則增加一條以Pne為起點(diǎn),以PIS為終點(diǎn)的線段,從而形成封閉的截面輪廓。
一條截面輪廓整理完后,再以同樣的方法在剩下的線段中搜索,得到另一截面輪廓,直到交線數(shù)組中再無線段為止。
圖6就是利用此輪廓整理算法的切片結(jié)果,其中圖6(a)為拉伸試樣的切片結(jié)果圖,圖6(b)為義齒支架切片結(jié)果圖。
圖6 立體切片結(jié)果圖
圖5 輪廓整理算法流程圖
形成截面輪廓后,要利用一定的算法生成每一截面輪廓的激光掃描路徑,并生成相應(yīng)的NC代碼,或直接驅(qū)動(dòng)激光器與數(shù)控工作臺(tái)進(jìn)行激光加工。激光掃描路徑最常見的為直線光柵掃描法與輪廓偏移法,本文主要采用輪廓光柵掃描法進(jìn)行填充。
光柵填充方式一般先判別內(nèi)外環(huán),再利用求交點(diǎn)的方式進(jìn)行填充[3]。本文則直接利用交點(diǎn)來進(jìn)行填充,這樣可以提高計(jì)算效率。具體方法如下:
1)獲取需掃描填充區(qū)域的最小包圍盒,并根據(jù)激光掃描工藝參數(shù)中的單道熔覆寬度及搭接率,計(jì)算光柵掃描間隔;
2)按指定方向(如X、Y軸)生成掃描線,如圖7(a)所示;
3)求出每條掃描線與當(dāng)前層中所有輪廓的交點(diǎn),如P1、P2、……、Pn;
4)統(tǒng)計(jì)交點(diǎn)數(shù),并將交點(diǎn)按掃描線方向從小到大進(jìn)行排序;
圖7 光柵填充示意圖
5)按點(diǎn)從小到大的順序生成掃描線,掃描線為P1P2、P3P4、P5P6、……。
生成的填充圖如圖7(b)所示。
特殊情況處理:
1)當(dāng)交點(diǎn)數(shù)為奇數(shù)時(shí),則應(yīng)根據(jù)情況進(jìn)行具體分析:
2)極值奇點(diǎn)[4]:如果(yi-yi-1)(yi+1-yi)≤0,則稱Pi為極值奇點(diǎn)。此時(shí)規(guī)定按兩個(gè)交點(diǎn)計(jì)算,如圖8(a)所示。
3)非極值奇點(diǎn):如果(yi-yi-1)(yi+1-yi)>0,則稱Pi為非極值奇點(diǎn)。此時(shí)規(guī)定按一個(gè)交點(diǎn)計(jì)算,如圖8(b)所示。
圖8 極值奇點(diǎn)判斷示意圖
當(dāng)輪廓的一條邊在掃描線上時(shí),此時(shí)不考慮它和掃描線的交點(diǎn),交點(diǎn)數(shù)視為零。
在光柵掃描填充中,如果完全采用X軸或Y軸方向進(jìn)行掃描填充,這樣所制備的金屬零件易形成組織結(jié)構(gòu)偏析,對(duì)提高成型件的質(zhì)量不利。因此在實(shí)際應(yīng)用中,將每相鄰兩層之間的掃描相位差規(guī)定為某一特定夾角θ,通常選擇的θ值有90°、105°、120°等[5,6]。在程序設(shè)計(jì)中將角度設(shè)計(jì)成變量,用戶可以根據(jù)需要,自己確定。圖9為利用每層相位角相差105°的方式進(jìn)行填充的顯示結(jié)果圖。其中圖9(a)為拉伸試樣光柵填充圖,圖9(b)為可摘除局部義齒支架光柵填充圖。圖10為采用相位差為105°的激光快速成型加工的實(shí)物圖。
圖9 利用相位角差值為105°的填充顯示結(jié)果圖
圖10 拉伸試樣、義齒支架填充相位差105 °實(shí)物圖
在自行開發(fā)了一個(gè)用于金屬零件激光快速成型加工的軟件系統(tǒng)的基礎(chǔ)上,詳細(xì)論述了軟件系統(tǒng)開發(fā)中的主要關(guān)鍵技術(shù),實(shí)踐證明,這些技術(shù)對(duì)于保證成型零件的質(zhì)量和提高加工效率具有很大的作用。
[1] P.A. Kobryn,E.H.Moore,S.L.Semiatin.The effect of laser power and traverse speed on microstructure, porosity,and build height in laser-deposited Ti-6Al-4V.Scripta mater,2000,43(4): 299-305.
[2] 江早.OpenGL VC/VB圖形編程.(第一版)[M].北京:科學(xué)出版社,2001:3-8.
[3] 劉斌,肖躍加,韓明,等.實(shí)體截面輪廓內(nèi)外邊界的自動(dòng)識(shí)別算法研究[J].華中理工大學(xué)學(xué)報(bào),1996,24(10):23-25.
[4] 常明,朱林.計(jì)算機(jī)圖形學(xué).(第二版)[M].武漢:華中科技大學(xué)出版社,2001:141.
[5] M,T.Ensz,M.L.Grif fi th,L.D.Harwell.Software Development for Laser Engineered Net Shaping.Solid Freeform Fabrication Proceedings,1998:359-366.
[6] Kamran Aamir Mumtaz,Poonjolai Erasenthiran,Neil Hopkinson.High density selective laser melting of Waspaloy. Journal of materials processing technology, 2 0 0 8 (195) :77-87.