11
$\begingroup$

One thing I never understood is the so-called Extrusion Multiplier (EM) or Flow setting in slicers like Simplify3D (S3D) or CURA.

The description for this setting reads...

  • S3D: Multiplier for all extrusion movements (...)
  • CURA: The amount of material extruded is multiplied by this value. (...)

I always believed that this parameter is just an ugly way to fix an underlying miscalculation or misconfiguration, because using it feels like doing a calculation, getting the wrong result and "correcting" it afterwards by a multiplier - isn't that cheating?


But, recently I thought a bit harder about this setting, now I am not sure anymore. One of the main reasons is, that S3D suggests different values for the EM, depending on the type of plastics used, 0.9 for PLA and 1.0 for ABS.

This somehow implies that there is a physical property that justifies the EM, but I cannot think of one because 1 m feeded would lead to 1 m extruded - no matter what kind of platics used, right?

$\endgroup$
18
$\begingroup$

No, the Flow rate or Extrusion multiplier is to compensate for different materials and temperature ranges.

Where does the factor come from?

Let's say we calibrated our nozzle for work at 200°C with PLA, so 100 mm extrusion are correct and want to print ABS. ABS behaves differently and we get bad prints. What is wrong? Well, they do behave differently in the heat, and print at different temperatures. One easily noticeable difference between the two is the heat expansion coefficient.

Now, I had to scrounge through research papers and Material/Technical Data Sheets for PLA, so take that one with a grain of salt. But we can clearly compare the various plastics heat expansion coefficients:

  • PLA: $41 \frac{\text{µm}}{\text{m K}}$ a TDS
  • ABS: $72 \to 108 \frac{\text{µm}}{\text{m K}}$
  • Polycarbonate: $65 \to 70 \frac{\text{µm}}{\text{m K}}$
  • Polyamides (Nylons): $80 \to 110 \frac{\text{µm}}{\text{m K}}$

Those are just three randomly picked plastics that clearly are printable. If we heat one meter of them by one Kelvin, they'd expand by that length (a couple micrometer). We heat the later three printing materials to about 200-240 K over the room temperature (~220-260 °C), so we'd expect these the materials to expand by the following ranges:

  • PLA: 6.97 to 7.79 mm (1)
  • ABS: 14.4 to 25.92 mm (2)
  • Polycarbonate: 13 to 16.8 mm (2)
  • Polyamides (Nylons): 16 to 26.4 mm (2)

1 - using 170 K and 190 K temperature difference for its normal print temperature range of ca 190 to 200 °C
2 - first: low expansion at 200 K increase, then high expansion at 240 K

You have calibrated your printer for one of these values somewhere in there. And now you get a different filament that has a different color and a different blend or even you swap from PLA to ABS or switch from one brand to another - the result is: you get a different heat expansion coefficient somewhere in that range and you have almost no chance to know it. The heat expansion coefficient, in the end, has an effect on the pressure in the nozzle and this the speed the material leaves the nozzle, which impacts die swell and so the overall printing behavior.

Remember that heat expansion is not the only thing that is happening in the nozzle. Other big factors are for example the viscosity of the polymer at its printing temperature, its compressibility (which depends for example on chain length or embedded fillers), the geometry of the nozzle, the length of the melt zone... they all play a role in how exactly the print gets to come out.

We can sum all those up under a general "behavior in the nozzle" tag, and as a result one gets vastly different flow/extrusion multipliers, like the 0.9 for PLA/1 for ABS in Simplify3D.

Other Factors?

There are also other factors that play a role.

The distance between the extruder and the melt zone and how the filament behaves there are somewhat obvious: A ductile filament can bunch up some in a Bowden tube while in a direct drive there is much less space for that.

The extruder can have an influence depending on the geometry of the drive gear and how much it bites into the filament. The depth of the deformation is again dependant on the hardness of the filament and the geometry of the teeth. Tollo has a great explanation how this has an effect on the need to alter the extrusion multiplier.

gaining the factors

Most of these are determined by trial and error using a factor of 1 and dialing up manually until proper printing is achieved on the machine, then putting that factor back into the software.

As a side note: Ultimaker Cura has (in its filament database) the ability to save flow rates into each different filament, but does initialize all with 100 % default.

TL;DR

It is a way to adjust to the relative difference between the behavior of filaments (using one of your filaments as the calibration) and not cheating.

