Board logo

標題: Kossel G29 不成功 [打印本頁]

作者: jackyt    時間: 2014-6-23 12:34     標題: Kossel G29 不成功

本帖最後由 jackyt 於 2014-6-23 13:47 編輯

以安好Kossel, 現在入了firmware, 但有很問題請Ching們幫手.

我入了一些基本資料如下.  因為是睇咗 wsoft2002 Ching 的 Kossel 砌機分享 [新增: 打印機校正-- 自動篇]
Configuration.h

#define DEFAULT_DELTA_DIAGONAL_ROD 214.5 // mm
#define DELTA_SMOOTH_ROD_OFFSET 150 // mm //158
#define DELTA_EFFECTOR_OFFSET 20.8 // mm
#define DELTA_CARRIAGE_OFFSET 18.5 // mm  

#define X_MAX_POS 90
#define X_MIN_POS -90
#define Y_MAX_POS 90
#define Y_MIN_POS -90
#define Z_MAX_POS MANUAL_Z_HOME_POS
#define Z_MIN_POS 0

#define MANUAL_Z_HOME_POS 200
#define DEFAULT_AXIS_STEPS_PER_UNIT   {100, 100, 100, 439.5}
#define REPRAP_DISCOUNT_SMART_CONTROLLER

現在一般的 G28, 上下左右 算是準確
MoveXTower, MoveYTower, MoveZTower, MoveCenter 都沒有問題.

現在是G29問題.
#define Z_PROBE_OFFSET {-25.6, 9.9, 4.2, 0}
#define Z_PROBE_DEPLOY_START_LOCATION {24, 72, 30, 0}
#define Z_PROBE_DEPLOY_END_LOCATION {-24, -72, 30, 0}
#define Z_PROBE_RETRACT_START_LOCATION {49, 84, 20, 0}
#define Z_PROBE_RETRACT_END_LOCATION {49, 84, 1, 0}

#define AUTOLEVEL_GRID 24

我以經用 G1 X20 Y90 Z30 是正確去到基本的位置.
但如果我用G29, 部機係會自己開始, 但開始的位置唔同我自己打入去的 X20 Y90. 仲要好似係比較中的位置開始.
到了十個點之後以出了圓盤. 當然我就停咗佢.

又試用G30, 一樣唔知做咩, 係半空行咗幾下, 一去到圓盤就出咗界仲要個嘴都底過Z0

是否有一些地方我做少或錯? 請幫忙一下. 謝謝!!
作者: healingfoot    時間: 2014-6-23 15:33

#define Z_PROBE_OFFSET {-25.6, 9.9, 4.2, 0}

The Z offset seems to be -4.2.  Please check or other Ching may comment.
作者: jackyt    時間: 2014-6-23 16:07

回覆 2# healingfoot


我係用移支探針到 X0 Y0 時, 用M114check.
作者: healingfoot    時間: 2014-6-23 18:20

回覆 3# jackyt


    For me I would add a negative sign to the whole set of value after M114.
作者: linuxbaba    時間: 2014-6-23 18:22

本帖最後由 linuxbaba 於 2014-6-23 18:24 編輯

回覆 1# jackyt

您的 z probe offset位置有問題, 4.2 意思是 4.2mm 高過 hotend. 應該是負.
如果probe高過hotend, hotend會撞玻璃先.
第二, marlin會計算錯.
#define Z_PROBE_OFFSET {X,Y,Z, 0};
Z 應該是負數

個Z_PROBE_OFFSET是deploy完之後位置.
作者: jackyt    時間: 2014-6-23 18:33

回覆 5# linuxbaba


我以改了Z -4.2

但如果Z係錯,但起步的 X Y 位置應該唔會錯嗎?
作者: jackyt    時間: 2014-6-23 18:48

現在好似又多一個問題, 就係Arduino好似update唔到firmware.
因為我想調整一下 Z_HOME_POS 200.1 改成 200

#define MANUAL_Z_HOME_POS 200

