开源改变世界

间隙补偿 #1489

推推 grbl 3年前 (2023-01-24) 241次浏览

打开
mkaluza 打开了这个问题 2019 年 1 月 6 日 · 6条评论
打开

间隙补偿#1489

mkaluza 打开了这个问题 2019 年 1 月 6 日 · 6条评论

注释

间隙补偿 #1489

只是把我的两分钱扔在这里。

首先 – 谢谢@chamnit 为了制作这个软件!它使建造业余数控系统变得轻而易举,而且非常便宜!你应该在某处有一座纪念碑(当然是数控铣削 :D)

至于强烈反对——我意识到 arduino 的内存很紧张——尤其是 Uno。但我认为实施反冲补偿的论据来自于职责划分:grbl,作为运动控制器并且最接近机器拥有(或应该拥有)最深入的了解。这包括任何不完美之处……所以当它被赋予一个应该绘制/铣削一个正方形的 gcode 时,它​​应该铣削一个正方形,一个圆应该产生一个圆等等。不是“圆圈,而是……”。我认为 gcode 标准 (ISO) 作为标准的意义在于,相同的 gcode 应该在不同的机器上产生相同的东西,设计师/cad 不应该关心特定机器的特性。我不是指“机器类型”,因为这里设计师/程序员应该关心,只是一个特定的单元。想象一下,您建造了两台相同的机器——或者至少您尝试过。它们不会完全相同 – 永远不会,特别是如果你是一个爱好者。他们每个人都应该有一种方法来弥补这一点,以便为他们生成的代码尽可能产生最相似的结果。

不要误会我的意思——我在这里并不是说“我是对的,你必须这样做”。我认为这只是一个容易实现的目标,几乎可以免费提高爱好者机器的准确性(我知道必须写,但它只有一次 – 然后可以被很多人使用)。因为它是给业余爱好者的,对吧?业余爱好者会产生不完美的设计……那么为什么不让它对业余爱好者更友好呢?

我知道人们总是可以升级他们的机器,但我认为这个论点是无效的 – 这通常会花费金钱和时间,所以如果他们可以花钱,他们可能会(我现在在这里为自己说话)。除此之外,这就是 uP 无处不在的原因 – 它们允许使用软件廉价地修复/改进原本昂贵/难以完成的事情。所以这是为了让他们的钱发挥最大的作用。

同样的论点适用于几何校正——我知道我的机器的轴不是完全垂直的,我知道我已经尽力了——如果我能做得更好,我会:)

我知道一些 CAD/CAM 可以做到这些,但此而已 – 它限制您只能使用那些可以做到的(来自已经非常有限的免费软件子集)。

现在寻求一些解决方案。
我是一名程序员,我可以提供帮助 – 我几乎完成了我的机器的构建,一旦我赶上了我已被搁置的余生,我将对其进行调整,反冲和几何形状都将是一个问题。我只需要一些指导从哪里开始。整个代码只有 7k+ 行,因此很快就能上手。

至于UNO限制我有两个想法:

  1. ifdefs – 可能使一些功能可选(可配置或硬编码),这些功能只能在 Mega 板上使用。我知道这需要仔细编码,但这是一个选择
  2. 如果你说“升级你的机器”,我会说“升级你的 uP”:) A​​liexpress 的 Arduino Mega clone 是 8 美元,uno 大约是 3 美元……这可能是机器中最便宜的商品之一……即使是一个现金非常有限的项目 5 美元不应该产生太大的差异(或原来的 +15 美元)。这将为代码提供8 倍的空间和4 倍的 ram/eeprom。额外的好处是更多的 I/O 引脚。没有其他任何一件事会给你每美元这么多的“时间”:D

我再说一遍——我不想强加给你任何东西,只是为了展开讨论。

PS
我完全同意不支持一些高级 gcode 功能,如循环、子例程等。这是 gcode 流媒体的责任(展开循环,从其他文件加载代码)。所以我不是一个“我想要一切”的人。

祝你有美好的一天 :)

间隙补偿 #1489

你好,马钦,

我看到你在 grbl-mega 上实现了反冲补偿,
你的 github 中的哪个分支处于最就绪状态?
我正在使用斜坡,我已经阅读了您的一些清理补丁,并且
在第一次阅读时它们很有意义。我不需要倾斜轴或 UVW 相对移动,
尽管似乎只实现了配置解析。

谢谢推荐

PS 我似乎无法通过mk@flex.pm与您联系(无 MX 记录)。

约瑟夫·韦塞利

间隙补偿 #1489

您好,我看到 README 提到了强烈反对,但我没有看到它被使用 – 您能提供一些贡献的描述吗?

先感谢您。

间隙补偿 #1489
作者

@jove1这么晚才回复很抱歉。你可以使用任何你想要的东西。Edge 更稳定,测试可能不是这样(但我正在使用那个分支并且它没有问题 – 有时我在更改提要覆盖时遇到问题,但这可能是我的机器,而不是代码)。
因此,您可以构建“edge”或“test”,或者在发布中使用预构建版本(它是从最新的“test”构建的,我使用的正是那个二进制文件)。
Skew 在两个分支中都实现了,参见mkaluza@ 562d7f8

@bwanamukubwa我不知道你在看哪里,用过是什么意思?在哪里?它只在我的回购协议中——上游拒绝使用它,所以我放弃了讨论。

间隙补偿 #1489

这是什么情况?我目前正在用 proxxon MF 70 构建一个小 CNC,它有可怕的反冲,并尝试确定使用 grbl 还是 marlin 更好(grbl 似乎更专注于 cnc,但 marlin 似乎有反冲补偿)

间隙补偿 #1489
109JB 评论了 2019 年 6 月 3 日  

我研究过使用 Marlin 进行 CNC 铣削,但出于多种原因我不喜欢 Marlin 用于铣床。不过,我确实在我的 3d 打印机上使用了 Marlin。

首先是因为他们随意使用了历史上用于其他目的的 G 代码来实现他们自己的新功能。没问题,毕竟这是他们的程序,但作为一名 CNC 机械师/程序员,我无法摆脱他们对历史上为其他事情保留的 g 代码的使用。我不知道他们为什么选择这样做,因为那里有很多未使用的整数可以用于他们的目的。G10、G28、G30、G33、G42 在 CNC 铣削世界中都有不同的含义,即使 Grbl 不支持其中的一些,Grbl 仍然忠实于它所使用的代码的历史用途。

我在 Marlin 中看不到任何工具高度功能。因此,如果您要完成一项以上的工具工作,那将很糟糕。除非我错了。

Marlin 只有 3 个实时命令,您必须启用“紧急解析器”才能使用它们。基本上,对铣削唯一真正有价值的是紧急停止。因此,您不能执行 Grbl 具有的进给保持、恢复、进给超控、主轴超控、快速超控、切换喷雾冷却剂、切换溢流冷却剂或切换主轴。

还有更多,但我现在想不起来了。

间隙补偿 #1489

这是什么情况?我目前正在用 proxxon MF 70 构建一个小 CNC,它有可怕的反冲,并尝试确定使用 grbl 还是 marlin 更好(grbl 似乎更专注于 cnc,但 marlin 似乎有反冲补偿)

通过拧紧末端轴承的螺母,我在 MF70 上得到 < 0.010mm 的反冲….

喜欢 (0)