注释
对此很好奇,因为我在开始 GRBL 道路时进行了进给率测试,所以我在 0.9i.20150618 上运行它并且无法重现该问题。还是好奇,于是下载了0.9i.20150329版本,还是无法复制。在这两种情况下,我从 x=0 开始设置 F5,然后设置 G90G1X5,完成移动只用了 1 分钟。对 Y 轴和 Z 轴也做了同样的事情。 |
只有在 config.h 中启用 AMASS 功能时才会出现此行为 #define ADAPTIVE_MULTI_AXIS_STEP_SMOOTHING // 默认启用。评论禁用。 因为 AMASS 算法只需要一个定时器预分频器;仅在定时器中加载 0xffff 值(prep_segment->cycles_per_tick=0xffff // line 786 stepper.c)无法保证非常低的进给率 |
我已经有一段时间没有这样做了,但我记得我考虑到了生成和执行的非常慢的步骤段。它不应该这样做。也就是说,我可能没有查看所有设置。@jarretluft: 请提供重现此问题所需的设置。 |
在 shapeoko 2 硬件上,Arduino uno w/ grblshield v4。 $0=10 (step pulse, usec) |
@jarretluft:谢谢贾勒特。我已经证实这与低步长/毫米设置有关。要正确解决此问题,需要进行一些重要的重构。因为,在磨坊上如此缓慢地移动并不常见,我不会为 v0.9 master 触及这个,但会在 v1.0 中修复它。 |
好的,我找到了这个问题的原因。它源于 AMASS 算法,它只在主定时器中使用一个固定的预分频器。AMASS 的最低滴答速率约为 30 步/秒。对于 40step/mm,这相当于大约 45mm/min。由于它的设计方式,我无法用 AMASS 解决这个问题。我没想到需要非常慢的进给率的用例。 所以解决方案是在 config.h 中禁用 AMASS,这会强制 Grbl 使用旧的计时算法,和/或增加轴的步数/mm,这样所需的最低步进速率就会超过 30 步/秒。 |
当指定低 F 值(低于 45mm/min 左右)时,GRBL 将以大约 43mm/min 的最小速度移动。
这是通过设置 F5 毫米/分钟的进给率,然后尝试从工作原点移动 G1 X5 来测试的。机器在大约 7 秒内移动了 5 毫米,但这应该以 5 毫米/分钟的速度移动 1 分钟。
更详细的报告在这里:http ://www.shapeoko.com/forum/viewtopic.php?f=3&t=6103
为了测试这个,我正在运行:$i = [0.9i.20150329:]