开源改变世界!!

关于最高利率的问题 #901

推推 grbl 2年前 (2023-01-23) 55次浏览

关闭
timryder 打开了这个问题 2016 年 2 月 3 日 · 3条评论
关闭

关于最高利率的问题#901

timryder 打开了这个问题 2016 年 2 月 3 日 · 3条评论

注释

关于最高利率的问题 #901

我正在尝试做一个副项目,它允许我根据我创建的自定义 M 代码来缩放轴的最大速率。我逻辑上从另一个参数调用 settings_store_global_setting 函数来动态更改机器参数。它似乎在工作,除了时不时地当值变得太大时它似乎会炸毁 eeprom。也就是说,最后设置的设置是我的 Z 轴最大速率,然后当我在终端中执行 $$ 时,其余参数为空。如果我重置回默认设置,一切似乎又好了。

那么我可能会尝试设置一个太大而无法存储 eeprom 的值吗?

目前 112 美元(z 最大汇率)= 214748.3648。

这引出了我的问题,基于以 16MHz 运行的 atmega328p,Max_Rate 和 Max_Accel 的绝对最大设置是多少?

提前致谢

关于最高利率的问题 #901
成员

@timryder: 这个问题更多地与Grbl中的printFloat()函数有关。当我编写它时,Grbl 期望的所有有效浮点值的长度都将低于 10 个字符,包括“-”和小数点。这包括我认为可以在物理上实现的东西。您的 3.5 米/秒(215000 毫米/分钟)非常快。

对于设置值,默认打印小数点后 3 位。因此,它可以打印的最大有效数字为“999999.999”。由于您有 4 位小数,因此将其缩减为“99999.9999”。你超过了这个界限。

但是,我计划让这个 printFloat 故障更具指示性,因为它曾经出现过一次,当时用户不小心将最大行程值设置为 1000 米。

关于最高利率的问题 #901
作者

所以我最初的想法是,eeprom 全部存储为一堆字节,所以只要它可以保存在标准定义中,为什么最大设置真的很重要。IEEE Float 正确吗?

哪个会是 ~ 400 万的数量级?

关于最高利率的问题 #901
成员

@timryder:问题不是浮点值,而是将其转换为可读字符串的 printFloat 函数。为了节省闪存,我完全重写了 printFloat 函数,但我必须做出一些假设并删除一些标准错误检查。我认为它大约有数百个字节。

喜欢 (0)