Simple way to set Acceleration and Jerk?
-
Hi,
I have never taken the time to try and tune my printers for best performance.
I have just been using some "safe" values for acceleration and jerk which I suspect are far from optimum.
As an example of a "safe" setting, one person suggested that jerk should just be set to 20% of max speed.
Is there a article or web site that provides a relatively simple and straightforward set of procedures for determining these values?
Something that doesn't involve printing 3752 test prints?
Thanks much.
Frederick
-
- Home the axis using kown safe values.
- move to the other extreme of the axis using kown safe values.
- Using experimental values to move back close to the home position, but not all the way back (say 10 to 20mm shy)
- use the known safe settings again to go home.
- check the endstop status to see if you are homed.
if you are, you can increase your settings and run the test again. If you aren't then you missed steps, so cut the current values down by whatever safety margin you want and you will have your maximums.
make sure you run each test several times before moving on to higher values.
Here is an example i used for a core xy machine.
G21 G90 M82 ; move to position slowly M201 X250 Y250 Z100 E1500 ; Accelerations (mm/s^2) M203 X6000 Y6000 Z900 E3600 ; Maximum speeds (mm/min) M566 X200 Y200 Z100 E1500 ; Maximum jerk speeds mm/minute G28 XY G4 S2 G1 X280 Y280 F3000 G4 S2 M400 ; rapid back fast M201 X4500 Y4500 Z100 E1500 ;accel M203 X24000 Y24000 Z900 E3600 ;speed M566 X1500 Y1500 Z100 E1500 ;jerk G1 X10 Y10 F13500 G4 S2 M400 ; go home again slow M201 X250 Y250 Z100 E1500 ; Accelerations (mm/s^2) M203 X6000 Y6000 Z900 E3600 ; Maximum speeds (mm/min) M566 X200 Y200 Z100 E1500 ; Maximum jerk speeds mm/minute G1 X0 Y0 F3000 G4 S2 M400 M119
-
Interesting, I'm in a similar position of never having tuned these values. Is there a good procedure for which one to vary first (jerk or acceleration)? I've never totally understood how the two are related in the case of a long move like this. Will the motor basically start at the jerk speed and then use the acceleration values to increase speed from that point to the target or is it more complex than that?
If using a CoreXY type design would it make sense to perform the tests using diagonal moves (which just use a single motor)?
Any thoughts on a good procedure for a design that uses sensorless homing?
-
@gloomyandy said in Simple way to set Acceleration and Jerk?:
Will the motor basically start at the jerk speed and then use the acceleration values to increase speed from that point to the target or is it more complex than that?
@dc42 might be able to give a better answer, but I would say the above is a good straightforward way of looking at it.
If using a CoreXY type design would it make sense to perform the tests using diagonal moves (which just use a single motor)?
Imo, yes, that's what i did in the script above for my Core-XY.
-
@fcwilt said in Simple way to set Acceleration and Jerk?:
Is there a article or web site that provides a relatively simple and straightforward set of procedures for determining these values?
Something that doesn't involve printing 3752 test prints?If you use live tuning of the values you can do it in a single tall print. 100mm square with some divots on the sides (like those used for ringing testing) is a good candidate. Make it tall enough to get a decent amount of tuning time. 2 walls and 10% infill. Start with your base values and every few layers start to change the accell/jerk values. Start indepently. Then mix and match. For print speed I like to set it to my maximize my flow rate.
https://forum.duet3d.com/topic/14250/tuning-jerk-accel-speed-settings/2
And some macros to make it easier.
https://forum.duet3d.com/topic/6181/tuning-macros-menus-accel-jerk-retraction-pressure-advance
-