一種三維打印大光斑掃描路徑生成方法
【專利摘要】本發(fā)明公開了一種三維打印大光斑高效掃描路徑生成方法,包括:輸入模型切片文件,最大、最小光斑半徑rmax、rmin,路徑重疊參數(shù)f;對當(dāng)前層切片輪廓邊界bi偏置rmin生成小光斑輪廓掃描路徑ps,對ps偏置rmin得到小光斑掃描后內(nèi)邊界bs;對bs偏置rmax得到大光斑輪廓掃描路徑pb,對pb偏置rmax得到大光斑掃描后內(nèi)邊界bb;對pb偏置-rmax得到大光斑掃描后內(nèi)邊界bg,對bs、bg進(jìn)行布爾減操作;在未掃描區(qū)域內(nèi)生成小光斑平行掃描路徑;連接所有大、小光斑掃描路徑,直至打印完成輸出掃描路徑。本發(fā)明采用小光斑掃描和大光斑掃描結(jié)合,對未掃描區(qū)域用小光斑填充消除,同時(shí)提高零件成形的精度和效率。
【專利說明】一種三維打印大光斑掃描路徑生成方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及三維打印CAM路徑規(guī)劃領(lǐng)域,尤其涉及一種三維打印大光斑高效掃描路徑生成方法。
【背景技術(shù)】
[0002]三維打印技術(shù)是依托于信息技術(shù)以及材料科學(xué)等多學(xué)科發(fā)展起來的尖端技術(shù)。它最早起源于19世紀(jì)末的照相雕塑和地貌成形技術(shù),并在20世紀(jì)80年代得以發(fā)展和推廣。三維打印自誕生之日起,便被人們定義為一項(xiàng)顛覆傳統(tǒng)生產(chǎn)方式的革命性技術(shù),已成為引領(lǐng)未來全球制造業(yè)發(fā)展趨勢的關(guān)鍵詞,是繼蒸汽機(jī)、電力、互聯(lián)網(wǎng)后最偉大的發(fā)明。美國《時(shí)代》周刊已將三維打印產(chǎn)業(yè)列為“美國十大增長最快的工業(yè)”,英國《經(jīng)濟(jì)學(xué)人》雜志甚至將以三維打印為代表的一系列數(shù)字化生產(chǎn)方式成為第三次工業(yè)命。中國物聯(lián)網(wǎng)校企聯(lián)盟把三維打印技術(shù)稱作:19世紀(jì)的思想,20世紀(jì)的技術(shù),21世紀(jì)的市場。經(jīng)過二十多年的發(fā)展,三維打印先后出現(xiàn)了多種不同工藝形式,如:光固化(SLA)、疊層實(shí)體制造(L0M)、選擇性激光燒結(jié)(SLS )、熔融沉積制造(FDM)、實(shí)體磨削固化(SGC)等。
[0003]三維打印技術(shù)是一種典型的“增材”制造技術(shù),無論是上述哪種打印工藝,其基本原理大致相同,即在加工中,零件由打印材料(多為流體或粉末)在實(shí)體上逐層堆積固化而成。因此,三維打印也稱為生長型制造或分層制造。從軟件角度而言,三維打印模型經(jīng)歷了計(jì)算機(jī)輔助設(shè)計(jì)(CAD)和計(jì)算機(jī)輔助制造(CAM)兩個(gè)過程。三維打印實(shí)體模型一般在通用CAD軟件里設(shè)計(jì)完成,如Solidworks、CATIA等,并將實(shí)體模型保存成STL (三角面片模型)格式。然后將實(shí)體模型導(dǎo)入三維打印專用CAM軟件,如Magics RP,CAM軟件輸出一般為實(shí)體模型的切片文件。切片文件一般僅包含每一層掃描區(qū)域的輪廓曲線信息,在三維打印設(shè)備讀取模型切片文件后,不能直接用這些輪廓信息直接驅(qū)動激光或噴頭進(jìn)行堆積加工,在此之前,必須在每層打印區(qū)域內(nèi)生成掃描路徑。
[0004]現(xiàn)有關(guān)于三維打印技術(shù)要點(diǎn)的文獻(xiàn)多集中在打印工藝、材料、機(jī)理以及硬件設(shè)備搭建等方面的研究,而針對三維打印中掃描路徑生成問題的報(bào)道極少。劉厚才結(jié)合快速成形系統(tǒng)中CAD模型經(jīng)切片后得到輪廓環(huán)數(shù)據(jù)的特點(diǎn),提出了一種基于輪廓邊的位圖生成算法,位圖數(shù)據(jù)的生成采用掃描線填充方式,該位圖生成算法很好地解決了用常規(guī)的活性邊表法難以判斷和處理的當(dāng)掃描線通過水平輪廓邊所帶來的奇點(diǎn)問題(參見劉厚才,光固化三維打印快速成形關(guān)鍵技術(shù)研究,華中科技大學(xué)博士論文,2009)。吳懋亮、華麟銎研究了快速成形中常用的SLC文件的讀取方式,并在切片輪廓曲線內(nèi)生成平行掃描路徑;采用奇偶規(guī)則判斷交點(diǎn)是否在輪廓區(qū)域內(nèi),區(qū)分了掃描線的虛實(shí)特性,并對輪廓曲線垂直或重合于掃描線、極值點(diǎn)和凹拐點(diǎn)這幾種特殊情況進(jìn)行了討論(參見吳懋亮,華麟銎,SLC文件的掃描路徑生成方法,機(jī)械與電子,2011,11:18-20 )。
[0005]根據(jù)上述文獻(xiàn)分析,現(xiàn)有技術(shù)可能存在的問題有:一、直接在切片輪廓區(qū)域內(nèi)生成平行掃描路徑,在輪廓邊緣可能產(chǎn)生類似階梯的固化形狀,影響零件成形的表面精度;二、全程采用較小光斑半徑生成掃描路徑,且光斑半徑固定不變,掃描效率較低。
【發(fā)明內(nèi)容】
[0006]為了解決現(xiàn)有技術(shù)在三維打印掃描路徑生成中存在的問題,提高三維打印的精度和效率,本發(fā)明提供一種三維打印大光斑高效掃描路徑生成方法。本方法首先在輪廓邊緣生成小光斑偏置輪廓掃描路徑,該路徑主要用于保證輪廓邊緣的掃描精度;在該路徑內(nèi)部,生成大光斑輪廓和平行掃描路徑,該路徑主要用來提高輪廓內(nèi)部的掃描效率。針對大光斑偏置時(shí)可能產(chǎn)生未掃描區(qū)域的問題,首先采用平面區(qū)域布爾運(yùn)算找出這些未掃描區(qū)域,然后在這些區(qū)域內(nèi)部以較小光斑生成平行掃描路徑。
[0007]一種三維打印大光斑掃描路徑生成方法,包括如下步驟:
[0008]步驟1、輸入待打印零件模型的η層切片文件、最大光斑半徑值、最小光斑半徑值、以及路徑重疊參數(shù),其中:最大光斑半徑值記作rmax,最小光斑半徑值記作rmin,路徑重疊參數(shù)記作f ;記第i層切片為當(dāng)前切片,n, i為大于零的自然數(shù);[0009]步驟2、記當(dāng)前切片的輪廓曲線為bi;對M扁置距離rmin生成小光斑輪廓掃描路徑,記作Ps,對Ps繼續(xù)偏置rmin得到小光斑掃描后內(nèi)邊界,記作bs ;
[0010]步驟3、對以上得到的bs偏置距離rmax生成大光斑輪廓掃描路徑,記作Pb,對Pb繼續(xù)偏置rmax得到大光斑掃描后內(nèi)邊界,記作bb ;
[0011]步驟4、在以上得到的bb所圍成的區(qū)域內(nèi)以2f.rfflax為路徑間距生成大光斑平行掃描路徑;
[0012]步驟5、對pb偏置-r_得到大光斑掃描后外邊界,記作bg,對由bs和bg圍成的區(qū)域進(jìn)行相減布爾操作,記得到的差區(qū)域邊界為bd,bd=bs-bg, bd即為大光斑未掃描到的區(qū)域;
[0013]步驟6、在上述bd圍成的未掃描區(qū)域內(nèi)生成小光斑平行掃描路徑;
[0014]步驟7、連接上述生成的所有大、小光斑掃描路徑,更新i值,得到的第i層切片作為當(dāng)前切片,跳至步驟2直至打印完成;輸出掃描路徑。
[0015]本發(fā)明在說明過程中各術(shù)語以三維打印中最常見的光固化(SLA)工藝為例,但生成高效掃描路徑的方法可推廣到其他三維打印工藝上,如熔融沉積制造(FDM)、選擇性激光燒結(jié)(SLS)等。
[0016]所述步驟I中輸入的模型切片文件在上一層三維打印CAM軟件(如Magics RP)中獲得,該文件由一系列相互平行的切片層疊組成。每層切片包含若干輪廓曲線(或多邊形),這些曲線嵌套圍成了該層上需要打印的區(qū)域,其中表示區(qū)域外邊界的曲線方向?yàn)槟鏁r(shí)針,表示區(qū)域內(nèi)邊界的曲線方向?yàn)轫槙r(shí)針。生成的路徑包括兩種類型:一是基于輪廓曲線偏置得到的輪廓掃描路徑,二是在輪廓曲線內(nèi)部生成的平行掃描路徑。
[0017]作為優(yōu)選,所述的rmin根據(jù)三維打印機(jī)的最高打印精度確定;如對一般光固化打印機(jī),所述的rmin為十分之一毫米級別,例如為0.05~0.1毫米;所述的rmax根據(jù)所用三維打印機(jī)所能達(dá)到的最大光斑以及產(chǎn)品精度要求確定。所述最大光斑半徑值為毫米級別,如I~5mm等。增加光斑半徑可以顯著提高三維打印掃描效率,但如果處理不當(dāng),會出現(xiàn)未掃描區(qū)域的問題。輸入的路徑重疊參數(shù)f反映了兩條相鄰路徑之間重疊情況,一般取值為:
0.5≤f≤1。
[0018]進(jìn)一步地,所述步驟2中輪廓曲線h表示圍成該層打印區(qū)域的多條曲線,包括區(qū)域外邊界曲線(逆時(shí)針)和區(qū)域內(nèi)邊界曲線(順時(shí)針)。對曲線進(jìn)行偏置時(shí),規(guī)定:當(dāng)偏置值r為正時(shí),逆時(shí)針曲線向內(nèi)偏置,順時(shí)針曲線向外偏置;當(dāng)偏置值r為負(fù)時(shí),偏置效果剛好相反。
[0019]上述對曲線進(jìn)行偏置的方法可參考現(xiàn)有相關(guān)文獻(xiàn)或現(xiàn)有開放源代碼,前提是偏置的時(shí)間復(fù)雜度必須為線性或接近線性,且能夠完美地處理包括:局部自相交消除、全局無用環(huán)消除、帶洞(內(nèi)邊界)打印區(qū)域偏置等問題。
[0020]進(jìn)一步地,所述步驟2中小光斑輪廓掃描路徑Ps通過對匕偏置rmin得到,該路徑主要用于保證零件的內(nèi)、外表面打印的精細(xì)程度,提高三維打印精度。當(dāng)小光斑沿路徑PsH描過后,會得到兩條光斑邊界曲線,其中內(nèi)邊界可通過對Ps進(jìn)一步偏置rmin得到,即bs。
[0021]進(jìn)一步地,所述步驟3中大光斑輪廓掃描路徑Pb通過對bs偏置rmax得到,該路徑主要用于避免步驟4中生成的大光斑平行掃描路徑掃描后出現(xiàn)的未掃描區(qū)域。但由于pb是由bs經(jīng)過大距離偏置得到,當(dāng)大光斑沿Pb掃描過后,難以避免地會在bs、pb曲線之間的區(qū)域內(nèi)留下未掃描區(qū)域。當(dāng)大光斑沿路徑Pb掃描過后,會得到兩條光斑邊界曲線,其中內(nèi)邊界可通過對Pb進(jìn)一步偏置rmax得到,即bb,bb用來標(biāo)識步驟4中需要大光斑填充的區(qū)域。
[0022]作為優(yōu)選,所述步驟4中在大光斑掃描后內(nèi)邊界內(nèi)部生成大光斑平行掃描路徑的基本步驟如下:設(shè)定當(dāng)前切片所在平面的坐標(biāo)系為X-Y坐標(biāo)系;
[0023]步驟4.1、找出bb在Y軸方向上的最高點(diǎn)和最低點(diǎn),最高點(diǎn)記作ymax,最低點(diǎn)記作ymin,并令y=ymin,其中線為平行與x軸平行的一條直線;
[0024]步驟4.2、令 y=y+2f.rmax,用 y 線和 bb 求交;
[0025]步驟4.3、對以上得到的所有交點(diǎn)在y上從左到右依次排序,第一個(gè)交點(diǎn)記作第O個(gè)點(diǎn),第2個(gè)點(diǎn)記作第I個(gè)點(diǎn),以此類推;
[0026]步驟4.4、儲存位于偶數(shù)和奇數(shù)點(diǎn)序之間的線段為有效掃描線段;
[0027]步驟4.5、跳至步驟4.2直至y ^ y_,完成在大光斑掃描后內(nèi)邊界內(nèi)部大光斑平行掃描路徑的生成。
[0028]為了提高上述步驟4.2中y線和曲線bb的求交效率,所述的步驟4.2中,用y線和bb求交采用掃描線法,即:首先對bb上所有離散線段的端點(diǎn)在Y軸方向上從低到高進(jìn)行排序(qsort), y線從低到高依次掃過這些端點(diǎn),同時(shí)保存和當(dāng)前y線相交的線段并計(jì)算交點(diǎn);當(dāng)y線跳至下一位置時(shí),剔除已經(jīng)被掃描過且和y線已經(jīng)不相交的線段,添加和I線相交的線段,并重新計(jì)算I線和這些線段的交點(diǎn),直至I線到達(dá)最高點(diǎn)。
[0029]進(jìn)一步地,所述步驟5中大光斑掃描后外邊界bg通過對大光斑輪廓路徑偏置_rmax得到,負(fù)號表示對逆時(shí)針路徑曲線向外偏置,對順時(shí)針路徑曲線向內(nèi)偏置。bg表示了大光斑沿輪廓路徑Pb掃描過后得到的真實(shí)外邊界曲線。對曲線bs和bg表示的區(qū)域進(jìn)行“相減”布爾操作,可得曲線bs、pb之間的大光斑未掃描區(qū)域bd。這里對平面區(qū)域進(jìn)行布爾操作具體方法可參考現(xiàn)有文獻(xiàn)或現(xiàn)有開放源代碼,前提是時(shí)間復(fù)雜度必須接近線性。
[0030]進(jìn)一步地, 所述步驟6中為簡單起見,直接在找到的未掃描區(qū)域內(nèi)用最小光斑rmin填充,填充的路徑同樣為平行掃描線,但相鄰平行掃描線間的間距為2f.rmin。但如果不考慮計(jì)算復(fù)雜度或這些未掃描區(qū)域面積仍然較大,可將這些區(qū)域作為步驟I的輸入,設(shè)置相應(yīng)的合理的光斑半徑rmax、rmin值,從而遞歸地在未掃描區(qū)域內(nèi)生成輪廓和平行掃描路徑。或者,與生成大光斑平行掃描路徑類似,所述的步驟6中,在未掃描區(qū)域內(nèi)生成小光斑平行掃描路徑時(shí)也采用掃描線法,即:首先對bd上所有離散線段的端點(diǎn)在Y軸方向上從低到高進(jìn)行排序,I線從低到高依次掃過這些端點(diǎn),同時(shí)保存和當(dāng)前I線相交的線段并計(jì)算交點(diǎn);當(dāng)y線跳至下一位置時(shí),剔除已經(jīng)被掃描過且和y線已經(jīng)不相交的線段,添加和I線相交的線段,并重新計(jì)算I線和這些線段的交點(diǎn),直至I線到達(dá)最高點(diǎn)。
[0031]進(jìn)一步地,所述步驟7中連接各類掃描路徑時(shí)需要注意盡量減少空走行程,提高打印效率;同時(shí)結(jié)合實(shí)際使用的三維打印工藝以及輸入的工藝參數(shù),如掃描順序是先掃周邊的輪廓路徑還是先掃中心的平行路徑。
[0032]本發(fā)明一種三維打印大光斑高效掃描路徑生成方法,具有的有益的效果是:
[0033]對每層切片的輪廓邊界處以小光斑進(jìn)行輪廓掃描,從而保證輪廓打印精度;在輪廓內(nèi)部以大光斑進(jìn)行輪廓和平行掃描,從而提高層上掃描效率;針對大光斑輪廓掃描可能出現(xiàn)的未掃描區(qū)域的問題,采用布爾運(yùn)算找出這些未掃描區(qū)域并用小光斑進(jìn)行平行掃描填充。
【專利附圖】
【附圖說明】
[0034]圖1為本發(fā)明三維打印大光斑高效掃描路徑生成方法流程圖。
[0035]圖2 Ca)為三維打印中輸入的切片模型圖;圖2 (b)為圖2 Ca)某一層上輪廓邊界圖。
[0036]圖3為用大、小光斑生成的輪廓和平行掃描路徑示意圖。
[0037]圖4為平行掃描路徑生成步驟以及有效掃描線段收集方法示意圖。
[0038]圖5為大光斑輪廓掃描后未掃描到區(qū)域識別方法示意圖。
[0039]圖6為實(shí)例測試小狗STL模型圖。
[0040]圖7為小狗模型中某一層切片輪廓以及生成的掃描路徑圖。
[0041]圖8為圖7中未掃描區(qū)域A中生成的小光斑填充路徑放大圖。
【具體實(shí)施方式】
[0042]下面結(jié)合附圖和實(shí)施例對本發(fā)明技術(shù)方案做進(jìn)一步詳細(xì)說明,以下實(shí)施例不構(gòu)成對本發(fā)明的限定。
[0043]本發(fā)明三維打印大光斑高效掃描路徑生成方法的流程圖如圖1所示,具體實(shí)施步驟如下:
[0044]步驟101、輸入包含η層切片的模型文件,最大、最小光斑半徑1*_、rmin,路徑重疊參數(shù)f等相關(guān)工藝參數(shù);并令i=l ;n為大于零的自然數(shù);
[0045]輸入的模型切片文件在上一層三維打印CAM軟件(如Magics RP)中獲得,該文件由一系列相互平行的切片層疊而成,如圖2 (a)所示,圖2 (a)為輸入的某一切片模型圖。每層切片包含若干輪廓曲線(或多邊形),這些曲線嵌套圍成了該層上需要打印的區(qū)域,其中表示區(qū)域外邊界的曲線方向?yàn)槟鏁r(shí)針,表示區(qū)域內(nèi)邊界的曲線方向?yàn)轫槙r(shí)針,如圖2 (b)所示,圖2 (b)為圖2 (a)中某一層切片的結(jié)構(gòu)示意圖。
[0046]輸入的最小光斑半徑值rmin根據(jù)所用三維打印機(jī)的最高打印精度確定,如對一般光固化打印機(jī),rmin的取值為十分之一毫米級別,如0.1mm。輸入的最大光斑半徑值rmax根據(jù)所用三維打印機(jī)所能達(dá)到的最大光斑以及當(dāng)前打印工藝情況確定,rfflax的取值為毫米級別,如2mm。輸入的路徑重疊參數(shù)f反映了兩條相鄰路徑之間重疊情況,一般取值為:0.5≤f≤I。
[0047]步驟102、對第i層切片輪廓邊界匕偏置rmin生成小光斑輪廓掃描路徑ps,對Ps進(jìn)一步偏置rmin得到小光斑掃描后內(nèi)邊界bs。
[0048]輪廓曲線匕表示圍成該層打印區(qū)域的多條曲線,包括區(qū)域外邊界曲線(逆時(shí)針)和區(qū)域內(nèi)邊界曲線(順時(shí)針),如圖2 (b)所示。對曲線進(jìn)行偏置時(shí),規(guī)定:當(dāng)偏置值r為正時(shí),逆時(shí)針曲線向內(nèi)偏置,順時(shí)針曲線向外偏置;當(dāng)偏置值r為負(fù)時(shí),偏置效果剛好相反。
[0049]如圖3所示,圖中最外層粗線表示輪廓邊界bi;該圖中只有外輪廓,沒有內(nèi)輪廓;在輪廓邊界h內(nèi)側(cè)的偏置實(shí)線即為小光斑輪廓掃描路徑ps,小光斑輪廓掃描路徑Ps內(nèi)側(cè)的虛線為小光斑掃描后內(nèi)邊界bs。圖3中曲線輪廓邊界h和小光斑掃描后內(nèi)邊界bs之間的區(qū)域?yàn)樾」獍?02的輪廓掃描區(qū)域。
[0050]上述對曲線進(jìn)行偏置的方法可參考現(xiàn)有相關(guān)文獻(xiàn)或現(xiàn)有開放源代碼,前提是偏置的時(shí)間復(fù)雜度必須為線性或接近線性,且能夠完美地處理包括:局部自相交消除、全局無用環(huán)消除、帶洞(內(nèi)邊界)打印區(qū)域偏置等問題。例如本實(shí)施例中可采用Choi等提出的PWID法,該方法能在接近線性時(shí)間內(nèi)輸出無自相交的偏置線(參見Choi BK, ParkSC, A Pair-Wise Offset Algorithm for2d Point-Sequence Curve, Computer-AidedDesign, 31(1999):735-745.)。
[0051]步驟103、對小光斑掃描后內(nèi)邊界bs偏置rmax得到大光斑輪廓掃描路徑pb,對大光斑輪廓掃描路徑Pb進(jìn)一步偏置rmax得到大光斑掃描后內(nèi)邊界bb。
[0052]如圖3所示,大光斑輪廓掃描路徑Pb通過對小光斑掃描后內(nèi)邊界bs偏置得到,該路徑主要用于避免以下步驟104中生成的大光斑平行掃描路徑掃描后出現(xiàn)的未掃描區(qū)域。但由于大光斑輪廓掃描路徑Pb是由小光斑掃描后內(nèi)邊界bs經(jīng)過大距離偏置得到,當(dāng)大光斑301沿大光斑輪廓掃描路徑Pb掃描過后,難以避免地會在小光斑掃描后內(nèi)邊界bs、大光斑輪廓掃描路徑Pb曲線之間的區(qū)域內(nèi)留下未掃描區(qū)域303,如圖3左邊所示的陰影區(qū)域。當(dāng)大光斑輪廓掃描路徑Pb掃描過后,會得到兩條光斑邊界曲線,其中內(nèi)邊界可通過對大光斑輪廓掃描路徑Pb進(jìn)一步偏置rmax得到,即大光斑掃描后內(nèi)邊界bb,大光斑掃描后內(nèi)邊界bb用來標(biāo)識步驟104中需要大光斑填充的區(qū)域。
[0053]步驟104、在大光斑掃描后內(nèi)邊界bb圍成的區(qū)域內(nèi)以2f.rfflax為路徑間距生成大光斑平行掃描路徑。
[0054]如圖4所示,在大光斑掃描后內(nèi)邊界bb內(nèi)部生成大光斑平行掃描路徑的基本步驟如下(以XY平面為例,設(shè)平行掃描線平行于X軸):
[0055]步驟104.1、找出大光斑掃描后內(nèi)邊界bb在Y方向上的最高點(diǎn)ymax和最低點(diǎn)ymin,并令y=ymin。且y線為與X軸平行的直線。
[0056]步驟104.2、y=y+2f.rmax,用y線(平行于X軸)和大光斑掃描后內(nèi)邊界bb求交。
[0057]步驟104.3、對以上得到的所有交點(diǎn)在y線上從左到右依次排序,如圖4中交點(diǎn)P。、P” …、P9。
[0058]步驟104.4、儲存位于偶數(shù)和奇數(shù)點(diǎn)序之間的線段為有效掃描線段,如圖4中線段P0Ppp2PpP4PpP6PpP8Pi^
[0059]步驟104.5、跳至步驟104.2直至y≥ymax。
[0060]為了提高上述步驟104.2中y線和大光斑掃描后內(nèi)邊界bb的求交效率,可采用掃描線法。該方法首先對大光斑掃描后內(nèi)邊界bb上所有離散線段的端點(diǎn),在Y軸方向上從低到高進(jìn)行快速排序(qsort), y線從低到高依次掃過這些端點(diǎn),同時(shí)保存和當(dāng)前y線相交的線段并計(jì)算交點(diǎn);當(dāng)I線跳至下一位置時(shí),剔除已經(jīng)被掃描過且和y線已經(jīng)不相交的線段,添加和I線相交的線段,并重新計(jì)算I線和這些線段的交點(diǎn),直至I線到達(dá)最高點(diǎn)。
[0061 ] 步驟105、對大光斑輪廓掃描路徑Pb偏置_rmax得到大光斑掃描后內(nèi)邊界bg,對小光斑掃描后內(nèi)邊界bs、大光斑掃描后內(nèi)邊界bg進(jìn)行布爾減操作,大光斑未掃描區(qū)域bd=bs_bg。
[0062]如圖5所不,大光斑掃描后外邊界bg通過對大光斑輪廓掃描路徑Pb偏置_rmax得到,負(fù)號表示對逆時(shí)針路徑曲線向外偏置,對順時(shí)針路徑曲線向內(nèi)偏置。大光斑掃描后外邊界bg表示了大光斑輪廓掃描路徑Pb掃描過后得到的真實(shí)外邊界曲線。對小光斑掃描后內(nèi)邊界bs和大光斑掃描后內(nèi)邊界bg表示的區(qū)域進(jìn)行“相減”布爾操作,可得曲線小光斑掃描后內(nèi)邊界bs、大光斑輪廓掃描路徑pb之間的大光斑未掃描區(qū)域bd,如圖5所示的陰影區(qū)域。這里對平面區(qū)域進(jìn)行布爾操作具體方法可參考現(xiàn)有文獻(xiàn)或現(xiàn)有開放源代碼,前提是時(shí)間復(fù)雜度必須接近線性。
[0063]步驟106、在大光斑未掃描區(qū)域bd圍成的未掃描區(qū)域內(nèi)以2f.rmin為路徑間距生成小光斑平行掃描路徑。
[0064]為簡單起見,步驟106直接在找到的未掃描區(qū)域內(nèi)用最小光斑rmin填充,填充的路徑同樣為平行掃描線,但相鄰平行掃描線間的間距為2f Tmintl但如果不考慮計(jì)算復(fù)雜度或這些未掃描 區(qū)域面積仍然較大,可將這些區(qū)域作為步驟101的輸入,設(shè)置相應(yīng)的合理的光斑半徑rmax、rfflin值,從而遞歸地在未掃描區(qū)域內(nèi)生成輪廓和平行掃描路徑。
[0065]步驟107、連接在當(dāng)前層上生成的所有大、小光斑掃描路徑,i++(更新i值,例如令i=i+l),跳至步驟102直至打印完成(即i≥η);輸出掃描路徑。
[0066]需要注意的是,連接各類掃描路徑時(shí)需要注意盡量減少空走行程,提高打印效率;同時(shí)結(jié)合實(shí)際使用的三維打印工藝以及輸入的工藝參數(shù),如掃描順序是先掃周邊的輪廓路徑還是先掃中心的平行路徑。
[0067]本發(fā)明的一個(gè)典型實(shí)施實(shí)例如下:
[0068]1.本例中選擇的待打印零件為一小狗STL模型,如圖6所示。該模型尺寸約為350mmX 350mmX 12mm,其中 12mm 為模型高度。
[0069]2.將小狗STL模型導(dǎo)入商用軟件Magics RP生成切片文件,然后將切片文件導(dǎo)入用C++語言按本發(fā)明方法編寫的測試程序中。
[0070]2.在測試程序中,選用三維打印的工藝為光固化,最大光斑直徑設(shè)為4mm,最小光斑直徑設(shè)為0.1mm,即rmax=2mm,rmin=0.05mm ;路徑重疊參數(shù)f=l,即相鄰兩路徑之間互不重疊。
[0071]圖7給出了對小狗模型切片文件其中一層切片生成的掃描路徑。該層切片總共包含9條輪廓曲線,其中I個(gè)為外輪廓700,剩余8個(gè)為內(nèi)輪廓,打印區(qū)域由這9條內(nèi)、外輪廓曲線包圍而成;生成的掃描路徑包含小光斑輪廓掃描路徑802(圖8所示)、大光斑輪廓掃描路徑701、大光斑平行掃描路徑702以及小光斑平行掃描路徑801 (圖8所示)。圖7中較為致密的黑色區(qū)域即為小光斑平行掃描路徑703,這部分掃描路徑用來填充大光斑輪廓掃描后留下的未掃描區(qū)域。圖8給出了圖7中某塊未掃描區(qū)域A的小光斑平行掃描路徑的放大圖。由圖7、圖8可知,本發(fā)明能較好地處理三維打印中大光斑掃描路徑的生成問題,提高打印效率和精度。
[0072]以上所述僅是本發(fā)明的優(yōu)選實(shí)施方式,應(yīng)當(dāng)指出,對于本【技術(shù)領(lǐng)域】的一般技術(shù)人員來說,本發(fā)明還可以有各種更改和變化。在不脫離本發(fā)明原理的前提下,所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種三維打印大光斑掃描路徑生成方法,其特征在于,包括如下步驟: 步驟1、輸入待打印零件模型的n層切片文件、最大光斑半徑值、最小光斑半徑值、以及路徑重疊參數(shù),其中:最大光斑半徑值記作rmax,最小光斑半徑值記作rmin,路徑重疊參數(shù)記作f ;記第i層切片為當(dāng)前切片,n, i為大于零的自然數(shù); 步驟2、記當(dāng)前切片的輪廓曲線為h,對匕偏置距離rmin生成小光斑輪廓掃描路徑,記作Ps,對Ps繼續(xù)偏置rmin得到小光斑掃描后內(nèi)邊界,記作bs ; 步驟3、對以上得到的bs偏置距離rmax生成大光斑輪廓掃描路徑,記作pb,對Pb繼續(xù)偏置rmax得到大光斑掃描后內(nèi)邊界,記作bb ; 步驟4、在以上得到的bb所圍成的區(qū)域內(nèi)以2f.rfflax為路徑間距生成大光斑平行掃描路徑; 步驟5、對pb偏置-rmax得到大光斑掃描后外邊界,記作bg,對由bs和bg圍成的區(qū)域進(jìn)行相減布爾操作,記得到的差區(qū)域邊界為bd,bd=bs-bg, bd即為大光斑未掃描到的區(qū)域; 步驟6、在上述bd圍成的未掃描區(qū)域內(nèi)生成小光斑平行掃描路徑; 步驟7、連接上述生成的所有大、小光斑掃描路徑,更新i值,得到的第i層切片作為當(dāng)前切片,跳至步驟2直至打印完成;輸出掃描路徑。
2.根據(jù)權(quán)利要求1所述的三維打印大光斑掃描路徑生成方法,其特征在于,所述的rmin根據(jù)所用三維打印機(jī)的最高打印精度確定;所述的rmax根據(jù)所用三維打印機(jī)所能達(dá)到的最大光斑以及產(chǎn)品精度要求確定。
3.根據(jù)權(quán)利要求1所述的三維打印大光斑掃描路徑生成方法,其特征在于,所述的rmax為毫米級別;所述的rmin為十分之一毫米級別;所述的f滿足:0.5 ≤ f≤1。
4.根據(jù)權(quán)利要求3所述的三維打印大光斑掃描路徑生成方法,其特征在于,所述的rmax為I~5_ ;所述的rmin為0.05~0.1毫米。
5.根據(jù)權(quán)利要求1所述的三維打印大光斑掃描路徑生成方法,其特征在于,所述步驟4中在大光斑掃描后內(nèi)邊界內(nèi)部生成大光 斑平行掃描路徑的基本步驟如下:設(shè)定當(dāng)前切片所在平面的坐標(biāo)系為X-Y坐標(biāo)系; 步驟4.1、找出bb在Y軸方向上的最高點(diǎn)和最低點(diǎn),最高點(diǎn)記作ymax,最低點(diǎn)記作ymin,并令y=ynin,其中-.1線為與X軸平行的一條直線; 步驟4.2、令y=y+2f.rmax,用y線和bb求交; 步驟4.3、對以上得到的所有交點(diǎn)在y上從左到右依次排序,第一個(gè)交點(diǎn)記作第O個(gè)點(diǎn),第2個(gè)點(diǎn)記作第I個(gè)點(diǎn),以此類推; 步驟4.4、儲存位于偶數(shù)和奇數(shù)點(diǎn)序之間的線段為有效掃描線段; 步驟4.5、跳至步驟4.2直至y ≥ yfflax,完成在大光斑掃描后內(nèi)邊界內(nèi)部大光斑平行掃描路徑的生成。
6.根據(jù)權(quán)利要求5所述的三維打印大光斑掃描路徑生成方法,其特征在于,所述的步驟4.2中,用y線和bb求交采用掃描線法,即:首先對bb上所有離散線段的端點(diǎn)在Y軸方向上從低到高進(jìn)行排序,y線從低到高依次掃過這些端點(diǎn),同時(shí)保存和當(dāng)前I線相交的線段并計(jì)算交點(diǎn);當(dāng)I線跳至下一位置時(shí),剔除已經(jīng)被掃描過且和y線已經(jīng)不相交的線段,添加和y線相交的線段,并重新計(jì)算1線和這些線段的交點(diǎn),直至I線到達(dá)最高點(diǎn)。
7.根據(jù)權(quán)利要求5所述的三維打印大光斑掃描路徑生成方法,其特征在于,所述的步驟6中,在未掃描區(qū)域內(nèi)生成小光斑平行掃描路徑的路徑間距為2f.rmin。
8.根據(jù)權(quán)利要求7所述的三維打印大光斑掃描路徑生成方法,其特征在于,所述的步驟6中,在未掃描區(qū)域內(nèi)生成小光斑平行掃描路徑時(shí)采用掃描線法,即:首先對匕上所有離散線段的端點(diǎn)在Y軸方向上從低到高進(jìn)行排序,y線從低到高依次掃過這些端點(diǎn),同時(shí)保存和當(dāng)前y線相交的線段并計(jì)算交點(diǎn);當(dāng)I線跳至下一位置時(shí),剔除已經(jīng)被掃描過且和y線已經(jīng)不相交的線段,添加和y線相交的線段,并重新計(jì)算y線和這些線段的交點(diǎn),直至y線到達(dá)最1?點(diǎn)。
【文檔編號】B22F3/105GK103894608SQ201410074807
【公開日】2014年7月2日 申請日期:2014年3月4日 優(yōu)先權(quán)日:2014年3月4日
【發(fā)明者】傅建中, 林志偉, 賴金濤, 付國強(qiáng), 賀永, 沈洪垚 申請人:浙江大學(xué)