开源改变世界

CoreXY 在 0.9 中可以使用吗? #957

推推 grbl 2年前 (2023-01-23) 189次浏览

关闭
elbowdonkey 打开了这个问题 2016 年 4 月 13 日 · 6条评论
关闭

CoreXY 在 0.9 中可以使用吗?#957

elbowdonkey 打开了这个问题 2016 年 4 月 13 日 · 6条评论

注释

CoreXY 在 0.9 中可以使用吗? #957

我有一个非常简单的设置 – 一个没有 z 轴的 corexy 绘图仪。目前也没有限位开关。

我在 中尝试了两种不同的归位设置config.h,包括:

#define HOMING_CYCLE_0 (1<<X_AXIS)
#define HOMING_CYCLE_1 (1<<Y_AXIS)
// #define HOMING_CYCLE_2
// ...
#define COREXY

#define HOMING_CYCLE_0 (1<<X_AXIS)|(1<<Y_AXIS)
// #define HOMING_CYCLE_2
// ...
#define COREXY

无论设置如何,机器的行为都像标准的 XY 机器人。

我错过了什么?

编辑:忘记提及我已经在 0.9i 以及边缘分支上尝试了这些设置,结果相同。

CoreXY 在 0.9 中可以使用吗? #957

我有一个类似的问题,我在 config.h 文件中修改了归位周期,但似乎什么也没发生。这是因为我编辑了错误的 config.h 文件。将库添加到 Arduino IDE 后,它创建了源的新副本并将其放入 ~/Arduino/libraries/grbl/

此外,这是我的工作 2 轴归位周期:
#define HOMING_CYCLE_0 ((1<<X_AXIS)|(1<<Y_AXIS))

最后,您没有任何限位开关 – 因此机器无法回家。您是否关闭了 $22=1 的归位?

CoreXY 在 0.9 中可以使用吗? #957
作者

我很确定我正在修改正确的代码。我会确保我没有机会编辑错误的文件并再试一次。

关于归巢 – 我也会仔细检查。但这并不$22=1意味着“打开归位周期”吗?

我想到了另一个想法 – 如果我的步进器没有朝着正确的方向前进,那么 CoreXY 显然不会正常工作。我必须设置方向的各种排列,看看会产生什么影响。

CoreXY 在 0.9 中可以使用吗? #957

抱歉,我的错误,$22=0 会关闭。

CoreXY 在 0.9 中可以使用吗? #957
作者

这里仍然没有运气。

我验证了我的简单 CoreXY 绘图仪在机械上是正确的。

在使用 Arduino IDE(版本 1.6.7)编译和上传之前,我确认我正在编辑正确的文件。

以下是我采取的步骤,全部来自命令行(我在 OSX 上):

cd ~
rm -Rf ~/Documents/Arduino/libraries/grbl
mkdir grbl-tmp
cd grbl-tmp
git clone https://github.com/grbl/grbl.git

然后我打开 Arduino IDE (1.6.7),检查以确保没有 grbl 的示例,然后转到Sketch > Include Library > Add .ZIP Library...并导航到~/grbl-tmp/grbl/grbl然后单击Choose

我验证了 grbl 示例现在可用。

我使用外部编辑器。这意味着我可以这样做:

cd ~/Documents/Arduino/libraries/grbl
atom .

Atom 是我的编辑器。在 Atom 中,我打开了 examples/grblUpload/grblUpload.ino 文件并在最后一行添加了一条注释,说// Find me in the IDE.

我确认更改是在 IDE 中对 grblUpload Sketch 进行的。

然后我回到 Atom 并调整config.h为具有这些归位设置:

#define HOMING_CYCLE_0 ((1<<X_AXIS)|(1<<Y_AXIS))

并打开 COREXY:

#define COREXY

保存后,我检查以确保我的步进驱动器(Pololu A4988 载体)通过验证中定义cpu_map_atmega328p.h的引脚与我正在使用的引脚匹配来连接到我的 Arduino UNO 上的正确引脚。

然后我编译并上传到 Arduino。

确保归位已关闭 ( $22=0) 后,我运行了一些 G 代码命令:

G0 X3 Y0应该逆时针移动 X 和 Y 步进器,但只有 X 步进器旋转(顺时针)。
G0 X0 Y3应该逆时针移动 X 步进器,顺时针移动 Y 步进器,但只有 Y 步进器旋转(顺时针)。

$3被设置为0,所以我将它设置为$3=1。给定时G0 X3 Y0,X 步进器逆时针旋转。Y 步进器闲置。

$3=2和的类似故事$3=3(涵盖 XY 可能性,同时忽略 Z 轴)。

甚至在搞砸之前,$3很明显我不在 CoreXY 中。CoreXY 不会出现一次只有一个步进器移动的情况。

所以我又被难住了。我将深入研究代码,看看是否能找到任何东西。在此之前,我将加载一个简单的健全性检查测试来验证我的步进器是否正常工作。我将使用 AccelStepper 库加载一个简单的测试。

CoreXY 在 0.9 中可以使用吗? #957

CoreXY 与 0.9j 一起工作得很好。!!

这是我在 config.h
1 中所做的更改。

在下面两行中添加“//”以禁用。

//#define HOMING_CYCLE_0 (1<<Z_AXIS) // 要求:首先移动 Z 以清除工作空间。
//#define HOMING_CYCLE_1 ((1<<X_AXIS)|(1<<Y_AXIS)) // 可选:然后同时移动 X、Y。

取消注释这两行
#define HOMING_CYCLE_0 (1<<X_AXIS) // COREXY specific
#define HOMING_CYCLE_1 (1<<Y_AXIS) // COREXY specific

并取消注释最后一行:
#define COREXY // 默认禁用。取消注释以启用。

编译上传。

您可能需要检查连接步进电机的电缆,以确保 X 和 Y 方向正确。

CoreXY 在 0.9 中可以使用吗? #957

你好,我改变了这些线,但机器同时在 X 和 Y 中归位。当你按下 X 或 Y 开关时归位将停止。归位不会继续到下一个轴。

喜欢 (0)