2020年4月2日 星期四

筆記:久違的3D列印

  • 技術筆記外殼製作_3D列印 (較久遠的紀錄) (連結)
  • 筆記:久違的3D列印 (使用筆記) (連結)
  • 筆記:創建3D物件,OpenSCAD (製作立體模型相關技巧) (連結)
  • 軟體工程師的3D列印筆記 (使用心得) (連結)
  • 技術筆記:多樣化的3D列印裝置 (連結)

3D列印白海豚群

新3D印表機上陣

提起3D列印,心中就不免悲欣交集,因為好幾年前就曾和女兒親手組裝一台類Prusa機器,但實際使用後發現這機器真是DIY等級,小毛病特多。黑客有時間有毅力動手修理當樂趣,自己能投入維護時間實在有限,所以隨著時間過去,就只能放在倉庫生灰。

近日因緣際會,又有列印需求,帶著舊機器回原廠(連結)送修,評估過後,舊的沒去,卻來了台新機。新機準確度、穩定度都大幅提升,終於像是可以端上檯面的產品,也協助我在短時間印出許多物品。

主要特色是,揚棄以往用3D列印的零件,全面改用4040鋁擠,組成穩固的龍門結構。改進Y軸軌道,讓整個XY平面移動滑順許多。使用新一代熱噴頭(連結),加熱管直接接到底部,大大減少堵塞問題,解決上一代的夢靨。還有開機就起動風扇系統,也減少許多不當操作的誤失。

控制介面

除硬體外,新機的操作方式也比上一代進步許多,以往操作時總得綁著電腦,Repetier-Host(連結),大大降低使用頻率,獨立的控制面板會有更多餘裕直接控制機器,增進機器效能。
LCD12864
Status screen
右上方是風扇轉速
右下方是已經完成進度和時間
Info screen 返回主螢幕
Prepare
預先加熱,這在更換線材特別有用,打開螺絲,向下施壓擠出些許線,快速上抽。換線後重新插過兩個孔進入管道,施壓直到出料,螺絲鎖到底回轉半圈,完成。
移動馬達
Control
調整PLA加熱溫度
Print from SD
選擇列印STL檔案

嶄新切片軟體CURA

切片軟體也由SLIC3R(連結)  更新為CURA。介面或是演算法,都異常優異。下列是各參數資料。

基本

層厚0.2。物件印出來多精緻,其實就只是層高設定的問題,Layer height(層高) 數值越小越精緻,相對列印時間就變長。First Layer height(第一層層高) 0.3mm 建議這個數值不要改。一般而言,0.2mm層高的東西就算是很精緻了。 除非你的物件很小,不然不建議設在0.2mm以下,會等太久。

層高有最大高度限制,關鍵是你的噴嘴口徑有多大。層高換算公式:噴嘴口徑x 0.8。0.4mm口徑 0.4mmx0.8=0.32mm以下層高都ok。如果使用0.6mm口徑的噴嘴,就會是 0.6x0.8=0.48mm

臂厚1.2
開起回抽 Check
填充頂層底層 1.0  (目前還難掌握)
填充密度% 45 (45看起來就很濃,20則像是鬆餅堪用了)
列印速度 50
列印溫度 210 (目前常用PLA,庫存PLA是185,PLA顏色眾多,光予540,JAMES 600不含運)
熱床溫度 60
支撐類型  Touch FDM(熔融沈積)向上累積過程中,無法橫向延伸出懸空物件(約60度角),必須建立輔助線,輔助線種類
粘附平台  BRIM 5(搭出穩固的線,將物件拉在平面上,如果底面積比較大,就不需要BRIM)
列印材料直徑 1.75
流量% 100

高級

噴嘴孔徑 0.4  噴嘴口徑有0.1 、0.2 (JAMES提供)、0.4 .. 1.0mm各種選項,理論上口徑越細越細緻,能列印的物件可以越薄,例如這個眼睛模型(LINK),壁太薄,設定為0.4時LAYER並沒有顯示。但時間越久,必須評估是否符合效益,目前口徑0.4mm堪用,有機會要多嘗試不同效果。

回軸速度 40.0
回軸長度 4.5
初始層厚 0.3
初始層線寬 100
底層切除 0.0
兩次擠出重疊 0.15
移動速度 80  (預設150太高,調過120,JAMES建議80)
底層速度 20
填充速度 0.0
top/bottom 0.0
外殼 0.0
內壁 0.0
冷卻每層最小列印時間  5
開起風扇冷卻  check
風扇全速開起高度  10.0
風扇最小% 40
風扇最大% 60
最小速度  10
噴嘴移開冷卻   uncheck

