Anycubic Kossel Linear Plus 升級 Marlin 1.1.8 固件 + Auto Calibration

Anycubic 的 Kossel 3D 打 印 機 ,是 市 面 上 其 中 一 部 最 平 的 Delta 結 構 的 3D Printer。Delta 結 構 的 3D Printer 的 平 台 是 固 定 的 ,打 印 頭 ( delta printer 中 間 那 一 組 野 叫 effector ) 靠 六 枝 碳 纖 維 桿 ( arms rod ) 連 接 到 三 條 柱 ( 叫 towers ) 上 面 ,因 應 柱 上 面 的 滑 塊 上 下 移 動 而 改 變 位 置 ,這 是 一 個 很 神 奇 的 設 計 。

試 想 想 最 常 見 的 cartesian 設 計 ,你 要 打 橫 行 5cm,那 只 要 X 軸 的 stepper motor 運 作 ,另 外 兩 軸 的 摩 打 是 完 全 閒 置 的 。但 Delta 設 計 就 很 不 一 樣 了 ,你 要 橫 行 5cm,三 條 柱 的 stepper motor 都 要 同 時 運 作 。直 到 現 在 看 著 Delta Printer 打 印 ,還 是 會 感 嘆 打 印 頭 怎 麼 能 運 行 得 那 麼 平 ?( FDM Printer 都 是 一 層 層 地 打 印 的 ,所 以 打 印 頭 是 必 須 要 運 行 得 很 平 的 )

為 什 麼 想 要 升 級 firmware 呢 ?原 廠 的 firmware 是 一 個 經 過 大 量 修 改 的 marlin,版 本 是 1.1.0-RC8 ( LCD Menu 和 Marlin 有 明 顯 分 別 )。砌 完 機 之 後 ,Anycubic 的 Manual 教 要 做 measure z-pos,然 後 auto bed leveling,再 自 己 人 手 調 較 Z offset。原 本 都 無 咩 問 題 ,打 印 效 果 亦 算 滿 意 。但 當 使 用 日 久 ,多 幾 次 開 關 機 之 後 ,原 來 293 左 右 的 Z height,有 時 會 在 開 機 時 無 拿 拿 自 己 變 左 做 270。

如 果 開 機 時 無 留 意 ( 唔 做 一 次 auto home 根 本 唔 會 見 到 Z height 係 幾 多 ),噴 頭 就 會 在 空 中 打 印 ,製 造 了 很 多 意 粉 。我 google 過 ,也 找 不 到 解 決 方 法 ( 有 Auto bed leveling 的 原 廠 firmware 是 hex 檔 ,是 沒 有 source code 的 )。每 次 出 現 這 個 問 題 之 後 ,我 都 要 重 新 再 做 一 次 measure z-pos、auto leveling 和 手 動 調 節 Z offset,都 幾 麻 煩 。於 是 就 決 心 把 Marlin 升 級 到 最 新 的 1.1.8,希 望 不 會 再 遇 到 這 個 奇 怪 的 問 題 。

不 過 因 為 Anycubic Kossel 已 經 推 出 了 一 段 時 間 ,隨 著 時 間 不 同 也 有 不 同 的 配 置 ,所 以 想 要 升 級 firmware 的 話 ,網 上 的 新 舊 訊 息 加 起 來 還 是 比 較 混 亂 的 。

爬 了 很 多 文 ,再 加 大 量 親 身 實 測 之 後 ,我 發 現 一 個 韓 國 人  namsugak 在 thingiverse 上 面 post 出 來 的 版 本 是 最 好 的 。namsugak 自 己 也 有 改 機 ,包 括 更 換 了 TMC2100 stepper motor drivers、加 了 NeoPixels LED 燈 帶 等 等 。

所 以 在 Thing Files 頁 ,裡 面 有 4 個 不 同 的 firmware,以 對 應 不 同 的 機 器 。我 沒 有 改 機 ,所 以 就 下 載 了  Marlin-1.1.8-kossel-plus-a4988-v2sensor.zip 版 本 。顧 名 思 義 ,這 個 版 本 是 給 linear plus,使 用 A4988 stepper motor drivers ( 即 是 原 廠 drivers ),和 使 用 原 廠 Auto bed leveling sensor Version 2 ( 新 機 配 的 全 部 是 V2 )。

Marlin 1.1.8 firmware for Anycubic Kossel(mini & plus), delta calibration circle

大 家 要 按 照 自 己 的 3D Printer 的 版 本 來 下 載 ,這 樣 會 減 少 很 多 麻 煩 。我 的 Kossel Linear Plus 即 是 「線 軌 版 」,打 印 範 圍 是 230mm 直 徑 ( 大 平 台 ),有 熱 床 ,是 2018 年 買 的 。

Zip 檔 解 壓 之 後 ,裡 面 的 整 個 Marlin 資 料 夾 就 是 我 們 所 需 要 的 firmware。Marlin firmware 其 實 是 一 個 Arduino 程 式 ,我 們 要 用 Arduino IDE 才 能 打 開 它 和 把 它 上 傳 到 3D Printer 控 制 板 ( controller )。