但改了再upload完之後,用Pronterface G28 check M114都係Home時 Z 200.1

但係改了再upload幾次都係一樣.

會否hardware 有問題?
作者: benng1hk    時間: 2014-6-23 19:04

現在好似又多一個問題, 就係Arduino好似update唔到firmware.
因為我想調整一下 Z_HOME_POS 200.1 改成 200 ...
jackyt 發表於 2014-6-23 18:48



    師兄..我生日果夜問過...
有師兄解答我問題..
不過..我仲未開波試..

你又睇下幫唔幫到你
http://www.hkepc.com/forum/viewt ... extra=&page=110
作者: benng1hk    時間: 2014-6-23 19:06

本帖最後由 benng1hk 於 2014-6-23 19:07 編輯
現在好似又多一個問題, 就係Arduino好似update唔到firmware.
因為我想調整一下 Z_HOME_POS 200.1 改成 200 ...
jackyt 發表於 2014-6-23 18:48



    #define MANUAL_Z_HOME_POS 200 <---
你打G28->GZ0
睇下凌空幾多位去睇...
跟住憑感覺仲間留幾多位比佢出膠又貼到玻璃

果個SET係噴頭高度...
唔係G29
作者: jackyt    時間: 2014-6-23 19:18

回覆 9# benng1hk


G28 -> GZ0 會有A4紙.正常

我知你SET係噴頭高度,不過我想係firmware改一改個噴頭高度少0.1,但好似個firmware冇改到.
有咩辦法可以知upload 冇問題?
有咩辦法可以reset? 我想從新upload firmware.
作者: jackyt    時間: 2014-6-23 19:22

其實唔用G29, 直接print 野會唔會好危險?
作者: linuxbaba    時間: 2014-6-23 19:25

本帖最後由 linuxbaba 於 2014-6-23 19:45 編輯

回覆 6# jackyt

起步的 X Y 位置應該唔會錯.
您用哪個版本Marlin ?
我用 RichCattell 的 https://github.com/RichCattell/Marlin (Marlin Delta firmware with autocalibration updates)
其他ching 有用jcrocholl 的 https://github.com/jcrocholl/Marlin/tree/deltabot/Marlin
作者: benng1hk    時間: 2014-6-23 19:27

回覆  benng1hk


G28 -> GZ0 會有A4紙.正常

我知你SET係噴頭高度,不過我想係firmware改一改個噴頭高 ...
jackyt 發表於 2014-6-23 19:18



1...我冇用A4 紙去度..
因為我用漿糊多...
我SET到有約0.1MM空隙就夠

2.. UPLOAD完佢會自己REROOT一次..
咁就係正常...如果你係SET MANUAL_Z_HOME_POS
你用pronterface 打G28 睇下個Z係唔係你SET果個數一樣

3..網文寫咁RESET制就得...
不過..我試過我果隻好似冇咩反應

最後..你點UPLOAD 我初步估計佢係會OVERWRITE 左佢
作者: qkuser    時間: 2014-6-23 20:36

開左eeprom 功能,要用m502 還原,所以你改完後,重新upload ,要打一次m502 .
作者: jackyt    時間: 2014-6-23 20:51

回覆 12# linuxbaba

我用的是RichCattell

(Sent from HKEPC iPhone app)
作者: benng1hk    時間: 2014-6-23 20:57

回覆  linuxbaba

我用的是RichCattell

(Sent from HKEPC iPhone app)
jackyt 發表於 2014-6-23 20:51



    師兄...QKUSER 師兄指..
EEPROM功能..預設唔會開..
除非你SET完..打左一次M500
要還原 要打M501
解除/UPDATE係...M502

