-
-
Notifications
You must be signed in to change notification settings - Fork 1.4k
Improve flow rate calibration: use ipArchimedeanChords pattern for flow rate calibration #8993
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
Conversation
Wouldn't concentric be a better choice by eliminating the PA and small area flow issues commonly found at the edges of the top surface? This chord pattern will still have those same issues, which seem the be the biggest confusions people have. |
In all flow rate tests generated by OrcaSlicer, edge regions should always be discarded as irrelevant. One should only check the center area. |
Ok, thats very cool (and I just said it out loud in a voice call) There are some filaments that are a PITA to calibrate, I REALLY wanna give this a spin, hopefully I get a chance but sadly not till Sunday night/Next week, watching this PR with interest. |
would changing the top surface to archimedeanchords manually in the objects tab exactly replicate this? Or is there something more in the background where i should merge this PR to get the full results? |
So then what benefit does the change actually give? I am not seeing it in the examples; looks equally easy to decipher to me either way. |
Yes, that’s essentially the change this PR introduces. You can manually modify the settings to test it. |
Why only top surface? Cool idea, nevertheless. |
Actually, was the change validated against the old infill? I ask because if you think about it, the closer to the centre the tighter the curvature radius is, so that it might very well be that the printer reduces the print speed. This should be checked, since flow multiplier is speed dependent already at quite low speeds (no time to dig it up, but I saw graph with various recent high speed printers already deviating at 8 mm3/s). Since the goal of this PR is to have the largest surface without change of flow/speed, wouldn't it be "safer" to simply use left/right infill for the top surface? instead of 45° as it is now. The artefacts due to the print head reaching the set speed would be limited to a small area on either side, and long straight lines would be used for most of the surface. And no risks of a printer slowing down near the centre. |
It should not be problem, because the helix should be printed from the center, but the most important thing is the last round of the helix, where it have to fit into the one line space (as described in the issue). That's what makes the biggest difference compared to simple line infill, where you will never the right flow so easily. Also if speed really affect the flow that bad way, you would never be able to calibrate the flow, no matter what pattern you select. |
Still, a validation of some kind should take place. Also, the spiral must start from the centre, can that be ensured without people having to check each time? |
Indeed classic should be used, since we want to have predictable line width. |
How about making the entire test Part round, so we have no problems with starting Point and prints faster? |
Well it would at least allow a smaller test part, with just five or so arcs on each of the two sides, before the concentric region begins. |
Good point, that should be possible. Though I wonder if it will make it more accurate to let the "test" part far away from the edges. |
Another idea is to have a test part which is just circular, as long as it's large enough and it can be predictably started from the center. The outer part is not needed. The idea of this calibration is:
Well, if the flow is excessive, a large enough, centre-starting spiral will at a certain point be offset so much that it will be perfectly flat, until the spiral itself will shift sideways so much that artefacts will appear, even without outer "reference" wall. However, this might require larger test parts, since the metric would be "radius before artefacts appear. Anyway: the spiral portion is the one that provides accuracy, not the outer portions, they are there just as reference wall. It is important to maximise the ratio inner/outer chords, so taller and narrower test parts (keeping the overall surface identical, for a given target print time) would provide better results. As it is now, with as many outer chords as inner loops, I think a lot of filament and surface is wasted. Five outer chords will most likely suffice to provide a reliable outer wall against which the inner spiral will be pushed against (if the flow is excessive). |
@SoftFever would you say 0 is best, or -1? it's not that clear. For validation, the same flow rates with the previous test patterns should be shown next to each other |
I'm not sure if circular object will really work, because it's helix, not circles. So when you will start to reach the wall, the gap will constantly shrink, instead of single line gap like with this model. The idea about printing enough big spiral line, so it will start offset by itself, doesn't differ much from the current test with lines, so I don't see benefit in it. I agree that smaller count of outer half rings can be enough, I will test it. |
In this case, I prefer to use 0 (this is also the flow rate value I got from the existing calibration). It’s not that obvious from the photo, but once you feel it, it’s pretty clear there’s no actual bulge there. So I prefer using 0 to reduce the chance of a gap. That said, flow rate isn’t super "strict"—if you want to go with -1 for a more pleasing surface, I think that’s totally fine. Or just pick "-0.05" and call it a day ;) Anyway, give it a try. You can only gain that kind of "experience" by doing it yourself. |
I will, I have to calibrate a new filament today. Important: if this is going to get implemented, someone able to read code (I am not) should understand what makes the algorithm start from the centre or from the outside, and adapt the design to ensure the spiral goes in the correct direction. |
I made a test print, and yes, the most difficult part is to get the helix to be printed from the inside :/ Also I noticed few things:
|
I would keep the discussion on topic. You can better discuss that in the section "Discussions", open a thread |
OK. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Update: Add logic to print Archimedean chords from inside to outside.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Merge to main branch so more people can test
Please give this a try |
Circling back on this now that I have had time to print with my 3 most annoying non-transparent filaments (wood, white asa, and tpu) Referencing the source material:
|
I use Klipper General printer with 0.4mm nozzle (i have Sunlu S8). Here is bundled export. I use 0.2mm 0.4 nozzle test widths process: |
This works for me, thanks! |
It was simpler/more stable to implement the new algorithm like this instead of left/middle/right, so I went that way. |
EDIT: NEVERMIND, I will test this specific PR, today is a confusing day, was mixing the merged with unmerged (open)... |
You must download the version from the pull request. It's not in the nightly yet: |
Yep, edited my comment, its a day... |
Well it depends in my opinion. |
@Benik3 which one did you pick? I would say 0. |
Yeah, I had 0, now I set it to 0,05 more (the value is 0,945 now). |
I love this concept! Would using square or round, or square-with-rounded corners objects not be better than the default rectangular ones? |
Round will not work. You need to make "borders" first. With round object it would just fill in one step and it will also not end with constant width of the line. With square object it would print just very small corners, which can also be problem (too short lines). I would be careful with downsizing the object to save filament. You need some number of lines to be printed, also you want some minimal line length (to avoid negative effects of too short lines). Also you must consider that the object is the same now for different nozzle sizes. Of course these things can be solved by programming the generation of the model more dynamically, but in my opinion there are things which deserves this time more :) |
FYI, possible issue with this new test. Not sure if it is directly related to the top solid infill pattern, or if it is a bug elsewhere in Orca. |
For info, I started a discussion on #9609 about the interpretation of the bulge: it's quite clear from macro shots that the best setting is not where the bulge is flat, but where the bulge starts to appear. Please check the discussion and give me your opinions. Even in the post linked by @MxBrnr above the issue I mention, with the bulge required to give the optimum flow, is visible. |
We definitely need to make sure that detail is very clearly mentioned in the Calibration Tutorial Wiki. |
Description
Implement #8929
Change top surface pattern with archimedeanchords, in a hope to make it easier to determine the right flow value.
Update: Add logic to print Archimedean chords from inside to outside.
Inspired by jimcorner: https://makerworld.com/en/models/189543-improved-flow-ratio-calibration-v3#profileId-209504
Screenshots/Recordings/Graphs
Tests