下 載 Arduion IDE

打 開 Arduino IDE 之 後 ,如 果 你 是 第 一 次 使 用 ,你 要 設 定 好 使 用 的 主 板 類 型 ,Tools >> Board >> Arduino/ Genuino Mega or Mega 2560。然 後 Tools >>  Port >> 就 要 選 擇 你 的 3D Printer 所 使 用 的 com port 號 碼 。例 如 我 使 用 的 就 是 com5。

在 Marlin firmware 的 資 料 夾 裡 面 ,會 有 一 個 marlin.ino 的 檔 案 ( Arduino 程 式 的 檔 尾 就 是 ino )。打 開 它 之 後 ,你 會 見 到 很 多 很 多 頁 ,一 般 我 們 要 修 改 firmware,就 只 需 要 去 到 configuration.h 的 那 一 頁 。

其 實  namsugak 已 經 幫 我 們 做 好 大 部 分 的 設 定 ,我 們 基 本 上 是 不 需 要 再 修 改 什 麼 的 了 。不 過 ,因 為  namsugak 自 己 改 機 增 加 了 LED 燈 帶 ( neopixel led strip ),而 那 個 燈 帶 需 要 額 外 的 Library 來 控 制 ,所 以 如 果 我 們 的 Arduino IDE 沒 有 預 先 安 裝 這 個 Library,那 上 傳 的 時 候 就 會 發 生 錯 誤 。

namsugak 原 本 是 要 求 我 們 自 己 去 安 裝 好 那 個 Library 的 。雖 說 它 也 是 免 費 ,但 我 明 明 就 沒 有 用 那 個 燈 帶 ,為 什 麼 要 控 制 板 浪 費 運 算 能 力 去 控 制 它 呢 ?所 以 正 確 的 做 法 應 該 是 去 configuration.h 裡 面 ,把 LED 燈 帶 的 選 項 關 掉 。

1
#define NEOPIXEL_LED

先 在 configration.h 頁 ,找 到 上 面 那 一 行 ( 在 檔 案 接 近 最 尾 ,第 1848 行 左 右 ),然 後 在 這 一 行 的 最 前 面 加 上 2 個 slash。

1
//#define NEOPIXEL_LED

然 後 就 可 以 上 傳 到 3D 打 印 機 的 控 制 板 了 。上 傳 按 鈕 就 是 「右 箭 號 」( upload ),完 成 之 後 ,3D 打 印 機 應 該 會 reboot,然 後 上 面 的 LCD 會 顯 示 Marlin 1.1.8 的 開 機 畫 面 。

如 果 Arduino IDE 在 上 傳 中 途 顯 示 有 錯 誤 ,就 即 是 上 傳 失 敗 。這 個 要 按 照 那 個 error message 來 解 決 問 題 。這 裡 的 錯 誤 有 很 多 很 多 可 能 性 ,由 你 選 錯 USB Port,到 程 式 有 錯 誤 而 不 能 compile 都 有 可 能 。

開 機 畫 面 變 更 了

上 傳 成 功 之 後 ,就 要 再 重 新 calibrate 整 台 3D Printer。這 裡 的 所 謂 Calibrate,就 是 重 新 設 定 firmware 裡 面 的 很 多 參 數 。舉 個 簡 單 的 例 子 ,官 網 寫 的 可 打 印 高 度 是 300mm,但 這 只 是 一 個 大 概 ,因 為 每 個 人 在 組 裝 時 都 會 有 點 不 一 樣 ,所 以 每 部 Printer 的 最 後 的 實 際 可 打 印 高 度 都 會 有 一 點 點 不 同 。

在 firmware 裡 面 ,會 有 不 同 的 參 數 的 預 設 值 ( 包 括 打 印 高 度 ),但 那 些 數 值 大 多 是 不 太 準 確 的 ,只 是 近 似 值 。多 得 現 在 有 很 多 sensor,包 括 endstop sensor 和 Z probe senosr,它 們 可 以 幫 助 我 們 很 準 確 地 測 量 這 些 數 值 。

於 是 ,就 有 了 所 謂 的 Auto Calibration 的 功 能 。以 前 做 Calibration 是 要 連 著 電 腦 自 己 輸 入 G code 來 做 的 ( G33 ),在 Marlin 1.1.8 上 面 ,就 可 以 在 LCD 上 面 直 接 做 Auto Calibration,比 以 前 方 便 得 多 。( 這 亦 是 我 選 擇  namsugak 的 firmware 的 原 因 ,因 為 他 預 設 就 啟 用 了 這 個 選 項 ,不 用 我 們 自 己 去 修 改 )

