开源改变世界

配置文件中的错误(不是错误) #1540

推推 grbl 3年前 (2023-02-03) 263次浏览
打开
LittlePierre 打开了这个问题 2021 年 2 月 14 日 · 8条评论
打开

配置文件中的错误(不是错误)#1540

LittlePierre 打开了这个问题 2021 年 2 月 14 日 · 8条评论

评论

配置文件中的错误(不是错误) #1540
贡献者

正如#1536中所讨论的,配置文件函数中存在一个错误
为了重现,它出现在此处profile_bug.ngc.txt的外部路径的外部配置文件中
配置文件中的错误(不是错误) #1540

配置文件中的错误(不是错误) #1540
合作者

幸运的是,使用您的插件进行配置文件时似乎不会发生这种情况。

配置文件中的错误(不是错误) #1540
贡献者作者

我已经分析了代码和文件

清理了上一个示例的 gcode

g0 z3
g0 x103.0738 y-15.2312
g0 z0
g2 x100.8334 y-17.5288 i-2.297326 j-0.000979 z0 f300
g1 x2.8371 y-17.5285 z0
g2 x0.6078 y-15.2312 i0.067341 j2.295654 z0
g2 x1.272 y-1.2893 i43.312519 j4.923338 z0
g2 x2.9055 y-0.6078 i1.632867 j-1.615417 z0
g1 x100.8438 y-0.6088 z0
g2 x103.0738 y-2.9055 i-0.066699 j-2.29573 z0
g1 x103.0738 y-15.2312 z0

问题不是 gcode 中的代码
问题是当删除具有精度 offset/100.0
的 ZeroLength 段时偏移路径包含微小的段,这些段在应用
removeZeroLength时被删除

在 bpath.py 的第 1289 行中,在 offsetClean 函数中

		opath.removeZeroLength(abs(offset)/100.)

如果你改变这一行

		opath.removeZeroLength(abs(offset)/10000.)

问题消失了(在给定的 ngc 上用直径 5 位测试)

=> 不是错误,但也许我们应该考虑将 zeroLength Segments 设置为小于 offset/100.0 我不知道这样做的全部后果。

配置文件中的错误(不是错误) #1540 LittlePierre 更改了标题 配置文件中的错误(已确认) 配置文件中的错误(不是错误) 2021 年 2 月 14 日
配置文件中的错误(不是错误) #1540 Harvie 将此添加到 0.9.15里程碑 2021 年 2 月 15 日
配置文件中的错误(不是错误) #1540
合作者

在我的例子中是 abs(offset)/100。大约是 0.02 毫米…
但我仍然不明白这怎么会是个问题…

配置文件中的错误(不是错误) #1540
贡献者作者
小皮埃尔 评论了 2021 年 2 月 15 日  

这是因为偏移路径包含微小的元素
这是原始路径

	  0: LINE [103.0738, -15.2312] [103.0738, -2.9055] L:12.3257
	  1: CCW  [103.0738, -2.9055] [100.8438, -0.6088] C:[100.777, -2.90453] R:2.2967 Phi:[-0.024186..88.3358] L:3.54191
	  2: LINE [100.8438, -0.6088] [2.9055, -0.6078] L:97.9383
	  3: CCW  [2.9055, -0.6078] [1.272, -1.2893] C:[2.90487, -2.90472] R:2.29692 Phi:[89.9842..135.308] L:1.81697
	  4: CCW  [1.272, -1.2893] [0.6078, -15.2312] C:[43.9203, -10.3079] R:43.5914 Phi:[168.06..186.485] L:14.018
	  5: CCW  [0.6078, -15.2312] [2.8371, -17.5285] C:[2.90444, -15.2328] R:2.29664 Phi:[179.959..268.32] L:3.54185
	  6: LINE [2.8371, -17.5285] [100.8334, -17.5288] L:97.9963
	  7: CCW  [100.8334, -17.5288] [103.0738, -15.2312] C:[100.776, -15.2322] R:2.29733 Phi:[-88.5801..0.0244165] L:3.55268

和偏移路径

opath
块 [out,conventional,ccw]:

	  0: LINE [105.5737997729978, -15.230134631054636] [105.5738, -15.2312] **L:0.00106537**
	  1: LINE [105.5738, -15.2312] [105.5738, -2.9055] L:12.3257
	  2: LINE [105.5738, -2.9055] [105.57379977726207, -2.9065553149357717] **L:0.00105531**
	  3: CCW  [105.57379977726207, -2.9065553149357717] [100.91640312329129, 1.8901455349183482] C:[100.777, -2.90453] R:4.7967 Phi:[-0.024186..88.3358] L:7.39734
	  4: CCW  [100.91640312329129, 1.8901455349183482] [100.84382552627521, 1.8911999998696816] C:[100.844, -0.6088] R:2.5 Phi:[88.3358..89.9994] L:0.0725878
	  5: LINE [100.84382552627521, 1.8911999998696816] [2.905525526275215, 1.8921999998696815] L:97.9383
	  6: LINE [2.905525526275215, 1.8921999998696815] [2.90618818273605, 1.8921999052809024] L:0.000662656
	  7: CCW  [2.90618818273605, 1.8921999052809024] [-0.5052378713050394, 0.4689450195576075] C:[2.90487, -2.90472] R:4.79692 Phi:[89.9842..135.308] L:3.79458

它具有这些微小元素的原因是因为您在原始路径中的线段在它们应该的位置没有完全对齐。(圆弧与线段 0 和 2 的相邻线不相切)

配置文件中的错误(不是错误) #1540
贡献者作者

看这个例子 绿线是基本配置文件。它们没有完全对齐 红线是偏移轮廓。 蓝线是偏移轮廓中的一小段,在链接偏移路径时出现。
配置文件中的错误(不是错误) #1540

配置文件中的错误(不是错误) #1540
贡献者作者

这些小段的长度比 opath.removeZeroLength(abs(offset)/100) 低得多。
我建议使用 abs(offset)/100 000 的值。

配置文件中的错误(不是错误) #1540
合作者

我真的不喜欢增加这个的想法。它可能违背了首先拥有它的原因……
我的测试文件是由 bCNC 的 arcfit 功能生成的。也许我应该检查为什么它不够精确……

配置文件中的错误(不是错误) #1540
贡献者作者

是的,我认为这更合适

配置文件中的错误(不是错误) #1540 Harvie 修改了里程碑: 0.9.15 , 0.9.16 2021 年 2 月 24 日

免费注册 在 GitHub 上加入此对话。已有帐户? 登录评论
标签
还没有
项目

还没有

发展

没有分支机构或拉取请求

2名参加者
配置文件中的错误(不是错误) #1540配置文件中的错误(不是错误) #1540

喜欢 (0)