October 14, 2017

"Fixed" the z-slop issue on my Fabrikator 2

So. I've finally worked out an extremely simple solution to the Z-slop issues I've had with my Fabrikator II.

The problem with the Z-axis is a combination of two issues with the printer.

  • The Z-backlash prevention mechanism is poorly designed
  • The Z-axis does not run smoothly and has to be forcefully pulled down by the Z-axis rod
The obvious solution would be to address those issues. And I have tried, but can't get the Z-axis to run smoothly enough.

What happens because of this is the there is a 0.2-0.4 mm slop in the Z-axis when it descends and then starts climbing again. This happens when the print starts (home, lift, descend to first position) and whenever a lift is done during the print. As an effect the printer will print 2 or 3 layers at the same height, causing the printer to print badly and the model to be of incorrect height.

So far I've only printed parts in the printer where the effects of this issue is not problematic. Which is quite limiting.

After a bit of googling gcode I realized I can solve the issue at the print start with only a bit of fiddling with the pre start gcode snippet. By default in Cura it looks something like this:

G28 ;Home
G1 Z15.0 F6000 ;Move the platform down 15mm
;Prime the extruder
G92 E0
G1 F200 E3
G92 E0

One of the important parts to notice here is the "move down" which on this printer is actually a "lift" part. It is when the printer comes down from this movement and starts moving up again that the problem will occur and the printer will put down multiple layers at the same height. So we can remove that line.

But the homing process will still have the same problem. The last movement of the homeing process is the Z-axis descending until the endstop swith is triggered. After this, the first 0.2-0.4mm of any up movement by the Z-axis stepper and rod will not result in movement of the print head. To counter this the entire build must offset to move the entire model up and prevent this initial slop.

This turned out easier than I expected. By using the G92 an axis position can be adjusted. This will introduce the offset needed and will effectively cause an initial lift of the given value. So I added this command as the last initial command before the print. The resulting Start Gcode now looks like this.

G28 ;Home
;G1 Z15.0 F6000 ;Move the platform down 15mm
;Prime the extruder
G92 E0
G1 F200 E3
G92 E0
;Set the Z-position with offset to counter fab2 z-backlash issue
G92 Z-0.2


This will cause my prints to turn out good and not need any further adjustments. The solution has two drawbacks.

  • The initial movement of the print head will traverse the bed at 0 height. This can cause issues, but might also wipe the nozzle. Which is not always a good thing if it happens at a less preferable location.
  • The print cannot contain any lifts. Prints that would benefit from lifts can still not be printer with this printer.
So. This solves my issue short term. But I should probably try to solve the mechanical issues as well to avoid this hack.









No comments :

Post a Comment