The SJFW firmware applies acceleration limiting to motion along all four axes, so I did some doodling to come up with reasonable starting values, based on various measurements and estimates.
Some useful background, with lots more tucked away in odd corners around here:
Relevant equations for uniform linear acceleration a, velocity v, distance x, time t:
- v2 – v02 = 2·a·x
- x = (1/2)·a·t2
X and Y Axes
Current values with low-resistance / low-inductance steppers:
- Decent printing at 30 mm/s = 1800 mm/min
- Not-so-good printing at 60 mm/s = 3600 mm/min
- Point-to-point non-printing motion at 100 mm/s
Given that the (beefed up) XY motors can accelerate their respective stages to 100 mm/s without acceleration, assume they can reach a top speed of 200 to maybe 250 mm/s within 1 mm of travel. That’s half of the belt pitch and seems like an overestimate of the actual distance.
- (250 mm/s)2 = 2·a·(1 mm) → a = 31000 mm/s2
- (200 mm/s)2 = 2·a·(1 mm) → a = 20000 mm/s2
The 1 kg Y axis probably can’t accelerate as fast as the 0.4 kg X, despite having a bigger motor.
Z Axis
Currently traverses at 17 mm/s = 1000 mm/min, OK at 25 mm/s, fails at 33 mm/s = 2000 mm/min. That’s with the original high-resistance / high-inductance MBI stepper without acceleration limiting.
Typical motion will be 0.25 mm, which is 15 ms at 17 mm/s: it’s not a performance limitation.
It’s a 4-start leadscrew that moves 8 mm/rev, so 0.25 mm = 0.031 rev. At 1/8 stepping = 1600 step/rev, that’s 50 steps. Allow 20 steps = 0.1 mm for acceleration to top speed:
- (33 mm/s)2 = 2·a·(0.1 mm) → a = 5400 mm/s2
- (17 mm/s)2 = 2·a·(0.1 mm) → a = 1400 mm/s2
E Axis
Currently runs at about 2 rev/min = 0.033 rev/s with a 9.6 mm effective drive diameter = 1 mm/s for the incoming filament. Reversal runs at 15 to 25 rev/min for about 100 ms, figure 20 rev/min = 0.33 rev/s = 10 mm/s, without acceleration limiting. The extruder has 7:51 geardown, so the motor runs at 14.6 rev/min and reverses at 146 rev/min = 2.4 rev/s = 500 step/s, none of which seems particularly challenging even in 1/1 step mode (due to using a defunct MBI stepper driver).
That reversal speed tends to leave blobs at the end of threads, but it’s not clear the motor is up to much more acceleration. It’s a relatively small stepper, so a larger one with with more current may be needed for enough torque for faster reversal action.
Allowing 0.1 mm to reach full speed:
- (1 mm/s)2 = 2·a·(0.1 mm) → a = 5 mm/s2
- (10 mm/s)2 = 2·a·(0.1 mm) → a = 500 mm/s2
None of these numbers should be cast in stone!
The original doodles:

2 thoughts on “Acceleration Doodles”
Comments are closed.