Kossel/Rostock等delta(并聯(lián)/三角洲)的自動(dòng)調(diào)平原理跟普通XYZ坐標(biāo)的機(jī)型差不多,如果你還沒了解過,可以先看看那邊的介紹( http://learn.makerlab.me/guides/8 )。簡單說就是通過一個(gè)限位開關(guān)(Z-min)來獲取打印平臺(tái)的平整度信息。然后將各個(gè)位置的Z偏移在打印的時(shí)候補(bǔ)償進(jìn)去,就可以實(shí)現(xiàn)自適應(yīng)打印平臺(tái)的傾斜等不平問題了,但與普通XYZ結(jié)構(gòu)調(diào)平一樣,如果平臺(tái)出現(xiàn)凹凸不平問題,并不能很好的解決。所以推薦大家的打印平臺(tái)用平整性較好的玻璃等材料。 說明,這是所提的delta調(diào)平都是針對Kossel版本的marlin固件而說的,并不是原始版本的 marlin。請注意,可能會(huì)有不同。 與XYZ機(jī)構(gòu)調(diào)平不同之處 如果你做的delta機(jī)型的機(jī)器是你自己組裝和接線的,你應(yīng)該知道。delta機(jī)型的原點(diǎn)限位接在了XYZ-max(最大限位)位置上,而用于調(diào)平的限位應(yīng)該接在Z-min位置上。并且在marlin固件中,對X-min及Y-min的管腳定義(pins.h文件中)需要配置為-1,否則自動(dòng)調(diào)平將不正常。如果你用的是由MakerLab開發(fā)的合體主控板(Mega Controller),那么你不需要做這樣的配置(我已經(jīng)替你配置好這兩個(gè)管腳了)。 另一個(gè)不同之處是探針的連接方式,比較常見的Kossel探針方式是這樣的(如圖),限位接常開,通過一個(gè)長六角工具觸發(fā)限位的狀態(tài),放下時(shí),限位狀態(tài)為Open,收起時(shí),限位狀態(tài)為Triggered(小提示:讀取限位狀態(tài)的G代碼命令為M119)。這一點(diǎn)跟普通XYZ結(jié)構(gòu)方式還是不同的。 當(dāng)然,Kossel也有其它調(diào)平方式,比如使用壓敏電阻等等。這里就不多說了。原理差不多。 硬件準(zhǔn)備及配置 由于探針的安裝方式可能不同,這里只簡單說明原Kossel設(shè)計(jì)的方案。如果你使用的其它方式,請根據(jù)自己的情況進(jìn)行安裝、配置及調(diào)試。本部分的圖片摘自《Kossel MiniAssembly Guide》。 1、準(zhǔn)備材料 兩芯導(dǎo)線(程度根據(jù)你的機(jī)器高度確定),一個(gè)限位開關(guān),一個(gè)曲別針,一個(gè)端子排上的銅端(或其它類似的東西),一個(gè)長內(nèi)六角; 2、限位接線 注意,此處的限位開關(guān)接的是Com(公共端)及NO(常開端)。
可以做如下處理,即把上面的鐵皮折彎。
3、安裝 將限位即其它部分安裝在相應(yīng)位置。 1、曲別針折彎:
2、安裝限位開關(guān)和曲別針:
3、安裝六角或其它類似東西:
4、安裝彈簧:
如下圖安裝完成,左邊是探針放下,右邊是探針收起:
探針收起時(shí),探針高度應(yīng)該高于打印頭高度才可以,否則打印時(shí)探針可能會(huì)碰到打印物件,而導(dǎo)致?lián)p壞物件:
固件修改配置 說明,下面所說的代碼都見于Configuration.h文件中。 1、板子類型 板子類型是打印機(jī)可以正常工作的基礎(chǔ),所以一定要配置正確,常見板子類型有:
ramps1.4板子: 33;
ultimaker板子: 7;
我的合體板子即Mega controller:310; #ifndef MOTHERBOARD
#define MOTHERBOARD 310
#endif
//根據(jù)你的板子類型選自相應(yīng)的數(shù)字在這里,我這里配置為310,是由我們MakerLab最新設(shè)計(jì)的合體式的控制板Mega Controller
2、溫度傳感器類型 溫度傳感器是用來讀取溫度的,如果配置錯(cuò)誤或接線錯(cuò)誤會(huì)導(dǎo)致打印機(jī)錯(cuò)誤,請一定要配置正確。 #define TEMP_SENSOR_0 1//第一個(gè)打印頭的傳感器。這里是100K NTC熱敏電阻的配置,如果你用其它傳感器類型請做相應(yīng)修改,比如熱電偶改為-1(需要另外添加AD597溫控板)
#define TEMP_SENSOR_1 0//如果配置為兩個(gè)擠出頭,此傳感器需要配置
#define TEMP_SENSOR_2 0
#define TEMP_SENSOR_BED 1//熱床對應(yīng)傳感器類型,如果你沒有用熱床,請改為0,如果你用其它傳感器類型請做相應(yīng)修改,比如熱電偶改為-1(需要另外添加AD597溫控板)
3、限位開關(guān)配置 如果你下載的是上面我提供的固件,你不需要做任何修改,保留默認(rèn)配置即可。 4、脈沖比率配置 這個(gè)參數(shù)非常關(guān)鍵,delta固件給我們簡化了這個(gè)計(jì)算過程,只需根據(jù)你的硬件配置做相應(yīng)參數(shù)的調(diào)整就可以。
#define XYZ_FULL_STEPS_PER_ROTATION 200 //步進(jìn)電機(jī)每周的步數(shù),即360/步進(jìn)電機(jī)銘牌上的角度,如1.8度,步數(shù)應(yīng)該是360/1.8=200;
#define XYZ_MICROSTEPS 16 //步進(jìn)驅(qū)動(dòng)的細(xì)分,大部分都配置為16,如果你的不一樣,請做相應(yīng)調(diào)整;
#define XYZ_BELT_PITCH 2 //同步帶齒間距,單位是毫米,2GT同步帶齒間距是2mm;
#define XYZ_PULLEY_TEETH 17 //同步輪齒數(shù),自己數(shù)一下,或查看賣家參數(shù)即可
#define XYZ_STEPS (XYZ_FULL_STEPS_PER_ROTATION* XYZ_MICROSTEPS / double(XYZ_BELT_PITCH)/ double(XYZ_PULLEY_TEETH)) //這是計(jì)算公式,請不要修改;
#define DEFAULT_AXIS_STEPS_PER_UNIT {XYZ_STEPS, XYZ_STEPS, XYZ_STEPS, 100}//這是最后的參數(shù),最后100你需要自己改為相應(yīng)擠出機(jī)的參數(shù),其它的不需要改
5、delta相關(guān)參數(shù)配置 下面是delta打印機(jī)特有的參數(shù),各參數(shù)與打印機(jī)實(shí)際尺寸的關(guān)系如圖所示:
// Center-to-center distance of the holesin the diagonal push rods.
#define DELTA_DIAGONAL_ROD 186.0 // mm
// Horizontaloffset from middle of printer to smooth rod center.
#define DELTA_SMOOTH_ROD_OFFSET 128.0 // mm
// Horizontaloffset of the universal joints on the end effector.
#define DELTA_EFFECTOR_OFFSET 19.9 // mm
// Horizontaloffset of the universal joints on the carriages.
#define DELTA_CARRIAGE_OFFSET 19.5 // mm
// Horizontaldistance bridged by diagonal push rods when effector is centered.
#define DELTA_RADIUS(DELTA_SMOOTH_ROD_OFFSET-DELTA_EFFECTOR_OFFSET-DELTA_CARRIAGE_OFFSET)
// Print surfacediameter/2 minus unreachable space (avoid collisions with vertical towers).
#define DELTA_PRINTABLE_RADIUS 70.0 //delta最大打印半徑,根據(jù)你的實(shí)際情況來修改,不要太大,放置出現(xiàn)撞車Push up the Z probe by moving the endeffector, no servo needed.
另一個(gè)跟尺寸相關(guān)的參數(shù),是回原點(diǎn)后,打印頭到打印平臺(tái)的距離: #define MANUAL_Z_HOME_POS 214
6、打開自動(dòng)調(diào)平功能及相關(guān)配置 // #define ENABLE_AUTO_BED_LEVELING // 如果要打開自動(dòng)調(diào)平功能,需要將前面的“//”刪除,才會(huì)起作用
//這個(gè)參數(shù)比較關(guān)鍵,尤其是Z軸的偏移,即Z探針剛剛觸發(fā)時(shí),打印頭與探針之間的偏移量,可以通過卡尺或移動(dòng)軸來記下坐標(biāo)等方式來確定比較精確的Z偏移
#define X_PROBE_OFFSET_FROM_EXTRUDER -1.0
#define Y_PROBE_OFFSET_FROM_EXTRUDER 21.0
#define Z_PROBE_OFFSET_FROM_EXTRUDER -6.7
7、LCD配置 如果你有LCD,需要打開相關(guān)參數(shù),比如你接了MakerLab的MiniPanel,需要做如下修改: // #define MINIPANEL //刪除前面的“//”
由于delta打印機(jī)固件需要做很多坐標(biāo)轉(zhuǎn)換的運(yùn)算,所以如果打開12864的LCD功能,可能會(huì)造成卡頓的現(xiàn)象,可以調(diào)節(jié)下面參數(shù)來修正和緩解這種問題: #define DELTA_SEGMENTS_PER_SECOND 160 //減小這個(gè)數(shù)值,來緩解卡頓現(xiàn)象,如修改為120進(jìn)行測試。
OK,如果你來到了這里,大部分參數(shù)都已經(jīng)配置完成,可以進(jìn)入下一個(gè)環(huán)節(jié)來驗(yàn)證配置即硬件接線是否正確了。 檢驗(yàn)、校正你的參數(shù) 0、準(zhǔn)備工作 上傳固件后,打開Printrun上位機(jī),選擇正確的串口和波特率進(jìn)行連接。
1、限位開關(guān)驗(yàn)證 通過上位機(jī),發(fā)送命令:M119觀察反饋信息,你會(huì)看到類似這樣的反饋信息:
對于x_max,y_max,z_max應(yīng)當(dāng)是:
限位被觸發(fā)時(shí),反饋信息為Triggered;
限位沒有被觸發(fā),反省信息為Open; 對于z_min即探針應(yīng)當(dāng)是:
探針放下,反饋信息應(yīng)當(dāng)是open;
探針收起,反饋信息應(yīng)當(dāng)是Triggered; 2、驗(yàn)證回原點(diǎn) 可以通過發(fā)送命令:G28或點(diǎn)擊上位機(jī)上下圖所示位置的左下角小房子:
現(xiàn)象:發(fā)送或點(diǎn)擊上面命令后,xyz軸電機(jī)會(huì)向上運(yùn)動(dòng),碰到限位開關(guān)會(huì)向下運(yùn)動(dòng)一點(diǎn)然后再次碰限位(為了提高精度),然后會(huì)停止運(yùn)動(dòng)。
問題排查:
軸向下運(yùn)動(dòng):這是因?yàn)殡姍C(jī)接線原因,將原電機(jī)接線完全反轉(zhuǎn),如原接線為紅藍(lán)綠黑,現(xiàn)在改為黑綠藍(lán)紅再試試;
軸碰到限位后不停止:很有可能你的xyz軸電機(jī)沒有跟對應(yīng)的限位一一對應(yīng),請檢查接線; 說明:這里回到的原點(diǎn)跟普通xyz坐標(biāo)機(jī)器不同的是,這里的原點(diǎn)坐標(biāo)并不比(0,0,0),而是(0,0,MANUAL_Z_HOME_POS)這個(gè)坐標(biāo)。 3、當(dāng)前位置坐標(biāo) 可以通過發(fā)送命令:M114來獲取當(dāng)前的坐標(biāo),回原點(diǎn)后,如果輸入M114得到的坐標(biāo)應(yīng)該是(0,0,MANUAL_Z_HOME_POS)。MANUAL_Z_HOME_POS這個(gè)參數(shù)在固件配置中已經(jīng)說了。應(yīng)該是打印頭回零后,到打印平臺(tái)的距離。 4、擠出機(jī)方向驗(yàn)證 驗(yàn)證擠出機(jī)是否方向正確,即點(diǎn)擊“Extrude(擠出)”命令后,電機(jī)應(yīng)該讓打印材料往打印頭方向運(yùn)動(dòng)才對,如果方向反了,可以改一下電機(jī)接線,將原電機(jī)接線完全反轉(zhuǎn),如原接線為紅藍(lán)綠黑,現(xiàn)在改為黑綠藍(lán)紅再試試;
可能回用到的G代碼命令是:M302冷擠出,即不需要加熱就可以操作擠出機(jī)。如果不輸入M302或加熱到170度,擠出機(jī)不會(huì)動(dòng)的。 5、delta架構(gòu)示意圖 如果你還不太了解delta架構(gòu),可以看看下面這張圖,對原點(diǎn)坐標(biāo)和打印中心坐標(biāo)做了比較清晰的展示。
6、最大Z高度確定即MANUAL_Z_HOME_POS參數(shù) MANUAL_Z_HOME_POS這個(gè)參數(shù)控制了打印機(jī)的Z軸方向的最大打印尺寸,同時(shí)也決定了坐標(biāo)Z=0時(shí)打印頭跟打印平臺(tái)的貼合程度,大家應(yīng)該知道第一層的打印跟這個(gè)貼合程度關(guān)系非常密切。如果你打開自動(dòng)調(diào)平功能,這個(gè)參數(shù)不需要調(diào)節(jié)的非常精確,畢竟自動(dòng)調(diào)平功能就是為了解決這樣的問題的,但需要注意的是,每次G28回原點(diǎn)后,都必須跟上G29自動(dòng)調(diào)平命令,否則可能會(huì)有第一層打印失敗,甚至撞車的風(fēng)險(xiǎn)。 7、G29自動(dòng)調(diào)平功能 G29命令是用來控制打印機(jī)進(jìn)行自動(dòng)調(diào)平的G代碼。發(fā)送G29命令后,如果相應(yīng)打印機(jī)配置了自動(dòng)調(diào)平功能,則打印機(jī)回做如下操作:
A、放下探針(delta機(jī)器推薦手動(dòng)放下);
B、開始對打印平臺(tái)進(jìn)行自動(dòng)調(diào)平(與普通XYZ坐標(biāo)打印機(jī)不同,delta需要對30多個(gè)點(diǎn)進(jìn)行探測);
C、回收探針(自動(dòng)完成); 上面三個(gè)步驟中C需要修改固件,否則探針不會(huì)自動(dòng)收起,或收起動(dòng)作有誤。收起代碼見下圖:
G29自動(dòng)調(diào)平校正流程:
A、手動(dòng)放下探針,并發(fā)送G代碼M119,檢查其中的Z_min是不是Open;
B、發(fā)送G代碼G28來進(jìn)行回原點(diǎn)動(dòng)作;
C、發(fā)送G29命令,來開始進(jìn)行自動(dòng)調(diào)平功能(注意,后面的動(dòng)作有可能回撞車,請隨時(shí)做好斷電準(zhǔn)備);
D、打印頭會(huì)向下移動(dòng),并對各點(diǎn)進(jìn)行彈出,完成最后一點(diǎn)后,打印頭會(huì)移動(dòng)到上圖所示的坐標(biāo)位置進(jìn)行對探針的回收;
E、后面的動(dòng)作應(yīng)當(dāng)非常注意,因?yàn)檫@個(gè)參數(shù)還沒進(jìn)行設(shè)定,所以現(xiàn)在的參數(shù)肯定對你的打印機(jī)來說不準(zhǔn)確,所以應(yīng)當(dāng)在撞車時(shí)進(jìn)行斷電;
F、回收探針完畢后,打印機(jī)會(huì)上升30mm后停止動(dòng)作,代表G29命令運(yùn)行完畢,此時(shí)如果你的探針沒有處于探針收起位置,則需要繼續(xù)進(jìn)行下面操作;
G、通過上位機(jī)(Printrun)移動(dòng)XY軸坐標(biāo)來使得探針位置剛好在回收螺母的正上方,然后發(fā)送M114命令得到當(dāng)前坐標(biāo),并記下測試的XY軸坐標(biāo)分別是多少;
H、通過上位機(jī)移動(dòng)Z軸坐標(biāo)垂直向下移動(dòng)(使用1mm的間距移動(dòng)),直到探針可以收起為止,發(fā)送M114命令得到當(dāng)前的Z坐標(biāo)并記下;
I、修改G得到的XY坐標(biāo)和H得到的Z坐標(biāo),改動(dòng)上面圖片中的坐標(biāo)為記下的實(shí)際值,然后保存并重新上傳固件,注意上傳前需要斷開上位機(jī)的連接;
J、上傳固件完成后,重新連接上位機(jī),并重復(fù)A~I(xiàn)的所有必要的步驟,直到探針可以自動(dòng)收起為止;
K、發(fā)送命令G1X0 Y0移動(dòng)打印頭到(0,0)坐標(biāo)位置;
L、通過上位機(jī)的移動(dòng)按鍵來移動(dòng)打印頭慢慢靠近并剛好碰到打印平臺(tái)時(shí)停止,發(fā)送命令M114得到當(dāng)前坐標(biāo),如果得到的坐標(biāo)是(0,0,0)那么說明你的自動(dòng)調(diào)平命令設(shè)定完成;
M、如果L操作中打印頭不能太靠近打印平臺(tái),或得到的坐標(biāo)值不是(0,0,0)而是稍大的值,需要修改Z_PROBE_OFFSET_FROM_EXTRUDER參數(shù)將其減小,比如將之前的-6.7改為-6.9后,重新上傳固件再測試;
N、重復(fù)A~M的步驟來完成對自動(dòng)調(diào)平功能的校正; G29測試效果 如果你已經(jīng)安裝校正的流程進(jìn)行了自動(dòng)調(diào)平功能的校正,那么你輸入G28命令然后G29命令后看到的動(dòng)作應(yīng)該是這樣的:
1、收到G28命令后,打印機(jī)會(huì)回原點(diǎn);
2、收到G29命令后,打印機(jī)開始對各點(diǎn)進(jìn)行探測,完成后,移動(dòng)到高高的回收螺絲位置進(jìn)行探針的回收;
3、回收完成后,打印機(jī)會(huì)升起30mm的高度; 為了能夠讓打印機(jī)每次打印前都自動(dòng)進(jìn)行調(diào)平功能,需要在切片工具中(如Slic3r或cura等)的啟動(dòng)G代碼位置配置上G29命令,否則打印機(jī)的自動(dòng)調(diào)平功能將不會(huì)執(zhí)行。 找到切片工具的相關(guān)位置,然后找到啟動(dòng)代碼的G28位置,在G29下面一行添加G29命令,如下圖所示:
校正完成并且切片軟件配置好G29命令后,就可以進(jìn)行實(shí)際打印測試了。導(dǎo)出模型G代碼,然后進(jìn)行打印測試,注意觀察第一層是否打印正常。如果一切正常就可以打印一個(gè)標(biāo)準(zhǔn)的長方體進(jìn)行尺寸測試了。比如常見的就有20X20X10mm的方塊進(jìn)行測試:
|
全部評論11