Why the Anet A6 can't do .05 layer height
So like I sayed in the title, Why can't the Anet A6 do .05 layer height? I found that some printers can do .05 layer heights, but the Anet A6 can't? I am interested to know if it is the stepper motors or the threaded rods or something. Maybe this is something I can do a small "test print" on?
What size nozzle do you have? Some slicers don't support layer height larger than nozzle diameter.
@mac just going off the spec sheet. And I am slightly worried that if I tried I might screw something off. But the spec sheet say it can go as low as .1mm layer height, and I want to know why it can't go lower than that.
I'm not familiar with the Anet A6 specifically, but as many other things in a 3D printer, the minimum layer height is co-determined by a number of factors. For the Z-axis the factors I am aware of are:
- The number of steps in the stepper motor
- The geometry of the lead screw
- The tolerance with which the lead screw has been machined
- The microstep settings
- The quality of the stepper drivers
- The amount of play and flexibility of the X-axis gantry
- The ration between filament and nozzle diameter
- The precision of the extruder's stepper motor
Many printers that claim to have ridiculously low minimum Z-layer height do so by relying on the mathematical model only. It goes something like this: the lead screw has an offset of 1mm per revolution, the stepper motor makes 200 steps and is set for 32 microsteps per step so the minimum resolution should be...
1mm / (200 * 32) = 0.0002mm
The reality is however different. For example: the lead screw may have been machined with a tolerance of 0.002mm, so to make sure a layer has a thickness >0mm its heigh should be >0.004mm (20 times the theoretical limit computed with the microsteps). But to make sure layers have the same height ±10% you would need to increase the minimum layer heigh of an order of magnitude, bringing it to 0.04mm. A similar reasoning applies for the amount of play in the gantry, while the ratio between filament and nozzle influences the minimum volume of plastic that can be extruded per step (for very thin layers you want to be able to extrude a minimal amount of it).
At the end of the day this is a typical case of "a chain is only as strong as its weakest link": the minimum layer height of a printer is affected much more dramatically by the limitations of the most imprecise component in the printer than by the performance of its best one.
As for your question about breaking the printer by issuing g-code with very thin layers: should you issue gcode that requires layers below that limit, the firmware will simply print at the same z-height (see comments, credits to Tom).
I'm unaware of people having permanently damaged their machines by issuing code with too thin Z-layers. But given how the firmware operates, I'd expect the quality of the print to be negatively affected, the filament to be possibly chewed by the cobbed wheel and in extreme cases cloggig of the printer head.
`but my understanding is that manufacturers encode in the firmware a sensible minimum layer height, and the firmware itself has strategies to cope with gcode that requires layers below that limit (like throwing an error or simply ignoring some layers altogether).` This is incorrect. Firmware generally is *dumb*, and it will try to print the file you throw at it to the best of its abilities. A "0.1mm printer" will print a 0.05mm file just fine, but if you throw a file at it with layers thinner than the minimum Z-step, it will simply print over the previous layer without moving the Z-axis.
@TomvanderZanden - thank you for the correction! :) I modified the answer to reflect your input. Am I correct in thinking that in your second scenario the gantry will move up only when the delta between the _computed_ absolute Z position and the current _physical_ one will be above the minimum Z step? (e.g.: min z-step is 10, layers are 5 --> the gantry will move up every second layer, printing two layers on top of each other)
@mac Yes, that is what would happen. `manufacturers encode in the firmware a sensible minimum layer height` is still incorrect. The firmware doesn't know anything about layers. All it knows is that sending a single step pulse to the stepper driver will result in the Z-axis moving by 0.0xxxmm.