开源改变世界

G代码 #50

推推 grbl 3年前 (2023-02-10) 381次浏览
关闭
emre-ee 开启了这个issue 2020 年 11 月 30 日 · 4条评论
关闭

G代码#50

emre-ee 开启了这个issue 2020 年 11 月 30 日 · 4条评论

评论

G代码 #50

嗨,
我叫埃姆雷。我正在从事数控机床项目。我有个问题。我正在使用 grbl 库。此外,我在编码器中添加了它,我可以将编码器的位置信息与步进电机的位置信息进行比较。但是,如果电机没有到达所需位置,我想自己用代码移动它。我知道如何从串行终端移动。如何编写移动代码?由于我使用的是Arduino,我无法完全理解代码的运行,因为我无法调试代码。你能帮忙吗?

此致,
穆罕默德·埃姆雷·厄兹图尔克

G代码 #50

您好,
移动完成后(mc_line 或 mc_arc),您需要检查编码器偏移量,计算剩余距离并执行另一次移动以到达所需的编码器位置。但是您必须保存当前位置(在 grbl 中)并在移动后将其重置为该值,因此此修正移动不会更改位置。

G代码 #50
作者

嗨,
谢谢你的回答。我明白你说的。但是我不明白一件事。你能提供一些关于移动步进电机的功能的信息吗?

谢谢。

G代码 #50

stepper.c 中的 stepper_isr 生成脉冲以移动步进器。要移动到指定位置,最简单的方法是用新目标调用 mc_line(),其他一切由 grbl 完成。但它也会根据移动更新系统位置,这对于修正移动来说是不需要的。
最简单的方法是使用带编码器输入的步进驱动器,因此 grbl 不必处理这个问题。

但这里不是谈论这些事情的合适场所。你应该去专门的论坛问