2013年3月28日 星期四

讓你的Replicator雙噴頭機器同時列印兩個相同的小物件

原文出處:http://www.thingiverse.com/thing:23792
讓你的Replicator雙噴頭機器同時列印兩個相同的小物件
Dual Extrude Both Extruders at Once for Replicator

[微hack]透過簡單的Script改寫雙噴頭的Gcode
這是一個Script,讓你的機器同時列印兩個相同的小物件。[1.1]

[1.1]Script下載之後會看到三個文件檔

工作原理說明
這個script基本上是改寫噴頭的路徑,將原本指令裡單一個噴頭(E000)的部分轉換成雙噴頭(A000 B000);Dimension/5D(Skeinforge路徑引擎裡的一個選項)在此設定是必須被開啟的。
How it Works -the script basically changes every extruder movement for 1 extruder ( an E000) to an extruder control movement for both extruders (A000 B000). Dimension/5D has to be enabled for this to work.

工作流程說明
指定下載的[start.gcode]取代預設檔案,之後將GCode路徑設定運算出來。
將運算出來的GCode以[bothext.vbs 或 bothext_win7.vbs]跑過一遍。(視你的作業系統,擇一)
開啟 ReplicatorG 軟體,將這個改編過的 GCode 轉出,送到 Replicator Dual 機型列印的。
Work Flow -Generate gCode as per usual but use start.gcode with Dimension based Anchor.Run the generated Gcode thru the script.open the gcode with ReplicatorG and print.

需要變動的設定
建議先複製[Duplicate]一個Profiles,以本圖為例(DualExtrudeMode)
先點選[Locate]找出要置換檔案的位置

將下載的[start.gcode]改名變更為[startDual.gcode]
放置位置為上述位置裡的[alterations]資料夾
然後按下上圖裡的[Edit]進行以下編輯

Skeinforge 設定裡的[Dimension]選項必須被開啟(Activate Dimension)[1.2]
Settings that need to be changed -dimension needs to be turned on in Skeinforge so the we get an E000 code for extruder movements.
[1.2] Dimension 選項必須被開啟(Activate Dimension)

對[ReplicatorG / Replicatorg-0034 / machines]資料夾裡的[Replicator.xml]檔案進行編輯[1.3a],將 id=a 與 id=b 後面的[maxfeedrate]數值,由 1600 改為 4600[1.3b],如此一來 skeinforge 就不會在每次你運算GCode時大發脾氣。作者說他任意的將4600這個數值填入,假如有誰知道更適合的數值請告知他一聲。
the ReplicatorG34/machines/Replicator.xml file needs to be changed so the maxfeedrate on A and B is 4600 instead of 1600 so skeinforge does not throw a fit everytime you generate gcode. I arbitrarily picked 4600- if someone knows the proper number let me know. 

[1.3a]以notepad.exe 對[replicator.xml]檔案進行編輯

[1.3b]將 id=a與b的maxfeedrate數值從1600改成[4600]

在 skeinforge 程式的[alterations]分頁裡,移除[remove Redundant Mcode]的勾選,不然第二個噴頭的預熱功能將會失去作用[1.4a]。之後將原本的[start.gcode]位置[1.4b],改對應為剛剛放上的檔案[startDual.gcode]
-in skeinforge alterations tab- remove Redundant Mcode needs to be unchecked otherwise the warmup of the 2nd extruder gets removed.
[1.4a]移除[remove Redundant Mcode]的勾選

[1.4b]更換對應的起始指令碼為[startDual.gcode]

你可以擇一而做:
-讓機器指定使用下載的[start.gcode]
-或新增一個[profile]並設定讀取使用下載的[start.gcode]。[1.5]
-或使用[use default start/end.gcode]選項,再去設定你要用哪個版本的[start.gcode]。
you can either: -use the dimension based start.gcode all the time-create profile that uses it the dimension based start.code-use the "use default start/end.gcode" setting in the generate print dialog to control which one you use .
[1.5]取消勾選 use default start/end.gcode 選項
系統才會去讀取特製的[startDual.gcode]設定檔

下載的資料夾裡面有兩個版本的 Gcode 轉檔指令集,一個是給 XP 作業系統,另一個是給 Vista 和 Win7 作業系統[1.6a]。
在 Win7 版本你必須在跑這個指令集前,將每次要轉的檔案指定所在的路徑位置[1.6b]。想偷懶的話,就把檔案放在C:\下吧![1.6c]
之後會跑出一個剛轉好的檔案[1.6d](如果有誰知道可以減少這個步驟,麻煩通知原作者)
-there are two version of the gcode conversion script
- one for XP another for Vista and Win7
- in the Win7 version you need to edit the script to change the file name that is being converted each time(if someone has a way to do a file dialog like the XP version let me know) 
[1.6a]畫面下的兩個檔案,視你的作業系統選擇使用
[1.6b]Win7的版本必須編輯內部的指定檔案路徑
[1.6c]偷懶的方式,可以將檔案直接放在C:\下
[1.6d]轉好的檔案會出現在同一個存放位置

[檔案輸出前的最後確認]請確認有下面兩行指令列
M104 S220 T1 (二號噴頭加熱)
M6 T1 (二號噴頭預熱等待)
T1 代表的是第二個噴頭,也就是左噴頭


起始的Gcode裡面有一些機關是原作者還在嘗試的。加熱板看起來似乎是拖慢進度的關鍵,所以我在start.gcode裡面就把加熱板啟動的程序先排入了。我不用慢慢等程序跑到加熱,我啟動後直接讓它加熱到我預設的105度,然後歸零的動作完成後,它會被迫冷卻到100度再被加溫到110度而不需要長時間的等待。(作者不認為加熱板在列印前必須被加熱到110度)之後我們必須等待噴頭被加熱,直到一切開始列印運作。
the startup gcode also has some warmup tricks I am currently testing. The bed seems to be the slow spot in the warmup so I turn it on at the start of the script. I don't wait for it to be warm at that point simply turn it on, I use 105 degrees in case it is already warm. Then once the homing is done. I wait for it to warm to 100 then turn it to 110 without waiting(I don't think the bed has to be at 110 before we start printing). Then the extruders get turned on and we wait for them to be ready.

已知的問題
配套鎖定的[start.gcode]需要下一番功夫設定。
Mac 和 Linux 在現階段不好意思,轉檔編譯器沒辦法直接拿來用喔!(如果有誰想轉譯成這兩個作業系統可以運作的版本,麻煩自便)
Know Issues -
the anchor gcode of the startup-gcode need some work.Mac and Linux people are out of luck for the time being- the conversion code is pretty straight forward if someone wants to convert it





如果你跟著走到這一步,應該已經八九不離十了
如果你沒有跟上,也可以直接下載檔案來試試看。.s3g版本.x3g版本

最後原著者特別感謝Rob Giseburt 先生對於操作流程上的建議
Thanks to Rob Giseburt for the advice on how to start the process.

Popular Posts