// EEPROM
// the microcontroller can store settings in the EEPROM, e.g. max velocity...
// M500 - stores paramters in EEPROM
// M501 - reads parameters from EEPROM (if you need reset them after you changed them temporarily).
// M502 - reverts to the default "factory settings".  You still need to store them in EEPROM afterwards if you want to.
//define this to enable eeprom support
#define EEPROM_SETTINGS
//to disable EEPROM Serial responses and decrease program space by ~1700 byte: comment this out:
// please keep turned on if you can.
#define EEPROM_CHITCHAT
作者: jackyt    時間: 2014-6-23 20:58

回覆 13# benng1hk

就係upload 完佢自己會restart,電腦又有'Done Upload' 好似以Reupload成功, 但G28之後M114 check 都是一樣舊的高度。


(Sent from HKEPC iPhone app)
作者: benng1hk    時間: 2014-6-23 21:01

回覆  benng1hk

就係upload 完佢自己會restart,電腦又有'Done Upload' 好似以Reupload成功, 但G28之後M1 ...
jackyt 發表於 2014-6-23 20:58



    轉另一個FW...
我之前遇過..有個FW 有問題..
我左500都好...
佢都係顯示舊果個
作者: jackyt    時間: 2014-6-23 21:47

回覆 18# benng1hk

好謝謝,等我試試

(Sent from HKEPC iPhone app)
作者: linuxbaba    時間: 2014-6-24 00:28

本帖最後由 linuxbaba 於 2014-6-24 01:43 編輯

回覆 15# jackyt


如果和我嘅一樣用有autocalibration版本的Marlin, 用"M666 L" 印config看看.
這個版本會記住好多value在EEPROM,
如果改configuration.h 裡面 Z_PROBE_OFFSET,你需要用M502改回(copy)上EEPROM.
如果改configuration.h 裡面 MANUAL_Z_HOME_POS,你需要用M502改回(copy)上EEPROM.

或用"M666 H200" 改 MANUAL_Z_HOME_POS 個 value (200 是 printer 高), 用"M500" 上EEPROM.
或用"M666 P-4.6" 改 Z_PROBE_OFFSET 個 Z value (-4.6 是probe Z offset), 用"M500" 上EEPROM.

希望能解決你問題

這是我用"M666 L"印
Current Delta geometry values:
X (Endstop Adj): -4.14
Y (Endstop Adj): -0.38
Z (Endstop Adj): -1.02
P (Z-Probe offset) X: 3.00 Y: -50.00 Z: -31.00
A (Tower A Position Correction): 1.24
B (Tower B Position Correction): -3.68
C (Tower C Position Correction): 2.44
I (Tower A Radius Correction): 0.00
J (Tower B Radius Correction): 0.00
K (Tower C Radius Correction): 0.00
R (Delta Radius): 134.38
D (Diagonal Rod Length): 279.00
H (Z-Height): 385.57
作者: jackyt    時間: 2014-6-24 11:20

回覆 20# linuxbaba


    對我新手要燒化一下先得.
作者: healingfoot    時間: 2014-6-24 15:23

回覆 21# jackyt


    Since I don't know how to use the M GCode command, I have to go to the LCD select 'Load Fail-safe setting'.  Afterward, you will get the newly updated Z-value in function.  Please try if you have a LCD controller interface.
作者: jackyt    時間: 2014-6-24 15:57

回覆 20# linuxbaba

我upload完Marlin - Johann C. Rocholl 的firmware 上去, 再upload 返Marlin-RichCattell 上去. 但個舊setting 都唔走.
Current Delta geometry values:
X (Endstop Adj): 0.00
Y (Endstop Adj): 0.00
Z (Endstop Adj): 0.00
P (Z-Probe Offset): X-17.40 Y19.60 Z3.80
A (Tower A Position Correction): 0.00
B (Tower B Position Correction): 0.00
C (Tower C Position Correction): 0.00
I (Tower A Radius Correction): 0.00
J (Tower B Radius Correction): 0.00
K (Tower C Radius Correction): 0.00
R (Delta Radius): 110.65
D (Diagonal Rod Length): 214.50
H (Z-Height): 200.10

不過 M502 之後用M666 L check 就會用新的setting, 但disconnect 完再 connect 返又會返去舊setting.

