Nomar记录一段历史
如何使用软件和/或切片器设置新的归位位置而不更改硬件终点?

在提问之前,这是我的设置;

  • Prusa i3(带主板 Mks Gen v1.2)
  • Repetier 作为切片器
  • 马林源代码

我的主要任务是将我的 3D 打印机转换成巧克力打印机。我已经用巧克力挤出机替换了长丝挤出机。我的问题就是从那里开始的。因为,新的挤出机在归位时会稍微偏离 y 轴。它从标准的 20x20 厘米床中出来。其他 X 轴和 Z 轴正常。

所以,我已经使用了下面解释的#defines ,但我什至无法通过归位产生任何单个毫米差异。当打印机归位时,它们都会被忽略。它运行并停留在硬件终点并最终停在那里。

所有我想要的 Y 轴偏移 10 毫米。

从这个开始;

 // Travel limits after homing #define X_MAX_POS 200 #define X_MIN_POS 0 #define Y_MAX_POS 190 <<<< (tested with 190 and 210) #define Y_MIN_POS 0 #define Z_MAX_POS 200 #define Z_MIN_POS 0

还有这个;

 // The position of the homing switches #define MANUAL_HOME_POSITIONS // If defined, MANUAL_*_HOME_POS below will be used //Manual homing switch locations: // For deltabots this means top and center of the cartesian print volume. #define MANUAL_X_HOME_POS 0 #define MANUAL_Y_HOME_POS 10 <<< (tested with 10 or -10) #define MANUAL_Z_HOME_POS 0

我还使用了切片器工具 (Repetier)设置,其中提到了与归位相关的值,但也没有任何乐趣。

任何输入高度赞赏。

2个回答

Y-Max 设置没有帮助,因为它是轴另一端的软件终点挡块。

Y 原点位置也无济于事,因为它只会更改打印机到达原点位置时假定的坐标。这用于拥有最大端交换机的打印机(如 deltas)。

可以帮助的是在归位之后的一点 G 代码。归位是 G28。之后只需添加一个 G1Y10。这将使您的 Y 轴在归位后立即移动 10 毫米。因此,它将处于您想要的位置。如果随后添加 G92,则该位置将成为打印的起始位置。所以添加这两行应该可以解决它。 Cura 允许您编辑这些起始 G 代码,以便它随后将修改后的代码自动添加到您的所有打印件中。

您也可以尝试 G10(带有支持它的固件。

有关 G 代码的详细信息,请参阅: http : //reprap.org/wiki/Gcode

最后,这也是我的结论。我的意思是,软件结束并不是我真正想要的。但是,我并没有真正检查哪个 G-Code 可以为我做到这一点。现在,我知道了。
我正在考虑重新安装硬件末端挡块,以便如我所愿地回家。尽管如此,到目前为止我还没有玩过那么多 G-Codes。作为一种解决方案,它看起来也很有希望。但是,我从您的解释中了解到,Y 归位位置的 G 代码校正仅在您开始打印时处理,而不是在您启动或重置打印机时处理。它仍然会超出边界。如果发生这种情况,一些液态巧克力滴可能仍会从周边掉出。对吗?
准确地说,归位过程仍将移动到硬件限位器定义的归位位置。然后 G 代码修复了这个问题,但在每次移动时,它都会移动到关键位置,然后再返回。
非常感谢 Lars 和 Kamuro。这个解决方案绝对拯救了我的一天。但是,我想,最好是重新安装 Y 型止动件或将床的所有边缘都扩大 10 毫米。

现在我终于有时间研究这个,因为我知道它以某种方式存在,但不确定它是如何工作的:

使用 Marlin、Sprinter、Smoothie 或 RepRap Firmware 中的 M206 G 代码命令来偏移打印床相对于限位器的 0,0,0 坐标。

reprap.org 维基页面说:

参考轴时,指定的值将添加到停止位置。在归位后立即使用 G92(G28、G161)也可以实现相同的效果。

使用 Marlin 固件,可以使用 M500 命令将此值保存到 EEPROM。

一个类似的命令是 G10,对齐这两个有待讨论。

使用 Marlin 1.0.0 RC2,z 的负值会提升(!)您的打印头。

我们看到,这基本上与@LarsPoetter 建议的相同,但是它具有可以保存到 EEPROM 的巨大优势,因此您不需要每次都添加它或添加到每个不同的切片器中(如果我理解正确的话) , - 我自己还没试过)

让我们知道这是否适用于永久解决方案。

我最近离开了我的设置,但我肯定会尝试将 G 代码保存在 EEPROM 中,看看它有什么帮助。然后我肯定会在这里分享我的经验。
非常感谢@Kamuro。它工作正常。如果情况是 Marlin 的末端挡块,我相信重新安装末端挡块是最好的选择。

随机文章