進 行 Auto Calibration 的 第 一 步 ,就 是 要 搞 清 楚 auto bed leveling sensor 是 否 正 常 運 作 。這 個 部 分 要 在 電 腦 上 操 作 。我 們 要 先 下 載 Printrun ( Pronterface ),解 壓 之 後 就 執 行 pronterface.exe。Pronterface 其 實 是 一 個 3D printing host 軟 體 ,可 以 用 它 來 控 制 3D Printer。( 就 和 Cura、Repetier Host 等 軟 體 一 樣 )

下 載 Printrun ( Pronterface )

特 別 值 得 一 提 ,做 auto calibration 的 sensor,是 一 定 要 放 在 3D Printer 的 正 中 央 的 ,亦 即 是 說 ,X_Probe_offset 和 Y_Probe_offset 係 會 直 接 被 ignore 的 ( 這 兩 個 參 數 只 在 auto bed leveling 時 才 有 用 )。簡 單 講 ,就 是 Anycubic Kossel Linear Plus 原 廠 的 sensor 可 以 用 ,但 其 他 要 偏 離 中 心 的 sensor,例 如 BLTouch 等 等 ,就 通 通 都 不 能 用 。這 也 是 為 什 麼 我 沒 打 算 在 Kossel Linear Plus 安 裝 BLTouch。有 興 趣 的 朋 友 可 以 參 考 以 下 帖 子 。

Delta Auto Calibration With BLTouch Not Working

Pronterface 可 以 直 接 輸 入 G code 來 控 制 3D 打 印 機 ,很 方 便 我 們 做 calibration 又 或 者 檢 查 3D 打 印 機 的 問 題 。我 們 輸 入 M119 這 個 命 令 ,3D Printer 就 會 傳 回 所 有 endstop 的 狀 態 。如 果 沒 有 按 下 ,就 會 顯 示 Open。如 果 被 按 下 ,就 會 顯 示 Triggered。

沒 有 按 住 sensor 也 顯 示 TRIGGERED

奇 怪 的 事 情 就 在 此 時 發 生 了 ,因 為 我 的 原 廠 Auto bed leveling sensor,那 個 訊 號 真 的 相 反 了 。沒 有 按 住 的 時 候 就 顯 示 Triggered,按 下 就 反 而 顯 示 open。我 個 人 覺 得 ,這 是 和  namsugak 改 機 用 了 另 外 的 方 法 來 接 駁 sensor 有 關 。

但 這 也 不 是 什 麼 大 問 題 ,namsugak 也 有 教 我 們 如 何 應 對 。先 斷 開 Pronterface 的 connection,回 到 Arduino IDE,把   Z_MIN_ENDSTOP_INVERTING 和  Z_MIN_PROBE_ENDSTOP_INVERTING 都 由 true 改 做 false。( 經 過 查 證 後 ,marlin 的 預 設 值 是 false )

然 後 再 次 把 修 改 好 的 firmware 上 傳 到 controller board。之 前 要 斷 開 Pronterface 的 連 接 ,是 因 為 那 個 com port connection 一 次 只 可 以 給 一 個 程 式 獨 佔 使 用 ,如 果 Pronterface 沒 有 先 斷 開 連 線 ,那 Arduino IDE 上 傳 firmware 時 就 會 發 生 錯 誤 。

這 時 Auto bed leveling sensor 應 該 正 常 運 作 ,我 們 亦 可 以 拔 除 USB 線 ,使 用 3D Printer 的 LCD 來 實 作 Auto Calibration。

第 一 步 就 是 「回 復 原 廠 設 定 」( Control > Restore failsafe,完 成 會 發 出 嗶 聲 ),然 後 再 Store settings 一 次 ( 完 成 會 發 出 嗶 聲 )。這 裡 的 restore failsafe 的 意 思 ,是 指 將 controller 的 所 有 設 定 都 回 復 到 firmware 裡 面 的 預 設 值 。

Kossel 的 控 制 板 ,裡 面 包 含 了 3 種 memory。Flash memory 就 是 用 來 儲 存 程 式 碼 的 ,你 上 傳 的 firmware 就 是 儲 存 在 Flash memory 裡 面 ,flash memory 面 的 程 式 碼 是 不 會 自 動 改 變 的 。SRAM 就 像 一 般 電 腦 上 面 的 RAM,這 是 程 式 執 行 運 算 和 儲 存 變 數 的 地 方 ,每 次 斷 電 RAM 裡 面 儲 存 的 數 據 都 會 自 動 消 失 。EEPROM 就 是 一 個 儲 存 長 期 數 據 的 地 方 ,EEPROM 可 以 被 程 式 碼 讀 寫 ,儲 存 在 它 裡 面 的 數 據 在 斷 電 下 也 不 會 消 失 。

一 般 控 制 板 開 機 的 時 候 ,都 會 自 動 去 讀 取 EEPROM 裡 面 的 設 定 值 ( 例 如 打 印 高 度 等 等 )。但 在 我 們 升 級 firmware 並 且 第 一 次 開 機 的 時 候 ,EEPROM 裡 面 的 還 是 舊 版 本 firmware 的 設 定 值 ,它 們 並 不 適 合 在 新 的 firmware 下 使 用 ,所 以 我 們 要 restore failsafe 一 次 ,用 回 firmware 裡 面 的 設 定 值 ,然 後 再 store settings 一 次 ,用 firmware 的 設 定 值 覆 蓋 EEPROM 的 舊 數 據 。

