开源改变世界

修改G20 & G21(单位为英寸/毫米)命令? #686

推推 grbl 3年前 (2023-01-22) 105次浏览

关闭
typ1 打开了这个问题 2015 年 5 月 8 日 · 6条评论
关闭

修改G20 & G21(单位为英寸/毫米)命令?#686

typ1 打开了这个问题 2015 年 5 月 8 日 · 6条评论

注释

修改G20 & G21(单位为英寸/毫米)命令? #686

大家好——
我正在做一个项目,我想为其使用相同的 gcode 文件,但具有两种不同的比例。我需要每隔几分钟更改一次这个比例因子,并且我计划让这台机器的多个实例运行数年。当我更改比例因子时,我通过修改 $100-102 设置(步数/毫米)想出了一些技巧。但是,这些设置被写入 EEPROM,就其可更改次数而言,其寿命有限。我有兴趣修改 grbl 源代码中的 G20 和 G21 命令,以便能够在两个自定义单位而不是英寸和毫米之间来回切换。关于如何做到这一点的任何想法?

修改G20 & G21(单位为英寸/毫米)命令? #686 typ1 更改了标题 修改G20 & G21(单位为英寸)命令? 修改G20 & G21(单位为英寸/毫米)命令? 2015 年 5 月 8 日
修改G20 & G21(单位为英寸/毫米)命令? #686

大家
好我正在看这个项目,但我想了解为驱动器创建 pwm 的功能背后的理论或数学思想。
实际上我看到有一个中断处理函数然后……
如何改变频率和步进电机的速度……我想看一些文件并研究项目是如何构建的
谢谢
沃尔特

修改G20 & G21(单位为英寸/毫米)命令? #686
成员

@typ1:是否存在无法生成另一组具有缩放值的 g 代码的问题?这可能会减少问题的发生。

改变 EEPROM 中的比例是可以的,但是你的快速速度和加速度都是按比例缩放的,可能会使你的电机停转,这取决于你如何缩放事物。顺便说一句,EEPROM 在发生故障前可以运行大约 1,000,000 个周期。这将需要几年、几年的时间。即使它很早就失败了,你也可以花几美元再买一个 DIP AVR328,然后把它放在你的 arduino 中。

我想您也可以更改 G20/21 比例。我认为它只需要 nut_bolts.h 中的毫米到英寸转换标量。但是我不能保证你这样做不会搞砸代码中的其他东西。

修改G20 & G21(单位为英寸/毫米)命令? #686

我的意思是我必须从 main.c 开始,然后遵循代码流……我在 stepper 中看到的只有一个 interpput 处理程序,实际上 gbrl 代码为步进电机驱动器生成方向和脉冲……

修改G20 & G21(单位为英寸/毫米)命令? #686
成员

@xwalter:这个线程是关于改变代码中的 G20/21 缩放而不是步骤生成。您张贴在错误的区域,但无论如何要回答您的问题,没有关于一切如何运作的官方文件。这将是对时间的巨大浪费,因为源不是那么大,而且有很好的文档记录。Stepper.c 是在那个 ISR 中发生所有步骤和方向执行的地方。

修改G20 & G21(单位为英寸/毫米)命令? #686

好的,谢谢先生 :)

修改G20 & G21(单位为英寸/毫米)命令? #686

而且,为了技术的完整性,我会注意到 G 代码中有一个命令(显然是非标准的,但大多数控制器制造商都有)可以进行缩放。由于 (a) 内存和 (b) 缺乏 FPU 约束,Grbl 没有实现它。

G50取消缩放
G51启用缩放给定XY,Z或当前位置(如果没有给定);通过IJ,K在每个相应的轴上或P在所有轴上

一些控制器有一个修改版本,其中缩放总是统一的(P在所有方向上)并且IJ,K是缩放原点并且必须始终给出并且必须始终是绝对的。

喜欢 (0)