大致上, 渦輪風扇很強勁,只要開 50%50% -70% 之間就可以了,開到 80% 80%以上,你的物件可能會被吹變形。
圖片取自James

外掛程式
Pause at height
Tweak at z 4.0.2

機器部分
先想辦法設定 輸入新的名稱 MS2030PLA  (不要使用reprap )
機器設置
1mm步數  0
最大寬度 230
最大深度 322
最大高度 320
擠出機數量 1
熱床   check
平台中心0.0  uncheck
機器平台形狀   square
Gcode類型   reprap

列印多個物件。有兩種方式,第一種是,雖然有多個物件,但噴頭在每一個相同平面都會處理那層各物件工作,缺點是噴頭移動的距離大幅增加,影響精確度。另外是各個作品依次處理逐個進行,但要考慮噴頭體積,能同時印製的數量較少。

組裝零件

以連結來說,常見的包括螺桿(又稱牙條)、螺帽、彈簧華司(非完整連結,放置於螺帽和華司間,增強穩定),華司(隔離塑膠件和螺帽,除金屬材質外,還有尼龍華司),大華司(擋板功能),螺絲(有內六角特性,鎖物件),滾花螺帽(適合手動轉動)。

M5 梯形螺母*30

止滑螺帽比較高,它裝了一圈尼龍墊,可以用摩擦力讓螺絲卡死在上面。因為皮帶座會被馬達一直前後拉扯,用一般螺帽鎖的話很容易過一陣子就鬆開。結果印的東西會移位,不準確。

尺寸上有各種尺寸,M8 意思是直徑 8mm,M5 意思是直徑 5mm,M6 意思是直徑 6mm。M8適合建立主架構,M3為常見規格可鎖馬達等。

搭配的板手,應該是13 號梅開板手。

組裝成果:結構演進

第一種,簡易螺桿架構。

不同螺桿間透過3D列印的大型方塊(有長的孔徑)做堅固的主架構,塑膠固定夾(如下圖)處理些小的轉向。此結構雖然簡單,但因為符合早期3D列印追求的精神,能夠自行列印出需要的元件,進行自我複製,成品再列印出新的組裝件,不斷循環。這涵義是十分深遠的。

底部結構,最初版本是兩圈四方型,組成如四方體。整體組裝形狀呈現三角體,如下圖。需要的零件(連結)。

第二種,壓克力板。

壓克力板代替螺桿,形狀仍為三角形,所以也能視為是前一代的延伸。雖然沒有實際的相互比較,至少外觀看來蠻不錯。

龍門架構
底部四方體和壓克力架構是用兩個特殊卡榫卡入

第三種,鋁擠架構。

最牢固的產品是體積最大,但也最厚實。

創想Creality Ender,真是便宜又大碗,若有機會可蒐集零件機,拆來當成實驗部件。

組裝移動,皮帶拉動

方案一,採用線性軸承與光桿,SCS8UU 線性軸承座可以直接鎖螺絲 SCS(含座線性軸承) 8uu( 符合直徑8mm 光軸使用 ),沒有底座的LM8UU大多用紮線帶綁緊。軸承中有四排滾珠,可供光桿輕鬆移動。如下圖。


方案二是線軌,同樣是許多小鋼珠排列其中,大量應用在CoreXY或H-Bot。線軌的品質和價格差異大,目前是最便宜版本測試中。

上述討論的是平面如何平順滑動,下面說明如何用皮帶拉動這個平面。所以也可以把這種結構看成是某種拉線結構。皮帶的規格是,6mm寬 GT2 皮帶 2公尺,目前固定皮帶的方法如下。

繞過有咬痕的區域,再用紮線帶綁起

要讓皮帶達到效果,皮帶緊繃程度非常重要。目前做法是單純的手動拉緊,市售有套件名為張緊器,尤其以鋁擠成型的機器來說,安裝方便,套上鋁擠透過螺絲調整皮帶張力,而且內附齒輪,可以直接代替滾珠軸承。連結 連結

第二種拉緊皮帶的方式,稱為彈簧皮帶,拉緊彈簧,鎖緊彈簧,扭力彈簧,就能持續拉緊GT2皮帶,保有韌性又能拉緊。

皮帶經過滾珠軸承做前後兩個方向的運動。滾珠軸承(旋轉陀螺元件),內外兩圈可分別轉動,若由兩片大華司夾著,就能當成皮帶的轉軸。滾珠軸承有特種型號,架構中常用為,小徑滾珠軸承(608ZZ)。MF604ZZ MF105ZZ(內徑5mm 外徑10mm 厚度4mm)   如果加了MF則是Single Row Ball Bearing  單邊凸起。