然 後 我 們 去 檢 查 一 下 delta calibration 的 數 值 ,看 看 是 否 已 經 回 復 到 預 設 值 ( Prepare > Delta Calibration > Delta Settings )。例 如 Height 應 該 是 295.2,Diag Rod 應 該 是 271.5,Radius 應 該 是 134.4,其 他 數 值 應 該 是 0。( 這 些 數 值 都 在 configuration.h 裡 面 ,如 果 你 下 載 的 firmware 和 我 的 不 一 樣 ,那 這 些 數 值 也 不 會 和 我 相 同 )

沒 問 題 我 們 就 可 以 開 始 Auto Calibration ( Prepare > Delta Calibration > Auto Calibration ),然 後 等 幾 分 鐘 讓 它 自 己 跑 完 。它 會 自 動 循 環 幾 次 ,LCD 上 面 會 顯 iteration 1、2、3、…..。

完 成 Auto Calibration,然 後 就 是 自 動 度 高 ( Prepare > Delta Calibration > Set Delta Height )。3D Printer 會 自 動 量 度 高 度 一 次 。

完 成 以 上 的 步 驟 之 後 ,你 的 Printer 應 該 設 定 好 ,可 以 正 常 使 用 。不 過 ,namsugak 就 建 議 我 們 再 手 動 調 較 一 次 ,確 保 一 切 正 常 。

首 先 ,亦 是 最 重 要 的 ,移 除 Auto bed leveling sensor。然 後 找 一 張 A4 紙 ,幫 助 我 們 量 度 噴 嘴 到 平 台 之 間 的 距 離 ,一 般 的 A4 紙 的 厚 度 大 概 是 0.1 mm。

這 個 高 度 對 打 印 成 功 與 否 有 著 舉 足 輕 重 的 作 用 ,所 以 一 定 要 花 點 時 間 調 較 好 。我 們 向 著 打 印 平 台 移 動 噴 嘴  ( Prepare > Move axis > Move Z ),去 到 接 近 打 印 平 台 時 ,就 要 減 慢 速 度 ( 0.1 )。

當 我 們 把 噴 嘴 徐 徐 降 下 ,同 時 不 停 移 動 A4 紙 。當 噴 嘴 太 高 時 ,紙 張 可 以 自 由 移 動 。當 噴 嘴 太 低 時 ,就 會 和 平 台 一 起 夾 實 A4 紙 。最 適 合 是 距 離 是 A4 紙 可 以 勉 強 移 動 ,你 會 感 到 一 定 的 磨 擦 力 。

然 後 就 拿 紙 筆 出 來 ,記 錄 一 下 現 在 的 高 度 ( Z value )。這 個 數 值 可 以 是 正 數 ,也 可 以 是 負 數 。但 正 負 數 也 不 是 問 題 ,真 正 的 問 題 是 ,剛 才 3D Printer 辛 辛 苦 苦 的 calibrate 了 好 多 次 ,又 自 動 量 度 了 高 度 ,搞 了 那 麼 多 野 ,為 什 麼 噴 嘴 的 高 度 都 沒 有 自 己 調 節 好 呢 ?

這 其 實 是 因 為 firmware 裡 面 的 Z Probe Offset 搞 錯 了 。之 前 也 說 過 ,firmware 的 很 多 預 設 值 ,其 實 就 是 近 似 值 。Firmware 裡 面 的 Z Probe Offset 是 14.9。但 工 廠 生 產 出 來 那 個 Auto Leveling Sensor,每 個 的 高 度 總 有 一 點 差 異 吧 ?而 安 裝 sensor 的 支 架 的 時 候 ,上 螺 絲 的 時 候 ,總 會 有 人 裝 得 高 一 點 點 ,有 人 裝 得 低 一 點 點 。( 再 加 上 我 也 三 翻 四 次 的 忘 記 了 移 除 sensor 就 直 接 打 印 ,sensor 也 不 知 道 多 少 次 撞 入 了 print bed,哈 哈 哈 ,每 撞 一 次 也 會 令 sensor off 了 一 點 吧 )

Sensor 的 實 際 Offset,和 firmware 裡 面 的 預 設 值 的 差 異 ,就 是 做 成 這 個 問 題 的 原 因 。所 以 ,namsugak 第 一 樣 要 我 們 做 的 ,就 是 去 修 改 Z Offset value ( Control > Motion > Z Offset )。

New Z Offset = Old Z Offset ( -14.9 )  + Z Value

