国内成人免费视频|中文字幕一区精品欧美|国产精品玖玖玖在线观看|国产成人精品久久免费动漫|欧美日韩亚洲一区在线观看|91午夜精品亚洲一区二区|9 9久热RE在线精品视频|精品无码国产不卡在线观看首页

【3D打印機DIY組裝】Sanguino 控制板 安裝 Marlin 軟件

開源技術(shù)
2014
03/20
23:00
分享
評論
Sanguino 控制板 安裝 Marlin 軟件
Note: Sanguinololu 1.3a 在USB 晶片跟1284P的通訊設(shè)計上,有些問題,倒致非常多網(wǎng)友買板子買來,卻無法使用。建議請避免再購買Sanguinololu。


Sanguinololu簡介

(譯自http://reprap.org/wiki/Sanguinololu  翻得不好,請多多指教。)

Sanguinololu 是一個相對便宜的 RepRap 綜合控制電路板,使用ATMEGA-1284做主控制器,使用四組 Pololu 模組做步進馬達控制控制,分別控制XYZ三軸和擠出機。提供了I2C, SPI, UART等介面供軟體開發(fā)者延伸控制功能。ADC 腳位提供量測功能(測溫度用)。額外的14個GPIO可以增加周邊電路的控制功能,例如SD卡、LCD液晶銀幕等等。

Marlin 韌體特色:

(譯自 https://github.com/ErikZalm/Marlin  翻得不好,請多多指教。)

Look-ahead (加減速預(yù)測):

透過預(yù)先分析下一個位置移動指令,Marlin知道下一個指令需要的馬達速度?恐@樣的資訊,在結(jié)束當(dāng)下指令的馬達轉(zhuǎn)動之前,不必減速到完全停止,而是直接改變馬達速度去執(zhí)行下一個指令。這樣可以大幅加快列印的速度。

Arc Support (支援弧線):

Marlin可以自己決定最佳的弧線分段解析度,得到最平滑的弧線。

Temperature Oversampling  (溫度多重採樣):

為了減少雜訊對溫度測量的干擾,Marlin採樣16次后取平均值來當(dāng)作加熱時溫度控制的參考依據(jù)。

AutoTemp(自動溫度控制):

當(dāng)環(huán)境溫度改變,或是列印速度改變時,擠出頭加熱需要輸出的功率,都需要跟著改變。Marlin利用PID自動控制技術(shù),讓擠出頭能夠穩(wěn)定得維持工作溫度。

EEPROM(參數(shù)記憶功能):

系統(tǒng)運作時需要一些參數(shù)來調(diào)整工作表現(xiàn)。例如控制溫度的PID參數(shù)、步進馬達的"距離 / 步數(shù) 對應(yīng)值",仍然需要依照整個印表機的實際狀況進行調(diào)整。這些調(diào)整后校準(zhǔn)的結(jié)果,可以透過EEPROM的記憶功能,保留在控制晶片中。下次開機會自動載入,不需重新校正。

LCD Menu (液晶顯示器選單):

透過外加的液晶顯示器、按鍵模組,Marlin可以提供即時的離機操作?梢钥刂频墓δ馨ǎ 改變工作溫度、改變馬達加速度、改變工作速度、改變擠出頭擠出率、選擇SD卡中的檔案進行列印、預(yù)熱還有關(guān)閉馬達。相關(guān)硬體可以參考 http://www.thingiverse.com/thing:12663

SD card folders:

可以讀取SD卡內(nèi)的資料夾,檔案不必放在卡片內(nèi)最上層目錄。

SD card auto print:

當(dāng)SD卡最上層資料夾中,有檔名為 auto[0-9].g 的檔案時,機器會在開機后自動開始列印該檔案。

Endstop trigger reporting:

在列印過程中,當(dāng)邊界偵測意外被觸發(fā),會留下記錄。這有助於釐清列印失敗的原因。

在Sanguinololu上安裝Marlinl


設(shè)定馬達控制的"微步進" (Microstepping)

Microstepping Jumper Settings
微步進的設(shè)定,是透過Sanguinololu板子上的跳線來操作。跳線的位置在馬達驅(qū)動板的下方,要把馬達驅(qū)動板拆下來才能看到跳線。一般會選用 1/8 或是 1/16 步進。要設(shè)定成八分之一步進的話,MS1 跟 MS2 要接上短路端子, MS3 維持開路。要設(shè)定成十六分之一步進的話,MS1 、 MS2 跟 MS3 都要接上短路端子。四個馬達控制板都要做個自的設(shè)定。




下載 Arduino 1.0.1

(在這個版本上測試沒有出現(xiàn)問題)
Download the Arduino Software
下載后解壓縮到C:\arduino\arduino-1.0.1

下載 Marlin

https://github.com/ErikZalm/Marlin (找 "Download Zip"按鈕進行下載)
載點
解壓縮到C:\arduino\Marlin-Marlin_v1

新增sanguino硬體資訊到Arduino中

將資料夾C:\arduino\Marlin-Marlin_v1\ArduinoAddons\Arduino_1.x.x\sanguino
整個復(fù)製到C:\arduino\arduino-1.0.1\hardware

啟動 Arduino

執(zhí)行C:\arduino\arduino-1.0.1\arduino.exe

在 Arduino 中指定硬體為 Sanguino



將Sanguino與電腦用USB連接

todo: 貼上照片

安裝Sanguino驅(qū)動程式

驅(qū)動程式請指定在C:\arduino\ 中進行自動搜尋
todo: 貼上照片

設(shè)定COM port

選擇正確的COM port


開啟Marlin程式碼

File -> Open
開啟 C\arduino\Marlin-Marlin_v1\Marlin\Marlin.pde

修改設(shè)定檔 Configuration.h


#define MOTHERBOARD
主控板種類
修改為 62 ,設(shè)定成"使用Sanguinololu 1.2 and above"

#define TEMP_SENSOR_0
擠出頭溫度感應(yīng)器設(shè)定
如果使用100K的熱敏電阻,請修改為1。
如果還沒安裝溫度感應(yīng)器,可以先改為0。


#define TEMP_SENSOR_1
熱床溫度感應(yīng)器設(shè)定
如果使用100K的熱敏電阻,請修改為1。
如果還沒安裝溫度感應(yīng)器,可以先改為0。

#define PID_MAX
加熱頭PID控制校正電流百分比,255對應(yīng)到100%。
建議設(shè)定成100或更小,在校正擠出頭PID控制參數(shù)時,不要讓擠出頭加熱速度過快。

#define  DEFAULT_Kp
#define  DEFAULT_Ki
#define  DEFAULT_Kd
加熱頭PID控制參數(shù)。
要修改成多少,請參考 "擠出頭溫度控制校正"一文。
校正前,請不要啟動電熱頭加熱功能。

#define MAX_BED_POWER
熱床PID控制校正電流百分比,255對應(yīng)到100%。

#define  DEFAULT_bedKp 10.00
#define  DEFAULT_bedKi .023
#define  DEFAULT_bedKd 305.4
熱床PID控制參數(shù)。


#define INVERT_X_DIR true    // for Mendel set to false, for Orca set to true
#define INVERT_Y_DIR false    // for Mendel set to true, for Orca set to false
#define INVERT_Z_DIR true     // for Mendel set to false, for Orca set to true
#define INVERT_E0_DIR false   // for direct drive extruder v9 set to true, for geared extruder set to false
如果馬達轉(zhuǎn)動方向顛倒,可以靠這些參數(shù)做修正。

// ENDSTOP SETTINGS:
// Sets direction of endstops when homing2 1=MAX, -1=MIN
#define X_HOME_DIR -1
#define Y_HOME_DIR -1
#define Z_HOME_DIR -1
邊界偵測開關(guān)的位置,一般都安裝在位置原點的那一側(cè),故設(shè)定成-1即可。

// Travel limits after homing
#define X_MAX_POS 205
#define X_MIN_POS 0
#define Y_MAX_POS 205
#define Y_MIN_POS 0
#define Z_MAX_POS 200
#define Z_MIN_POS 0
機器工作區(qū)域的設(shè)定,單位是 mm。
請依照機器結(jié)構(gòu)做設(shè)定。

#define HOMING_FEEDRATE {50*60, 50*60, 4*60, 0}  // set the homing speeds (mm/min)
尋找原點時機構(gòu)運行的速度。如果馬達有失步的問題,可以考慮減小這邊的速度。
Z軸兩顆馬達串聯(lián),如果運轉(zhuǎn)不順,馬達亂轉(zhuǎn)的話,可把Z數(shù)值從"4*60"改小成"2*60"再試看看。

// default steps per unit for Ultimaker
#define DEFAULT_AXIS_STEPS_PER_UNIT   {78.7402,78.7402,200.0*8/3,760*1.1}
擠出頭移動1mm,主控板需要發(fā)出幾個步進訊號。
數(shù)值如何決定,請參考"計算移動1mm,步進馬達需要走幾步?"一文。

#define DEFAULT_MAX_FEEDRATE          {500, 500, 5, 25}    // (mm/sec)
擠出頭最高移動速度。如果馬達有失步的問題,可以考慮減小這邊的速度。

#define DEFAULT_MAX_ACCELERATION      {9000,9000,100,10000}
擠出頭移動時最大的加速度
機器運作時如果震動得狠嚴(yán)重,可能是擠出頭加速減速過猛造成?梢詼p小這邊的數(shù)值來改善。

// The speed change that does not require acceleration (i.e. the software might assume it can be done instantaneously)
#define DEFAULT_XYJERK                20.0    // (mm/sec)
#define DEFAULT_ZJERK                 0.4     // (mm/sec)
#define DEFAULT_EJERK                 5.0    // (mm/sec)
速度改變在這個值之內(nèi),控制板會不透過加速、減速的過程,直接把速度改到新指定的工作速度。如果起步就會卡住,或是列印過程中有失步,可以考慮減小這幾個設(shè)定的值。
上載 Marlin 到 Sanguino

修改完 Configuration.h 后,請存檔。然后直行 File->Upload,將 Marlin 上載到 Sanguino。
上載完成的話,在Arduino的狀態(tài)列會出先 Done Upload 字樣。


參考資訊

* https://github.com/ErikZalm/Marlin
* http://reprap.org/wiki/Sanguinololu
* marlin 簡介.pdf (請先加入 FabLab Taipei 的 FB社團)
* Ginge1s Marlin Builder http://marlinbuilder.robotfuzz.com/
回復(fù)

使用道具 舉報

2#
2014-6-16 13:49:44 | 只看該作者
謝謝樓主分享
回復(fù) 支持 反對

使用道具 舉報

謝謝樓主分享教程
回復(fù) 支持 反對

使用道具 舉報

推動3D打印

關(guān)注南極熊

通知

聯(lián)系QQ/微信9:00-16:00

392908259

南極熊3D打印網(wǎng)

致力于推動3D打印產(chǎn)業(yè)發(fā)展

Copyright © 2024 南極熊 By 3D打印 ( 京ICP備14042416號-1 ) 京公網(wǎng)安備11010802043351
快速回復(fù) 返回列表 返回頂部