关闭 timryder 打开了这个问题 2016 年 2 月 2 日 · 3条评论 关闭 G2 和 G3 错误。#897 timryder 打开了这个问题 2016 年 2 月 2 日 · 3条评论 注释 提姆莱德 评论了 2016 年 2 月 2 日 我已经创建了自己的 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,但我很难解释它们产生的原因。有人可以帮助我理解上述两个错误,以便改进我的代码吗? 谢谢 成员 香奈儿 评论了 2016 年 2 月 2 日 @timryder: 请看G2/3 上的linuxcnc 说明。它描述了要检查的失败案例。不幸的是,g 代码 G2/3 arc 命令在数学上非常糟糕。这意味着它对错误非常敏感。按有效数字更改单个值可能会导致它抛出错误。 作者 提姆莱德 评论了 2016 年 2 月 2 日 @chamnit: 谢谢会做。您建议使用 IKJ 功能还是依赖半径格式更稳定。 成员 香奈儿 评论了 2016 年 2 月 2 日 @timryder:仅使用 IJK 偏移弧。Radius 格式是迄今为止最严重的问题。IJK 偏移弧不太敏感,但也不完美。 timryder已完成 关闭 2016 年 2 月 3 日 喜欢 (0) 点动时报警:1个(归位后) #784 我认为您的连接方式不会在常规开关中转换它们。 您可以检查电压(因此接触)是否立即正确变化。 @FelisucoVFR #784 GRBL/UGS 问题,已知硬件可以工作,但没有运行 Grbl 的步进运动 XY 绘图仪 – 将 Word 文档转换为 GRBL 文件 grbl 随机在中间停止 Arduino Uno GRBL 问题 GRBL/UGS 问题,已知硬件可以工作,但没有运行 Grbl 的步进运动XY 绘图仪 – 将 Word 文档转换为 GRBL 文件grbl 随机在中间停止Arduino Uno GRBL 问题为什么这会“崩溃”我的 3018 CNCFusion 360 / Grbl – 最后毁掉了工作?!使用 Grbl Shield,必须采取哪些接地预防措施?GRBL 安装挑战(在 cnc 3018 pro 上)
我已经创建了自己的 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,但我很难解释它们产生的原因。有人可以帮助我理解上述两个错误,以便改进我的代码吗?
谢谢