开源改变世界

不使用归位周期的 z 和 y 轴归位 #466

推推 grbl 3年前 (2023-01-22) 209次浏览

关闭
CorvusCoraxDK 开启了这个问题 2014 年 8 月 14 日 · 12条评论
关闭

不使用归位周期的 z 和 y 轴归位#466

CorvusCoraxDK 开启了这个问题 2014 年 8 月 14 日 · 12条评论

注释

不使用归位周期的 z 和 y 轴归位 #466

你好,

我是使用 grbl 软件的新手,所以我的问题/观察可能无关紧要。

我观察到,当使用 $H 归位命令时,Z 轴和 Y 轴会忽略归位周期。设置。

我试图更改 config.h 文件,以便每个轴在下一个从 z 轴开始之前执行归位循环,然后是 x 和 y。这样做时很容易发现只有 x 轴使用归位周期设置。我一直在查看代码,但没有找到原因。所以可能是我的自制机器导致了错误。虽然其他一切都很完美。

我的观察完全错了吗?

不使用归位周期的 z 和 y 轴归位 #466
贡献者

@CorvusCoraxDK为清楚起见,有几个问题:

  • 你用的是什么版本的grbl?
  • grbl homes first then x/y at the same time,你想改变这种行为吗?
不使用归位周期的 z 和 y 轴归位 #466

嗨 tmpvar,

反应快 :-)

我使用的版本是 edge 版本 0.9。

起初我使用默认的 config.h 文件并观察到 ​​z 和 y 轴没有使用归位周期设置。我试图将归位周期数从 2 增加到 4。z 和 y 仍然没有变化,但 x 轴归位 4 次。

然后我更改了 config.h 以便归位周期有 3 个条目

#define HOMING_CYCLE_0 (1<<Z_AXIS)
#define HOMING_CYCLE_1 (1<<X_AXIS)
#define HOMING_CYCLE_2 (1<<Y_AXIS)

这不是来自实际的 config.h 文件,因为我目前正在工作,无法获得真正的 config.h 文件。不过应该是我写的吧。

我之所以意识到这一点,是因为我观察到当我发送命令返回零时,z 轴上的硬限位开关被激活。然后我观察到 z 的归位循环找到了开关,但随后转动步进器,使开关更加闭合,然后非常缓慢地向相反方向转动一点,只是不足以释放开关。然后步进器加速进行拉开设置。而已。我希望在 x 轴上进行相同的运动,其中开关被激活然后释放并再次缓慢激活。config.h文件中定义的次数。然后拉离开关到确定的距离。

不使用归位周期的 z 和 y 轴归位 #466

正如我所说,我是新手 ;-)

不使用归位周期的 z 和 y 轴归位 #466
成员

@CorvusCoraxDK: 不太清楚发生了什么。您是说 X 轴和 Y 轴向限位开关移动并在归位循环期间停止吗?如果他们移动,归位应该工作正常。循环完成后,应更新它们的机器坐标。

如果它们在限位开关上时似乎没有移动,这是限位开关的功能。有时它们会跳闸并保持开关状态,在开关之间来回翻转。Grbl 仅在触发先高或低时检测到触发,然后停止循环的特定部分。如果你的开关处于这种状态(我的 X 和 Y 也是如此),它们在归位周期的定位阶段似乎不会移动。

不使用归位周期的 z 和 y 轴归位 #466

嗨,香奈儿,

谢谢你的回答,我会尝试用示波器测量开关行为以确定是否是开关弹跳。去抖动代码应该捕捉到这种情况吗?

我觉得奇怪的是我在 x、y 和 z 轴上使用相同的开关类型。当开关被激活时,我仅在 X 轴上观察到两次归位尝试。开关类型是霍尼韦尔微动开关,切换时会发出咔嗒声,我只听到 x 轴上的咔嗒声两次。

不使用归位周期的 z 和 y 轴归位 #466

这听起来像是在按设计工作。您应该听到每个开关发出两声或更多声响。归位周期来回“搜索”以找到触发点。

它运行轴直到碰到开关,然后后退并以较慢的进给速度再次向前运行。

不使用归位周期的 z 和 y 轴归位 #466

嗨,工头,

实际上,只有 x 轴按照您的描述执行,z 和 y 的行为似乎并不相同,但正如 chamnit 解释的那样,开关可以通过非常微小的动作触发。显然我的开关没有我预期的那么好。我已经测量了开关,它们远非理想,所以我将使用一些不同类型的开关,也许是感应式非接触式。

当我尝试了一种新的更好的开关类型时,我会提供更新。

感谢大家现在的所有帮助。

不使用归位周期的 z 和 y 轴归位 #466

你的交换机是如何配置的?它们连接成独立的 X、Y 和 Z 吗?每个并行的 + 和 – 端?如果您有欧姆表,请检查 X、Y 和 Z 是否分开。在归位循环中,Grbl 将一个轴运行到其极限(Z 到顶部/+),后退直到开关打开,然后返回直到它关闭,然后退出直到它打开。然后移动到下一个轴。根据开关及其机械触发方式(例如杠杆或支架),可能会有很多变化。对我来说,.9g 在所有 3 个轴上都非常可靠地工作。

不使用归位周期的 z 和 y 轴归位 #466

嗨格里夫,

这些开关全部并联连接,并尽可能靠近 Arduino 接地。而且它们都是彼此分开的。但是谢谢你的提示。

我昨天发现我使用的微动开关远非理想,当我可以用欧姆表测量开关确实发生变化时,它并不总是会发出咔嗒声。所以我订购了一些应该更可靠的非接触式感应传感器。然后希望我能看到归巢周期完美无缺地工作。

今晚我计划安装簧片继电器而不是微动开关。希望它们会比微动开关好一点。我迫不及待地想再次使用我的机器我只是喜欢它给我的所有新可能性,尽管我仍然需要进行完美的铣削。这与 grbl 无关,只是我对 gcode、cam 软件和机械问题缺乏了解。

grbl 真的很棒,让开始使用数控机床变得非常容易。

不使用归位周期的 z 和 y 轴归位 #466

簧片开关提供出色的位置可重复性,这是一个很好的选择,只要您切割的东西不会产生被磁铁吸引的切屑 :-)
同时,硬件去抖可能有帮助吗?除了开关之外,您可能还需要添加去抖动/噪声滤波器。例如,7417 施密特触发器将有助于在一致的电压电平下仅触发 1 个脉冲。例如http://www.ti.com/lit/ds/sdls049b/sdls049b.pdf。或者 RC 低通滤波器可能会有所帮助:http ://www.ganssle.com/debouncing-pt2.htm

不使用归位周期的 z 和 y 轴归位 #466

arduino 的输入内置了施密特触发器。您只需要一个 rc 过滤器。
可以很基本。在问题中搜索 r+c 值和原理图。

不使用归位周期的 z 和 y 轴归位 #466

大家好,

感谢所有提示和提示。

Chamnit 让我开始思考,我发现如果我在归巢周期中手动激活开关,那么我就可以测试归巢行为。并且归位周期完全按照预期执行。因此,故障仅出在开关上。它们可以在一个非常小的动作内打开和关闭,使 grbl 逻辑相信归位周期已经完成。

我将添加一个 rc 过滤器作为硬件去抖器。

结案:-)

喜欢 (0)