Pressure Advance Calibration
-
@deckingman At least with my rather low print acceleration it never got faster than 83.3mm/s (I need to tune this some day) but a simple calculation of 0.4mm extrusion width, 0.2mm layer height (as generated by the script) and 100mm/s print speed this would add up to 8mm³ of filament. IIRC a V6 is able to melt about 9-10mm³/s so this should be possible at least in theory (not taking into account any counter-pressure created by not extruding into thin air but "against" a surface).
-
@deckingman said in Pressure Advance Calibration:
I'd have thought with that test, that acceleration and instantaneous speed change (jerk) will play a big part in the results.
I've noticed the same. Jerk especially seems to have a effect. The higher the jerk value, the lower the pressure advance value I need.
In the back of my mind I've had an idea for a systematic tuning guide. What parameters to start with, and what order to proceed in, with example test models to use for consistency. Printer tuning can seem like a dark art, but really it's just a complex interactive system which so far has lacked a rigorous systematic approach to testing and verifying results. You've done more than most in experimenting and codifying the way the system interacts on your blog.
-
@phaedrux Yes I think it's best to tune everything else first - speeds, temperatures, acceleration, jerk etc until you get the best quality you can. Only then start playing around with pressure advance and other things. And only ever change one thing at a time (I'm not a fan of Taguchi methods). There are just too many interactions going on I've found. Oh, and make copious notes along the way.
-
For python noobs like me: I uploaded the script into a browser based python implementaition, and it outputs the gcode: http://www.skulpt.org/#
-
I just printed with this script two times, one with PA from 0 to 0.2, and one with PA from 0.1 to 0.3.
During the print I entered M572 a few times to see what the actual settings are, and I could see the values change. At the end of the second print the returned value was: M572 - Extruder pressure advance: 0.298, 0.000First: what is the second output: 0.000?
Second: I saw nothing in the print....really nothing. No gaps tearing or anything.My setup: CoreXY, E3d, Bondtech BMG, 650mm capricorn, Firmware 2.02RC1
-
@bartolomeus It is not gaps or tearing that you are looking for but the value where there is a consistent extrusion width.
-
@wilriker ok, but I still see nothing. All layers are identical, al columns in the print turned out exactly the same. Nothing like the pictures above.
-
@bartolomeus 650mm Bowden tube is long. Perhaps even higher values are needed.
The second value reported as zero may be from a second extruder that's defined but unused?
-
@bartolomeus That is interesting. My latest test can be seen here.
Regarding the second value: this is the one for the second extruder. If you did not explicitly tell RRF that there is only one (don't remember the exact command, it's the one where you assign motors to axes) then I guess it has the second extruder configured by default.
-
@phaedrux higher than 0.3? I went through my config to be sure, but there's no second extruder configured. I'll go over it again and then post my config.
-
-
@bartolomeus So you definitely need higher values. All layers are identical but all are identically bad. In my image at about a little above the middle layer that is how it should look like. One consistent extrusion width from left to right. No bumps.
-
@wilriker I'll give higher a go tomorrow.
My config: 0_1536956692480_config.g
-
@bartolomeus You don't have a
M584
command in your config to tell RRF that there is only one extruder (besides other things, check the documentation). That's probably why you get the value for the second (implicit) extruder. -
One thing I should add: in the script I changed min speed to 20.
-
Ok, so I had to increase PA to 1 to see a result. I really need to switch to direct drive.
-
Thanks to this great script! I ran it, and found 0.1s, which is the value I was using.
-
Thanks for the great script!!!
But I could not use it to set the pressure advance as all my layers look almost the same... Very very thick at the slower part and ok at the high speed parts. Against the light I can see some difference but nothing that can direct me to a decision.
The only thing I changed was the fast speed to 80mm/s and the center position. Maybe I am over extruding to start with?
Thanks!
What else should I check?
-
I'm confused by how y'all are trying to use this script / tuning technique. Are people trying to use pressure advance to eliminate the difference in extrusion flow between 100mm/s and 5mm/s? That should be done with non-linear extrusion, not pressure advance.
All hot ends extrude relatively less material (deviate from linearity between E axis travel and extruded filament volume) as the flow rate starts to approach the hot end's extrusion limit. This limit is largely a function of the nozzle size, and of the hot end's ability to transfer heat to the filament:
- PTFE-lined hot ends allow less heat flux and thus deviate from linearity at lower flow rates / print speeds. Insufficient heat flux = cooler extrusion = more viscosity.
- Higher extrusion rate = shorter residence time in the hot zone = less time for heat to transfer = cooler extrusion = more viscosity.
- Higher flow rate = more pressure drop at the nozzle.
etc.
There's a flow range where extrusion is very close to linear, and once you break out of that range, flow starts to deviate a lot. Basically as the back-pressure at the nozzle gets higher, the compressive force at the extruder gets higher, and the extruder drive loses travel because the hob bites squeeze closer together.
So, it's totally expected that the hot end will extrude less material at a very high print speed, and you SHOULD see differences at 100mm/s vs 5mm/s. That's why the non-linear extrusion feature was made -- to offset that.
Hot ends ALSO also have time lag / afterflow issues that specifically cause blobbing at corners, which is a largely unrelated issue. Flow lag is a transient effect that is only visible close to the speed change. This is primarily a matter of cumulative elasticity or "wind up" of all the components between the extruder motor and the nozzle:
- Torque/error response of the stepper motor
- Elastic shear of the drive hob bite zone
- Compression of the filament between the drive hob and melt pool
- Stretch of the bowden tube
- Bulk compression of the melt pool
(There there's more but I don't want to get into it right now.)
All this elasticity means the extruder system has to "wind up" when it starts extruding to build up full extrusion force (effectively losing some filament volume), and then has to "unwind" when it stops extruding (getting the lost filament volume back as afterflow). Pressure advance is supposed to compensate for that.
-
@brunofporto I had the same thing on my printer, with a long bowden (65cm) tube. I had to set a very high pressure advance to see any result. I think I needed about 0.9 to 1. Not a very desirable value, so I decided to switch to direct drive.