forked from prusa3d/PrusaSlicer
-
-
Notifications
You must be signed in to change notification settings - Fork 527
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Volumetric Cooling [FEATURE REQUEST] #3367
Comments
supermerill
added a commit
that referenced
this issue
Nov 14, 2023
. now easier to add new control and do complicate stuff in the cooling buffer. . less overall number of lines of code for better results. . add 6 new fan control. . now if the disable_fan_first_layers is at 0 and full_fan_speed_layer at more than 1, the first layer has some fan speed. . updated fan speeds that cannot be increased even with low layer time (top solid, ironing, support, support interface) . updated fan speeds that cannot be reduced by full_fan_speed_layer (bridge, infill bridge, overhangs, support interface) . updated extrusion speed that can't be reduced (overhang, bridge) . updated extrusion speed that shouldn't be reduced if possible (external, ironing, infill bridge, thin wall, support interface) . better name for CoolingBuffer::process_layer variables #3735 #3608 #3568 #3415 #3408 #3380 #3367 #3361 #3271 #3152 #2872 #2696 #2419 #2326
legend069
pushed a commit
to legend069/SuperSlicer
that referenced
this issue
Nov 19, 2023
. now easier to add new control and do complicate stuff in the cooling buffer. . less overall number of lines of code for better results. . add 6 new fan control. . now if the disable_fan_first_layers is at 0 and full_fan_speed_layer at more than 1, the first layer has some fan speed. . updated fan speeds that cannot be increased even with low layer time (top solid, ironing, support, support interface) . updated fan speeds that cannot be reduced by full_fan_speed_layer (bridge, infill bridge, overhangs, support interface) . updated extrusion speed that can't be reduced (overhang, bridge) . updated extrusion speed that shouldn't be reduced if possible (external, ironing, infill bridge, thin wall, support interface) . better name for CoolingBuffer::process_layer variables supermerill#3735 supermerill#3608 supermerill#3568 supermerill#3415 supermerill#3408 supermerill#3380 supermerill#3367 supermerill#3361 supermerill#3271 supermerill#3152 supermerill#2872 supermerill#2696 supermerill#2419 supermerill#2326
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Too much cooling leads to poor layer adhesion, too low cooling equal bad overhangs up to deformed/failed prints.
Slicers have usually 5 variables affecting cooling:
-Default fan speed;
-Chamber temperature;
-Short layer time/max fan speed;
-Volumetric speed/how much material is deposited in a certain amount of time;
-Minimum layer time/speed slowdown if reached.
One way is printing in an heated chamber near TG with a very powerful cooling, then run cooling to the max until the heat from the deposited material is to much to overheat the print, unfortunately it's not something everybody have access to.
Balancing 5 variables is pretty hard to dial in on the pursuit of the maximum achievable speed/quality/strenght.
One "simple" way to eliminate the majority of those variable and make dialing in much easier is to implement some sort of "volumetric cooling":
-Take the total volume of the plastic extruded in a layer;
-Divide it by the layer time;
-Eventually take into account the area covered by the extrusion (low infill for instance are less dense and also easier to cool down) and divide by that;
-Obtain a "K" value wich represents the heat trasnferred per layer to the print;
-Perform a test using an object wich have a linear decreasing section along Z, so linearly will decrease layer time, must have overhangs but that don't exceed the limit to be treated as bridges, a pretty large base and a small top;
-Stabilize chamber temp and print the part at the maximum speed you aim to reach, remove cooling, remove minimum layer time, observe the minimum sectional area that do not present overheating, chack slicer and K valuer for that height, you have "minimum uncooled K value";
-Reprint with 100% cooling, same other settings, observe when it starts to deform, this is your minimum sectional area that do present overheating, you have "minimum cooled K value".
Once you have this values you can make the following easy to adjust settings:
-0% fan layer time Is your "minimum uncooled K value"
-100% fan layer time "minimum cooled K value" (this will also be your minimum layer time);
The fan speed will follow the variation in K value from 0 to 100%, once reached 10% speed/volumetric speed will eventually decrease keeping the right "minimum cooled K vlaue".
This should result in almost an everytime perfect cooling giving everyone the ability to reach the maximum speed and maximum layer adhesion his printer/chamber is capable of, hereafter an example of a print test.
Thanks for all your effort,
Lorenzo
The text was updated successfully, but these errors were encountered: