开源改变世界

数字太多时 IJ 命令错误 #13

推推 grbl 2年前 (2023-01-21) 203次浏览

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

数字太多时 IJ 命令错误#13

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

注释

数字太多时 IJ 命令错误 #13

嗨,例如,运行时出现一个小问题:
G2 X58.28426395939086 Y21.850253807106597 I0.40609137055837563 J-4.482233502538071
这是来自 Partkam 在线程序的代码。太精确了,它会创建一个 arduino 重置。这只发生在 I 和 J 身上。

为了确定,我在将它发送到 grbl 之前通过运行验证脚本自己解决了这个问题。但也许 grbl 应该默认限制/四舍五入这些数字?

数字太多时 IJ 命令错误 #13
成员

我会调查的。它不应该重置,但它肯定会阻塞这些线路,因为它会溢出命令输入缓冲区。通过即时截断过于精确的数字来预处理输入是一个好主意。

数字太多时 IJ 命令错误 #13

我在包含过长注释(59 个字符的行)的 g 代码文件中看到了类似的行为。Arduino / grbl 稍后将一些行重置为文件的处理。一旦缓冲区溢出和内存损坏,重置就不足为奇了。

数字太多时 IJ 命令错误 #13
成员

我会看看是否可以在堆栈的早期添加过长浮点数的在线截断。此外,在缓冲区溢出时进行一些更优雅的错误处理可能会很好。

喜欢 (0)