Contact me: hankecnc@gmail.com

QuadRap 支持(和一般的轴交换) #706

推推 grbl 3年前 (2023-02-06) 345次浏览
关闭
thinkyhead 打开了这个问题 2014 年 1 月 10 日 · 5 条评论
关闭

QuadRap 支持(和一般的轴交换)#706

thinkyhead 打开了这个问题 2014 年 1 月 10 日 · 5 条评论

评论

QuadRap 支持(和一般的轴交换) #706
成员

最近刚刚发布了一款名为“QuadRap”的新型 RepRap 打印机,它使用的电机排列方式略有不同。X 轴使用两个步进电机,而 Z 轴仅使用一个。因此,如果我们可以简单地交换“X”和“Z”轴,对于大多数电路板来说将是最简单的。然而,pins.h 不允许这种设置,除非通过直接编辑。

我不想专门为 QuadRap 添加设置,但我希望看到对非典型安排的更好支持,因为我们一直在看到更多此类安排。所以我建议为交换轴添加 Configuration.h(或 _adv)设置。它要么是一个单一的设置,例如“swap_axes”,您可以将其设置为“XZ”或“YZ”(甚至是“XY”、“XE1”、“YE1”等),或者更详细地说,一组布尔值SWAP_X_WITH_Z、SWAP_Y_WITH_Z 等设置。

在我着手实施之前,我会对有关此想法的任何反馈感兴趣。

QuadRap 支持(和一般的轴交换) #706

建议,而不是交换,映射会更有意义吗?

在 pins.h 中为每个板定义轴 1 到 n。

在步进器代码中引入轴名称 X、XX、Y、YY、Z、ZZ。

在 configuration.h 中,您可以将 X 映射到 axis1,Y 映射到 axis2,XX 映射到 axis3,Z 映射到 axis4,E0 映射到 axis5,ZZ 映射到 axis6 等

斯科蒂

2014 年 1 月 10 日上午 6:56,Scott Lahteine notifications@github.com写道:

最近刚刚发布了一款名为“QuadRap”的新型 RepRap 打印机,它使用的电机排列方式略有不同。X 轴使用两个步进电机,而 Z 轴仅使用一个。因此,如果我们可以简单地交换“X”和“Z”轴,对于大多数电路板来说将是最简单的。然而,pins.h 不允许这种设置,除非通过直接编辑。

我不想专门为 QuadRap 添加设置,但我希望看到对非典型安排的更好支持,因为我们一直在看到更多此类安排。所以我建议为交换轴添加 Configuration.h(或 adv)设置。它要么是一个单一的设置,例如“swapaxes”,您可以将其设置为“XZ”或“YZ”(甚至是“XY”、“XE1”、“YE1”等),或者更详细地说,一组布尔值SWAP_X_WITH_Z、SWAP_Y_WITH_Z 等设置。

在我着手实施之前,我会对有关此想法的任何反馈感兴趣。


直接回复此电子邮件或在 GitHub 上查看。

QuadRap 支持(和一般的轴交换) #706
成员作者

总的来说是个好主意,尽管我想尝试让它尽可能干净和可读。我喜欢继续在 pins.h 中指定步进器的想法,并在电路板上打印名称(几乎总是 X、Y、Z、E0、E1),然后在笛卡尔轴所在的配置中有一个点映射到步进器,例如 X_AXIS_STEPPER=STEPPER_X、Y_AXIS_STEPPER=STEPPER_Y 等。为简单起见,将枚举 STEPPER_n 值。这将允许笛卡尔轴的单点分配,不需要在板之间进行更改。

当然,目前存在名为 X_AXIS、Y_AXIS 等的枚举常量,其中包含每个轴方向的索引,但这些也用于端点,因此无法直接用赋值替换它们。但是,只要这些枚举常量专门用于指代步进器,它们就可以很容易地替换为 X_AXIS_STEPPER 等。

我需要仔细观察 pins.* 和 stepper.* 看看这个想法有多可行。无论如何,只需要再多一层间接寻址,您的想法听起来就非常接近理想了。

但是,有没有不这样命名步进电机的电路板呢?

QuadRap 支持(和一般的轴交换) #706
贡献者

既然我们已经同意硬件支持应该来自供应商,那么这个不应该关闭吗?

QuadRap 支持(和一般的轴交换) #706
贡献者

是的。