归位问题 #356

推推 grbl 3年前 (2023-02-05) 284次浏览
关闭
ledvinap 打开了这个问题 2013 年 1 月 2 日 · 10 条评论
关闭

归位问题#356

ledvinap 打开了这个问题 2013 年 1 月 2 日 · 10 条评论

评论

归位问题 #356

您好,
我正在尝试修改代码,以便可以配置最小、最大和起始位置。这对于在 +Z 上带有 home 的机器非常有用,也可用于减少打印区域以避免剪辑等。

有一些不清楚的代码,有人可以帮助我吗?此外,这个地方可能不是讨论这个问题的地方,如果你指出正确的方向,我会重新发布。

configuration.h 中的 BED_CENTER_AT_0_0 有用吗?它设置起始位置,使 0 是起始轴大小的一半。
但它可能只有在 X_MIN_POS == – X_MAX_POS(或接近)时才能正常工作。在这种情况下,它没有任何效果(如果没有它,停止位置将正确设置为 X_MIN_POS 或 X_MAX_POS)。
否则它会将起始位置定位在 [X_MIN_POS,X_MAX_POS] 之外,我认为这样做没有任何意义……

homing_feedrate 用于粗略接近终点,该速度的一半用于精细接近。速度减半有什么背景吗?在我看来,要么粗略的速度太慢,要么精细的方法是不准确的(粗略的方法应该尽可能快而不会损坏开关,精细的方法应该足够慢,这样就不会错过任何一步。两个因素似乎很低). 将这两个常数分开有什么意义吗?

每次回家前是否有任何理由将轴归零?我认为没有它也可以做到。最后可以检查home position,所以二次home后看home position是否一致。

add_homeing(用 M206 设置)似乎完全损坏了 – 归位后,只有当 G28 有非零(且大于一个)XYZ 字时才应用它,并且这个非零偏移量被添加到起始位置。

      if(code_seen(axis_codes[X_AXIS])) 
      {
        if(code_value_long() != 0) {
          current_position[X_AXIS]=code_value()+add_homeing[0];
        }
      }

G92也加上了,我觉得这也是错误的(G92后面的位置和XYZ字里指定的不一样)。

有人用M206吗?

我当前的版本试图修改 M206,以便 M206P01 设置轴最小值、M206P02 最大值和 M206P03 轴原点开关位置(另一个 P 字可用于设置原点速度等…)。这是否符合重新编写 G 代码约定?

有人对共享家庭交换机感兴趣吗?它应该很容易实现并且可以节省很少的引脚。

归位问题 #356

我看不出这样做的目的。

对于我的使用(prusa mendel),我有 3 个用于归位的末端停止开关,这就足够了。在每次新打印时,gcode 都要求归零归零,这很好,因为您可以在移除前一部分时移动轴。
这是从一致的零开始的更简单的方法。

在床中心设置 0,0 点与默认切片器配置一致,避免床边缘与夹子发生碰撞的最佳解决方案
设置 x/y/z 的最大值比添加最大开关更容易,如果你打印机经常更换,您可以添加 max 开关,这是避免与框架碰撞的最佳解决方案

归位问题 #356
贡献者

如果 0,0 是床中心或左前角,则取决于您的切片机。Cura 为 0,0 做左前角。

无论如何,M206 需要一些调查。我目前在 0,0,0 处归位,但我们可能想将其更改为归位到 0,Max-Y,0,以便头部远离进入打印机的手。

最后,共享主页开关是一个问题,想象一下从 0,10,0 移动到 0,0,0 这意味着 X 和 Z 开关仍处于按下状态,因此您无法检测到 Y 开关。如果您只使用开关归位,并且在归位每个轴之前离开其他开关,则可能会起作用。

归位问题 #356

我有 3 个开关,每个轴一个,我认为这是标准配置(带有斜坡板),带有共享开关,您需要按顺序先回家 x 返回 10 然后 Y 返回 10 然后 z 前进 x10 z10,而不是最快的方法

打印前归位不是问题,无论如何,当您只是要求打印时,您不会将手放在打印机中

可以定义一个公园坐标,因为我在 slic3r 中的 gcode 末尾添加位置:X0,z max 以使用 M 命令 Mxxx goto park 清除打印部件访问

归位问题 #356

我有 mendel90,Z 归位方向在最上面,我希望能够在不重新编译固件的情况下对其进行微调。

