### How to decide maximum acceleration and speed of stepper motor

Posted:

**Fri Oct 12, 2018 8:23 am**Hello,

I am new to Accelstepper library: https://www.airspayce.com/mikem/arduino/AccelStepper/. I am using MDBT40 with Stepper motor and programming it using Arduino IDE.

Here are the specification of motor:

Max rated Current: 0.8A

Inductance: 5mH

Input supply : 12V

1.8 degree

1/4th microstepping mode

Since the RPM was not mentioned in the datasheet, I did some calculation using these links:

http://www.daycounter.com/Calculators/S ... ator.phtml

https://sunzhongkui.wordpress.com/2013/ ... er-on-cnc/

I got minimum and maximum RPM to be 100-480 RPM.

i.e. (480*200)/60=1600 steps/sec=> 6400 steps/sec for 1/4th microstepping

So converting it from RPM to steps/seconds gives me maximum speed of 6400 steps/sec.

Thus using this calculation, I used setMaxspeed(6000). About acceleration, I set it to 12000 (random trial and error).

The speed of motor doesn`t seems to fast enough when I run the same motors using timers or without acceleration. After certain value of acceleration, the speed remains constant and is very low (not expected maximum speed). My application requires a slow start for a very small time (5% to total distance).

Can some one help we with how to decide the value of acceleration? Is there any specific calculation?

Also is the maximum speed calculation correct?

Am I going in right direction?

I am new to Accelstepper library: https://www.airspayce.com/mikem/arduino/AccelStepper/. I am using MDBT40 with Stepper motor and programming it using Arduino IDE.

Here are the specification of motor:

Max rated Current: 0.8A

Inductance: 5mH

Input supply : 12V

1.8 degree

1/4th microstepping mode

Since the RPM was not mentioned in the datasheet, I did some calculation using these links:

http://www.daycounter.com/Calculators/S ... ator.phtml

https://sunzhongkui.wordpress.com/2013/ ... er-on-cnc/

I got minimum and maximum RPM to be 100-480 RPM.

i.e. (480*200)/60=1600 steps/sec=> 6400 steps/sec for 1/4th microstepping

So converting it from RPM to steps/seconds gives me maximum speed of 6400 steps/sec.

Thus using this calculation, I used setMaxspeed(6000). About acceleration, I set it to 12000 (random trial and error).

The speed of motor doesn`t seems to fast enough when I run the same motors using timers or without acceleration. After certain value of acceleration, the speed remains constant and is very low (not expected maximum speed). My application requires a slow start for a very small time (5% to total distance).

Can some one help we with how to decide the value of acceleration? Is there any specific calculation?

Also is the maximum speed calculation correct?

Am I going in right direction?