例 如 我 的 情 況 ,Z value 是 -1.1 ( 是 的 ,噴 嘴 比 平 台 高 了 1mm 有 多 ,真 是 離 晒 大 譜 ),所 以 ,我 的 新 的 Z Offset 就 是 -16 ( 這 是 負 數 ,負 數 的 意 思 是 sensor 比 噴 嘴 低 )。

請 記 住 ,這 個 Z offset 是 Z Probe Offset,是 Auto Bed Leveling Sensor 和 噴 嘴 之 間 的 距 離 。這 個 設 定 值 和 打 印 是 完 全 無 關 的 ,這 個 數 值 只 會 影 響 使 用 Auto Bed Leveling Sensor ( 即 是 Probe ) 相 關 的 功 能 ,例 如 Auto Calibration 和 Auto Bed Leveling。

直 正 影 響 打 印 的 ,其 實 是 打 印 高 度 。所 以 namsugak 第 二 樣 要 我 們 修 改 的 ,就 是 Printer Height ( Prepare > Delta Calibration > Delta Settings > Height )。

New Height = Old Height ( 292.38 )  – Z Value

292.38 這 個 值 是 之 前 set delta height 自 動 量 度 出 來 的 ,所 以 我 的 new height 是 293.48。

上 面 這 些 運 算 大 家 一 定 要 搞 清 楚 正 負 數 啊 ,計 錯 數 是 有 機 會 令 噴 頭 在 打 印 時 直 到 撞 入 熱 床 的 。

至 此 ,你 的 3D Printer 應 該 真 正 調 較 好 ,千 萬 要 記 得 Store settings ( Prepare > Delta Calibration > Store settings ) 一 次 。現 時 的 設 定 只 是 在 SRAM 裡 面 ,還 沒 有 儲 存 到 EEPROM。不 然 的 話 ,你 下 次 開 機 ,這 些 設 定 都 會 自 動 消 失 的 啊 。

下 面 是  namsugak 非 常 詳 盡 的 Youtube Video,雖 然 說 的 是 韓 文 ,但 有 非 常 之 好 的 英 文 字 幕 。我 就 是 跟 著 他 一 步 一 步 設 定 好 我 的 Anycubic Kossel Printer 的 。

Delta Auto Calibration using LCD controller(without gcode)

有 了 LCD 上 面 使 用 的 Auto Calibration,真 的 是 比 以 前 要 打 G code 方 便 了 不 知 多 少 倍 。更 別 說 古 代 沒 有 sensor 時 要 人 工 慢 慢 的 測 量 。

不 知 道 是 我 好 彩 ,還 是 我 手 工 好 ( 咳 咳 咳 ),在 做 完 auto calibration 之 後 ,first layer 已 經 好 靚 仔 ,加 上 我 打 印 90mm/s 亦 完 全 沒 問 題 ,所 以 我 就 唔 打 算 做 auto bed leveling 了 。請 記 得 3D 打 印 機 只 是 工 具 ,理 論 上 要 做 乜 做 物 ,都 唔 夠 你 實 際 打 印 出 來 的 結 果 重 要 。

那 一 堆 堆 的 理 論 呢 ,其 實 只 是 在 做  diagnosis 的 時 候 才 重 要 ( 就 是 出 問 題 時 才 重 要 )。不 過 萬 一 你 真 的 需 要 auto bed leveling,也 很 簡 單 ,只 要 在 configuration.h 頁 面 修 改 以 下 的 一 行 就 可 以 了 。

namsugak 的 Marlin 沒 有 enable Auto Bed Leveling,其 實 也 有 點 奇 怪 呢 。修 改 完 就 再 上 傳 一 次 到 controller board,在 Prepare 之 下 就 應 該 有 回 Bed Leveling 的 選 項 的 了 。

升 級 到 Marlin 1.1.8 之 後 ,心 理 上 覺 得 打 印 穩 定 了 許 多 ,也 再 沒 有 遇 到 之 前 stock firmware 的 bug 了 ,真 好 。

*** 好 的 ,根 據 友 人 的 建 議 ,總 結 一 下 需 要 修 改 的 3 個 地 方 ,算 是 一 個 雞 精 check list 吧 。香 港 人 就 是 沒 有 耐 性 ,哼 哼 。

1. NEOPIXEL_LED
// #define NEOPIXEL_LED
這 個 要 加 上 comment 符 號

2. endstop inverting
#define Z_MIN_ENDSTOP_INVERTING false
#define Z_MIN_PROBE_ENDSTOP_INVERTING false
兩 者 都 由 true 改 回 false

3. Auto bed leveling ( 如 果 想 用 auto bed leveling 的 話 )
#define AUTO_BED_LEVELING_BILINEAR
要 uncomment BILINEAR auto bed leveling

輕 輕 鬆 鬆 閃 電 光 速 就 改 完 ,正 。

ctleung張 先 生 ,男 性 ,肖 龍 。
職 業 :I.T. Consultant
簡 介 :不 好 好 讀 書 ;七 尺 差 五 寸 ,手 長 過 膝 ,雙 耳 垂 肩 ;性 寬 和 ,寡 言 語 ,喜 怒 不 形 於 色 。據 說 少 時 曾 斬 白 蛇 於 鳳 凰 山 下 ……
Posted in Computer & Network | Tagged , , , , , , | Leave a comment

