Board logo

標題: [教學] Z-Probe 近接開關距離調整 - inductive proximity sensor [打印本頁]

作者: vichui    時間: 2015-10-2 14:14     標題: Z-Probe 近接開關距離調整 - inductive proximity sensor

本帖最後由 vichui 於 2015-10-2 14:37 編輯

自己一直對Z的零位調整十分困惑,每次要調整時就去轉動精度沒有很高的螺絲帽,這方法一來很不便,二來收緊螺絲帽的同時sensor也會有多少的移位,很不準確.

Marlin 的Z_PROBE_OFFSET_FROM_EXTRUDER
一直都知Marlin config中有這個設定可用來修正Z軸高度的座標 (零減掉這個設定值),這比去轉動螺帽方便, 但每次也得去改Firmware, 太花時間了, 也就一直它他設做零,去轉動那些螺絲帽算去.

G-Code M851
後來有次使用M503檢查EEPROM無意中發現了EEPROM中有Z probe offset的數值,和M851這個G-Code, 翻查Marlin offical文件沒有這code的存在,最後在reprap forumn找到了,原來這是1.03 Dev後加入的,offical文件還沒更新.使用方法:

      M851 Z-x.y



調整步驟
(引用了這篇中的方法: 雄: 3DP : 近接開關距離與靭體設定調整:)

1.Z_PROBE_OFFSET_FROM_EXTRUDER設定為零
由於我們會使用 EEPROM存儲數值, Source Code中設要為零和打開EEPROM功能.

2.調整感應開關位置
首先要調整 Z-min 的感應開關安裝位置,讓感應器觸發時,噴頭高於平台,但沒碰到列印平台。見下圖:-



A: 感應開關要比噴頭高 - 這樣Sensor才不會在打印中碰到膠件
B: 平台不要碰到噴頭, 留大約1-2mm就可, 而B就是Z offset 的距離
C: 感應開關的工作距離

3.清除EEPROM
利用以下Gcode清除之前存於EEPROM中的數值

M851 Z0 ; 設定Z-probe offset 為0
M500    ; 存入EEPROM中

4.HOME (G28)
執行G28一次讓三軸歸零( X、Y、Z)。

5.精測Z-Offset
現在我們會測量z-probe offset (B)的數值, 方法中會用到G92,和一般的調高方法.
AutoHome歸零後, 現在的Z一定會是0, 我們無法以一般移動指令讓噴頭和平台更接近.不過我們可使用G92來使Z大過0,Z便能再次移動. 做法如下

   G92 Z10 ;把現在的Z (0)設定為10

再來,利用列印程式的「手動模式」或是 G-codes,慢慢調低噴頭高度,搭配「A4 影印紙」,找出印表機噴頭的最佳高度,找到後就能計算出。

6.計算Z-probe offset
以前面作為例子,找到最佳的高度時,如果此時 Z 軸的高度是 8.73mm ,計算一下目前的高度減掉原來的高度:

      8.73 - 10 = -1.27

答案 -1.27就是我們要的Z-probe offset了

7.把Z-probe offset寫入EEPROM
M851 Z-1.27 ; 設定Z-probe offset 為-1.27 (B的距離)
M500    ; 存入EEPROM中

8.測試
執行G28一次讓三軸歸零( X、Y、Z), 這次Z會顯示為1.27 (你所計算出來的數值).以後每次AutoHome也會停於這位置.這時再埶行 G1 Z0就可讓Z軸歸零.

9.更改切片軟件Start-Gcode (如果有用G29)
Marlin的Z-Probe Offset配上G29(Z-Probe平臺自動補正)功能有一個小問題發生, 就是G29預設Z己經歸零的,所以一定會跟住G28做,如:

.....

G28 ;Home x,y,z
G29 ;Auto bed leveling
.....

但用了Z-Probe Offset後, G28之後Z將不是0.這時我們要加入G1 Z0來使Z真正的歸零後才可行G29,如

.....

G28 ;Home x,y,z
G1 Z0 ; move Z to 0 position
G29 ;Auto bed leveling
.....

這方法很方便, 每次調整只需要重覆3-7就可以..

http://3dprinterdiy123.blogspot.hk/2015/10/z-probe-inductive-proximity-sensor-part.html
作者: g2david    時間: 2015-10-2 15:34

記得落鏍絲膠, 印印下鬆又玩多次.如果買了次貨, 個sensor 要低得好緊要先得.

我己用了servo, 就解決以上問題, 基本上一次okay.

我的做法是跟據你的做法. G28, Tune 好 z-offset.

做多次G29, 個paper test. 和Z-offset 個數有小小off.  只要加z-offset 就得.

最後我建議用testing stage 個branch. release branch G29, 個offset 有問題的
作者: vichui    時間: 2015-10-2 16:50

回覆 2# g2david

個sensor真係好緊要的, 太低, 平台傾斜就好易噴頭撞平台

下次分享埋我點用sensor manual tune 水平的方法. 快靚正...
作者: g2david    時間: 2015-10-2 17:58

回覆 1# vichui


    In fact,  The zero reset is not necessary in other Marlin firmware. I guess this is a bug in your current version. The testing 1.0.3 has a bug when calculating z axis offset after G29.  it is fixed in testing stage version.

G28 ;Home x,y,z
G1 Z0 ; move Z to 0 position
G29 ;Auto bed leveling

My previous version, I need to manually reset the servo distance from print head in Gcode. After using newer version in staging branch. all fixed without any adjustment.
作者: vichui    時間: 2015-10-2 18:26



所以我文中有提到 g1 z0 都prevent呢個問題的, 我仲用近1.03 dev,  因為改過未大月時間upgrade
作者: jonahl    時間: 2015-10-8 12:18

請問一下,你的SENSOR 從哪兒入手?
RS 同類的要成3百幾一個
而淘寶就十幾都有。

究竟邊種信得過???
作者: g2david    時間: 2015-10-8 13:38

回覆 6# jonahl


    PMed
作者: danielka    時間: 2015-10-9 09:33

師兄我都想要條LINK
作者: lung_1209    時間: 2015-12-30 09:47

師兄我都想要條LINK
作者: jerrychan0610    時間: 2015-12-30 12:19

MARLIN固件可以LIVE去改Z MAX, ROD LENGH, RADIUS?
作者: hon2013    時間: 2015-12-30 18:06

講明「sensor 要低得好緊要先得」,點解重攞link?
我買過用响鋁距離會短左,加左玻璃后幾乎貼住。最後都冇用到。
作者: vichui    時間: 2016-1-30 09:20

用玻璃的話可去五金鋪買卷錫紙膠紙, 貼玻璃低,敏感度高過用鋁板好多的。





歡迎光臨 電腦領域 HKEPC Hardware (https://h0.hkepc.com/forum/) Powered by Discuz! 7.2