604zz(内径4mm外径12mm厚4mm)
605zz(内径5mm外径14mm厚5mm)
606zz(内径6mm外径17mm厚6mm)
607zz(内径7mm外径19mm厚6mm)
608zz(内径8mm外径22mm厚7mm)
609zz(内径9mm外径24mm厚7mm)
624zz(内径4mm外径13mm厚5mm)
625zz(内径5mm外径16mm厚5mm)
626zz(内径6mm外径19mm厚6mm)
627zz(内径7mm外径22mm厚7mm)
628zz(内径8mm外径24mm厚8mm)
629zz(内径9mm外径26mm厚8mm)
684zz(内径4mm外径 9mm厚4mm)
685zz(内径5mm外径11mm厚5mm)
687zz(内径7mm外径14mm厚5mm)
686zz(内径6mm外径13mm厚5mm)
688zz(内径8mm外径16mm厚5mm)
689zz(内径9mm外径17mm厚5mm)
694zz(内径4mm外径11mm厚4mm)
695zz(内径5mm外径13mm厚4mm)
696zz(内径6mm外径15mm厚5mm)
697zz(内径7mm外径17mm厚5mm)
698zz(内径8mm外径19mm厚6mm)
699zz(内径9mm外径20mm厚6mm)

依靠齒輪和緊密連結的馬達帶動(搭配同樣的比例),安裝圖如下。

這類型架構的馬達公式如下:馬達轉一圈幾步 ×(馬達驅動器可細切幾微步)的負一次方 / 皮帶尺距 × 齒輪齒數。例如:James系統,馬達轉一圈是 200 步(1.8 度),Ramps 的驅動器設定細切為 1/16,所以負一次方等於 16,皮帶是 GT2,所以是 2mm 寬,馬達上的齒輪是 16 齒。算出來的值是 100。

除上述馬達拉動皮帶的方式外,還有一類是馬達連結齒輪緊貼皮帶,而馬達與滑台相連,滑台又與滾輪相連,在2020軌道中移動。典型範例是OpenBuilds



組裝移動,螺桿搭配光桿

螺桿移動的概念較抽象,想像著緊抓著螺桿不動,手轉螺帽,螺帽會隨手的動作在螺桿上前後移動。此時若試著維持螺帽維持在同一位置,持續轉動螺桿,這螺帽的平面就會隨著前後移動,移動距離與螺桿螺距成正比。

僅有螺絲是沒有意義的,必須要將螺桿與某個結構連結。方法一:手邊列印機會將螺絲卡入外部製具,螺桿轉動時帶動物件移動。

一般螺桿僅需單一螺帽,上圖兩組螺帽及彈簧,應是為提升穩定性。

方法二:T型螺母(周邊有螺絲孔)鎖上外部結構,不過螺桿與螺母並非完全貼合會有晃動狀況,考量應該適合單方向負載。

T型螺母,中間有螺紋
零件形式販售

頂點處則可以安排MF128微型法蘭小軸承,或立式軸承或臥式軸承當成支點。

軸承,有小螺絲可鎖住螺桿,造型略傾斜

另外,螺桿架構除中央螺桿外,外圍還必須有輔助維持固定位置的能力,作法如光桿(直覺),或是滾輪(類似OpenBuild)。

產品形式,利用鋁擠和滾輪製作軌道

轉動螺桿的方式有二,一是馬達帶著齒輪A,再帶動齒輪B,而齒輪B中央是個能固定螺帽的孔洞,繼續即可鎖著螺桿。如下左圖。應用如膠條擠出頭。

第二種方式是使用聯軸器,聯軸器一邊連結馬達軸心,一邊拉住螺桿,可透過螺絲可以鎖緊兩軸,而規格上,會因為兩邊孔洞大小不同名稱類似5對 5聯軸器等。其運作上最特別是中間彈性機制,能確實將轉動能量傳遞到另一側而不破壞結構。

馬達轉一圈幾步 × (馬達驅動器可細切幾微步)的負一次方 / 螺紋間距。例如:M8 的螺桿,所以螺紋間距是 1.25mm,算出來的 Z 值是 2560。

組裝擠出頭

擠出頭的概念是,將螺桿平貼PLA線材一側,藉由旋轉的力量將PLA持續向前推進,PLA線材另一側是個轉動的滾珠軸承,巧妙處是兩者間有彈簧結構,讓PLA維持在不會鬆脫但又有摩擦力的狀況。

