# calculate RPM of a stepper motor

Discussion in 'General Electronics Chat' started by bug13, May 5, 2013.

1. ### bug13 Thread Starter Senior Member

Feb 13, 2012
1,519
53
Hi guys,

Can I calculate the RPM of a stepper motor without feedback from the numbers of steps and time?

take this one for example

Metalmann likes this.
2. ### crutschow Expert

Mar 14, 2008
20,253
5,734
Do you know the frequency of the steps?

3. ### bug13 Thread Starter Senior Member

Feb 13, 2012
1,519
53
no,

I am hoping I can get a variable RPM output, without feedback. (that's what I have given, MCU + stepper motor driver + stepper motor)

here is how I drive the motor:
Code ( (Unknown Language)):
1.
2. motor_multiple_step( int x_step )
3. {
4.      do( x_step )
5.      {
6.           send_signal_for_one_step();
7.           delay_one_ms();
8.      }
9. }

4. ### tubeguy Well-Known Member

Nov 3, 2012
1,157
198
What stepper motor driver do you have ?

5. ### bug13 Thread Starter Senior Member

Feb 13, 2012
1,519
53

I am using Pololu A4983

Berkeley T60 likes this.
6. ### BillB3857 AAC Fanatic!

Feb 28, 2009
2,461
378
The example motor you show has 400 steps per revolution. By controlling the step rate, you control the speed. 400 steps/second would give 60 RPM, and 200 sps would give 30 rpm. That assumes that the load does not exceed the torque limit and result in missed steps.

bug13 and Metalmann like this.
7. ### tubeguy Well-Known Member

Nov 3, 2012
1,157
198
Here's some info on typical max speed for stepper motors:
http://www.daycounter.com/Calculators/Stepper-Motor-Calculator.phtml

You have a good stepper driver which provides current limiting and micro-stepping.
Current limiting allows for somewhat higher speeds by using a higher voltage supply than the stepper motors rated voltage while limiting the current to a safe value. Check it out using the calculator above.
Just be aware of heat sink/cooling requirement for the chip.
You might want to consider a motor with a bit less current draw so you are not so close to the max for the chip.

The micro-stepping feature controls the motor in finer increments than the full-step mode. With the motor posted: 800 steps/rev, 1600 steps/rev etc..

Last edited: May 6, 2013
bug13 likes this.
8. ### Kermit2 AAC Fanatic!

Feb 5, 2010
4,166
1,125
The problem with a simple calculation for RPM will be a reference timebase.

Somewhere in this process of software 'counting' you will have to provide a stable ref freq as a timebase which your count can be refered to. Due to differences in processing power and clock speeds your software will produce different motor speeds when used with different computers. If your controller provides a crystal oscillator then you are golden.

Otherwise you are at the mercy of your processor clock cycle which will be variable from platform to platform.

9. ### bug13 Thread Starter Senior Member

Feb 13, 2012
1,519
53
Thanks BillB3858, why haven't I though of that? I think this will be good enough for my application.

10. ### bug13 Thread Starter Senior Member

Feb 13, 2012
1,519
53
Hi tubeguy, thanks for your link, that is going to be a very good reference for me, it's going to be very useful.

tubeguy likes this.
11. ### bug13 Thread Starter Senior Member

Feb 13, 2012
1,519
53
guess I am golden, thanks