注释
|
我认为总体思路是永远不要遇到失去位置的问题。电机和驱动系统需要足够坚固以应对切削力。对于开环控制,如 Grbl,这是强制性的。对于闭环,这仍然是强制性的。在我看来,闭环控制只给你捕捉错误的能力。在适当大小的 CNC 系统中,错误将不存在或非常罕见。 |
|
这取决于您正在处理的闭环系统。一个合适的闭环系统会调整每个轴的速度,让你保持在你应该在的位置,当你落后时加速(最好是在足够小的范围内这样做,你不会注意到错误)如果你正在运行轴全速运行,您没有任何追赶的余量,但此时您运行机器的速度比您应该的要快。但是只要你有追赶的余量,闭环就更好了不要考虑步进电机与编码器的闭环,考虑直流(或 BLDC)电机与编码器的结合,它不是一个弥补错过的步骤的问题,一个不断调整速度的问题,让你在切入的那个点保持你想要的位置。
|
|
当然。这是处理它的一种方法。但是,如果您有一个考虑到所有这些因素的良好运动规划器,则不需要闭环控制。我个人见过超高科技、50 万美元的 3D 打印机,带有漂亮的闭环线性致动器。它就像你说的那样,但有一个非常糟糕的运动控制器。一台 800 美元的 Prusa 3D 打印机在打印质量和打印速度方面的表现要好一个数量级。 |
|
@davidelang你所描述的基本上是自适应进给率,不应该太远,因为已经有一个进给覆盖机制。我相信一些数控机床可以根据标称主轴负载和它可以在其中调整进给的范围来完成 |
|
这都是很好的谈话,@chamnit一台功能强大、设计精良、组装精良的机器不需要纠错,这是有道理的。我遭受了所有这些负面影响。我买不起精心设计的;我不知道我实际需要多少能量;而且我在正确组装方面很糟糕(或者看起来如此)。当我第一次阅读关于 cnc 食谱的这篇文章时,我确实将闭环系统浪漫化了:这里。当然,我浏览了那些非常技术性的东西,得出的结论是这就是我生活中所需要的。 |
|
将挂钩错误引脚以喂养 grbl 会这样做吗?取决于闭环驱动程序发回的内容。如果它是一个简单的低高信号,你可能可以摆脱它,甚至可以将它连接到一个限制引脚?2018-02-26 1:42 GMT+00:00 andrewismoody <notifications@github.com>:
|
|
闭环不仅用于纠正未对准的错误。它还用于调整电机控制器(即 PID)的设置。例如,让铣削中心垂直,工作台在 x 和 y 轴上移动。工作台的铸件、直线轴承和构成工作台的所有其他部件都具有已知质量。我们可以在组装机的开始阶段测量并设置 PID 参数,特别是为了移动那个质量。当我把 1kg 铝板放在桌子上时,质量变化不大。但当设定部分达到200kg时,质量发生明显变化。因此,电机电流可能太弱而无法正确加速和减速所有这些东西,这可能导致尺寸超限、共振等。电机控制器需要反馈来调节线圈电流。但是当驱动器无法到达指定位置时,应向运动规划器发送错误信号以暂停其他驱动器,直到迟到的驱动器到达位置或当误差大于设定的最大值时停止机器。这种情况甚至不考虑切削力,但当切削力存在时,情况就更复杂了。 笑话(来自一些关于编程机器的线程): |
|
此外,越来越多的智能驱动程序出现(感谢 TI),例如报告遗漏步骤的DRV8711 (分析 BEMF 和其他黑魔法) 在极少数错过步骤的情况下,您可以将 STALLn 硬接线到紧急停止(GRBL 重置?) 也许这是防止廉价系统上的步进器出现问题的一种方法。 |
|
@petmakris: 同意。这包括新 Prusa MK3 使用的 trinamic 驱动程序。它还感测线圈电流并使用它来检测限制,而不是使用开关。大多数这些新的智能驱动程序通过 SPI 进行通信,并且比仅支持一组错误引脚更好地使用宝贵的 IO 引脚。 |


闭环的问题(我是第一手发现的)是每个轴都是独立的。编码器确实注意到遗漏的步骤并对其进行补偿,但以时间为代价。正如您所想象的那样,并非所有轴都同时“绑定”——通常只有一个。这意味着一个轴略微落后于运动,而其他两个(或三个或其他)继续沿着他们快乐的方式前进,没有一个更明智。结果是主轴最终确实落在了正确的位置,到达那里所用的路径可能与计划的不同。考虑在 X 轴落后半秒的情况下进行 XY 移动。路径的角度将与预期角度有很大不同,因此会导致切割(或不切割)预期的材料。
希望看到 GRBL 支持闭环控制器(如 Smart Stepper 和 MechAduino)的反馈机制,以便编码器可以告诉控制器在纠正其位置时停止。
我曾考虑过将闭环编码器的“错误”引脚连接到进给保持引脚,但我不知道这是否完全符合我的要求(当错误引脚恢复时,进给保持会被移除吗?)。而且我不是 EE,所以我真的不知道如何确定将信号“转换”为兼容所需的条件。
感觉它需要成为 GRBL 的“支持功能”才能真正正常工作。