這種狀況下,馬達轉一圈幾步 ×(馬達驅動器可細切幾微步)的負一次方 × 擠出機齒輪比 / 圓周率 × 擠出機的螺栓直徑。例如:馬達轉一圈是 200 步, Ramps 的驅動器負一次方是 16, 擠出機齒輪比(大齒輪 ÷ 小齒輪)是 39/10,是 3.9 , 圓周率是 3.1415926, 擠出機的螺栓(咬膠條的那支)是 8mm。算出來的值是 496.56343。

第二代的擠出頭就直覺多了,直接使用馬達連結著齒輪。

融嘴是制式物品J-Head,規格為0.4口徑。底部是金屬塊,上部是套管,內側有鐵氟龍管避免直接接觸,為了避免快速降溫凝固,會外接風扇散熱。

將加熱頭穿入鋁塊,用 M3 無頭內六角螺絲固定。將熱敏電阻的兩支腳用 Kapton 耐高溫膠帶包好,腳末梢裸出。拿出小金屬管,拿熱敏電阻一支腳與白色延長線的一支腳穿到小管子裡面,用鉗子壓緊,拉拉看確定不會脫落。另一邊的熱敏電阻也比照辦理,然後再用 Kapton 包起裸腳,熱敏電阻的頭不要包 Kapton,熱敏電阻要放到鋁塊的另一個孔,再用 Kapton 將整個鋁塊及熱敏電阻一圈一圈包起來。最後如圖:(取自James內容)。

組裝加熱平台和風扇

拆下列印板(上壓克力),貼大張的 Kapton耐高溫超厚膠片 一張 (黃色的 ),盡量不要有氣泡在裡面。中間的白線是熱敏電阻,可以測出熱床的溫度。紅線是正極,在畫面的右下角,焊接在1的位置上。黑線是負極,要同時焊接2和3的位置。如果黑線只焊到一個號碼,只有半邊會發熱。除加熱平台外,還會加入鋁箔保熱墊。另外,口紅膠水是維持黏著的秘密武器啊。

平台除加熱外,還需時時注意維持水平,最適合的噴嘴與平面的高度距離是0.3mm,讓A4的紙可以剛好被夾住,移動時有一點磨擦力。

靜態設計方面,有特殊彈簧調整方式。將螺絲先放入華司後,再穿過壓克力,然後依序放入華司、彈簧、滾花螺帽。再將壓克力四邊螺絲穿入下一片壓克力,再用滾花螺帽由底下鎖上。可以達到有彈性又能調整高度的功能。

調整方式是,順時針轉動內六角扳手,順時針轉動內六角扳手,會往下鎖緊,玻璃會下降。逆時針轉動,會變鬆,玻璃上升。 轉動內六角扳手,調整玻璃高度。

追求水平的終極工作,近接開關,偵測儀連結 連結

Cooling Fan 40X40mm風扇,緊貼在加熱管旁邊,避免膠條膨脹堵料(高溫膠條及長時間列印)。Cooling Fan 50渦輪風扇,幫助列印物體快速散熱,避免因過熱導致物件變形。利用導風管,對準噴嘴下方,吹冷剛噴印出來的線材。

RAMPS電路

電路是軟體和硬體互相搭配的結果。目前多數軟體採用Marlin(連結),硬體則是,ARDUINO MEGA2560 和 SHIELD,最常使用為RAMPS,版本1.4,連結

一般是藉由修改configuration.h的參數,控制RAMPS(參數為motherboard 33)。連結 說明內容(連結)。

特別注意馬達IC位置

電源連結方式

110V綠色線接地,白色線接 L,黑色線接 N,Com 表示負極,V+表示正極。

熱敏電阻:偵測溫度,區分成底板和加熱頭兩種,測試時參數   #TEMP_SENSOR_0/1/2/END  原本-1 -1 0 0 改成1 0 0 1。

熱敏電阻位置,三個電容器的下一排,或 z 軸上一排,無正負區分

偵測是否遮蔽限位開關(LIMIT SWITCH):區分成X/Y/Z三組。右上處有「S、-、+」,所以插線時,前兩條線要交叉、+線不變,另外注意,要間隔插,X 限位開關插第一直排,Y 限位開關插第三直排,Z 限位開關插第五開直排。插對時,限位開關的燈會亮起。(插錯不會怎樣,只燈不亮)。

操作上,configuration.h中找到 X/Y/Z _MIN/MAX_ENDSTOP  的true改成false

HOMING_FEEDRATE {50*60, 50*60, 4*60, 0} 改成{10*60, 10*60, 1*60, 0},這樣回家速度較慢。比較安全。

開啟溫度加熱: 底板/加熱頭,J-Head加熱頭兩支腳不分正負,固定在 Ramps 的 D10。