之後我用M500 用M666 L check 就會用新的setting, 現在disconnect 完再 connect 都可以用新setting 了.
Current Delta geometry values:
X (Endstop Adj): 0.00
Y (Endstop Adj): 0.00
Z (Endstop Adj): 0.00
P (Z-Probe Offset): X-25.60 Y9.90 Z-4.00
A (Tower A Position Correction): 0.00
B (Tower B Position Correction): 0.00
C (Tower C Position Correction): 0.00
I (Tower A Radius Correction): 0.00
J (Tower B Radius Correction): 0.00
K (Tower C Radius Correction): 0.00
R (Delta Radius): 110.70
D (Diagonal Rod Length): 214.50
H (Z-Height): 200.00

    不過真係唔知點解.G29都係一樣唔係要求的starting point

#define Z_PROBE_DEPLOY_START_LOCATION {24, 72, 30, 0}
作者: qkuser    時間: 2014-6-24 16:06

回覆 23# jackyt

可以拍段片看看嗎 ? 你意思G29 後不會去24,72,30 放針 ?
作者: jackyt    時間: 2014-6-24 16:26

回覆 24# qkuser


    係呀! 佢唔知點解去咗一個比較遠的地方做開始點.
所以點了7至8 下就出  圓盤.
作者: qkuser    時間: 2014-6-24 17:31

回覆 25# jackyt

即係放針正常,係autolevel 緊時出左去  ?? 如果係把#define AUTOLEVEL_GRID 調小一點先試試,例如 20.
作者: jackyt    時間: 2014-6-24 18:04

回覆 26# qkuser


    #define AUTOLEVEL_GRID 調小一點都沒用, 因為第一點針是在約 X:45.00Y:50.00.
所以#define AUTOLEVEL_GRID 20 都一樣
作者: jackyt    時間: 2014-6-24 18:14

我試過用其他 START_LOCATION 及END_LOCATION,
但佢都係X:45.00Y:50.00 開始

會唔會又係firmware 改唔倒?
作者: linuxbaba    時間: 2014-6-24 18:20

本帖最後由 linuxbaba 於 2014-6-24 18:29 編輯

回覆 23# jackyt

Sorry, I am not good at typing chinese. So, I use english, hope you understand.
First, jcrocholl's Marlin and RichCattell's Marlin is not same to due with G29.
I talking about the RichCattell's Marlin (Marlin Delta firmware with autocalibration updates) only.

1. I suggest you to change the AUTOLEVEL_GRID to 12 or less in configuration.h to reduce the problem of probe outside your 圓盤. You have upload the firmware again. The AUTOLEVEL_GRID will NOT save at EEPROM. If change it, it will change :D

2. Before the G29, you should use G28 first. It will go home first. And then, it will go to the Z_PROBE_DEPLOY_START_LOCATION and next is Z_PROBE_DEPLOY_END_LOCATION.
After deploy the z-probe, it will go to starting point Z_PROBE_OFFSET and probe your 圓盤.

So, Z_PROBE_DEPLOY_START_LOCATION and Z_PROBE_DEPLOY_END_LOCATION should be higher than Z_PROBE_OFFSET, otherwise it will move very funny , of course you can try.

3. If you enable "#define EEPROM_SETTINGS" in configuration.h, when Marlin startup or reset, it will use the value store in EEPROM and copy it to RAM, not the value in configuration.h. You can check which current value in the RAM by M503 and M666 L.

So, if you use M666 to change the value in the RAM, you have to store it back to EEPROM by M500, Or if you change the value in configuration.h which already store in EEPROM, your have reverts to the default "factory settings". All value will override.

I suggest you to try
A.  change #define AUTOLEVEL_GRID 12
B.  use G28 before G29
C. good luck

BTW,  jcrocholl's Marlin and RichCattell's Marlin using different EEPROM_VERSION number. Both setting already store in your EEPROM.
作者: jackyt    時間: 2014-6-24 18:45