( Tevo Tarantula ) 改裝我部 3D Printer 二:動手改裝

等 了 又 等 ,終 於 淘 回 來 的 零 件 都 到 齊 了 ,自 己 打 印 的 升 級 零 件 也 慢 慢 打 印 齊 全 了 ,終 於 可 以 動 手 拆 機 升 級 。購 買 3D Printer 之 前 就 知 道 ,現 時 3D 打 印 的 最 大 問 題 ,就 是 打 印 速 度 極 之 緩 慢 。那 究 竟 有 多 慢 呢 ?真 係 唔 用 過 都 唔 知 。

我 為 我 的 Tevo Tarantula 選 擇 了 頗 多 3D 打 印 的 升 級 件 ,像 上 面 的 這 樣 的 一 個 bracket,打 印 就 要 打 印 3 個 小 時 。我 為 全 機 打 印 的 部 件 有 差 不 多 20 個 ,而 我 就 是 一 個 普 通 人 要 上 班 也 要 睡 覺 ,所 以 一 天 能 打 印 的 時 間 頂 多 也 就 是 六 七 個 小 時 。這 些 自 家 打 印 的 升 級 零 件 足 足 花 了 一 個 多 星 期 的 時 間 。

而 且 這 還 是 我 提 升 了 速 度 而 犧 牲 了 美 觀 才 是 這 個 時 間 ( 我 用 了 0.2mm layer height 和 90mm/s )。如 果 你 為 了 美 觀 用 0.1mm layer height 和 45-60mm/s,恐 怕 打 印 時 間 至 少 要 增 加 一 倍 。

好 了 ,廢 話 少 說 ,馬 上 開 始 動 手 改 機 吧 。首 先 我 們 來 改 那 個 switching power supply,我 選 擇 的 這 一 款 外 殼 ,是 分 成 兩 半 來 打 印 的 ,不 過 它 們 不 是 很 大 ,所 以 可 以 一 次 過 打 印 出 來 。然 後 加 上 淘 回 來 的 C16 擠 座 和 XT60 接 頭 。

接 線 呢 ,反 正 我 自 己 的 材 料 和 工 具 也 很 齊 全 ,就 花 了 幾 分 鐘 為 接 線 都 夾 好 了 適 用 的 接 線 端 子 。XT60 的 接 線 就 要 出 動 焊 台 ( 或 者 辣 雞 ) 了 。

要 把 外 殼 組 裝 起 來 ,你 還 需 要 一 些 小 螺 絲 ,完 成 了 就 是 下 面 的 樣 子 ,實 在 是 很 好 的 設 計 。

現 在 電 源 有 兩 組 XT60,其 中 一 組 就 接 到 控 制 主 板 ,另 一 組 ,就 接 到 給 熱 床 供 電 的 模 塊 ( MOSFET )。使 用 了 XT60 端 子 的 好 處 是 ,當 你 想 移 動 打 印 機 ,就 可 以 輕 鬆 地 拔 除 電 源 ,不 用 去 找 螺 絲 批 。

熱 床 的 供 電 模 塊 ( MOSFET ) 也 是 一 個 升 級 ,接 線 的 方 法 如 下 ,十 分 簡 單 。

Mosfet Connection

MOSFET 有 很 多 不 同 的 固 定 方 法 ,最 簡 單 的 就 是 固 定 在 外 框 ,下 面 這 款 支 架 就 是 可 以 安 裝 在 2020 鋁 型 材 之 上 的 。

不 過 因 為 我 有 用 木 底 板 ,所 以 直 接 上 在 底 板 上 就 可 以 了 。

然 後 就 是 3D Printer 底 部 的 支 架 ,我 選 擇 了 下 面 這 一 款 ,我 喜 歡 它 把 整 台 3D Printer 稍 為 托 高 了 一 點 ,這 樣 可 以 方 便 我 把 某 些 電 線 從 機 身 下 面 穿 過 。其 次 就 是 它 支 持 雙 Z 軸 ,和 為 Z 軸 的 末 端 增 加 了 一 個 軸 承 。它 的 一 個 Y 軸 支 架 還 加 入 調 節 belt tension 的 設 計 呢 。

不 過 我 不 喜 歡 它 的 雙 Z 軸 的 設 計 ,所 以 我 只 用 了 它 底 部 的 5 個 支 架 ,而 並 沒 有 採 用 它 的 其 他 支 架 。還 好 這 個 設 計 的 Z 軸 的 位 置 並 沒 有 改 動 ,所 以 Z 軸 的 stepper motor 是 完 全 可 以 用 回 原 本 的 阿 加 力 支 架 的 。

bottom right bracket