| improve this answer | |
$\endgroup$
  • 1
    $\begingroup$ this is a beautiful answer with useful information, but how does the expansion coefficient of filament matter? The extruder is operating on room temperature filament and is causing a certain volume (length times cross-sectional area) to be extruded. How the plastic expands or shrinks between the extruder and the output of the nozzle shouldn't affect the volume of plastic added to the model. $\endgroup$ – cmm Mar 22 '19 at 20:07
  • $\begingroup$ @cmm it won't impact the volume pushed into the meltzone, but the expansion and compressibility of the filament in the meltzone impact directly the pressure in the nozzle, which in turn impacts the die swell, and thus how the extruded plastic behaves. $\endgroup$ – Trish Mar 22 '19 at 20:46
  • $\begingroup$ There's great technical information in this answer but I don't think it draws the correct conclusion. Whatever the thermal expansion of the material is, as long as it goes back to the same original volume when it cools, the volume deposited is equal to the volume going through the extruder gear. Extruding more or less material is going to result in something that doesn't match the model. If you're lucky/slice it well, the mismatch will be interior to the object and won't matter. $\endgroup$ – R.. GitHub STOP HELPING ICE Jun 25 '19 at 0:15
6
$\begingroup$

In addition to the very detailed answers above, I would like to mention that the hardness of the filament plays a role too.

Most feeders are spring loaded, therefore it depends on the hardness of the filament how far the teeth of the driving gear do sink in. The deeper they sink in, the smaller the effective diameter of the driving gear becomes.

Therefore the E-steps/mm are not the same among ABS (~100 shore D) and PLA (~83 shore D).

This would lead to a higher value (of E-steps/mm) necessary for PLA as for ABS, contrary to the values mentioned in the OP (EM of 0.9 for PLA / EM of 1.0 for ABS), where the extrusion multiplier is higher for ABS than for PLA.

| improve this answer | |
$\endgroup$
  • $\begingroup$ in general this is right, but you might want to exchange one word: softness would be better called hardness, as in Mohs Hardness Scale $\endgroup$ – Trish Mar 2 '19 at 20:54
3
$\begingroup$

That's one way to look at it, I guess. I think a more accurate way is to consider it an "ad-hoc calibration" where one realizes that their printer isn't extruding enough/too much and the EM adjusts the flow to extrude the correct amount.

The underlying calculation, at least the main one, would be the steps/mm set in the firmware. If it's off, one fix is to figure out how much it is off by and change the EM to that. The better solution is to determine the actual steps/mm and flash the firmware so that the EM can be set to 1.

| improve this answer | |
$\endgroup$
  • $\begingroup$ Thanks for your answer! So how would you explain the difference between ABS (1.0) and PLA (0.9) then? $\endgroup$ – tollo Mar 1 '19 at 14:40
  • 1
    $\begingroup$ @FlorianDollinger no problem. As for the difference, Trish's answer definitely explains that. Welcome to 3D Printing.SE! :) $\endgroup$ – Lux Claridge Mar 1 '19 at 14:45
2
$\begingroup$

To address the 'cheating or not' aspect directly. There are several other parameters (steps/mm, nominal filament diameter) which have a direct equivalent impact on the end result (at least ignoring small 2nd order effects like the retract distances).

As a purist, you might argue that these could all be rolled up into a single calibration parameter in the slicer, and it is a waste to allow the user to pick how to manage the differences (but this is not a very modern UI approach).

The clearest reason for 'permitting' the use of extrusion multiplier is that during a print, extrusion multiplier is one parameter that can often be adjusted on the fly. If you end up needing to perform on the fly calibration, it absolutely makes sense to transfer this parameter from the machine to the slicer rather than perform the extra calculations to determine a new nominal filament diameter. It will probably be easier to remember a specific spool needing 95%, rather than 1.7nnn mm.

| improve this answer | |
$\endgroup$
0
$\begingroup$

The extrusion multiplier is just to compensate for amounts of flow. A material like PLA is very fluid when at 190-200C, so to extrude slightly less then 100% would reduce zits on the print, slightly increase tolerance, reduce stringing and also reduce risk of heatcreep. Materials like ABS and Nylon aren't as liquid when at temperature, so they don't require any alterations to the flow rate during printing. Flow rate can also be adjusted to improve first layers, although too much can cause "elephants foot", or too much first layer squish, similar to having your bed leveled too close.

| improve this answer | |
$\endgroup$
  • $\begingroup$ You might add to the answer by explaining how printing at lower temperature or higher temperature impacts it - you could print ABS at 220, 230 (standard) or 250 (very hot) $\endgroup$ – Trish Mar 2 '19 at 13:07

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.