回覆 29# linuxbaba

Thanks for your information.
Everytime is use G29 and I will input G28 first.

I have changed AUTOLEVEL_GRID to 12 and now the probe will work within 圓盤.
But the all the testing points are only on the right side of the 圓盤.

I tried to change the
#define Z_PROBE_OFFSET from X-25.6 to X25.6.
#define Z_PROBE_DEPLOY_START_LOCATION {0, 0, 30, 0}
but the testing points did not change.

Is that possible to use M666 to check the EEPROM of the following?

#define Z_PROBE_OFFSET {-25.6, 9.9, -4, 0}
#define Z_PROBE_DEPLOY_START_LOCATION {20, 72, 30, 0}
#define Z_PROBE_DEPLOY_END_LOCATION {-20, -72, 30, 0}
#define Z_PROBE_RETRACT_START_LOCATION {49, 84, 20, 0}
#define Z_PROBE_RETRACT_END_LOCATION {49, 84, 1, 0}
作者: linuxbaba    時間: 2014-6-24 18:54

本帖最後由 linuxbaba 於 2014-6-24 19:11 編輯

回覆 30# jackyt

You can use "M666 P-4.6" to change the RAM value of z-probe Z location only. (-4.6 is your Z value), then if you feel OK with -4.6 or -4.7 .... You can store it back to EEPROM by M500.
But for the  Z_PROBE_OFFSET's X location and Y location, you have to change in configuration.h and using M502 to reset the defalut value and follow by M500 store it in EEPROM. Don't ask me why :D, this is RichCattell idea.

Using M666 can change value in RAM, example Z-Height, example "M666 H200.10" or z-probe location M666 P-4.6".

Look at the M666 output
X (Endstop Adj): 0.00
Y (Endstop Adj): 0.00
Z (Endstop Adj): 0.00
P (Z-Probe Offset): X-25.60 Y9.90 Z-4.00
A (Tower A Position Correction): 0.00
B (Tower B Position Correction): 0.00
C (Tower C Position Correction): 0.00
I (Tower A Radius Correction): 0.00
J (Tower B Radius Correction): 0.00
K (Tower C Radius Correction): 0.00
R (Delta Radius): 110.70
D (Diagonal Rod Length): 214.50
H (Z-Height): 200.00

M666 change value command is M666 follow by X, Y ,Z, P...... R, D and H
作者: jackyt    時間: 2014-6-26 16:37

G29
#define AUTOLEVEL_GRID 24

#define AUTOLEVEL_GRID 24

#define AUTOLEVEL_GRID 12

#define AUTOLEVEL_GRID 12

仲有一個問題是我的Thin wall 太 Thin.
應該是0.5mm 但只有 0.42mm

是否出膠問題?
作者: linuxbaba    時間: 2014-6-26 19:26

本帖最後由 linuxbaba 於 2014-6-26 19:28 編輯

回覆 32# jackyt

I watched the both video, you seem using manual deploy z-probe, in that case, you can change the configuration.h like below, and upload firmware again.

#define Z_PROBE_DEPLOY_START_LOCATION  {0, 0, 50, 0}
#define Z_PROBE_DEPLOY_END_LOCATION    {0, 0, 50, 0}   
#define Z_PROBE_RETRACT_START_LOCATION {0, 0, 50, 0}
#define Z_PROBE_RETRACT_END_LOCATION   {0, 0, 50, 0}  

For the offset of z-probe, the X and Y still not in correct position. You have adjust it in configuration.h and upload and using M502, after reboot the Arduino, using "M666 L" to check the the P (Z-Probe offset) value is correct or not.

How to find the X and Y of z-probe, you can put a paper in the heatbed, use marker point the z-probe head in the paper. At the time, your nozzle is point to X0 Y0.  Using Hosts software to more the nozzle to the marked point. That is the X and Y offset.