開啟風扇:

50渦輪風扇 的電線要接在電路板的D9 位置上,有正負的差別,紅線是正極,黑負。接反了風扇不會轉。

J-Head 40*40mm 12V風扇,

馬達:RAMPS使用42型步進馬達,馬達的四條電線要散開不要讓末端的金屬電線碰在一起,馬達會被鎖緊,轉不動。

驅動晶片是A4988,單顆使用電流約1.5A,連結的方式如下圖,特別注意Z軸因為有兩顆馬達,所以保留了兩組接口。A4988的更多說明如連結

若馬達呈現抖動,可調整驅動片右側上的圓形旋鈕,先逆時針轉(電流變小),再慢慢順時針轉(電流變大),直到馬達轉動即可。

馬達的顏色配對方式

限於程式邏輯規則,操作上一定要先「+Y」,才能按「-Y」。擠出頭的馬達需要溫度到達 180℃,才能運作。

馬達步數的統計參考資料(連結)。 Configuration.h 中找出 DEFAULT_AXIS_STEPS_PER_UNIT,相對應的是{X,Y,Z,E}所以改成{100,100,2560,496.56343}。

電源供應:12V 20A 電源供應器 (輸出 12 伏特 20 安培 ),有110V和220V的選擇開關。如果使用功率不夠的電源供應器,最嚴重是會起火燃燒,次嚴重是逐漸燒壞你的每個零件。 五顆NEMA17 42型步進馬達,每顆需要 1.7A ,總共8.5A 。MK2加熱板需要最少 6A 的電流,加上馬達 的電流,至少 需要 14.5A 的電流 ,還沒算上擠 出噴嘴需要的加熱電流。若是12V10A的電源供應器,如果只要列印 PLA ,不要用加熱板的話,就可以接受。如果你需到還是使用加熱板,還是使用12V20A的電源供應器。

U8glib arduino的擴充程式,目前使用新版本12864,畫面如最前面。

舊版本 LCD 2004
LCD和RAMPS的連結方式

從實驗的角度看,目前隨機程式都必須包含著U8glib(預設帶顯示器?)。若不需要得調整宣告。

RAMPS軟體控制

控制Marlin方式有二,一是透過離線列印模組,二是PC的COM通訊接口,後者最常見的軟體是Repetier-Host(連結),設定好選擇BAUD RATE 250000和COM PORT後,點選CONNECT就會開始互相溝通,溝通方式為G Code。調整Marlin。

避開U8glib:既然沒有放控制介面就不用編譯。

註釋掉 #define REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
註釋掉 #define ULTRA_LCD

避開溫度感測器:不然開機會持續檢查溫度若沒有結果就會999  連結 

#define TEMP_SENSOR_0 1  改成0
#define TEMP_SENSOR_1 0
#define TEMP_SENSOR_2 0
#define TEMP_SENSOR_BED 1  改成0

處理完畢重新編譯上傳,PC程式即可透過com和Arduino溝通(GCode),指令分成兩大部分。

移動位置:如G1 X10 或 G1 X10Y10Z10,若同時輸入三個座標,會同步移動到正確位置(不是X軸、Y軸、Z軸的順序)。

控制Relay:連結(能查到都是此種做法 GCode M80)  連結 (只有張圖,沒有更多說明)  連結(參考價值低)  比較特殊的RELAY接髮 連結

比照這方式寫指令 連結  例如 M42 P5 S1 就是宣告5的數值為1  (而程式段落中會包括啟動、執行) pinMode(pin_number, OUTPUT);  digitalWrite(pin_number, pin_status);  analogWrite(pin_number, pin_status);

目前計畫,按鈕1 (pumpA 吸啟動)     按鈕2 ( pumpA 吸結束 立刻 pumpB 吐啟動 休息一下 pumpB 吐結束 ) 東西自然會被吹到下面。吸嘴是由長的螺絲直接固定,而螺絲是避開目前垂直交合處,直接鑽進去。

非RAMPS方案

前述架構是ARDUINO+SHIELD,後續有兩者合一產品,MCU使用STM32,軟體是Marlin 2.0。

MAKERBASE公司連結 FB:MKS XXX,使用於ENDER與早期TWO TREES。

連結

TWO TREES公司連結:脫離MAKERBASE自行生產SKR V1.5 TURBO 3D(連結 雖然看起來幾乎一模一樣)。(github非正式連結)

中央為STM32 MCU,邊緣為馬達驅動晶片接口,價格約五六百元

1 則留言:

  1. 我也一直很想玩 3D 列印...
    看樣子時間開始成熟了~

    回覆刪除