注释
贡献者
150米?!我不会将此归类为错误,因为 Grbl 是在假设没有轴超过 10m 的情况下编写的。它更多地是 32 位整数变量跟踪步进位置的限制,以 200 步/mm 的正/负 2e6 步。 |
32 位整数是 ~ +/- 2e9,所以这对于 150 米处的 ~13000 step/mm 是有好处的 |
贡献者
哎呀。忘记了几个数量级。无论哪种方式,旅行限制都非常高。Homing 使用这些行程限制来确定搜索距离。高值更有可能截断一些浮点运算。无论哪种方式将价值降低到更合理的程度。 |
贡献者
现在想想我是对的,但 int32 不是极限。这是 32 位浮点数的精度。它的精度约为 7 位有效数字。这将 Grbl 限制在大约 10m 左右。 |
好的,我完全理解这些值是有限制的。但是,与其在归巢期间(而不是在移动期间!)表现出无法轻易与该值相关联的未定义行为(我花了 3 天时间才发现这一点),不如限制这些值不是更好吗在内部或在设置过高的值时给出错误? |
贡献者
是的,如果有这样的支票空间的话。Grbl 确实为一些关键的构建配置留下了几十个字节的闪存。当 ARM 芯片上有更多空间时,我打算在下一个版本中进行更多检查并提供反馈。 |
我已将 GRBL 的最大行程距离($130、$131、$132)配置为相当大的值,因为控制软件管理这些限制。但这会使归位过程失败,当我执行命令 $HX 时,所有步进输出仅获得一个短脉冲(是的,一个接一个,就像某种灯光秀),仅此而已。GRBL 块,不移动任何轴并且不对限位/原点开关作出反应。
所有大于 150000.000 的行程值都会发生这种情况,110000.000 的值似乎是安全的。所以我的问题是:这是某种已知的限制吗?如果是:这里允许的最大值是多少?如果没有:有什么错误吗?