Welcome! Log In Create A New Profile


This is why you should not adapt single perimeter wall thickness by changing the extrusion / flow rate

Posted by docpayce 
Hey! I am not 100% on whether something like this has been discussed already, but I didn't find anything comparable. So I am eager to share:

It seems quite common in FDM 3D printing to calibrate single perimeter wall thickness by adapting the flow rate (extrusion multiplier), e.g. [www.thingiverse.com] or [wiki.solidoodle.com] and others. This is - in all honesty - plain stupid. In the following, I will first show why (sections 1-3) and then give you advice on what to do instead.

1. Calculating the wall thickness in single wall printing.
2. Comparing the result to reality.
3. Showing the impact of lowering the flow rate on the effective E-modulus (i.e. stiffness).
4. What to do instead.

1. Calculating the wall thickness in single wall printing
When printing a perimeter, the slicer software thinks you are printing a perfect rectangle with height h and width b (picture left hand side). This would (approximately) be true if that perimeter was printed inside already existing perimeters, i.e. to the left and to the right there are also perimeters printed. But for a single perimeter wall this is not the case. In reality, you will print a rectangle with two lobes attached to both edges. Let's assume these lobes are perfect semicircles (picture right hand side).

The slicer software will extrude as much filament to fill up the area A = b * h of the rectangle (extrusion width b, layer height h). In reality, the actual width will be bT (T for total), which is comprised of a reduced width bc (c for circles) and two times the radius of the semicircles, which happens to be the layer height h, so bT = bc + h. bc is calculated by rearranging the calculation of the area, which comprises both the reduced rectangle area (bc * h) and the two semicircles (pi * (h/2)^2).

The result shows that bT will always be a little bit bigger than the slicer software thinks - approximately 22% the layer height is added. To give numbers: With 0.40 mm extrusion width and 0.20 mm layer height set in software, you should expect a single wall perimeter thickness of 0.44 mm.

2. Comparing the result to reality
If you start to change your flow rate to match the measured width to the width set in software, you will end up with a value which should be close to tha calculation of b/bT. This will be close to 1/(1 + 0.22 h/b). Again, for 0.40 mm extrusion width and 0.20 mm layer height: b / bT = 91%. Please tell me how close I am to your actual results. smiling smiley For my own printer (Folger Tech Kossel 2020), this was spot on.

3. Showing the impact of lowering the flow rate on the effective E-modulus (i.e. stiffness)
Subtilte: Why would that be bad anyhow?
The impact of lowering the flow rate can be imagined by looking at the picture above: You are not putting one printed rectangle area to the next one, you are starting to put one rectangle with two lobes to the next one. I.e. two areas will only touch each other at the most outer regions of those lobes. To show the impact more clearly, I decided to mock up a Three Point Flexural Test ( [en.wikipedia.org] and for calculation of E-Modulus [de.wikipedia.org]).

Mine looked quite not as spectacular:

I printed out 4 probes with flow/ extrusion rates of 110%, 100%, 90% and 80% (layer width 0.40 mm, layer height 0.20 mm; 6 top/bottom layers = 1.2 mm thickness, 3 perimeters = 1.2 mm thickness). Afterwards I put them to the test (preforce 4.9 N or 0.5 kg; test force 9.8 N or 1 kg; support span 42 mm): I measured the probe width and height of every single probe (to adapt for varying width/height due to over- and underextrusion) and measured the deflection. With these values I calculated the resulting E-modulus, which is a measure for stiffness. I repeated the same procedure with rotating the measurement axis by 90°. The results are:

btw: The base stiffness of PLA is reported to be 3.5 GPa (see here). Naturally, these values are not reachable by a long shot.
But still: From 100% flow rate to 80% flow rate there is a significant dip in the stiffness, which by value is close to the actual flow rate (i.e. 90% flow rate = 90% E-modulus). Also, the E-modulus was higher for the force being applied perpendicular on the printed surface. Interestingly, with 110% flow rate, there was a significantly bigger E-modulus (increase to 120% to 140%). I can only guess that this is due to squeezing that extra bit of filament into the corners of the printed perimeters, leading to increased stiffness overall. Though it is to be noted that dimensions were out of whack (probe height and width increased by ~ 0.2 mm).

4. What to do instead
Easy: Accept the fact that there WILL be lobes attached to the outer edges of your print. And these lobes will be bigger, the bigger you layer height gets. So don't try to get rid of them by changing some arbitrary value such as flow rate, which controls much more important values, too. Instead, compensate for it from the beginning:
1. Calculate and/or measure the increase of width due to these lobes (e.g. using this thing: [www.thingiverse.com] or measuring by how much your walls tend to get to big).
2. Either precompensate for that increased width in your construction or use appropriate slicer software, which allows exactly that. I.e. Simplify3D: Goto the tab "Other" and find "Dimensional adjustments". There will be a field "Horizontal size compensation", which will compensate *exactly* for this issue. Just be sure to put in a negative value (i.e. -0.05 mm to get rid of 0.10 mm of wall thickness).