For the thickness of wall, it is very depends on the slicer, you can add 0.08mm more on it.
I don't think that is 出膠問題. But only 0.08mm different is acceptable.

Good luck, 成功在望.
作者: jackyt    時間: 2014-6-26 20:38

本帖最後由 jackyt 於 2014-6-26 20:49 編輯

今日的print out 如下,但S plug 個樣真係唔多得!2020 我就滿意。
S plug 佢好似有啲位會停一停百分之幾秒,好似係咁先有啲膠凸出,但2020 同thian wall 係冇事














(Sent from HKEPC iPad app)

(Sent from HKEPC iPhone app)
作者: linuxbaba    時間: 2014-6-27 00:03

本帖最後由 linuxbaba 於 2014-6-27 00:24 編輯

是否有時停有時吳停,你用哪一個Host software印,或用SD card印?
如果用Host software, 用Task Manager 看看CPU是否100%?

Z_PROBE_DEPLOY_START_LOCATION 改好無?有無Video?
作者: jackyt    時間: 2014-6-27 09:05

回覆 35# linuxbaba


    我部電腦係一部好舊的,用XP 1GB ram
今日試下你的suggestion

Thanks a lot !!
作者: jackyt    時間: 2014-6-27 12:20

回覆 33# linuxbaba


    I use this part
#define Z_PROBE_DEPLOY_START_LOCATION  {0, 0, 50, 0}
#define Z_PROBE_DEPLOY_END_LOCATION    {0, 0, 50, 0}   
#define Z_PROBE_RETRACT_START_LOCATION {0, 0, 50, 0}
#define Z_PROBE_RETRACT_END_LOCATION   {0, 0, 50, 0}  

The result is the same but only when finish G29 the probe retract, Nozzel back to 0, 0, 0

The probe deploy starting point and the end point is the same whatever I change the X and Y number.
.
作者: linuxbaba    時間: 2014-6-27 15:02

本帖最後由 linuxbaba 於 2014-6-27 15:08 編輯

回覆 37# jackyt


如果真係無辦法搞店個Eeprom,  你可以disable, remark it

//#define EEPROM_SETTINGS

之後全部數值會用上configuration.h
不需要M500,M502.....,

你部delta好漂亮,用多D時間印玩具好個和eeprom戰鬥。
作者: jackysong    時間: 2014-7-14 15:13

我台kossel,每次connect 都会变成default设置,用M500都唔得。EEPROM已经enable。次序系唔系:
1、G28
2、G29
3、M500
重新connect之后输入M501啊?
作者: jackysong    時間: 2014-7-14 15:17

可唔可以,每次connet之后或者reset之后自动读取EEPROM啊?
作者: NPC    時間: 2014-7-14 16:58

回覆 39# jackysong

http://letsmakerobots.com/content/kossel-mini-calibration
留意"#1 -- G28 CANCELS G29 DATA"個段文
大意係用咗G28會RESET G29結果
作者: linuxbaba    時間: 2014-7-14 18:56

他用 RichCattell 的 Marlin , G28是不會reset G29 的 bed_level data.
And, bed_level data 是不會記在EEPROM的.
作者: jackysong    時間: 2014-7-14 20:48

照師兄甘講,喺唔喺每次print之前都必須做G29先至得了喔?
作者: linuxbaba    時間: 2014-7-15 00:37

回覆 43# jackysong

正確,G29是這樣設計的
作者: jackysong    時間: 2014-7-15 14:33

多謝師兄,看來唯有重新設計我嘅調平機構先至得啦。依家用嘅喺thingiver上面的E3D磁鐵方案。如果每次都用仲唔喺甘方便。
作者: kkeith    時間: 2014-9-28 00:48

本帖最後由 kkeith 於 2014-9-30 01:14 編輯

我都係最近開始玩,玩到set auto-level,個g29第一針都係中間過少少,唔係人地咁角落開始,然後一點點點下就出O左界同撞落條鋁度。唔知點解。師兄你成唔成功處理到個問題?





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