共享主页开关可能需要从没有触发开关的位置归位。如有必要,用户可以慢跑。在大多数情况下,home/limit switch 无论如何都应该在工作区域之外,所以这应该不是一个大问题。另一种可能性是稍微缩回所有轴,但这可能有点危险(可能会在另一端发生碰撞)。
序列将是一个轴的原点,从开关中缩回并执行另一个轴。mendel90 仅将开关用于归位,之后它们将被禁用。在软件限制之外设置原位/限位开关也是很合理的(几毫米就足够了)。
顺序归位会稍微慢一点,但应该可以忽略不计(归位 Z 比 X/Y 花费更多时间)

添加“停放”位置(归位时将每个轴移至此处)应该很容易。

归位问题 #356

我仍然不明白为什么在顶部使用 Z 归位

几乎没有 pb 可以到达顶部(如果过程中出现松动步骤,则必须重新校准 x 调平的部分

另一方面,在玻璃床上发生喷嘴碰撞的成本会更高

并且更容易调整床的水平度和零位(你怎么知道从零到床的高度?)

我发现在床层调零很容易

归位问题 #356

我同意 nophead 在这个问题上的观点:http: //hydraraptor.blogspot.cz/2012/06/only-way-is-up.html

当您在玩新机器或习惯于在印刷过程中调整东西时,回到床上是件好事。

用 Z+ 床调平很容易 – 首先调平床(最好使用千分表),但忽略 z 偏移。
然后回家 Z 并慢跑到床水平+杆直径并读取差异。该差异用于调整起始位置。

通过我的修改,它应该更容易:
像以前一样水平床
慢跑/调整喷嘴到已知高度
G92 Z?- 将当前位置设置为此高度
G28 home machine – 它将显示 home switch offsets
M206 P3 RZ 以调整 Z 开关位置
m500 以将配置存储在 eeprom 中

归位问题 #356

“我同意 nophead 在这个问题上的观点:http: //hydraraptor.blogspot.cz/2012/06/only-way-is-up.html

当您在玩新机器或习惯于在印刷过程中调整东西时,回到床上是件好事。

用 Z+ 床调平很容易 – 首先调平床(最好使用千分表),但忽略 z 偏移。
然后回家 Z 并慢跑到床水平+杆直径并读取差异。这种差异用于调整家庭位置。”

我不同意:调整Zdown中的床位,你只需要一张纸,不需要一个昂贵的千分表来解决所有的定位问题

您唯一需要做的就是让整个床的喷嘴都处于 0 位置,并在 z 螺母上添加弹簧,您甚至不必担心喷嘴会破裂。

你换床了吗?没有铅,只有一个小螺丝调整,让喷嘴以一张纸为导向,听到新床的声音。

无论如何,只要您正确调整了打印机,您就不必再触摸任何东西了

归位问题 #356
贡献者

归巢对 Mendel90 根本不起作用,因为除非喷嘴
很热或非常干净,否则它无法达到零,所以只需将螺母从
陷阱中拧出而不是触发开关。

我从来没有说过你需要一个千分表,它只是更容易、更快捷。您可以
使用任何塞尺,包括一张纸,但滚动一根杆也
容易得多。

在 2013 年 1 月 9 日 18:57,jfpion [email protected]写道:

“我同意 nophead 在这个问题上的观点:http:
//hydraraptor.blogspot.cz/2012/06/only-way-is-up.html

当您在玩新机器或
习惯于在印刷过程中调整东西时,回到床上是件好事。

用 Z+ 床调平很容易 – 首先调平床(最好使用千分表
),但忽略 z 偏移。
然后回家 Z 并慢跑到床水平+杆直径并读取差异。这种
差异用于调整家庭位置。”

我不同意:调整Zdown中的床位,你只需要一张
纸,不需要一个昂贵的千分表来解决所有的定位问题

您唯一需要做的就是让整个床的喷嘴都处于 0 位置,并
在 z 螺母上添加弹簧,您甚至不必担心
喷嘴会破裂。

你换床了吗?没有铅,只有一个小螺丝调整,让喷嘴
以一张纸为导向,听到新床的声音。

无论如何,只要您正确调整了打印机,您就不必再
触摸任何东西了


直接回复此电子邮件或在 GitHub 上查看它 https://github.com/ErikZalm/Marlin/issues/356#issuecomment-12060733。

归位问题 #356
贡献者

这个是大约一年前创建的,有很多变化,请下载最新的 marlin 副本,看看问题是否仍然存在。您还可以使用最新的 arduino IDE 来刷新 marlin 固件。如果您的板文件等只能在旧的 ide 下工作,请先升级它们,以便它们在最新的 IDE 下工作。

如果您为不在https://github.com/ErikZalm/Marlin/tree/Marlin_v1/ArduinoAddons中的硬件创建板文件,请 fork marlin 并添加文件,然后创建一个拉取请求,以便我们可以获得硬件支持的。这也将使人们了解人们正在使用什么硬件。