开源改变世界

grbl盾的细节 #134

推推 grbl 3年前 (2023-01-21) 125次浏览

关闭
ognop 打开了这个问题 2012 年 11 月 7 日 · 2 条评论
关闭

grbl盾的细节#134

ognop 打开了这个问题 2012 年 11 月 7 日 · 2 条评论

注释

grbl盾的细节 #134

大家好你们好,

我正在建造自己的数控钻孔机。到目前为止,机械师已经准备好了,现在我正在寻找一个很好的选择来驾驶它。
iv 一直在玩 L298,现在我从 pololu 得到了 A4988 盾牌。

代码是个问题所以….

到目前为止,我只是不理解一次一个地告诉步进器该做什么的版本。如果你想走 45° 线,我会告诉 stepper 1 做 1step,然后 stepper 2 做 1。
所以实际上没有时间 2 个步进器同时运行。

这与 grbl 盾牌有什么不同吗?

我的第二个问题:是否可以在没有 gcode 解释器的情况下将 grbl shield 用作驱动程序。我的意思是像从微控制器控制目录和步骤引脚。

最后一个(这个话题我不确定我是否已经理解了):

可以说我有一个 200steps/rev 的步进器,并采用 8 微步进模式。在这种情况下,我需要将引脚从低转为高,从高转为低 8*200=1600 次以执行一次旋转。
为了控制速度,我需要在这些之间有一个延迟,并且由于最小延迟是 0 毫秒,我需要 1.6 秒来执行一次旋转,达到 37 RPM,这似乎非常慢。
那么我没有得到什么或者我做错了什么?

谢谢

grbl盾的细节 #134

你应该注意到 grblshield 只是一个硬件接口,它与 grbl 本身(即代码)没有任何影响或联系。因此,grbl 在有或没有 grblshield 的情况下运行的方式没有什么不同,因为前者不知道后者的存在。

当然有可能,请参阅上一段 :-) grblshield 只是一个步进驱动器:它可以由在 Arduino 上运行的 grbl 控制,但不一定非得如此。

你对最小延迟是错误的。在 Arduino 硬件上运行时(即以 16MHz 运行的 ATmega328p) ,Arduino API 可能的最小延迟为 3 µs(参见delayMicroseconds())。ATmega328p 上一般可能的绝对最小延迟是执行一条指令所需的时间NOP,介于 50ns(以 20MHz 运行时)和 7.813 µs(运行看门狗 128kHz 振荡器时)之间。

Grbl 本身在驱动您的普通 DIY CNC 时使用大约 50-80 µs 的延迟。

希望这能解决一些问题,
Radu

grbl盾的细节 #134

Radu,感谢您对 grblShield 的澄清。至于计时,Synthetos grblShield 使用 Texas Instruments DRV881x 系列步进驱动器,它对快至 1 微秒的脉冲非常满意。所以 grbl 最小值 3 uSec 就可以了。

喜欢 (0)