摘要:在基于FDM的3D打印技術(shù)中,其中填充算法是核心技術(shù)之一,因不同的填充算法在處理速度,成型精度,機械強度,軌跡規(guī)劃都有差別。而目前填充算法存在成型精度低,不易節(jié)省材料,機械強度差,對機器本身容易磨損,逐層之間的結(jié)合力不一致等問題。本文就上述存在的問題進行了分析和研究,通過改進獲得了一個較好的填充方案,取得了較好的效果。
關(guān)鍵詞:STL文件;FDM;填充算法;3D打印
前言
近期,3D打印技術(shù)被認(rèn)為是第三次工業(yè)革命的重要標(biāo)志之一[1-2]。隨著相應(yīng)技術(shù)的成熟和用途擴寬,其具有廣泛的應(yīng)用前景,因此對相關(guān)領(lǐng)域的技術(shù)研究具有重要意義。其中FDM是熔融擠出成型技術(shù),屬于3D打印技術(shù)的一種,在最近兩年里發(fā)展相對迅速。FDM是基于3D Systems開發(fā)的STL文件格式來打印出實物[3]。根據(jù)FDM技術(shù)原理,系統(tǒng)都會對STL格式的CAD模型進行分層,填充路徑規(guī)劃,生成FDM噴頭路徑。此過程涉及的目標(biāo)眾多,要求計算速度快,較好的成型精度,能合理的節(jié)省材料,保證基本的模型強度,路徑優(yōu)化后對機器磨損小,每層之間有較好的粘接力,因此填充算法處理的優(yōu)劣對3D打印的成型過程和模型使用有較大影響,必要對各種填充算法進行深入的分析和比較。目前快速成型技術(shù)大部分采用的填充方式有平行線填充法和輪廓偏置線填充法,平行線填充法里面包括改進型邊界填充算法和掃描線填充法等;在輪廓偏置填充法里包含了轉(zhuǎn)接矢量填充法和截距方程填充法等。為了得到一個較好的填充方案解決目標(biāo)問題,本文將對上述算法進行比較和分析。
1.填充算法比較和分析
為了深入分析各個填充算法,下面將簡介FDM打印技術(shù)的一般工作步驟:如圖1所示,首先將零部件數(shù)字化為CAD模型,將CAD模型導(dǎo)出為STL格式文件,再對STL文件里的數(shù)據(jù)進行切片分層。每層填充時需對這些數(shù)據(jù)進行排序,填充和鏈接,生成FDM噴頭填充路徑,打印材料在FDM的噴頭內(nèi)被恒溫加熱成材料的熔點溫度,通過送絲機構(gòu)送出噴頭協(xié)調(diào)運動控制系統(tǒng)逐層打印出3D實體模型。其中STL文件格式類似于有限元網(wǎng)格,是以三角面片來擬合實體模型的表面特征。STL的文件可分為Binary 和ASCII 碼,為了保證STL 文件的通用性,這種格式均只保存如下相關(guān)信息:實體名稱、三角面片個數(shù)、每個三角形的法矢量和頂點坐標(biāo)值,而且他們之間可以互相轉(zhuǎn)換而不丟失任何信息[4]。填充規(guī)劃時是按順序讀取和保存STL 文件中三角片的頂點坐標(biāo)和法矢量,其中法矢量在填充計算過程中并沒有直接關(guān)系,只用于STL格式的三維顯示。為方便后續(xù)網(wǎng)格分層和填充,各層中需對與此層相關(guān)三角片的3個頂點按Z 坐標(biāo)的大小進行三角片內(nèi)部排序。
圖1 CAD模型到STL分層過程
利用式1求解與 所有交點,并按照線段進行保存,再對這些直線和交點進行數(shù)據(jù)處理和建立此層輪廓線,采用基于STL拓?fù)浣Y(jié)構(gòu)設(shè)計的數(shù)據(jù)結(jié)構(gòu)相關(guān)函數(shù)處理棧和鏈表以解決數(shù)據(jù)存儲、排序和搜索[5-6]。
在平行線填充法中的改進型邊界填充算法是比較常見的填充算法。從多邊形區(qū)域的一個內(nèi)點開始,由內(nèi)向外用給定的顏色畫點直到邊界為止。如果邊界是以一種顏色指定的,則邊界填充算法可逐個像素地處理直到遇到邊界顏色為止[7],當(dāng)完成輪廓線內(nèi)部的像素級別填充后,通過改進后,還需要對內(nèi)部區(qū)域進行噴頭路徑的規(guī)劃,也就是在特定方向進行像素級別等距稀釋為一組平行線,通過排序和鏈接形成填充路徑。其算法簡潔,采用連通填充較好解決棧過大問題,不足是效率較低,需對多邊形內(nèi)點進行判斷。
平行線里的掃描線填充法特點是用多邊形輪廓外一條直線與多邊形求交。肖博等[8]闡述了對于一個封閉的輪廓而言,直線和多邊形的交點是偶數(shù),其中第一個點和第二個點之間的區(qū)域是需要填充的部分,第二個點和第三個點之間的區(qū)域是非填充部分。
圖2 掃描線填充法示意圖
填充算法優(yōu)化的目標(biāo)是需要較好的成型精度,合理的節(jié)省材料,保證基本的機械強度,對機器本身磨損小,每層有較好的結(jié)合力,通過多個填充方案的比較和分析,可以看出上述的填充方案不能較好的解決多目標(biāo)問題。而采用如下的復(fù)合填充方案能較好的解決上述問題,即零部件表面部分采用截距方程填充法,零部件內(nèi)部采用掃描線填充法,層和層的內(nèi)部路徑按矩形或者蜂窩狀等多邊形交叉填充的復(fù)合式填充法如圖5所示。其中截距方程填充法較好解決了表面成型精度,填充后層翹邊,每層的結(jié)合力等問題;內(nèi)部采用掃描線填充法解決了內(nèi)部軌跡規(guī)劃難題,減少了空行程,機器本身磨損相對較少;每層路徑按照規(guī)律交叉為多邊形或者蜂窩形的結(jié)構(gòu),不僅節(jié)省材料,也使零部件模型機械強度有合理的保證,減少模型強度的不確定性。
圖5 復(fù)合式填充法示意圖
2.結(jié)論
本文重點對基于FDM的噴頭填充算法進行了比較和分析,從上述分析結(jié)果中可知各種填充算法特點和不足,單一的填充方案是無法解決多目標(biāo)問題。因此提出了采用復(fù)合式填充方案,基本實現(xiàn)了較好的成型精度,合理的節(jié)省材料,保證適當(dāng)?shù)臋C械強度,對機器本身磨損相對較小,層和層間有較好的結(jié)合力等目標(biāo),并取得了較好的效果。
參考文獻:
[1] 王忠宏,李揚帆,張曼茵.中國3D打印產(chǎn)業(yè)的現(xiàn)狀及發(fā)展思路[J].經(jīng)濟縱橫,2013(1):90-93.
[2] 蔣建科,李秋榮,杭慧喆.3D打印第三次工業(yè)革命的重大標(biāo)志[N/OL].人民日報.2013-1-4.
[3] 劉斌,肖躍加,韓明,等.快速原型制造技術(shù)中的線寬自動補償研究[J].中國機械工程,1996(6):43-46.
[4] 朱虎,楊忠鳳,張偉.STL文件的應(yīng)用與研究進展[J].機床與液壓,2009(6):186-189.
[5] 李仲陽,謝存禧,楊家紅.基于STL文件的快速成型分層算法與毗鄰?fù)負(fù)湫畔⒌目焖偬崛J].計算機工程與應(yīng)用,2002(7):32-35.
[6] 張翔,廖文和,程筱勝,等.STL格式文件的拓?fù)渲亟ǚ椒ㄑ芯縖J].機械科學(xué)與技術(shù),2005(9):1093-1096.
[7] 柳稼航,方濤,楊建峰.適用于任意復(fù)雜區(qū)域的全自動填充方法[J].計算機工程,2008(4):238-240.
[8] 肖博,劉祥謀,馬海,等.STL文件快速分層及填充算法研究[J].機械與電子,2012(12):20-22.
[9] 趙福民,陳淮莉,王治森.刀具半徑補償干涉檢驗的向量算法[J].制造技術(shù)與機床,2001(1):37-38.
[10] 黃常標(biāo),江開勇.計算輪廓偏置的截距方程法[J].組合機床與自動化加工技術(shù),2004(3):23-24.