我看到您已经接受了一个答案,但根据您的评论,我认为您对该主题有一些误解,作为回答此问题的一部分,这些误解值得澄清。
0.2125 层高(+1/4 微步)并以绝对运动而不是相对强制的方式进行所有运动,因为目标高度为 0.2125 毫米(对于有效为 0.2 毫米的步进器)、0.425(0.4 )、0.675(对于步进器,取决于舍入或截断,0.6 或 0.7)、0.9(这里它们都是 0.9)等等。
听起来您的理解是步进驱动器正在“舍入”/“截断”到 0.1 毫米倍数的 Z 位置。也许这是基于 Ender 3 固件的 LCD 状态显示,它基于 Marlin 1.0 或该版本附近的东西,并显示当前坐标四舍五入或截断(我忘记了)到小数点后一位。这与实际机器的定位限制无关;这只是糟糕的用户界面设计。
实际固件位置从 gcode 中的浮点值转换为步进驱动器可以表示的最接近的步/微步。完整步长为 0.04 毫米,微步长为 0.0025 毫米(步长的 1/16)。所有这些位置在逻辑意义上都是“精确的”,但当然会受到机械部件的物理限制和微步精度的影响。关于微步精度的主题,您应该阅读微步的准确度如何?大多数(如果不是所有)Ender 3 型号都有 A4988 步进驱动器,这是该文章中评论的芯片之一。但重要的部分是整个步骤没有四舍五入/截断。相反,步进驱动程序正在尝试通过平衡在每个方向上拉动电机的磁场,将电机定位在整个步骤之间,目的是在两个相邻的完整步骤之间产生线性插值。它的效果如何取决于步进驱动器的质量和电机的负载。
回到您的测试,您 0.2125 毫米的层高不是一步加 1/4 微步。它是 5 步(5 * 0.04 毫米)加上 0.0125 毫米,即 5 个微步。这可能是一个不错的测试 - 5 是 1 mod 16,所以你最终会在 5、10、15、4、9、14、3、8、13、2、16 个周期的微步位置, 7、12、1、6 和 11 个微步对整个步进行调制。这非常接近 3 的周期,因此您可能会看到由于微步进精度不佳而导致的一些不规则性,每 3 层看起来是周期性的,或者您可能会看到它仅每 16 层(每 3.4 毫米)重复一次。但无论如何,我不会期望由此产生分层问题。我认为您问题中的照片背后存在另一个严重的挤压问题,您可能应该提出一个关于它可能是什么的新问题。