Y axis layer shifts caused by hot end hitting the print
I've been trying to print a large cylinder but keep failing due to y axis layer shifts. To fix it, I've been gradually tightening the y axis belt. But that hasn't solved it yet.
At least a couple of times now, I've heard a loud whack! and then arrived at the printer in time to see that a shift has just occurred. So it appears that what is happening is that a large non-printing movement moves the head at great speed, then it hits the print. Specifically, because I'm printing a cylinder, the printer sometimes crosses through the open middle at great speed, then hits the inner cylinder wall on the other side.
So this insight raises a number of questions and possible fixes:
1. What happens during a fast, horizontal, non-printing movement that causes the MK3S to change Z height enough to hit the print?
2. Is there a way to tell the PrusaSlicer (2.0) not to do fast jumps across the prints? That is, to choose a longer, slower path over already printed areas?
3. There are many potentially relevant settings on the Speed tab of Printer Settings in PrusaSlicer. Which changes would you suggest to address this problem? "Non-print moves/Travel" looks right. Which of the Accelerations would apply to non-print moves? "Default"?
4. Other suggestions?
[Correction: It's PrusaSlicer v2.1.0+]
During normal printing the nozzle can't contact the part. When a part is deforming due to warp or curl, the part can rise up into the nozzle path, and short of experience and planning accordingly, there is no good way to predict this.
Thus, watching for warp and curl and reslicing to prevent the curl and warp is needed. It's also been my experience some parts need hand-holding to prevent curl from interfering. Slowing down infill print speed is one way if small sections of infill are being laid down instead of a full complete layer; reducing the cooling fan speed is another method that helps. Even increasing inter-layer cooling times. For large part warp higher bed temps can help, and an enclosure is also a solution, especially for high warp plastics like PETG and ABS - but even PLA warps.
Thanks, tim-m30. I'm guessing it's not warp because the part is solidly contacting the print surface. I see no gaps there. Can it warp higher up in the print? In this case, it builds an in-filled cylinder and appears level throughout. I suppose it wouldn't take much deformation to reach up into the hot-end path.
Also, success! I noticed that in the Prusa-supplied settings, "Non-print moves/Travel" was changed to 180 mm/s from the default 130 mm/s. So I changed it back to 130. It worked! No shifts.
Changing from 180 to 130 changed the build time from 12:54:03 (Normal) to 12:52:46 (Normal). So a negligible change. I'm guessing that it's because the acceleration limits mean that it reaches that speed limit only for very short periods, even it there are several large movements per level.
I'll keep watching for this issue. BTW, tim-m30, I think my next step would be to try your Z-lift suggestion. Good idea.
So finally, a question remains of why this is happening? I speculate that the command to lift the head and the command to move fast occur simultaneously. The jump up 'rings' or bounces around the desired new height. The move distances in my print are the same over many levels. So by chance, one of the movements reaches the other side of the print at the moment the bouncing head is below the desired height, low enough to hit the print. If that's correct, then slowing the Travel max speed gives the ringing transient more time to fade away.
If slowing the move speeds down helps, there are two ideas to look for:
1) curl: this happens when a section of infill isn't well supported and has differential cooling that results in small areas warping; an edge curls upwards and gets high enough to snag the nozzle as it goes by. Slower speeds limit the impact and related currents to move past the obstruction so they aren't detected as a crash.
2) bearing friction: travel loads at higher speeds cause motor currents to be detected as a crash.
3) actual crash: when either of the above causes the motor to actually stall and miss steps.