# How to drive stepper motor at maximum speed with a higher voltage power supply in hand?

I had a question about "Wantai" Stepper Motor with an Arduino hooked up to an motor-shield.

Looking at the spec sheets the max volts and current allowed in that particular stepper motor is 3V and 2A. I have a supply of 7.5V and 2A.

Does anybody know how to alter the voltage without changing the current?

Also, does anybody know why my motor jerks/lags when I input anything more than 100 revs/min into it? It seems to be pretty slow with minimal torque.

• Read up on chopping drivers; for performance you actually want a higher than ohmic voltage, but to regulate the current to the rating. This will help you overcome the winding inductance and counteract some of the torque reduction at increased speeds (commutation rates) – Chris Stratton Oct 22 '12 at 15:14
• Also, you should probably look into understanding voltage and current, specifically how the supply voltage is 7.5V in your case, with some margin for error, but 2A is the current rating, or the maximum current it can output. – Chintalagiri Shashank Jan 27 '13 at 9:06

Wantai is probably the brand of your stepper motor. It would be great if you could have supplied a model or part number, too; for example; Wantai 39BYG003. That way, we could either search for the datasheet or better, you could supply us a datasheet.

Most of the stepper motors have a certain maximum step per minute speed limit. That is probably because of the nature of the stepper motor, and how fast you can change the magnetic field in the stator core. You just cannot keep increasing current, at a given moment the windings will break down due to over-voltage building up across them. Hence, there is a maximum speed you can achieve. That speed limit may be specified in the datasheet. What is the maximum speed that you can achieve with your motor?

Coming to the current and voltage conversions that you mentioned. Do not think voltage and current separately. Instead, think that they are connected together. There is even a mathematical formula that shows how they are connected!

$P = V * I$

According to above formula, power is calculated simply. Let's calculate the power of your supply by simply putting variables into their places in the formula;

$P = 7.5V * 2A = 15 Watts$

Power is measured with Watt. You have a power of 15 Watts in your supply. Now let's see how much power you need for your stepper motor. Again, we will put the variables and multiply, that's all;

$P = 3V * 2A = 6 Watts$

Your motor needs only 6 Watts. Now, you can think if your supply will blow up your motor? No! Your supply is capable of giving more than your motor takes, but that does not mean that it will give all the power to the motor. Instead, it will give as much as motor wants. So the boss here is the stepper motor. Extra power in the supply will do no harm. It is even better; you can run 2 motors with this supply!

You asked how to change the voltage without changing the current, and that is not possible. But this is fortunate, because when you decrease the voltage, according to the power equation above, the current will increase! So you will have more than 2 Amperes when you convert your power supply to 3 V.

Here is the circuit that will convert 7.5 V to 3 V. Below circuit will need a big heat-sink for the LM350. You will have to dissipate 10 W on the heat-sink. This heat-sink can be a good choice. I have used this online calculator to have the below circuit.

Don't forget to put a 100nF and a 220uF capacitor parallel to input pins of LM350, that is Uin. That means you will connect their positive to Uin (for 220uF, there is polarity), and their negative to ground. But do not put the capacitors far away for the LM350, put the as close as you can. Another solution would be using your power supply as it is, but add series resistors to your windings. That will allow the stepper motor to turn faster. To calculate the resistor values, use the below formula;

$R_{series} = \dfrac{V_{powerSupply}}{I_{maxWinding}}-R_{winding}$