這里和大家討論下國產(chǎn)的類Ultimaker3d打印機的固件修改升級方法,如何判斷自己的機器是不是Ultimaker機型,可以參考下圖(十字軸結(jié)構(gòu)就是了)
這里以我多年之前買的一臺 iMaker 3D打印機為例,本質(zhì)上是一臺 Ultimaker v1.5.7硬件的機器,因此使用 Ultimaker 的軟件跟固件都是沒有問題的。
具體信息如下:搬家之前,由于房間空間限制,已經(jīng)在角落里落灰許久了。最近搬完家,有地方折騰了,打算打印幾個小物件玩玩。可是實際運行時候發(fā)生打印嚴重變形的問題。具體的表現(xiàn)就是Z軸上(也就是高度方向上)發(fā)生嚴重的拉伸現(xiàn)象,整個打印物體的高度被拉伸,比如那個自帶的三厘米左右的小機器人,被莫名拉伸到十幾厘米,導致結(jié)構(gòu)松散,嚴重變形,易碎。剛剛開始以為是升級固件導致的問題,但是還原到以前可以正常使用的固件,問題依舊。以為是USB通訊導致的問題,使用SD卡打印的效果依舊是這個樣子。一時間毫無頭緒。于是準備拆開看看硬件部分是不是損壞了。結(jié)果發(fā)現(xiàn) Z 軸控制器中的一個跳線帽丟了! 如下圖:
底部電路
Z軸部分跳線
從上圖可以看到 Z 軸的 MS3 位置的跳線帽丟了。根據(jù)說明,這個跳線帽插上之后是 1/16 細分,否則是1/8細分,相當于把 Z 軸的下降速度提升了一倍!
這個設(shè)備使用的是開源的 Ultimaker v1.5.7 的電路圖,更詳細的內(nèi)容參考 Ultimaker's v1.5.7 PCB
正常的跳線狀態(tài),如下圖所示:
找了個跳線帽插上之后,恢復(fù)正常。 由于這個板子是使用的官方的電路圖進行了簡單的修改,因此應(yīng)該可以直接刷官方的 Marlin Ultimaker 固件的,但是使用官方提供的 Marlin Ultimaker 固件之后,加熱床失效了。無論如何都不能加熱。
看了一下官方的固件代碼,發(fā)現(xiàn)默認情況下,加熱床是關(guān)閉的。也就是官方提供的固件默認是沒有加熱床的(源代碼的 Configuration.h,中 #define TEMP_SENSOR_BED 0 我們需要根據(jù)實際情況修改,一般修改為#define TEMP_SENSOR_BED 1 即可。但是如果是某些特殊品牌的,根據(jù) Configuration.h 里面的說明進行修改)。因此我們只能自己從官方固件代碼修改之后重新編譯。
iMaker自帶的熱床沒有牌子,一般是 4.7K 的上拉熱敏電阻。因此定義 #define TEMP_SENSOR_BED 1 即可。
編譯方法
1.首先下載 Arduino 開發(fā)工具 https://www.arduino.cc/en/Main/Software?setlang=cn
2.下載一份最新的代碼,Linux下命令行操作如下:
- $ git clone https://github.com/Ultimaker/Marlin.git
-
- $ cd Marlin
-
- $ git checkout Marlin_v1
-
- $ cd Marlin
-
- $ sed -i "s/^#define[ \t]*TEMP_SENSOR_BED*/#define TEMP_SENSOR_BED 1/g" Configuration.h
復(fù)制代碼 Windows 下可以瀏覽器直接下載最新代碼https://codeload.github.com/Ultimaker/Marlin/zip/Marlin_v1,然后手動修改 Configuration.h 文件里的 #define TEMP_SENSOR_BED 0 為 #define TEMP_SENSOR_BED 1
3.使用最新的 Arduino 1.8.9 版本,這個版本的庫比較全,已經(jīng)不需要安裝其它附加庫了。也可以本站下載一份拷貝。 arduino-1.8.9-windows.exe4.使用 Arduino 1.8.9 打開項目目錄下的Marlin目錄下的Marlin.ino 并將設(shè)備選擇成Arduino Mega 2560,如下圖:
然后選擇 “項目” 菜單中的 “導出已編譯的二進制文件”,如下圖:
編譯完成后,會在代碼目錄下生成 Marlin.ino.mega.hex,Marlin.ino.with_bootloader.mega.hex兩個文件,我們使用第一個即可, bootloader盡量不要升級。
文件可以用 Ultimaker Cura 進行升級即可。Cura最新版本4.2.1下載地址http://www.hxfremp.cn/forum-98-1.html
目前我使用的固件代碼,可以在這里下載Marlin-Marlin_v1里面包含已經(jīng)編譯好的固件。
|
全部評論46