很早以前就已经把远端挤出机装好了,还是用的之前 Rostock Mini 的设计。上 m4 螺丝的时候手都要废了。最后想了一招,把强磁铁吸在内六角螺丝刀上,这样能够吸住螺母。

步进数的计算

设置挤出机的 AXIS_PER_UNIT. 这个数值是用来确定送料 1 个单位(一般是 1mm 时),挤出机的电机要转动多少步的。

我用的挤出机电机是普通的 NEMA17 1.8 度步进电机,配了齿比是 5.18:1 的行星齿轮。这样,挤出机的齿轮轴转动一周的时候,步进电机实际上要转动的步数是

\frac{360}{1.8}\times 16 \times 5.18

这里 16 是 A4988 控制芯片所允许的微步数,即通过控制芯片可以让步进电机再把1步分成16个分步(当然电机在这些分步的位置要想得到较高的扭矩必须更大的电流才可以)。

咬合齿轮的直径是 11.4 mm, 因此要想进1mm 的料,电机所转过的步数应该是

\frac{360\times 16\times 5.18}{1.8\times \pi\times 11.4} = 469.4

这就是挤出机的 AXIS_PER_UNIT. 设置好后更新 Marlin 固件。上机实验。在 Pronterface 里面直接输入下面的指令:

G1 E10 F200

这条G-Code命令可以让挤出机送 10mm 的料,后面 F200 是设置挤出速度的。注意,Marlin 中默认情况下是开启挤出头保护功能的,也就是说在挤出头不升到默认温度的情况下挤出机是不会工作的。默认温度可以设置,一般是170度以上。

看看挤出机齿轮有没有转动?转动的方向是否正确?如果不正确的话,可以把 RAMPS 板子上的排插转个方向接上。注意,G-Code 里面这个 E10 是进料的绝对长度,不是增量。我之前就没注意这一点,试验的时候一直用 E10, 还在想为什么挤出机转一次就不再转了 -_-b.

挤出机的标定

主要是看看当输入 E10 的时候,实际进料的长度是不是 10 毫米。如果不是的话需要在固件里调整这个参数。这个过程很简单,只要在进料开始之前和结束之后分别标记一下,然后测量两个标记之间的距离就可以了。幸运的是,我之前的测量都比较准确,所以进料的长度恰好是 10毫米。

下次就可以做平台的调平,然后装上特氟龙管开始打印了!