大 部 分 這 些 brackets 的 設 計 者 ,唔 知 係 唔 係 患 有 強 迫 症 ,都 會 瘋 狂 地 增 加 螺 絲 孔 。例 如 上 面 的 這 一 個 「右 下 角 支 架 」,單 單 一 個 零 件 就 有 11 個 螺 絲 孔 。你 想 想 全 部 機 一 整 套 支 架 總 共 需 要 多 少 螺 絲 ?跟 機 的 螺 絲 和 螺 母 肯 定 是 不 夠 用 的 ( 遠 遠 不 夠 )。

Tarantula 這 些 brackets 用 螺 絲 和 螺 母 ,就 是 「10mm 長 的 M4 內 六 角 螺 絲 」,和 「20 鋁 型 材 用 的 M4 T 型 螺 母 」。不 過 ,根 據 我 自 己 的 經 驗 ,其 實 用 8mm 長 的 M4 螺 絲 也 可 以 ,尤 其 是 那 些 有 countersink hole 設 計 的 brackets。我 個 人 覺 得 ,那 些 螺 絲 孔 其 實 上 一 半 數 量 就 夠 實 的 了 ,不 過 螺 絲 螺 母 都 是 十 分 便 宜 的 東 西 ,反 正 是 要 買 ,就 買 多 一 點 上 齊 所 有 螺 絲 孔 吧 。

我 們 既 然 是 在 改 機 ,那 個 Z 軸 stepper motor 的 支 架 也 換 掉 吧 。因 為 Z 軸 的 位 置 沒 有 改 動 ,所 以 Thingiverse 上 面 大 部 分 的 Z-axis Brackets for Tarantula 都 能 用 的 。我 就 選 擇 了 下 面 的 這 一 款 ,我 覺 得 它 大 小 適 中 之 餘 又 特 別 紮 實 。不 過 它 的 摩 打 位 置 稍 為 左 移 了 少 許 ,自 己 修 正 一 下 就 可 以 。

在 修 改 Z 軸 的 時 候 ,我 也 把 原 來 的 絲 桿 螺 母 換 成 了 「消 回 差 螺 母 ( Anti Backlash Nut )」。雖 說 消 回 差 螺 母 在 Z 軸 的 效 果 是 最 少 的 ,但 也 不 過 幾 塊 錢 ,而 且 加 了 也 不 會 有 害 處 。

然 後 就 是 熱 床 支 架 ,因 為 熱 床 支 架 九 成 九 就 會 大 於 打 印 範 圍 ,所 以 設 計 師 很 聰 明 的 把 它 分 為 五 大 塊 來 打 印 ,再 用 M4 螺 絲 組 合 。不 過 我 的 M4 螺 絲 都 沒 有 這 麼 長 ,於 是 就 用 電 鑽 稍 為 加 大 了 螺 絲 孔 ,用 了 M5 螺 絲 來 組 合 。這 個 熱 床 支 架 比 原 來 一 片 的 阿 加 力 膠 片 結 實 多 了 。

然 後 就 是 Parts cooling fan 和 fan duct。這 個 fan duct 的 風 扇 的 固 定 方 法 係 friction fit,隨 手 碰 到 就 容 易 掉 落 ,所 以 我 在 前 後 都 用 熱 熔 膠 點 了 一 下 。盡 量 少 用 熱 熔 膠 是 為 了 方 便 日 後 拆 卸 改 用 其 他 fan duct。這 個 fan duct 的 出 風 口 會 碰 到 hotend,有 網 友 反 映 會 熔 化 。不 過 反 正 是 自 己 Print 的 ,真 熔 化 了 的 話 就 再 Print 一 個 吧 。

風 扇 原 來 的 接 線 只 有 10cm 長 ,是 不 夠 連 接 到 控 制 板 的 。所 以 要 自 己 加 長 電 線 ,這 又 是 焊 台 出 動 的 時 候 。風 扇 的 電 流 很 低 ,用 較 幼 的 電 線 就 可 以 了 。

因 為 用 了 上 面 這 款 fan duct,所 以 就 不 能 安 裝 跟 機 的 SN-04 自 動 調 平 感 應 器 了 。上 Thingivers 找 了 一 會 ,比 較 合 用 的 是 下 面 這 款 SN-04 支 架 。這 一 款 SN-04 支 架 是 固 定 在  x carriage 的 背 面 的 ( 很 多 BLTouch 的 支 架 也 是 這 樣 設 計 的 ),不 過 設 計 師 用 的  x carriage 不 是 原 廠 的 阿 加 力 膠 片 。

設 計 師 用 的  x carriage 的 厚 度 是 4mm,但 我 們 的 阿 加 力 膠 片 的 厚 度 是 5mm,所 以 我 們 就 要 把 支 架 稍 為 修 改 一 下 再 打 印 。

SN04 Holder Mod

我 用 超 級 容 易 用 的 Tinkercad 把 原 設 計 增 加 了 1mm 厚 度 ,再 打 印 出 來 。然 後 在 x carriage 的 阿 加 力 膠 片 上 面 也 要 鑽 一 個 3mm 的 小 孔 ,以 給 安 裝 螺 絲 通 過 。

