1.本發(fā)明涉及增材制造,并且尤其涉及確定用于在增材制造過程中控制打印工具的工具路徑并隨后基于該工具路徑在增材制造過程中控制打印工具的方法。
2.雖然本文將特別參考該應(yīng)用來描述一些實施例,但是應(yīng)當(dāng)理解,本發(fā)明不限于這樣的使用領(lǐng)域,而是可應(yīng)用于更廣泛的環(huán)境中。
3.發(fā)明背景
4.在增材制造(也稱為“3d打印”)過程中,打印機構(gòu)(稱為“工具”)被計算機控制以在3d空間中遵循預(yù)定義路徑(稱為“工具路徑”),以從打印材料構(gòu)建期望的對象。
5.通常,用于3d打印的路徑規(guī)劃過程涉及以下組合:(a)打印頭移動,在此期間,隨著打印頭的移動,材料被添加到零件;和(b)不沉積材料的移動。后者可被稱為跳躍或跳躍運動。例如,在聚合物3d打印過程中,在跳躍運動期間,擠出機電機被關(guān)閉。
6.在一些增材制造過程中,很難或不可能快速打開和關(guān)閉材料進(jìn)料,因為這樣做會以某種方式干擾材料沉積過程。在這些過程中,更合適的工具路徑策略是一種在盡可能多的構(gòu)建中保持進(jìn)料的策略。
7.3d打印通常涉及逐層構(gòu)建過程,其中在前進(jìn)到下一層n+1之前,完成層n的所有工具路徑。在這方面,現(xiàn)有的用于產(chǎn)生用于3d打印的g代碼的3d打印軟件通過將3d問題簡化為2d問題來實現(xiàn)計算效率。它通過首先對對象進(jìn)行切片來實現(xiàn)這一點,即找到規(guī)則間隔的平面與.stl文件中的三角形的相交,定義每層中要填充的2d區(qū)域,并且然后在該2d區(qū)域上執(zhí)行工具路徑規(guī)劃,一次一層。
8.然而,這種逐層的方法對于任何三軸增材制造系統(tǒng)都是低效的,且尤其是在涉及一個或兩個6軸機械臂的更先進(jìn)的系統(tǒng)中,該更先進(jìn)的系統(tǒng)提供了執(zhí)行更復(fù)雜的三維制造的可能性。在兩個機械臂(一個保持零件,另一個保持沉積頭)的系統(tǒng)中,由于也可以進(jìn)行旋轉(zhuǎn)運動,所以高達(dá)12個自由度是可能的。嚴(yán)格的逐層路徑規(guī)劃方法沒有利用這種自由。
9.已經(jīng)設(shè)計了一些更先進(jìn)的工具路徑,諸如分形空間填充曲線(諸如peano曲線和hilbert曲線)。然而,對于給定的路徑長度,這些路徑固有地涉及大量的轉(zhuǎn)彎。轉(zhuǎn)彎的數(shù)量對于大規(guī)模機器人應(yīng)用來說可能太高,在大規(guī)模機器人應(yīng)用中,高速操縱重部件或沉積頭需要相當(dāng)大的減速/加速。如果工具路徑中包含大量的方向變化,機器人會遭受過度的振動和磨損,并且如果機械臂沒有足夠的路徑長度來加速并達(dá)到恒定速度,則不可能進(jìn)行高速運動。
10.為了部分解決上述一些不足,michel等人,“a modular path planning solution for wire+arc additive manufacturing”,《robotics and computer-integrated manufacturing》,第60卷,2019年12月,第1-11頁,使用了對單個對象層的分區(qū)(分段),同時每個段內(nèi)具有不同的路徑規(guī)劃策略。他們稱之為“模塊化路徑規(guī)劃(mpp)”。在mpp過程中,一旦為所有段生成了路徑,它們就被組合成一個單層路徑。然而,沉積不是沿整個層連續(xù)的。相反,當(dāng)?shù)竭_(dá)一個部分的末端時,沉積停止,并且焊炬移至下一個部分的起點,同時電弧熄滅并且不供給任何材料。因此,該技術(shù)仍然涉及工具的多次停用。
11.dwivedi,rajeev和kovacevic,radovan(2004),“automated torch path planning using polygon subdivision for solid freeform fabrication based on welding”,《journal of manufacturing systems》,23(4),第278-291頁,將帶有單調(diào)多邊形細(xì)分(monotone polygon subdivision)的連續(xù)路徑規(guī)劃用于焊接增材制造過程。然而,這種技術(shù)對于將連續(xù)路徑擴展到3d結(jié)構(gòu)中的其他層時沒有提及。因此,該技術(shù)可能遵循逐層的方法。
12.flores,j.等人,“toolpath generation for the manufacture of metallic components by means of the laser metal deposition technique”,《the international journal of advanced manufacturing technology》,2019年,第101卷,第5
–
8期,第2111
–
2120頁,教導(dǎo)了一種優(yōu)化的混合工具路徑策略,該策略結(jié)合了輪廓曲線和鋸齒形填充圖案,為每個構(gòu)建層提供具有恒定重疊的均勻生長。flores等人還教導(dǎo)了一種用于傾斜打印頭以更準(zhǔn)確地形成懸垂特征的多軸策略。這導(dǎo)致曲面的層沉積。
13.然而,在上面討論的每一種技術(shù)中,工具路徑沉積是以逐層的方式計劃的,其中在開始下一層之前,必須完全沉積一層(無論是平面的還是曲面的)。
14.發(fā)明概述
15.本發(fā)明的一個方面提供了一種確定用于控制打印工具的工具路徑的方法,該方法包括以下步驟:
16.a)接收包含指示要形成的三維結(jié)構(gòu)的數(shù)據(jù)的輸入文件;
17.b)將三維結(jié)構(gòu)劃分成多個構(gòu)建層,其中構(gòu)建層在構(gòu)建方向上分離,并且每個構(gòu)建層相對于構(gòu)建方向橫向延伸,每個構(gòu)建層包括定義該構(gòu)建層與三維結(jié)構(gòu)的外表面的相交的外部輪廓;
18.c)定義填充三維結(jié)構(gòu)的工具路徑,其中工具路徑包括在完全填充至少一個較低構(gòu)建層之前,沿著構(gòu)建方向部分填充一個或更多個較高構(gòu)建層;和
19.d)生成打印工具控制算法,該算法包括用于控制打印工具沿著工具路徑移動以形成三維結(jié)構(gòu)的一系列控制命令。
20.在一些實施例中,步驟c)包括:
21.c)i)將每個構(gòu)建層分割成一個或更多個層區(qū)域;
22.c)ii)基于第一預(yù)定義填充策略,確定完全填充第一層區(qū)域的第一工具路徑部分;
23.c)iii)基于第二預(yù)定義填充策略,確定完全填充第二層區(qū)域的第二工具路徑部分,該第二層區(qū)域與同一層或相鄰層中的第一層區(qū)域相鄰,其中第一層區(qū)域內(nèi)的第一工具路徑部分的終點緊鄰第二工具路徑部分的對應(yīng)起點;
24.c)iv)通過將工具路徑部分起點與相鄰層或相鄰層區(qū)域的前一工具路徑部分的對應(yīng)工具路徑部分終點相匹配,對所有層區(qū)域重復(fù)步驟cii)和ciii),以定義單個工具路徑。
25.在一些實施例中,步驟c)iv)包括定義輪廓循環(huán)路徑,該輪廓循環(huán)路徑在相鄰分區(qū)起點和終點之間圍繞結(jié)構(gòu)的外部輪廓延伸。
26.在其他實施例中,步驟c)包括:
27.c)i)基于結(jié)構(gòu)或構(gòu)建過程的特征將每個構(gòu)建層分割成多個層區(qū)域;
28.c)ii)對于每個層區(qū)域,確定多個可能的填充路徑選項,該可能的填充路徑選項包括層區(qū)域內(nèi)的起點和終點;
29.c)iii)基于部分或全部位于結(jié)構(gòu)中其他特征之上/之下的特征,確定每個特征的優(yōu)先圖;和
30.c)iv)確定工具路徑中的執(zhí)行順序,該順序遵循優(yōu)先圖中確定的優(yōu)先關(guān)系,使得每個特征僅執(zhí)行一次,其中按照順序當(dāng)前特征的終點與下一特征的起點相鄰。
31.在一些實施例中,特征包括需要在其他區(qū)域之前被填充的結(jié)構(gòu)的子區(qū)域。在一些實施例中,特征包括填充部分之間的連接路徑。在一些實施例中,特征包括圍繞結(jié)構(gòu)特征循環(huán)的循環(huán)路徑。在一些實施例中,填充路徑選項包括填充策略。
32.在一些實施例中,打印工具被控制以執(zhí)行增材制造過程來形成三維結(jié)構(gòu)。在一些實施例中,三維結(jié)構(gòu)形成更大三維對象的一部分。
33.在一些實施例中,工具路徑是連續(xù)的,從而在整個打印過程中保持打印材料向打印工具的流動。
34.在一些實施例中,該方法包括步驟a)i):通過用戶界面從用戶接收用于構(gòu)建三維結(jié)構(gòu)的一個或更多個構(gòu)建參數(shù)。在一些實施例中,構(gòu)建參數(shù)包括填充策略。在一些實施例中,填充策略包括雙層策略,其中層n+1中的工具路徑部分是相鄰層n的相鄰層區(qū)域中的工具路徑部分的直接反向。在一些實施例中,填充策略包括從外層區(qū)域點開始并在中心層區(qū)域點結(jié)束的螺旋填充圖案。在這些實施例中,相鄰層的填充策略包括從中心點開始并在外部點結(jié)束的反向螺旋圖案。在一些實施例中,填充策略包括柵格圖案填充策略。第一填充策略和第二填充策略可以相同或不同。
35.在一些實施例中,將三維結(jié)構(gòu)劃分成多個子區(qū)域包括在定義構(gòu)建層之前將三維結(jié)構(gòu)分割成一個或更多個體積結(jié)構(gòu)。構(gòu)建層可以包括平面表面、曲面表面或其他形狀。
36.本發(fā)明的第二方面提供了一種確定用于控制打印工具的工具路徑的方法,該方法包括以下步驟:
37.a)接收包含指示要形成的三維結(jié)構(gòu)的數(shù)據(jù)的輸入文件;
38.b)將三維結(jié)構(gòu)劃分成多個子區(qū)域,子區(qū)域包括多個構(gòu)建層,其中每個構(gòu)建層包括定義該構(gòu)建層與三維結(jié)構(gòu)的外表面的相交的外部輪廓;
39.c)將每個構(gòu)建層分割成一個或更多個層區(qū)域;
40.d)基于第一預(yù)定義填充策略,確定完全填充第一層區(qū)域的第一工具路徑部分;
41.e)基于第二預(yù)定義填充策略,確定完全填充第二層區(qū)域的第二工具路徑部分,該第二層區(qū)域與同一層或相鄰層中的第一層區(qū)域相鄰,其中第一層區(qū)域內(nèi)的第一工具路徑部分的終點緊鄰第二工具路徑部分的對應(yīng)起點;
42.f)通過將工具路徑部分起點與相鄰層或相鄰層區(qū)域的前一工具路徑部分的對應(yīng)工具路徑部分終點相匹配,對所有層區(qū)域重復(fù)步驟d)和e),以定義單個工具路徑;和
43.g)生成打印工具控制算法,該算法包括用于控制打印工具沿著工具路徑移動以形成三維結(jié)構(gòu)的一系列控制命令。
44.在一些實施例中,步驟f)包括定義輪廓循環(huán)路徑,該輪廓循環(huán)路徑在相鄰分區(qū)起點和終點之間圍繞結(jié)構(gòu)的外部輪廓延伸。
45.在第一方面和第二方面的一些實施例中,工具路徑被定義為用于優(yōu)化用于形成三維結(jié)構(gòu)的打印時間。在一些實施例中,工具路徑被定義為使得在三維結(jié)構(gòu)的形成期間,最小化沿工具路徑的打印工具跳躍次數(shù)。在一些實施例中,工具路徑被定義為用于最小化沿著
工具路徑的路徑相交次數(shù)。在一些實施例中,工具路徑是連續(xù)的,并且不與路徑的其他部分相交。在一些實施例中,工具路徑被定義為用于最小化用于形成三維結(jié)構(gòu)的打印材料的量。在一些實施例中,工具路徑被定義為用于優(yōu)化沿著工具路徑的打印工具轉(zhuǎn)彎的次數(shù)和程度。在一些實施例中,工具路徑被定義為用于優(yōu)化層交叉的數(shù)量,以增強三維結(jié)構(gòu)的整體構(gòu)建的強度。
46.優(yōu)選地,上述方法的步驟按照它們被描述的順序來順序地執(zhí)行。
47.本發(fā)明的第三方面提供了一種在增材制造過程中控制打印工具的方法,該方法包括:
48.由計算機處理器執(zhí)行由根據(jù)前述權(quán)利要求中任一項的方法生成的打印工具控制算法;和
49.響應(yīng)于打印工具控制算法,生成電信號以控制打印工具沿著工具路徑移動,從而形成預(yù)定義的三維結(jié)構(gòu)。
50.在一些實施例中,打印工具控制算法包括用于跨不同構(gòu)建層或?qū)訁^(qū)域改變一個或更多個構(gòu)建參數(shù)的指令。在一些實施例中,打印工具的線間距在一個或更多個層區(qū)域之間變化。在一些實施例中,打印工具的運動在一個或更多個層區(qū)域之間變化。在一些實施例中,填充策略在一個或更多個層區(qū)域之間變化。在一些實施例中,構(gòu)建層的厚度或高度在一個或更多個層之間變化。
51.在一些實施例中,打印工具包括至少一個機械臂。在一些實施例中,打印工具包括由機械臂保持在操作位置的冷噴槍。
52.本發(fā)明的第四方面提供了一種被配置為實現(xiàn)根據(jù)第一方面、第二方面或第三方面中任一方面的方法的計算機系統(tǒng)。
53.本發(fā)明的第五方面提供了一種包括指令的計算機程序,當(dāng)指令被計算機執(zhí)行時,使得計算機執(zhí)行根據(jù)第一方面、第二方面或第三方面中任一方面的方法。
54.本發(fā)明的第六方面提供了一種包括指令的計算機可讀存儲介質(zhì),當(dāng)指令被計算機執(zhí)行時,使得計算機執(zhí)行根據(jù)第一方面、第二方面或第三方面中任一方面的方法。
55.本發(fā)明的第七方面提供了一種增材制造系統(tǒng),包括:
56.計算機處理器,該計算機處理器被配置為執(zhí)行由根據(jù)第一方面至第三方面中任一方面的方法生成的打印工具控制算法;和
57.打印工具,該打印工具響應(yīng)由計算機處理器基于打印工具控制算法生成的電信號,該電信號被配置為沿著工具路徑移動打印工具以形成預(yù)定義的三維結(jié)構(gòu)。
58.附圖簡述
59.現(xiàn)在將參考附圖僅以舉例的方式描述本公開的優(yōu)選實施例。應(yīng)當(dāng)理解,所示的實施例僅是示例,并且不應(yīng)被認(rèn)為是對所附權(quán)利要求中定義的本發(fā)明范圍的限制。
60.圖1是第一冷噴涂增材制造系統(tǒng)的側(cè)面透視圖,該系統(tǒng)包括保持基底的機械臂和固定的冷噴槍;
61.圖2是第二冷噴涂增材制造系統(tǒng)的俯視透視圖,該系統(tǒng)包括分別保持冷噴槍和基底的一對機械臂;
62.圖3a是圖1和圖2的冷噴涂增材制造系統(tǒng)的示意性系統(tǒng)級圖;
63.圖3b是圖1和圖2的冷噴涂增材制造系統(tǒng)的示意性系統(tǒng)級圖,其中使用了兩個獨立
的控制計算機;
64.圖4a是示出確定工具路徑的方法中主要步驟的過程流程圖,該工具路徑用于控制諸如圖1所示的打印工具;
65.圖4b是示出在圖4的方法中執(zhí)行部分層方法以定義工具路徑的第一方法中主要步驟的過程流程圖;
66.圖4c是示出在圖4的方法中執(zhí)行部分層方法以定義工具路徑的第二方法中主要步驟的過程流程圖;
67.圖4d是為圖4c的第二部分層方法創(chuàng)建的鄰接圖的示例,該圖包括三個元素,每個元素在兩層中的一層中;
68.圖4e是優(yōu)先圖,該優(yōu)先圖可以應(yīng)用于三個分區(qū),諸如圖4d的三個元素;
69.圖4f示出了正方形區(qū)域的層n,示出了其可以如何被劃分成四個元素;
70.圖5a是由3d cad文件表示的要形成的箭頭形對象的透視圖;
71.圖5b是圖5a的3d cad文件的stl三角劃分的透視圖;
72.圖6是用于對stl文件進(jìn)行切片、計算工具路徑和輸出打印工具控制算法的示例性gui的屏幕截圖;
73.圖7a是已經(jīng)被劃分成多個水平平面的3d十字形結(jié)構(gòu)的立體透視圖(elevated perspective view);
74.圖7b是來自圖7a的十字形結(jié)構(gòu)的示例性層的俯視圖(elevated view);
75.圖8是將圖7b的層劃分成三個矩形分區(qū)的平面圖;
76.圖9a是用于矩形分區(qū)的螺旋圖案填充策略的示意圖;
77.圖9b是用于矩形分區(qū)的柵格圖案填充策略的示意圖;
78.圖10a-圖10c是用于填充矩形分區(qū)的三種示例性混合填充圖案的示意圖;
79.圖11是用于使用雙層填充策略填充方形對象的工具路徑的示意圖,其中相鄰層具有反向工具路徑;
80.圖12a是用于填充十字形結(jié)構(gòu)的第一工具路徑的示意性平面圖;
81.圖12b是用于填充十字形結(jié)構(gòu)的第二工具路徑的示意性平面圖;
82.圖12c是用于填充十字形結(jié)構(gòu)的第三工具路徑的示意性平面圖,其中工具路徑是連續(xù)且不相交的;
83.圖12d是來自圖12c的第三工具路徑的透視圖,示出了兩層十字形結(jié)構(gòu);
84.圖13a是六層箭頭形對象的側(cè)面示意圖,示出了用于制造該對象的連續(xù)路徑;
85.圖13b是圖13a的箭頭形對象的一層的平面圖,示出了柵格樣式的工具路徑填充策略;和
86.圖13c是使用本文描述的雙層工具路徑策略構(gòu)建的圖13a和圖13b的箭頭形對象的圖像。
87.詳細(xì)描述
88.系統(tǒng)概覽
89.本文中公開和示出的實施例將參考冷噴涂沉積(cold spray deposition)型3d打印進(jìn)行描述,其中固體粉末在壓力下被投射到基底上以與基底粘附。然而,應(yīng)當(dāng)理解,本公開也適用于其他類型的3d打印,諸如基于焊接的增材制造(例如,電弧增材制造)、粘性流體
3d打印、聚合物和纖維增強聚合物的3d打印以及混凝土(concrete)3d打印。
90.首先參考圖1和圖2,示出了兩個類似但是可替代的冷噴涂增材制造系統(tǒng)100和200。圖1的系統(tǒng)100包括固定冷噴槍102形式的打印頭和用于保持基本平面的打印基底105的六軸機械臂104。冷噴槍102是由plasma giken有限公司制造的型號,并且包括主體107和細(xì)長的圓柱形打印頭114。噴槍打印頭114適于在高壓下將沉積粉末束投射到基底105的期望區(qū)域上。在與基底碰撞期間,顆粒經(jīng)歷塑性變形并粘附到基底105的表面。典型的材料粉末包括金屬及其合金、聚合物、陶瓷、復(fù)合材料和納米晶體粉末,并且典型的顆粒尺寸約為1至50微米。
91.圖2示出了類似于圖1的系統(tǒng),但是冷噴槍103安裝在第二六軸機械臂116上。圖1的對應(yīng)特征在圖2中用相似的附圖標(biāo)記表示。冷噴槍103是由impact innovations gmbh制造的型號,并且包括在后端108和前端112之間延伸的大致圓柱形細(xì)長主體106,材料供應(yīng)導(dǎo)管110在后端108中延伸,噴槍打印頭114在前端112中突出。
92.應(yīng)當(dāng)理解,噴槍103和機械臂104和116可以由用于執(zhí)行冷噴涂沉積或其他增材制造過程的其他等效設(shè)備來代替。在其他實施例中,雙機械臂系統(tǒng)可以由固定的或機器人控制的安裝件的其他組合代替。例如:
93.·
在一個實施例中,冷噴槍(或其他打印頭)由機械臂保持,并且基底保持固定在固定安裝件上。
94.·
在一個實施例中,噴槍(或其他打印頭)由六軸機械臂保持,并且基底安裝在由旋轉(zhuǎn)臺(轉(zhuǎn)盤)和傾斜機構(gòu)組成的定位器設(shè)備上。該系統(tǒng)為機械臂提供了兩個額外的軸。
95.·
在其他實施例中,提供了一種增材制造單元,其使用電機來沿著軌道或?qū)к壱苿哟蛴☆^和/或基底臺。例如,笛卡爾3d打印機使用三組電機(例如步進(jìn)電機)來執(zhí)行x-y-z平移運動。類似可獲得的系統(tǒng)也可以使用delta和極坐標(biāo)配置。
96.在其他實施例中,冷噴涂系統(tǒng)100可以由其他增材制造系統(tǒng)代替,并且冷噴槍102可以由其他打印頭代替。例如,在電弧增材制造(waam)系統(tǒng)中,打印頭包括焊炬。在定向能量沉積(ded)系統(tǒng)中,打印頭結(jié)合了激光、電子束或等離子弧,通過熔化來沉積材料。在其他系統(tǒng)中,打印頭可以包括擠壓噴嘴。
97.打印頭114的3d位置和3d取向由安裝在噴槍主體106頂部的六軸機械臂116緊密機電控制。類似地,基底105的3d位置和3d取向也能夠由機械臂104緊密機電控制,以實現(xiàn)十二個自由度上的完全打印控制。
98.現(xiàn)在參考圖3a,機械臂104和116由控制計算機118控制,控制計算機118與每個機械臂電連接或無線數(shù)據(jù)連接。舉例來說,機械臂104和116以及控制計算機118可以是由abb robotics制造的工業(yè)機器人??刂朴嬎銠C118被配置為將位置控制信號120傳輸?shù)綑C械臂104,以將基底105定位和取向在操作空間中的任何3d位置/取向。類似地,控制計算機118被配置為將位置控制信號122傳輸?shù)綑C械臂116,以將打印頭114定位和取向在操作空間中的任何3d位置/取向。此外,控制計算機118還被配置為向噴槍102發(fā)送沉積材料流控制信號124,以選擇性地激活、去激活或改變來自打印頭114的材料流的流參數(shù)。在一些實施例中,額外的反饋控制信號也從機械臂104和116以及噴槍102發(fā)送到控制計算機118。
99.如圖3b所示,在一種替代布置中,單獨的控制計算機130可以用于控制噴槍102進(jìn)行冷噴涂過程,而計算機118被用于控制機械臂104和116。在這種布置中,冷噴涂過程完全
獨立于機器人控制器。這具有以更恒定的方式促進(jìn)沉積過程的優(yōu)點,而不需要調(diào)節(jié)進(jìn)料速率、功率等來使其保持最佳狀態(tài)。
100.在整個說明書中,用于執(zhí)行增材制造過程的術(shù)語“打印工具”的使用旨在指代噴槍102、打印頭114以及機械臂104和116中的一個或更多個。在這點上,“工具路徑”可以指打印頭114的尖端或工具中心點(tcp)與基底105之間的相對物理位置。在冷噴涂機器人編程中,tcp通常距噴嘴尖端很短的距離。例如,基底可以保持在距離噴嘴末端設(shè)定的間隔距離處,諸如20mm或30mm。如果打印頭相對于基底成角度,則旋轉(zhuǎn)中心是tcp。工具路徑的幾何形狀通常相對于基底105來定義。舉例來說,可以相對于基底105的角來定義3d工具路徑坐標(biāo)系。
101.控制信號120、122和124包括一系列編碼控制命令,用于控制打印工具沿工具路徑移動,以形成待制造的三維結(jié)構(gòu)或?qū)ο蟆N恢每刂菩盘?20和122的這些控制命令由下面參照圖4概述的工具路徑規(guī)劃過程確定。
102.工具路徑規(guī)劃
103.參考圖4a,示出了確定用于控制諸如圖1和圖2所示的打印工具的工具路徑的方法400。在初始步驟401,方法400包括接收包含指示要形成的三維結(jié)構(gòu)的數(shù)據(jù)的輸入文件。
104.輸入文件通常是一個.stl(立體光刻(stereolithography))文件,該stl文件從使用計算機輔助設(shè)計(cad)軟件包制作的結(jié)構(gòu)或?qū)ο蟮娜S模型中創(chuàng)建。然而,輸入文件可以采用其他形式,諸如.obj、.amf和.3mf文件格式。舉例來說,圖5a示出了由3d cad文件表示的要形成的示例性箭頭形狀的對象500。圖5b示出了3d cad文件的對應(yīng)stl三角劃分501。stl文件是一種標(biāo)準(zhǔn)文件格式,用于輸入到可用于3d打印應(yīng)用的各種切片軟件產(chǎn)品中。stl文件僅描述三維結(jié)構(gòu)的表面幾何形狀,而不表示其他常見的cad模型屬性,諸如顏色和紋理。在一些實施例中,stl文件將對象表示為互連三角形的網(wǎng)格,每個三角形具有基于預(yù)定義幾何坐標(biāo)系的對應(yīng)坐標(biāo)。
105.應(yīng)當(dāng)理解,可以使用各種商業(yè)上可獲得的cad軟件包中的任何一種來產(chǎn)生輸入文件,這些軟件包包括但不限于solidworks(由dassault syst
è?
mes solidworks公司擁有)、autodesk fusion 360(由autodesk,inc.擁有)、autodesk inventor(由autodesk,inc.擁有)等。
106.在可選步驟402,用戶可以通過用戶界面輸入用于構(gòu)建三維結(jié)構(gòu)的一個或更多個構(gòu)建參數(shù)。用戶界面可以是通過顯示器和與控制計算機118進(jìn)行數(shù)據(jù)通信的用戶輸入設(shè)備可訪問的圖形用戶界面(gui)。替代地,用戶界面可以是單獨的計算機設(shè)備可訪問的,該單獨的計算機設(shè)備經(jīng)由諸如lan或互聯(lián)網(wǎng)的網(wǎng)絡(luò)與控制計算機118進(jìn)行數(shù)據(jù)通信。步驟402是可選的,因為構(gòu)建參數(shù)可以預(yù)先定義并自動設(shè)置,而不是手動輸入。在任一種情況下,必須在工具路徑確定過程開始之前定義某些構(gòu)建參數(shù)。
107.示例構(gòu)建參數(shù)包括:
108.·
填充策略,諸如柵格、螺旋、鋸齒形或混合圖案填充策略。
109.·
構(gòu)建層(build layer)的層高或厚度。
110.·
工具路徑的線間距(line spacing)。
111.·
打印頭的遍歷速度(traverse speed)。
112.·
打印頭的噴嘴角度。
113.·
工具路徑中的轉(zhuǎn)彎的最小或最大曲率半徑。
114.·
打印頭起點。
115.·
實際工具路徑規(guī)格允許的公差(tolerance)或偏差。
116.圖6示出了用于對stl文件進(jìn)行切片、計算工具路徑和輸出打印工具控制算法的示例性gui 600的屏幕截圖。這個gui背后的軟件是用python編程語言編寫的。然而,應(yīng)當(dāng)理解,類似的程序可以用其他編程語言來實現(xiàn)。
117.在可選步驟403,三維結(jié)構(gòu)可以被劃分成多個體積結(jié)構(gòu)。當(dāng)三維結(jié)構(gòu)更復(fù)雜并且包括許多不同形狀的部件時,這種體積分割可能發(fā)生??梢员粍澐殖刹煌w積子區(qū)域的復(fù)雜結(jié)構(gòu)的示例包括具有懸垂件(諸如支架或翼肋(wing ribs))的結(jié)構(gòu)?;蛘咭砸粡堊雷訛槔?。在這種情況下,桌子的底部可以被單獨分割到每條腿,并且不同的體積結(jié)構(gòu)被單獨制造。因此,由方法400確定的工具路徑所制造的三維結(jié)構(gòu)可以形成更大的三維對象的部分,其中不同的體積結(jié)構(gòu)具有不同的構(gòu)建方向。對于簡單結(jié)構(gòu),可以在不將三維結(jié)構(gòu)劃分成體積結(jié)構(gòu)的情況下執(zhí)行構(gòu)建過程。
118.在步驟404,對于體積結(jié)構(gòu)中的每一個,通過該結(jié)構(gòu)定義構(gòu)建方向,并且定義相對于構(gòu)建方向橫向延伸的多個構(gòu)建層。舉例來說,圖7a示出了3d十字形結(jié)構(gòu)700,其被劃分成由虛線指示的多個水平面(例如701)。箭頭702示出了構(gòu)建方向。切片產(chǎn)生的層701如圖7b所示。
119.由于增材制造過程包括將材料順序沉積到基底105上,因此必須有預(yù)定義的構(gòu)建方向,該方向通常垂直于基底105的表面。如下所述,在一些實施例中,對于對象的不同體積結(jié)構(gòu),可能存在不止一個構(gòu)建方向,尤其是在該結(jié)構(gòu)需要更復(fù)雜的支撐元件的情況下。然而,在對象的特定體積結(jié)構(gòu)內(nèi),增材制造過程通常依賴于一系列構(gòu)建層中的沉積。
120.每個構(gòu)建層延伸穿過三維結(jié)構(gòu),并因此包括一個或更多個輪廓,這些輪廓是定義構(gòu)建層與要形成的對象表面相交的環(huán)。在一般實踐中,3d模型(諸如stl格式文件)用三角形網(wǎng)格來近似模型表面。因此,層平面與模型表面的相交會產(chǎn)生包含直線段的輪廓。它們是簡單的、不相交的多邊形。
121.外部輪廓由層平面與3d對象的外表面(諸如十字形結(jié)構(gòu)700的垂直壁)的相交產(chǎn)生。每個定義的層必須包含至少一個外部輪廓。內(nèi)部輪廓總是被限制在由外部輪廓界定的區(qū)域內(nèi),并且是對包含內(nèi)部空腔的3d對象進(jìn)行切片的結(jié)果。并非所有層都將包含內(nèi)部輪廓,并且如果3d對象不包含內(nèi)部空腔,切片模型中將沒有內(nèi)部輪廓。
122.構(gòu)建層通常相對于定義的構(gòu)建方向垂直延伸,但是在曲面層的情況下,也可以部分地在構(gòu)建層的方向上延伸。然而,更一般地,構(gòu)建層相對于構(gòu)建方向橫向延伸。傳統(tǒng)的增材制造過程依賴于在過程移動到下一層之前完全填充一層。也就是說,完全填充外部輪廓和內(nèi)部輪廓(如果有的話)之間的構(gòu)建層。
123.如圖7a的插圖所示,步驟404的分層過程包括基于切片算法將stl文件(或其他輸入文件格式)中的三維結(jié)構(gòu)切片成由厚度d分隔的n個單向或多向?qū)?。在設(shè)置構(gòu)建參數(shù)時,每層的選定厚度d將最終確定機械臂104和116在每層期間的位置。然而,對于每一層,較厚的層將需要更多的打印材料從打印頭114中噴射。因此,層厚度構(gòu)建參數(shù)將部分地定義位置控制信號120和122,以及材料流控制信號124。
124.如上所述,stl文件包括三維空間中的一組三角形。每個三角形由三條線段組成。在一個實施例中,步驟404的分層過程包括確定該組stl線段與定義該層的無限平面的交
點。交點然后被排列和分組,以形成輪廓多邊形。
125.如上所述,典型地,構(gòu)建層包括相對于構(gòu)建方向橫向和垂直延伸的平面表面。然而,在一些實施例中,構(gòu)建層可以包括曲面或其他非平面結(jié)構(gòu)。例如,圓柱形切片利用機械臂的軸來執(zhí)行旋轉(zhuǎn)運動。
126.在步驟403將較大的三維結(jié)構(gòu)分割成單獨的體積結(jié)構(gòu)的情況下,步驟404的層分割過程可以針對每個體積結(jié)構(gòu)單獨執(zhí)行,并且每個體積結(jié)構(gòu)可以包括不同的構(gòu)建方向。因此,舉例來說,三維結(jié)構(gòu)可以包括三個體積結(jié)構(gòu)vi、vj和vk,其中每個體積結(jié)構(gòu)分別被劃分成具有相應(yīng)厚度di、d和dk的層切片ni、nj和nk的疊層。不同體積結(jié)構(gòu)的層切片數(shù)量和厚度可以相同或不同。
127.在步驟405,通過采用本發(fā)明特有的部分層完成技術(shù),定義工具路徑來填充體積結(jié)構(gòu)(或者如果在步驟403僅定義了單個體積結(jié)構(gòu),則填充整個三維結(jié)構(gòu))。在該部分層完成技術(shù)中,定義了工具路徑,該工具路徑通過在完全填充至少一個較低構(gòu)建層之前沿著構(gòu)建方向部分填充一個或更多個較高構(gòu)建層來填充體積結(jié)構(gòu)。以這種方式,工具路徑不像現(xiàn)有技術(shù)那樣受限于逐層方法,并且利用了遍歷整個三維體積結(jié)構(gòu)可獲得的自由度。
128.一些不同的方法可以用于在步驟405中執(zhí)行部分層完成技術(shù)。一種這樣的方法包括利用優(yōu)化算法來定義具有部分層交叉的合適路徑。在一種方法中,在體積結(jié)構(gòu)內(nèi)定義工具路徑的單獨部分,并且使用基于圖論的優(yōu)化算法將這些部分鏈接在一起。例如,哈密頓(hamiltonian)尋徑算法可以應(yīng)用于將相鄰的工具路徑部分鏈接在一起,同時僅使用工具路徑的每個部分一次。
129.在三維中,層n中的工具路徑部分可以與也在層n中的相鄰區(qū)域相鄰,或者與層n+1或?qū)觧-1中的區(qū)域相鄰。這種技術(shù)在嘗試填充復(fù)雜形狀時可能特別有用,因為需要跨不同層的多次過渡來鏈接各部分。替代地,工具路徑附近部分之間的距離可以被記錄為成本矩陣。然后可以實現(xiàn)成本最小化例程來找到附近部分之間的最小路徑。在填充當(dāng)前層中的特定區(qū)域以避免“底切(undercutting)”之前,可以創(chuàng)建優(yōu)先圖來保持跟蹤下面的層中需要首先被填充的區(qū)域。
130.雙層工具路徑策略
131.現(xiàn)在參考圖4b,示出了執(zhí)行步驟405以基于雙層策略來定義工具路徑,從而執(zhí)行部分層完成的示例性方法。在步驟405a,每個構(gòu)建層被分割成一個或更多個橫向?qū)釉鼗蚍謪^(qū)。舉例來說,圖8示出了被劃分成三個矩形分區(qū)p1-p3的圖7的十字結(jié)構(gòu)700的層701。在一些實施例中,特別是在要形成的結(jié)構(gòu)具有相對簡單的幾何形狀的情況下,步驟405a的輸出可以是由涵蓋整個層的單層區(qū)域來定義層。
132.步驟405a包括,對于每一層,將由外部輪廓界定的區(qū)域劃分成較小的多邊形。例如,可以使用凸分割例程來消除凹頂點,從而簡化填充路徑的計算。在一些實施例中,步驟405a的層分割被結(jié)合到填充路徑計算例程中(下面的步驟405b),但是作為單獨的步驟執(zhí)行這些過程通常提供更簡單的工作流程。
133.在步驟405b,基于第一預(yù)定義填充策略確定完全填充第一分區(qū)的第一工具路徑部分。填充策略可以是多種已知策略中的任何一種,諸如柵格、螺旋或混合策略。圖9a示出了用于矩形分區(qū)的示例性螺旋圖案填充策略,并且圖9b示出了用于相同區(qū)域的示例性柵格圖案填充策略。在這些圖中,實線表示由短劃線指示的矩形輪廓內(nèi)部的工具路徑。輪廓頂點標(biāo)
記為1、2、3、4,并且填充路徑的前兩個頂點被標(biāo)記為5和6。
134.將l作為線間距,螺旋填充策略包括將每個線段向內(nèi)偏移距離l,直到輪廓所界定的區(qū)域被填充。首先偏移輪廓線段(虛線),并且然后偏移螺旋圖案本身的線段,以在螺旋圖案中創(chuàng)建新線段。
135.柵格填充策略包括將第一個輪廓線段偏移距離l,然后在下一個線段的方向上做一個小的移動,然后偏移第一個線段,依此類推。
136.混合填充圖案使用完全移動和短移動的更任意的組合,因此某些部分看起來像螺旋,而其他部分像柵格。圖10a-圖10c示出了用于填充矩形分區(qū)的三種示例性混合填充圖案。
137.請注意,每個填充策略的終點在不同的位置。以這種方式,計算機算法可以使用不同的柵格和螺旋組合來到達(dá)與(例如,上面或下面的層中的)相鄰分區(qū)的起點相鄰的點。
138.在步驟405c,基于第二預(yù)定義填充策略確定完全填充第二層區(qū)域的第二工具路徑部分。第二預(yù)定義填充策略可以與第一預(yù)定義填充策略相同或不同。第二層區(qū)域優(yōu)選位于下一相鄰層(n+1)中與第一層區(qū)域相鄰的位置。為了保持部分或完全連續(xù)性,第一層區(qū)域內(nèi)的第一工具路徑部分的終點優(yōu)選地緊鄰或盡可能接近第二工具路徑部分的對應(yīng)起點。這在圖11中示意性地示出,圖11示出了兩個相鄰層的相同正方形層區(qū)域的工具路徑部分。如圖所示,在層n中,工具路徑部分從點a延伸到點b,而在層n+1中,工具路徑部分從點b延伸回到點a,以提供跨越兩個相鄰層區(qū)域的連續(xù)工具路徑。
139.在圖11所示的示例中,執(zhí)行特征的順序是:i)層n的正方形的底部輪廓通向點a,ii)層n填充點a到點b,iii)向上步進(jìn)到層n+1,并從點b到點a以相反方向填充,iv)向下步進(jìn)到層n并在周圍逆時針移動到黑點,(v)向上步進(jìn)到第n+1層并在周圍執(zhí)行完全逆時針輪廓循環(huán)。終點與起點相同,但高一層。如果工具頭再次向上步進(jìn)一層并且重復(fù)圖案,則在完全填充層n+2或n+3之前,可以以類似的雙層方式填充下兩層n+2和n+3內(nèi)的層區(qū)域。
140.這種填充策略可以被稱為雙層策略,其中層n+1中的工具路徑部分是相鄰層n的相鄰層區(qū)域中的工具路徑部分的直接反向。盡管圖11示出了反向柵格圖案,但是應(yīng)當(dāng)理解,其他互為反向圖案也是可能的。例如,一個雙層填充策略可以包括從層n的外層區(qū)域點開始并在層n的中心層區(qū)域點結(jié)束的螺旋填充圖案。相鄰層n+1的填充策略然后包括從中心點開始并在外部點結(jié)束的反向螺旋圖案。
141.圖12a至圖12c示出了可用于填充圖7所示的十字結(jié)構(gòu)700的層701的三個示例性工具路徑。這里,箭頭指示工具頭行進(jìn)的方向,而點表示從當(dāng)前層過渡到上一層。短劃線表示從上一層或下一層到當(dāng)前層的過渡移動。圖12a和圖12b的路徑策略表示沒有利用圖8所示的步驟404的層分割的不良策略。圖12c和圖12d的路徑策略表示了一種改進(jìn)的策略,其利用了層分割并提供了連續(xù)的非交叉路徑。
142.圖12a示出了一種不良的工具路徑策略,其將十字視為兩個矩形。該工具路徑將導(dǎo)致兩個矩形重疊處的中心正方形中的材料量增加一倍。如果材料是通過冷噴涂沉積的,由于構(gòu)建物的頂表面高度不均勻并且不再垂直于噴嘴,會導(dǎo)致高度的孔隙率(porosity)。此外,需要定期移除多余的材料以繼續(xù)構(gòu)建過程。
143.圖12b示出了柵格圖案,其避免了加倍問題,但是仍然是相交路徑策略。在尺寸發(fā)生突變的地方,填充路徑與輪廓相交。在從一個層到下一個層的過渡中,路徑也會離開由外
部輪廓界定的區(qū)域。因此,該工具路徑策略也沒有優(yōu)化。
144.圖12c示出了通過遵循圖8所示的層分割來填充十字結(jié)構(gòu)的連續(xù)的、不相交的路徑。柵格填充圖案在每個分區(qū)內(nèi)縱向取向。輪廓循環(huán)路徑用于從一個分區(qū)移動到另一個分區(qū)。每個分區(qū)中都有一個從所示層到上一層的過渡,加上左側(cè)外部輪廓處的另一個過渡(總共四個層過渡)。上一層包含相同的柵格圖案,但行進(jìn)方向是相反的方向。圖12d示出了相同的工具路徑,但是是兩個相鄰層的3d視圖。
145.在工具路徑連續(xù)的情況下,如圖12c和12d的策略,到打印頭114的打印材料流能夠在整個打印過程中保持。這避免了打印頭114的不希望的停用(或“跳躍”),這種停用(或“跳躍”)可能干擾材料流動過程。根據(jù)進(jìn)料機構(gòu)的不同,關(guān)閉并再次打開進(jìn)料可能不會導(dǎo)致近乎瞬時的響應(yīng)。在粉末進(jìn)料過程中,當(dāng)進(jìn)料恢復(fù)時,通常會有一段非恒定或不穩(wěn)定的材料流。在冷噴涂過程中,噴粉過程中的突然擾動會在超音速氣流中產(chǎn)生波動,導(dǎo)致沉積物中的缺陷和過多孔隙,或者噴嘴堵塞。在粘性流體的泵驅(qū)動進(jìn)料中,由于壓力的累積,很難停止流動。這也可以減少沉積的材料量、處理時間和執(zhí)行制造過程所需的能量。
146.需要指出的是,在遵循圖11和圖12所示的工具路徑策略時,結(jié)構(gòu)的兩個相鄰層的區(qū)域在這些層中的任一層被完全填充之前被部分填充。這與現(xiàn)有技術(shù)不同,在現(xiàn)有技術(shù)中,結(jié)構(gòu)純粹是在逐層的基礎(chǔ)上制造的,并且相鄰層直到前一層完成才開始。工具路徑的這種額外的靈活性提供了更連續(xù)的工具路徑,這在時間、成本和制造質(zhì)量上具有優(yōu)勢。此外,部分層完成技術(shù)提供了可選地定義沿著構(gòu)建方向的更多層間工具交叉。這可以通過降低分化(stratification)來增強整體構(gòu)建的強度,因為層交叉可以作為沿著構(gòu)建方向的加強件。
147.傳統(tǒng)上,由于與在平行于x-y(構(gòu)建層)平面的方向上測量的特性相比,z方向(構(gòu)建方向)特性較差,因此3d打印零件經(jīng)常遭受機械各向異性。例如,在普通聚合物(諸如丙烯腈-丁二烯-苯乙烯(abs)和聚乳酸(pla))的3d打印中,由于缺乏聚合物鏈跨層的相互擴散,構(gòu)建方向強度通常比面內(nèi)強度低50
–
75%(參見c.duty、j.failla、s.kim、t.smith、j.lindahl、v.kunc,additive manufacturing 2019,27,175-184)。
148.另一個示例是纖維增強聚合物的3d打印,諸如碳纖維增強聚合物、玻璃纖維增強聚合物或kevlar增強聚合物3d打印。盡管有時被描述為連續(xù)纖維打印,但纖維鋪設(shè)實際上在每層完成時被中斷,并且通常在每層內(nèi)被中斷多次。為了彌補這一點,有人建議,可以故意打印具有垂直空隙的零件上,在空隙中插入銷,這一過程被稱為“z-pinning”(參見roschli,alex c.、duty,chad e.、lindahl,john m.、post,brian k.、chesser,phillip c.、love,lonnie j.和gaul,katherine t.,increasing interlaminar strength in large scale additive manufacturing;美國:n.p.,2018;web)。然而,發(fā)明人已經(jīng)發(fā)現(xiàn),將層交叉合并到工具路徑中提供了一種改進(jìn)z方向特性的更簡單的方法,而不需要對制造過程進(jìn)行大量修改或增加繁瑣的步驟。
149.在一些實施例中,在填充相鄰層之前完全填充特定層可能是有利的。應(yīng)當(dāng)理解,不同的填充策略可以跨不同的層區(qū)域和不同的層使用,使得一些層被順序地完全填充,而另一些層一次僅被部分填充。例如,可以在不同的層區(qū)域上執(zhí)行螺旋和柵格圖案的混合。在一個特定示例中,在每個連續(xù)圖層中被重新定向90度的柵格圖案稱為交叉影線(cross-hatching)圖案。
150.在步驟405d,確定工具路徑是否完整。如果有額外的層區(qū)域要填充,則通過將工具
路徑部分起點與相鄰層或?qū)訁^(qū)域的前一工具路徑部分的對應(yīng)工具路徑部分終點相匹配,對所有層區(qū)域重復(fù)步驟405b和405c。通過匹配,意味著相應(yīng)工具路徑部分的起點和終點足夠接近,以最小化或避免打印頭114的停用或跳躍。
151.為了實現(xiàn)工具路徑部分之間的連續(xù)路徑,工具路徑策略在連接分區(qū)起點和終點時圍繞結(jié)構(gòu)的外部輪廓循環(huán)是有利的。這種輪廓循環(huán)降低了單個分區(qū)或?qū)訁^(qū)域脫節(jié)的機會,并提高了提供連續(xù)路徑的能力。因此,外部輪廓路徑被劃分成多個部分,這些部分提供了填充路徑的每個部分的終點和起點之間的鏈接。
152.哈密頓工具路徑策略
153.現(xiàn)在參考圖4c,示出了執(zhí)行步驟405以基于哈密頓路徑問題策略定義工具路徑來執(zhí)行部分層完成的替代的示例性方法。
154.在步驟405i,每個構(gòu)建層被分割成多個橫向?qū)訁^(qū)域或分區(qū)。每個層區(qū)域基于對應(yīng)“元素”來確定。如下所述,每個元素代表哈密頓路徑問題中的一個節(jié)點。元素可能包括需要在其他區(qū)域之前被填充的結(jié)構(gòu)或?qū)拥淖訁^(qū)域。這些是通過將由外部輪廓路徑界定的區(qū)域劃分成更小的區(qū)域來實現(xiàn)的。元素還可以包括填充部分之間的連接路徑。例如,這些可能是外部輪廓循環(huán)路徑的部分。元素還可以包括循環(huán)路徑,諸如內(nèi)部輪廓循環(huán),其表示可以圍繞由內(nèi)部輪廓形成的孔的周邊的路徑。循環(huán)路徑在它們開始的地方結(jié)束。元素也可以包括外部輪廓循環(huán)的部分。外部輪廓循環(huán)的部分提供了與輪廓相鄰的分區(qū)之間的鏈接路徑。
155.在步驟405ii,對于每個層區(qū)域,為每個層區(qū)域確定多個可能的填充路徑選項。每個路徑選項都有相關(guān)聯(lián)的起點和終點,以及可選的優(yōu)選或預(yù)定義的填充策略。諸如輪廓路徑部分的元素也將有一個可能的起點和終點列表。
156.圖4d提供了用三個元素創(chuàng)建的鄰接圖的示例,每個元素位于兩層中的一層。在實踐中,會有更多的層并且每層內(nèi)有更多的元素。每個元素都可以以多種方式執(zhí)行,同時保持在約束范圍內(nèi),諸如指定的柵格線方向或沿輪廓路徑的方向內(nèi)。每個路徑選項都有一個起點和一個終點??梢詾槊總€元素組合可能的起點和對應(yīng)的終點的列表。然后,可以基于一個元素的終點與另一個元素的起點之間的歐幾里德距離來進(jìn)行鄰接測試。
157.在步驟405iii,基于部分或全部位于結(jié)構(gòu)中其他元素之上/之下的元素,為每個元素確定優(yōu)先圖。在完成所有基礎(chǔ)元素之前,不會執(zhí)行任何元素。然而,特定層之上的層的不同區(qū)域可以在該特定層的所有區(qū)域完成之前完成。以這種方式,遵循不將工具路徑策略限制為逐層完成的部分層完成方法。
158.圖4e示出了可能適用于相同組的三個分區(qū)的優(yōu)先圖。該圖示出了層n中的元素e2部分或全部位于層n+1中的e3之下,而層n中的e1沒有。因此,在執(zhí)行e3之前,必須進(jìn)行檢查以確認(rèn)e2已經(jīng)完成。e1沒有這種限制。
159.在步驟405iv,確定工具路徑中的元素執(zhí)行順序以及每個層區(qū)域的填充選項的選擇。該確定可以基于以下要求:
160.a)每個元素只執(zhí)行一次;
161.b)執(zhí)行順序遵循在步驟405iii期間在優(yōu)先圖中確定的優(yōu)先關(guān)系;和
162.c)按照順序當(dāng)前元素的終點與當(dāng)前元素的起點相鄰。
163.圖4f示出了圖11中所示的正方形區(qū)域的層n,示出了如何將其劃分成四個元素。三個元素e1n、e2n和e3n構(gòu)成了外部輪廓循環(huán)路徑。點2和點3處的粗筆劃指示輪廓路徑被分割
成多個部分的位置。e1n從層起點(1)延伸到點2,e2n從點2延伸到點3,并且e3n從點3延伸到輪廓終點4。e4n是正方形內(nèi)部的區(qū)域,被示出為使用從點a到點b的柵格圖案填充。e4n的替代填充選項是從點b到點a沿相反方向遍歷相同路徑。形狀與層n相同的層n+1將具有等效元素,表示為e1
n+1
、e2
n+1
、e3
n+1
和e4
n+1
。
164.舉例來說,終點/起點鄰接的要求表示e4n可以跟隨e1n,但不能反過來。如果e4的路徑方向反向,即從b點到a點,那么e4n可能不會跟隨e1n。
165.下面的表1給出了這組元素的優(yōu)先矩陣。例如,表1表明,e1
n+1
在e1n被執(zhí)行之前不能被執(zhí)行,因為e1n位于正下方。
[0166] e1ne2ne3ne4ne1
n+1
e2
n+1
e3
n+1
e4
n+1
e1n00000000e2n00000000e3n00000000e4n00000000e1
n+1
10000000e2
n+1
01000000e3
n+1
00100000e4
n+1
00010000
[0167]
表1
[0168]
考慮到鄰接和優(yōu)先,該問題的解決方案,如圖11所描繪的,具有以下元素順序;e1n、e4n、e4
n+1
、e2n、e3n、e1
n+1
、e2
n+1
、e3
n+1
。e4n的路徑選項是從a到b的方向,而e4
n+1
的路徑選項是從b到a的方向。
[0169]
通過遵循步驟405i至405iv,可以確定代表優(yōu)先圖中恰好訪問每個頂點一次的路徑的哈密頓路徑。
[0170]
一旦結(jié)構(gòu)的所有層區(qū)域的所有工具路徑部分完成,它們被組合以定義單個工具路徑。在優(yōu)選實施例中,為每個層區(qū)域采用的工具路徑策略被定義為使得末端工具路徑是連續(xù)的并且不與路徑的其他部分相交。然而,應(yīng)當(dāng)理解,工具路徑可以被定義為針對其他參數(shù)進(jìn)行優(yōu)化,諸如:
[0171]
·
通過最小化打印頭不打印材料的時間來優(yōu)化形成三維結(jié)構(gòu)的打印時間。
[0172]
·
在三維結(jié)構(gòu)形成期間,最小化沿工具路徑的打印工具跳躍次數(shù)。跳躍發(fā)生在起點和終點之間有足夠距離的地方,使得來自打印頭114的材料流必須暫時停止。
[0173]
·
最小化沿工具路徑的路徑相交次數(shù)。如果不停止進(jìn)料,路徑相交會導(dǎo)致不需要的額外材料沉積在結(jié)構(gòu)上。這種額外的材料通常需要在沉積額外的層之前或者在所有的層都已經(jīng)沉積之后,通過銼或刮削過程單獨去除。
[0174]
·
最小化離開由外部輪廓界定的區(qū)域的路徑數(shù)量,即在三維模型外部“繪圖”的次數(shù)。例如,圖12a和圖12b中的對角線表示離開被制造對象的外部輪廓的路徑。在最好的情況下,這些外部路徑會造成材料浪費,并且在最壞的情況下,它們會導(dǎo)致到較低層的不必要的沉積。
[0175]
·
最小化用于形成三維結(jié)構(gòu)的打印材料的量。連續(xù)且不相交的路徑提供了最少的所需打印材料。然而,如果這種連續(xù)且不相交的路徑是不可能的(例如,對于要形成的復(fù)雜
結(jié)構(gòu)),那么不同的路徑選項可能是可用的,其需要不同量的打印材料。
[0176]
·
優(yōu)化打印工具沿著工具路徑轉(zhuǎn)彎的次數(shù)和程度。工具路徑中的急轉(zhuǎn)彎要求打印頭加速更快或移動更慢。前者會對材料沉積過程產(chǎn)生負(fù)面影響,而后者會造成更長的打印時間。
[0177]
·
在整個打印過程中,在結(jié)構(gòu)的不同區(qū)域上分配打印過程。結(jié)構(gòu)的一個局部區(qū)域的過度打印會導(dǎo)致過熱,這可能導(dǎo)致最終產(chǎn)品的結(jié)構(gòu)變形或缺陷。
[0178]
·
優(yōu)化層交叉的數(shù)量,以增強整體構(gòu)建的強度,尤其是在z方向(構(gòu)建方向)上增強。通過將每一層劃分成更多更精細(xì)的分區(qū),并使用層間的過渡將它們連接成完全連續(xù)的路徑,可以增加層交叉的數(shù)量。
[0179]
圖13a示出了用于制造圖5的箭頭形對象500的連續(xù)路徑。圖13a示出了六個層,并示出了相鄰層之間的過渡位置。圖13b示出了用于圖13a的層中的一個層的柵格樣式工具路徑填充策略。這里的點表示到/從相鄰層的過渡。
[0180]
如果三維結(jié)構(gòu)被劃分為體積子區(qū)域,則整個結(jié)構(gòu)的工具跳躍的數(shù)量可以被最小化為等于子區(qū)域的數(shù)量。必須正確選擇子區(qū)域,以便切片后每層中有且僅有一個外部輪廓。
[0181]
對于已經(jīng)在步驟403被劃分成多個體積結(jié)構(gòu)的更復(fù)雜的結(jié)構(gòu),對每個體積結(jié)構(gòu)重復(fù)步驟404和405。
[0182]
回到圖4a,最后,在步驟406,基于定義的工具路徑生成打印工具控制算法。該算法包括一系列控制命令,用于控制打印頭114沿著工具路徑移動以形成三維結(jié)構(gòu)。該算法能夠由控制計算機118執(zhí)行,并且控制命令作為控制信號120、122和124傳輸,以通過機械臂104和116以及噴槍102執(zhí)行打印過程。
[0183]
在步驟406的算法輸出是用于執(zhí)行增材制造的機器人程序。根據(jù)特定的機器人系統(tǒng),它可以用g代碼(計算機數(shù)控-cnc代碼)或某種其他語言編寫。例如,由abb robotics開發(fā)的機器人運行在abb專有的編程語言rapid上。
[0184]
下面是由方法400創(chuàng)建的rapid機器人程序的前幾行。方法400可以用于以其他編程語言輸出,例如g代碼。
[0185][0186]
應(yīng)當(dāng)理解,方法400形成了用于執(zhí)行增材制造過程的初始程序。在這方面,本公開的一個方面涉及一種在增材制造過程中控制諸如系統(tǒng)100的打印工具的方法。該方法包括:
[0187]
a)由諸如控制計算機118的計算機處理器執(zhí)行由方法400生成的打印工具控制算法;和
[0188]
b)響應(yīng)于打印工具控制算法,生成電信號(例如,信號120、122和124)以控制打印工具沿著定義的工具路徑移動,從而形成預(yù)定義的三維結(jié)構(gòu)。
[0189]
除了簡單地控制打印頭114的位置和流量之外,打印工具控制算法還可以包括用
于跨不同的構(gòu)建層或?qū)訁^(qū)域改變一個或更多個構(gòu)建參數(shù)的指令。例如,打印頭114的線間距和/或運動(例如,最小速度或最大加速度)可以被控制為在一個或更多個層區(qū)域之間變化。盡管這些參數(shù)在打印過程中可能會改變,但是何時以及在何處改變參數(shù)的決定是在開始打印之前在工具路徑規(guī)劃過程中預(yù)先定義和設(shè)置的。
[0190]
應(yīng)當(dāng)理解,方法400可以被實現(xiàn)為包括指令的計算機程序,當(dāng)指令被諸如控制計算機118的計算機執(zhí)行時,使得計算機執(zhí)行方法400。方法400也可以體現(xiàn)為存儲在計算機可讀存儲介質(zhì)上的一組指令。當(dāng)存儲介質(zhì)與計算機(諸如控制計算機118)接口連接時,指令可以由計算機執(zhí)行以使計算機執(zhí)行方法400。
[0191]
上述公開內(nèi)容提供了比當(dāng)前可用的更復(fù)雜的工具路徑策略,其允許相鄰層之間的多次過渡,并消除了順序?qū)油瓿梢詫崿F(xiàn)連續(xù)工具路徑的先前限制。其允許通過在填充至少一個較低構(gòu)建層的所有層區(qū)域之前沿著構(gòu)建方向填充較高構(gòu)建層的一個或更多個層區(qū)域來定義填充三維結(jié)構(gòu)的工具路徑。即其允許在層n被完全填充之前,在層n+1或?qū)觧+2等中鋪設(shè)材料。
[0192]
此外,可以在層切片之前將對象分割成子體積,以將問題減少到子部件,每個子部件都可以連續(xù)打印。此外,體積細(xì)分允許多個構(gòu)建方向,從而利用機器人在構(gòu)建過程中以任意取向保持零件的能力。
[0193]
對于多材料構(gòu)建,與非平面切片相結(jié)合的體積分割算法可用于最大化一種材料成分的打印連續(xù)性,即在互連的多材料構(gòu)建中減少從一種材料到另一種材料的轉(zhuǎn)換次數(shù)。
[0194]
箭頭冷噴涂示例
[0195]
在使用冷噴涂金屬沉積的實踐中演示了用于產(chǎn)生圖中所示箭頭形狀的示例工具路徑。使用plasma giken pcs-1000l高壓冷噴涂系統(tǒng)將鋁噴涂到200x 200x 6mm的鋁構(gòu)建板上。冷噴槍是靜止的,而構(gòu)建板在噴嘴前面由abb irb4600機械臂移動。
[0196]
工具路徑規(guī)劃算法用python編寫。箭頭stl文件以0.5mm的層高切片。使用雙層策略解決了連續(xù)路徑問題。使用了具有2mm線間距的柵格圖案填充圖案,其中柵格角度每兩層旋轉(zhuǎn)90
°
。使用50mm/s的工具速度。計算工具路徑后,python程序輸出一個abb rapid模塊文件,該文件隨后在abb robotstudio軟件中打開。
[0197]
在冷噴涂之前,對鋁構(gòu)建板進(jìn)行噴砂處理,以提高冷噴涂材料的附著力。冷噴涂粉末進(jìn)料器裝有平均顆粒尺寸為36.1μm的純鋁粉。氮氣被用作加速氣體。冷噴涂氣體設(shè)置為:400℃和4.0mpa。噴嘴出口和構(gòu)建表面之間的間隔距離保持在30mm??倶?gòu)建時間約為20分鐘。
[0198]
圖13c示出了完成的結(jié)構(gòu),并示出在箭頭區(qū)域之外沒有鋁沉積到構(gòu)建板上。此外,構(gòu)建物的頂表面大致為平面,允許由于粉末進(jìn)料波動而產(chǎn)生一定程度的高度變化。這表明實現(xiàn)部分層完成的工具路徑規(guī)劃算法成功地均勻填充了零件的每個區(qū)域。如果工具路徑包括從一個位置到另一個位置的重疊、重復(fù)的路徑部分或交叉,箭頭會顯示出過度構(gòu)建和構(gòu)建不足的特征。
[0199]
解釋
[0200]
在本說明書(包括權(quán)利要求)中使用的任何或所有術(shù)語“包括(comprise)”、“包含(comprises)”、“包含(comprised)”或“包含(comprising)”時,它們應(yīng)被解釋為指定所述特征、整體、步驟或部件的存在,但不排除一個或更多個其他特征、整體、步驟或部件的存在。
[0201]
在本說明書中,術(shù)語“計算機”等的使用可以指處理(例如來自寄存器和/或存儲器的)電子數(shù)據(jù)的任何設(shè)備或設(shè)備的一部分,用于將該電子數(shù)據(jù)轉(zhuǎn)換成例如可以存儲在寄存器和/或存儲器中的其他電子數(shù)據(jù)?!坝嬎銠C”或“計算機器”或“計算平臺”可以包括一個或更多個處理器。
[0202]
此外,計算機可以作為獨立設(shè)備操作或者可以連接,例如聯(lián)網(wǎng)到其他處理器(一個或更多個)和/或計算機(一個或更多個)。在聯(lián)網(wǎng)部署中,計算機(一個或更多個)可以在服務(wù)器-用戶網(wǎng)絡(luò)環(huán)境中作為服務(wù)器或用戶機器來操作,或者可以在對等或分布式網(wǎng)絡(luò)環(huán)境中作為對等機器來操作。計算機(一個或更多個)可以形成個人計算機(pc)、平板pc、機頂盒(stb)、個人數(shù)字助理(pda)、蜂窩電話、網(wǎng)絡(luò)設(shè)備、網(wǎng)絡(luò)路由器、交換機或網(wǎng)橋,或者能夠(順序地或按其他方式)執(zhí)行一組指令的任何機器,該指令指定該機器要采取的動作。
[0203]
在整個說明書中提及的“一個實施例”、“一些實施例”或“實施例”意味著結(jié)合實施例所描述的特定的特征、結(jié)構(gòu)或特性被包含在本公開的至少一個實施例和可能的多個實施例中。因此,在整個本說明書的各個地方中出現(xiàn)的短語“在一個實施例中”、“在一些實施例中”或“在實施例中”不一定都指相同的實施例。此外,在一個或更多個實施例中,特定特征、結(jié)構(gòu)或特性可以以任何合適的方式組合,這對于本領(lǐng)域普通技術(shù)人員從本公開中是明顯的。
[0204]
此外,雖然本文中描述的一些實施例包括一些但不包括其他實施例中包括的其他特征,但是不同實施例的特征的組合意味著在本公開的范圍內(nèi),并且形成不同的實施例,如本領(lǐng)域技術(shù)人員將理解的那樣。例如,在所附權(quán)利要求中,任何要求保護(hù)的實施例可以以任何組合使用。
[0205]
如本文所用,除非另有說明,序數(shù)形容詞“第一”、“第二”、“第三”等描述共同的對象,僅指示所指代的類似對象的不同實例,而不是旨在暗示如此描述的對象必須在時間上、空間上、等級上或以任何其他方式處于給定的順序。以這種方式,當(dāng)本文描述的任何方法包括幾個步驟時,除非特別說明,否則不暗示這些元素的順序。
[0206]
因此,雖然已經(jīng)描述了被認(rèn)為是優(yōu)選的本公開的實施例和應(yīng)用,但是本領(lǐng)域的技術(shù)人員將認(rèn)識到,在不脫離本公開的精神的情況下,可以對其進(jìn)行其他和進(jìn)一步的修改,并且旨在要求落入本公開范圍內(nèi)的所有這些改變和修改。例如,上面給出的任何公式僅僅是可以使用的程序的代表??梢詮目驁D中添加或刪除功能,并且可以在功能塊之間互換操作??梢栽诒竟_范圍內(nèi)描述的方法中添加或刪除步驟。