开源改变世界!!

G2 和 G3 错误。 #897

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

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

G2 和 G3 错误。#897

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

注释

G2 和 G3 错误。 #897

我已经创建了自己的 cad cam 软件,它在很大程度上非常好!但是,在使用 G2 和 G3 命令时,我遇到了一些故障。我收到了很多 ID:33 无效目标。因此,我查看了 grbl 代码,发现了几个产生错误的实例,并为它们创建了每个唯一的错误 ID,以尝试帮助诊断错误的原因。

// Compute difference between current location and target radii for final error-checks. float delta_r = fabs(target_r-gc_block.values.r); if (delta_r > 0.005) { if (delta_r > 0.5) { FAIL(STATUS_GC0DE_RADIUS_39); } // [Arc definition error] > 0.5mm if (delta_r > (0.001*gc_block.values.r)) { FAIL(STATUS_GC0DE_RADIUS_40); } // [Arc definition error] > 0.005mm AND 0.1% radius }

该部分来自 gcode.c 的第 797 行

我似乎从上面的代码中得到了更多错误 39,但我很难解释它们产生的原因。有人可以帮助我理解上述两个错误,以便改进我的代码吗?

谢谢

G2 和 G3 错误。 #897
成员

@timryder: 请看G2/3 上的linuxcnc 说明。它描述了要检查的失败案例。不幸的是,g 代码 G2/3 arc 命令在数学上非常糟糕。这意味着它对错误非常敏感。按有效数字更改单个值可能会导致它抛出错误。

G2 和 G3 错误。 #897
作者

@chamnit: 谢谢会做。您建议使用 IKJ 功能还是依赖半径格式更稳定。

G2 和 G3 错误。 #897
成员

@timryder:仅使用 IJK 偏移弧。Radius 格式是迄今为止最严重的问题。IJK 偏移弧不太敏感,但也不完美。

喜欢 (0)