然 後 就 是 spool holder,我 喜 歡 把 耗 材 掛 在 機 身 上 ,一 來 移 動 3D Printer 時 比 較 方 便 ,二 來 亦 為 機 器 增 加 了 重 量 ,整 體 穩 定 性 會 好 一 點 。不 過 因 為 我 是 雙 噴 頭 ,要 掛 兩 個 spool,原 來 很 多 為 單 噴 頭 而 設 計 的 spool holder 都 不 適 用 。

90 degree spool holder

最 後 我 決 定 狠 心 一 點 ,把 spool holder 和 extruder 都 改 到 機 頂 之 上 。下 面 就 是 完 成 的 樣 子 。這 樣 改 的 話 ,要 注 意 extruder 的 stepper motor 的 電 線 夠 不 夠 長 。

再 之 後 就 是 柔 性 打 印 平 台 。這 個 改 裝 十 分 容 易 ,柔 性 打 印 平 台 分 為 上 下 兩 個 部 分 ,兩 個 部 分 都 是 一 片 磁 石 。下 面 的 部 分 有 雙 面 膠 紙 ,可 以 直 接 貼 在 heatbed 上 。我 購 買 的 這 個 平 台 的 大 小 和 原 來 的 heatbed 有 點 不 一 樣 ,所 以 我 要 將 柔 性 平 台 的 底 部 剪 短 一 點 。

至 於 上 面 的 部 分 ,我 沒 有 剪 短 ,反 正 不 影 響 打 印 ,而 且 那 凸 出 的 部 分 亦 使 得 取 下 柔 性 平 台 更 方 便 。

現 在 基 本 上 所 有 東 西 都 安 裝 好 了 ,係 時 候 要 搞 搞 那 些 電 線 接 線 。Tarantula 的 電 線 的 混 亂 程 度 ,是 十 分 令 人 沮 喪 的 。不 過 只 要 有 恆 心 ,鐵 柱 磨 成 針 。Tarantula 本 身 都 附 有 一 條 電 線 管 ,不 過 十 分 不 好 用 。我 比 較 喜 歡 使 用 下 面 這 一 種 半 開 放 式 的 纏 線 管 ,很 便 宜 的 ,十 蚊 一 包 就 有 十 米 長 ,夠 你 纏 好 幾 部 3D Printer 的 了 。

這 種 纏 線 管 的 好 處 ,是 可 以 在 你 連 接 好 所 有 電 線 之 後 ,才 開 始 纏 繞 。纏 繞 時 並 不 需 要 斷 開 電 線 的 連 接 。在 Tarantula 上 ,我 大 致 上 分 開 了 三 組 線 :第 一 組 是 x carriage 到 控 制 板 ,這 是 最 多 線 的 ;第 二 組 是 熱 床 的 接 線 ,線 不 多 ,但 還 是 紮 實 一 起 比 較 好 ;第 三 組 是 其 他 stepper motors 和 limit switches 的 接 線 。

第 三 組 接 線 是 一 些 比 較 麻 煩 的 接 線 ,因 為 stepper motors 和 limit switches 都 分 散 在 不 同 的 地 方 ,所 以 不 能 纏 在 一 起 。纏 電 線 時 ( 第 一 組 ),最 好 都 標 籤 好 每 個 插 頭 。因 為 纏 好 電 線 之 後 ,就 唔 太 可 能 循 著 電 線 找 回 那 根 線 是 屬 於 那 個 零 件 。( 例 如 我 用 雙 噴 頭 ,兩 個 噴 頭 的 溫 度 感 應 器 和 加 熱 頭 的 電 線 的 外 觀 是 一 模 一 樣 的 ,是 完 全 不 能 分 辨 的 。 )

纏 好 線 之 後 ,我 也 會 用 這 種 wire clip 來 把 電 線 固 定 在 鋁 型 材 之 上 。這 種 東 西 平 時 就 可 以 打 印 大 量 來 備 用 。

最 後 ,就 是 把 3D Printer,LCD 和 電 源 都 固 定 到 木 板 底 座 上 。至 此 ,硬 件 改 裝 的 部 分 大 致 上 完 成 ,整 台 機 器 是 紮 實 了 很 多 。下 一 篇 我 再 教 大 家 如 何 update firmware ( 升 級 固 件 ) 和 修 改 firmware。

ctleung張 先 生 ,男 性 ,肖 龍 。
職 業 :I.T. Consultant
簡 介 :不 好 好 讀 書 ;七 尺 差 五 寸 ,手 長 過 膝 ,雙 耳 垂 肩 ;性 寬 和 ,寡 言 語 ,喜 怒 不 形 於 色 。據 說 少 時 曾 斬 白 蛇 於 鳳 凰 山 下 ……
Posted in Computer & Network | Tagged , , , , | Leave a comment