Klipper3d / klipper

Klipper is a 3d-printer firmware
GNU General Public License v3.0
9.42k stars 5.31k forks source link

Bowden Extruder, Pressure Advance Bulge After 90 Degree Cornering Move #3726

Closed Nyshan closed 3 years ago

Nyshan commented 3 years ago

I've been running back and forth on this issue for close to two weeks now with very little improvement seen so far. My problem is basically an exact copy of the behaviour detailed in this issue: https://github.com/KevinOConnor/klipper/issues/1260#issuecomment-464094072 and I've found that using the listed "solution" here: https://github.com/KevinOConnor/klipper/issues/1260#issuecomment-465647421 seems to provide better cornering but there are still bulges, albeit somewhat less pronounced.

I can provide more pictures in a few hours to better show the specific problems I'm seeing.

extruder: Mobius 4 (TMC2209@1.1A, MT-1704HSM168RE) default max XYE acceleration: 4000 default max velocity: 200 default square corner velocity: 5 default PA value: Tested values between 0.50-0.70 with same results until corners begin to rapidly deteriorate after 0.7

Printing speed: 120mms (minimum layer time, acceleration control, and volumetric flow rate limit disabled)

Nozzle: 0.4mm Retract Speed: 40 Retract Distance: 4mm (I've run values up and down between 2-4) Unretract Speed: 40 Material: ABS Hotend: 250C

Please let me know what else I can provide in regards to this issue (I will provide pictures of Square Corner test with PA 0.0-1.0 as well as samples of cubes printed between PA 0.5-0.7 once I get off work.)

klipper-gitissuebot commented 3 years ago

Hi @Nyshan,

It did not look like there was a Klipper log file attached to this ticket. The log file has been engineered to answer common questions the Klipper developers have about the software and its environment (software version, hardware type, configuration, event timing, and hundreds of other questions).

Unfortunately, too many people have opened tickets without providing the log. That consumes developer time; time that would be better spent enhancing the software. If this ticket references an event that has occurred while running the software then the Klipper log must be attached to this ticket. Otherwise, this ticket will be automatically closed in a few days.

For information on obtaining the Klipper log file see: https://github.com/KevinOConnor/klipper/blob/master/docs/Contact.md

The log can still be attached to this ticket - just add a comment and attach the log to that comment.

Best regards, ~ Your friendly GitIssueBot

PS: I'm just an automated script, not a human being.

Sineos commented 3 years ago

Are you using a 0.4 nozzle and layer-height around 0.2?

Nyshan commented 3 years ago

Are you using a 0.4 nozzle?

Yes, I am. This shouldn't matter but I'll include it as well:

Retract Speed: 40 Retract Distance: 4mm (I've run values up and down between 2-4) Unretract Speed: 40 Material: ABS Hotend: 250C

Sineos commented 3 years ago

Well, with a 0.4 nozzle and layer-height >= 0.2 and 120 mm/s and accel 4000 you will never get reliable extrusion results. You are hitting the physical limits of the amount of molten plastics that can be pushed through a 0.4 opening.

Nyshan commented 3 years ago

That's only 9.6mm^3/s. The recommended volumetric flowrate for testing PA in klipper on an 0.4 nozzle (assuming 0.4 extrusion width, 0.3 layer height, 100mm/s) is around 12mm^3/s so I have trouble understanding why this would be an issue.

Sineos commented 3 years ago

Maybe for PLA you get away with this when increasing the nozzle temperature. But for ABS with 120 mm/s we are already reaching 14.4 mm^3/s (0.3 / 0.4 / 120). At least to my experience, filaments like ABS or ASA will start giving problems at around 8 to 10 mm^3/s.

YMMV

Nyshan commented 3 years ago

So if I slow down to 80-100mm/s you'll acknowledge the problem I'm reporting being related to something other than max volumetric flowrate?

Sineos commented 3 years ago

To acknowledge that Klipper's PA has a general issue, just because you are having issues, would be quite pretentious, don't you think?

My theory is quite simple:

So there is more pressure build up in the nozzle than the PA algorithm and/or the physical properties of your system can compensate in a very short time. This then leads to over-extrusion at the start of a new acceleration phase.

Nyshan commented 3 years ago

To acknowledge that Klipper's PA has a general issue, just because you are having issues, would be quite pretentious, don't you think?

My theory is quite simple:

  • Your acceleration is very high

  • Your extrusions settings are at the upper limit (possibly exceeding it) of what is physically possible

  • Your extruder is very powerful but also has a very high gear ratio (4:1?). This makes it difficult to quickly react on very fast changes

  • You are using a bowden, which introduces additional losses

So there is more pressure build up in the nozzle than the PA algorithm and/or the physical properties of your system can compensate in a very short time. This then leads to over-extrusion at the start of a new acceleration phase.

Sorry if I came off as a bit abrasive, that wasn't my intention, I've done a significant amount of testing with acceleration and speed that leads me to believe that it isn't related to my issue. With that said all of that testing has been disjointed and undocumented. My next few tests can involve speed and acceleration. Would reducing speeds and accels down to 80mm/s and 2000mm/s respectively be enough or would you prefer to see a further initial reduction?

Additionally I don't believe that PA has a "problem" I think that something (other than just volumetric flowrate alone) in my config/slicer/printer is probably causing the issue but I have yet to make any real progress with config/slicer settings.

Sineos commented 3 years ago

If you are fighting for every minute of print time, then I guess you will have to find your limits by iterating to the maximum possible. I do not know your printer and I'm not a 3D printing expert by any means but maybe you find something useful:

Good luck and if you find anything useful a feedback would be appreciated.

Sineos commented 3 years ago

Hmm, on a second thought....you are sure to issue SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 before starting the PA tuning? This should already set quite conservative limits.

Nyshan commented 3 years ago

On Tue, Jan 5, 2021 at 13:36 Sineos notifications@github.com wrote:

Hmm, on a second thought....you are sure to issue SET_VELOCITY_LIMIT SQUARE_CORNER_VELOCITY=1 ACCEL=500 before starting the PA tuning? This should already set quite conservative limits.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHub https://github.com/KevinOConnor/klipper/issues/3726#issuecomment-754884182, or unsubscribe https://github.com/notifications/unsubscribe-auth/AEOGOHT3Q5VJ4LIP5GBIEO3SYNZ5VANCNFSM4VTHFDRQ .

Yes, I'm issuing that command along with the tuning tower command. I can see differing results along the corners of the tower but I never really note a corner without a bulge before the corners begin to look like fillets.

Sineos commented 3 years ago

In my experience the range between bulges and fillets is quite small depending on the type of filament.

For reference, this is a PETG cube I printed yesterday:

PA
Nyshan commented 3 years ago

Are you running a 0.6mm nozzle?

Sineos commented 3 years ago

No, this currently is a 0.4 mm nozzle at 240 °C, but as I said, the extruder was already occasionally grinding (12 mm^3/s). For PETG or ASA I usually try to stay well below 10 mm^3/s.

Edit: At least for printing purposes. For tuning PA I guess it is acceptable. At least I'm quite happy with the final printing results. This material I'm currently printing at 60 mm/s for the perimeter and 70 mm/s for infill.

Nyshan commented 3 years ago

I'm almost wondering if I have a loose grub screw somewhere as I can't seem to achieve any improvement even at 0.85 PA on a capricorn bowden less than 20cm. I'm going to teardown my extruder just in case.

Edit2: To expand upon why I'm thinking my issues are unrelated to maximum volumetric flow. I'm using a TriangleLabs Dragon hotend at the upper limit of the printing temperature on my ABS this should get me close to the theoretical maximum flowrate potential on that hotend (around 15mm^3/s) which is supposedly higher than that of a standard V6.

edit: Ive reduced max_accel down to 2000 with max_accel_to_decel at the default (max_accel*0.5). 60mm/ retract speed, 30 detract, 2.25mm distance.

Nyshan commented 3 years ago

Mechanical issues with extruder build can be ruled out at this point.

Sineos commented 3 years ago

I'm out of ideas. Whereas the max flowrate IMO more depends on the nozzle diameter than on the melting capabilities of the hotend. I'm running a Mosquito Magnum myself and you can only push a certain amount through a 0.4 hole.

Have you tried if the effect is the same with a less demanding filament like PLA?

Nyshan commented 3 years ago

I'm out of ideas. Whereas the max flowrate IMO more depends on the nozzle diameter than on the melting capabilities of the hotend. I'm running a Mosquito Magnum myself and you can only push a certain amount through a 0.4 hole.

Have you tried if the effect is the same with a less demanding filament like

Slowing down perimeter speeds to 60 inner, 30 outer shows a drastic improvement in PA performance; corners actually start to develop noticeable edges. So, as you previously implied, maybe I'm printing too damn fast... I am interested to see if the same behavior I've seen in my bowden at high speeds is also demonstrated in a geared direct drive system.

klipper-gitissuebot commented 3 years ago

It appears the Klipper log file was not provided. I'm closing this now, sorry. Feel free to attach the log to this ticket sometime in the future, or create a new issue once you can provide the log file.