Electrical Engineering Stack Exchange is a question and answer site for electronics and electrical engineering professionals, students, and enthusiasts. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I’m controlling a 5V motor with Arduino but need more torque which means a more powerful motor. Here is my scheme. (I took it form a tutorial):

enter image description here

Here Arduino is controlling a 5V unipolar stepper motor through a Darlington transistor.

My question is if I just change this motor with a 24V one and feed the new motor with an external 24V power supply and remain the rest configuration same would the motor still be controlled? Or do I need another configuration?

share|improve this question
Do you have a data sheet for the new motor? – Brian Carlton Nov 29 '12 at 18:27
no I didn't even buy a new motor. I just wonder if it is doable. Is that about the current inputs of the stepper motor? – user16307 Nov 29 '12 at 18:28
Without datasheets, intuition tells me no, and that you'd be better off replacing the motor driver with FETs. – Matt Young Nov 29 '12 at 18:30
What about a motor drive shield? I personally like & use the one by ruggedcircuits. – Chris K Mar 30 '13 at 0:26
up vote 2 down vote accepted

From the datasheet, the UNL2803A has a Vce (sustaining) of 50V. Provided that the max current for your 24V stepper is 500mA or less and you are careful with your grounding, it should work for you. Be sure to only supply the motor and 2803 with +24V (and not the Arduino!).

EDIT: Your circuit will look something like this. Note that there is only one place where the 24V return and digital ground are connected together. The 24V wiring will carry more current than the digital wiring; take this into consideration. Also, Richman's comments about power dissipation are spot-on. You'll need to take this into account as you select a motor.
(Apologies for the hack diagram)

enter image description here

share|improve this answer
sorry im a bit new. but in that case IN1, IN2,IN3 and IN4 will again go from Arduino to UNL2803A right? WhicH input is supplying the UNL2803A with 5V or 24V? – user16307 Nov 29 '12 at 18:36
On the top right side of your schematic, connect that supply rail to +24V, and connect the ground at pin 9 of the 2803 to 24V return. Pin 10 is essentially the 24V connection for the 2803. You'll need a "single point" ground connection between the 24V return and your logic ground/5V return. – HikeOnPast Nov 29 '12 at 19:04
You mean pin10 on UNL2803A? But which pin is supplying 5V to the Darlington right now on the current picture? Should I change it with 24V or remove it and put the 24V to pin 10? Are you talking about these pins : circuitgizmos.com/wordpress/wp-content/uploads/2009/03/… ? What bout the inputs from Arduino to Darlington? Will theyr remain the same? – user16307 Nov 29 '12 at 19:13
From the UNL2803 datasheet that I found, it does not need a 5V supply. Your schematic confirms this. Pin 10 goes to the motor supply, be it 5V or 24V. – HikeOnPast Nov 29 '12 at 19:16
oh so I will just supply pin10 with 24V and ground UNL2803A to motor's ground. The rest will remain the same. Thank you man! Hope it works:) – user16307 Nov 29 '12 at 19:18

The ULN2xxx package might be able to drive 500,A per port the Darlington output has the advantage of 1000x current gain in this package but much higher Vce so saturated power dissipation. Workout your junction temperature based on P = Vce*Ic*n, for n phases active at same time. Package specs state 55'C/W and 125'C is absolute maximum. (pref 80'C max)

It is good part but limited on power handling. This is easily calculated once you know motor current draw under load.

share|improve this answer

Generally speaking, 24v steppers are not high torque devices - most come from cheap printers. Most high torque steppers actually have fairly low rated voltages (and high currents), because they have short windings intended to reduce the inductive reactance at high step rates. To maintain torque as step rate increases, chopping drivers are used which supply many times the rated coil voltage to force current through the winding inductance, but use pulse-width regulation to keep the current from exceeding rated/safe specifications.

Several low-power integrated bridge (and likely unipolar as well) drivers work in chopping modes up to 40 or 50v. For higher voltages as used on machine tools, etc, discrete N MOSFETS are typically used.

Obviously there are a lot of destructive failure modes of a circuit of this type.

share|improve this answer
i want to implement it in a place where i might work. but they don't want to spend money for PLC and expensive things. i though it would be a cheap solution with Arduino. sad that there is no clear DIY tutorial for obtaining high torque at hobbyist level. or should i say i couldn't find yet. oddly enough almost all is for toy motors. for kids – user16307 Nov 29 '12 at 21:13
The DIY users of moderate to high torque steppers are primarily the people converting manual machine tools to CNC - there are a few driver plans out there, and a lot more debugged and affordable modules. Most Arduino stuff, even including the related plastic extrusion style 3D printers, uses very small motors. That's not odd at all, as for demos it's easier to build circuitry for small motors than contend with power electronics concerns, and the printers have little mass and near zero "tool" force to contend with so can use IC chopping drivers and disk-drive sized motors. – Chris Stratton Nov 29 '12 at 21:18

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.