A good process to tune jerk?
-
@argo I think the square_corner_velocity in klipper is much different than the instantaneous speed change in RRF. I've never used klipper, but I would very much like to experiment with the "sqv" method. It seems fundamentally different than the way artificially sharp corners in curves are handled.
-
-
@bot, I created this test with 3, 4, 12 and 360 faces. Will give it a try. It can be scaled in the slicer as needed.
I am in the process of calibrating my printer so will add this to the TODO list.
-
@zapta other than with stringing and ringing, I am missing a good guide to follow to figure out what's good or not other than my intuition. I would like to verify that my idea is right, but it's difficult. Additionally, I'd like to have a resource to point others to because this seems to be mostly undocumented territorry.
-
@zapta thanks for this model, I guess an ellipsoid would be another good addition to get segmented curve with changing angles between segments?
-
@oliof, yes, that's a good idea, assuming that the jerk effect is the same in all directions and is not biased by X/Y axises. Or a spiral like shape with a range of angles on the same curve...
-
Here's my attempt at a combined jerk test body with 90 degree, 60 degree, and 150 degree segments, as well as an approximated circular section. I'l ltry to coax an ellipsoid into it.
-
@oliof , here is a multi angle curve, maybe will be better? Need to try. It starts with 60deg and 90deg.
Edit: oops, our posts just crossed.
-
Here's a rather detailed tuning guide. It's pretty klipper/voron centric but it goes through a lot of things.
-
@phaedrux I know that one and it mentions square corner velocity exactly twice and gives no indicator other than "if your corners look shit it's too low". Is there really no structured way to quantify good jerk values compared to the resonance tower for input shaping?
-
@oliof said in A good process to tune jerk?:
Here's my attempt at a combined jerk test body
As you print the jerk tower, you can also examine layer print time in DWC to detect if the current jerk constraint slows down the printing.
-
For what it's worth I've only ever used my own sense of whether the print head was slamming around too much. Like salt and pepper, season to taste.
-
Looks like teaching tech has a video that covers this (link set to start at the relevant section), but their test shows no discernible difference in corner quality between jerk values of 3 and 9 ... which kind of shows the klipper approach of setting higher acceleration has some merit.
I guess I'll need to do some test printing myself with some ridiculous (low and high) values to get a spectrum and reference.
-
For what its worth with my Voron 2.4 I just spent the afternoon looking for good values by printing parts. I have been hunting the proper settings with input shaper turned on only to discover that lower values (less than 20hz) for input shaper cause weird things to happen.
Anyway back on topic. Using the fields that @zapta made above. This was my experience for M556 values.
Low values
1-100 -> produced notice slowing/stopping when printing the 360 sided circle. This slow of settings also caused corner buldge to be apparent.Medium values
120-250 -> These values seem to be the sweet spot for my application (and I would expect the same for most people)High Values
500-1000 -> Starts to round shallow corners, ringing starting to become more presentVery High Vales
1000+ No major change in print quality from High values.Here are my movement settings for reference, external print speed at 60mm/s ABS.
M566 X180 Y180 Z60 E300 P1 ; Set maximum instantaneous speed changes (mm/min) M203 X25000 Y25000 Z6000 E6000 ; Set maximum speeds (mm/min) M201 X6000 Y6000 Z3000 E6000 ; Set maximum accelerations (mm/s^2) M204 P3000 T6000 ; Set printing acceleration and travel accelerations
-
@alex-cr said in A good process to tune jerk?:
M566 X180 Y180
180mm/min? Really? That seems abnormally low to me.
-
If you understand basic python this script might help you. I posted an earlier version some years ago.
It creates test towers and then test ranges of Mcode from definable start / end / increments.
In essence it can test up to 3 nested for loops of M Code on 3 polygon towers each separately defined (from triangles to near circles eg for jerk !!), each tower at different speeds. Start / end layer locations are definable to control travel paths. (and to change viewing angle during print).
Sides can have 1 or 2 vertical grooves (configurable), and sides can be omitted.
A scan through the code will show more details and parameters.
Wide layers are printing for see where each code is changed, to supplement lots of M117 messages during printing.
I have no skill in creating a user friendly input screen so use the d_settings file that is imported and overrides relevant data in the main script file. Nor do I have skill in automatically creating the location of the output gcode so that needs to be manually set at about line 1008.
Most combinations are possible.
-
@phaedrux said in A good process to tune jerk?:
180mm/min? Really? That seems abnormally low to me.
That's what I thought as well. With my input shaper turned on though If I get much over 250-300 the ringing comes back in force at 3000mm/min acceleration.
-
@garis said in A good process to tune jerk?:
In essence it can test up to 3 nested for loops of M Code
IMHO there's one golden rule about "tuning": Never change more than one parameter at a time.
Beside that, it seems to be a useful tool to generate test patterns.