I do sincerely hope this helped you! Let me know what you think! And please share, so that this common misconception is gotten rid of finally. smiling smiley BR!

Edited 2 time(s). Last edit at 09/01/2016 09:11AM by docpayce.
Btw, also interesting, I think: When looking at some cross-section polishes, the issue comes to light pretty obvious:

I agree with you entirely - I have been telling people for well over a year that measuring the thickness of a single-wall print is not the right way to calibrate the extrusion factor.

Large delta printer [miscsolutions.wordpress.com], E3D tool changer, Robotdigg SCARA printer, Crane Quad and Ormerod

Disclosure: I design Duet electronics and work on RepRapFirmware, [duet3d.com].
Thanks Dave, much appreciated! smiling smiley
It was not clear at first that your first diagram showed the cross section of a single extrusion, but after I realized that it completely makes sense. Another great argument for small layer heights.

Edited 1 time(s). Last edit at 09/03/2016 05:22PM by n8bot.
I don't believe we do the single wall print+adjust flow rate to get rid of the lobes rather than to make sure they're the right size. I think we're going off of the assumption that the slicer is doing the math properly, displaying what the expected outcome is in the gcode file (Slic3r for example), and then adjusting our machines to achieve that. Again using Slic3r as an example, the developer has had conversations about this with nophead on his blog. It appears as though Slic3r 1.2.0 and newer doesn't use the rectangular calculation at all anymore.

With that assumption, with flow rate at 100 the machine should spit out the right amount of plastic at the right speed to match that math shouldn't it? I would think that if it spits out more plastic, those lobes would be bigger and thus the exterior perimeter and the part itself. I would also think opposite if it splits out less plastic, and even infill not touching perimeters and whatnot.

From what I understand, you're suggesting to print a calibration piece and then adjust steps per mm based off of it. Then shrink it in the slicer by the amount that the lobes are over sized?

Isn't that the same as measuring the moves of our carriages to make sure they move a set amount, say 100mm x 100mm. Then print something that size. Then use the slicer XY compensation to shrink grow it to the right size?

I'm not necessarily saying adjusting flow rate's the right thing. But wouldn't another school of thought be to make the lobes the right size rather than compensate for them?
FA-MAS, I am not 100% sure, whether I got your point correct, but I'll try:

- Make the lobes the right size rather than compensating: Well yes and no. The only way to adjust the size of the lobes is by changing layer height (in the assumption of perfect semicircles). So if you talk about adapting the lobes to get perfect geometries, you would have to go for really small layer heights.

- Change the XY compensation to shrink the part: If you talk about scaling, then clearly no, this is not the way to go. Not if you want parts to fit together. If the part is oversized due to the lobes, holes will be to small and pins will be to large. I.e. a 6 mm pin will not fit a 6 mm hole (at all). Scaling your geometry will be futile in such cases. Horizontal size compensation will both make holes bigger and pins smaller.

- About slicers not using rectangle geometry: Yeah, possible, but then again, you will loose stiffness, because effectively, you are only changing the (local) fill rate again. A fill rate equal to a rectangular plastic bead geometry does make a lot of sense if you are aiming for best stability of your part.

I hope I got everything right? If not, let me know.
I've set the current for my extruder stepper so low, that it skips steps rather than grind into the filament. My e-steps are spot on when extruding 100mm filament.
I made an single wall extrusion test and set extrusion width to 0.6mm with a 0.4mm nozzle. The outcome was a max. wall thickness of 0.5mm, but varied a lot with print speed and filament temperature.

So in real world, the calculations are a bit more complicated. And a slicer can only do basic calculations. Better call it assumptions?
I've learned to live with low precision parts, after all it's only FDM rapid prototyping. If I want exact parts, I look for a different way of producing them. ( SLA? )

What I've learned, from this elaborated thread, is: under extrusion leads to weak parts. smiling smiley and e-steps mustn't be calibrated by a single wall object.
I knew that before, now I know why thumbs up
Nice write up. I'm going to preach to the choir also by saying I've never measured single walled parts as a way of calibrating e-steps. I believe the method I use gives a pretty solid result. Some of FDM printing's shortcomings are best explained by the fact that slicers are essentially having to fit square pegs in round holes.

Simon Khoury

Co-founder of [www.precisionpiezo.co.uk] Accurate, repeatable, versatile Z-Probes
I've learned to live with low precision parts, after all it's only FDM rapid prototyping.

+1 on that. Amen.
if you assume the slicer thinks it's printing a perfect rectangle you might be right, but it doesn't, in fact different slicers treat this parameter differently, they can identify which of the extrusions will be external and which will be internal.. while i don't use SINGLE wall for calibration, surely a double wall or even a triple may compenate.

iv'e been having nozzle scratching the top of the model for some time now, and i suspect it might be due to over-extrusion.
Sorry, only registered users may post in this forum.

Click here to login