注释
您必须重新编译 GRBL,以便归位开关位于另一个方向。 |
@vlachoudis:为了解决移动硬限制问题,我将介绍一个 $X=line 命令,它允许您绕过所有安全协议,以便能够在警报或硬限制期间移动。 由于轴的每一端都有两个开关,Grbl 无法知道要走哪条路或触发了哪个限位开关,因为它为每个轴使用一个引脚。为了快速修复,您可以启用一个特殊的编译时选项,以防止 Grbl 在检测到任何限位开关已接合时启动归位周期。我认为它叫做 HOMING_TWO_SWITCHES_ON_AXIS 或类似名称。 |
谢谢@chamnit. 我的问题是如何在启用开关时缩回龙门架。 否则我上面的硬件解决方案工作得很好,但是它需要修改归位算法。 |
@vlachoudis:不确定为什么版本更改会有所不同,因为硬限制代码很长时间没有发生重大变化。硬限制对用户来说如此烦人的原因之一是因为 Grbl 会在检测到引脚更改时发出硬限制警报。这包括释放限位开关,以及开关在中间时是否有噪音。因此,如果幸运的话,用户通常会出现两个或更多硬限位错误,解锁并尝试移动序列才能离开限位开关。因此,引入 $X=line 命令的原因。 让我问你一下。当您无法离开限位开关时,Grbl 会报告什么?它会一直抛出硬限制错误,还是什么都不做(Grbl 状态是什么)?除了警报之外,代码中不应有任何内容会阻止您移动。 |
在进行某些升级之前(我不知道什么时候我不经常在限位开关上运行)按下限位开关时,我可以重置 + 解锁并发送 g0 命令,该命令移动了几分之一毫米。2-3 次后,我能够将龙门架从限位开关上移开。经过一些 grbl 升级后,现在我只听到步进器发出咔嗒声,它试图移动(或启用)然后立即停止。上次我无法将其移回,因此我被迫禁用硬限制。 同样的问题也出现在探针序列上。我在 bCNC 中有一个中心环探测探测器,它首先在 +X 方向探测,直到它碰到环,然后立即在 -X 方向发出探测。过去,在 +X 探测之后,它可以正确移动并检测 -X 边界。现在我必须先添加一个 g0 并在 -X 中添加一小步,然后发送探测命令。vlachoudis/bCNC#356 我不打算回到过去的行为,我发现新的行为更正确,所以我会等待 $X=line 实现:) |
@vlachoudis: 好,谢谢。探测问题不相关。这是更新 g 代码解析器以在执行新探测命令之前检查初始探测状态的结果。确实有一段时间Grbl允许探测被触发,新的探测命令生效。 我会认为这个问题已经结束,因为有一个悬而未决的解决方案。 |
想到这里,我会修改我的盾牌,将home开关原封不动地发送给grbl,而相反的end-switch则按照命令的方向进行逻辑操作。这种方式归位也适用于触发相反开关的情况。 |
在我的机器中,每个 X/Y 轴的两侧都有限位开关。
当原点开关对面的限位开关被触发时,则无法回原点。Grbl 将朝相反的方向(朝向限位开关)移动,试图将其脱离,但这种情况从未发生过,我打破了一个开关。
当然,使用螺纹杆我无法手动移动龙门架。
在 grbl 的几个版本之前,我能够进行重置/解锁,并发送一个与限位开关相反的短 g0 运动以将其分离。现在不再可能了,我的机架不会移动,除非我禁用硬限制,首先用 $21=0 移动它然后 $21=1 恢复它们。
S = grbl 步进
D = grbl 方向
PH,PL = 高低侧物理开关
Limit = 输入到 grbl 用于限制开关
StepOut = ^nand(S,nand(nand(^D,PH),nand(D,PL)))
^Limit = nand(nand(^D,PH),nand(D,PL))
这样我就没有问题了,如果我按下限位开关,我可以向后移动但不能向前移动,但是归位程序不起作用。
为这样的配置添加归位功能会很有趣吗?