开源改变世界

Autobedleveling 问题:探测机制的顺序,我该如何修改它? #816

推推 grbl 3年前 (2023-02-06) 284次浏览
关闭
neoxm3 打开了这个问题 2014 年 2 月 28 日 · 4条评论
关闭

Autobedleveling 问题:探测机制的顺序,我该如何修改它?#816

neoxm3 打开了这个问题 2014 年 2 月 28 日 · 4条评论

评论

Autobedleveling 问题:探测机制的顺序,我该如何修改它? #816

嗨,我有一个奇怪的问题,

我安装了这个 marlin ,配置了所有,当它打印时,它进行了这个过程:
g28 – 安全归位,一切正常
g29 – 自动床调平,第一点正常
!但是当到了第二个测量点的时候,这就是问题所在,这个过程是这样的:

  • 升高 z 探头- 提升
    喷嘴
    – 转到第二点

但在我的例子中,当它升起 z 探针时,它与我的床发生碰撞并且没有到达 0 位置,这是因为这次碰撞,另一个 Z 停止接触,提升喷嘴,向下 z 探针,这又开始了……
这种方法导致我的设置错误读数

我如何修改它,以这种方式执行此过程?:
– 测量第一个 z -提升
喷嘴-
升高 z 探头
– 转到第二点…

恢复:而不是:测量一个点,然后收回探头 z,然后抬起
我需要:首先测量,抬起,然后收回 z 探头……
我可以在哪里编辑它以颠倒顺序?

非常感谢和抱歉我的英语

Autobedleveling 问题:探测机制的顺序,我该如何修改它? #816
作者

我的问题和那个男孩一样:
自动床调平 – 在收回探头之前需要稍微抬起头#669
https://github.com/ErikZalm/Marlin/issues/669

还没解决?谢谢

Autobedleveling 问题:探测机制的顺序,我该如何修改它? #816
作者

我找到了一些东西…
marlin_main.cpp 的第 991 行

//在位置 (x,y) 处探测床高度,返回测量的 z
值z_before); do_blocking_move_to(x – X_PROBE_OFFSET_FROM_EXTRUDER, y – Y_PROBE_OFFSET_FROM_EXTRUDER, current_position[Z_AXIS]);

engage_z_probe(); // 如果可用
run_z_probe();
float measured_z = current_position[Z_AXIS];
///这是导致问题的 TE
撤回 retract_z_probe();

这是探测的机制……我能做到吗?:

//在位置 (x,y) 处探测床高度,返回测量的 z
值z_before); do_blocking_move_to(x – X_PROBE_OFFSET_FROM_EXTRUDER, y – Y_PROBE_OFFSET_FROM_EXTRUDER, current_position[Z_AXIS]);

engage_z_probe(); // 如果可用
run_z_probe();
float measured_z = current_position[Z_AXIS];
do_blocking_move_to(current_position[X_AXIS], current_position[Y_AXIS], z+1); ///变化,向上移动 1??
retract_z_probe();

Autobedleveling 问题:探测机制的顺序,我该如何修改它? #816
贡献者

如果当前错误修复分支中仍然存在,请打开一个新问题

https://github.com/ErikZalm/Marlin/tree/Marlin-v1-bug-fixing