Electronic – Power supply circuit for powering SG90 servo. How to handle high current requirements

power supplyservo

I need to power a small SG90 servo motor. I could easily use a 5V battery but why bother? 🙂 Aside from this not funny joke, I'd like to put to good use my little knowledge of electronics gained at University.

The datasheet of the servo does not mention any current draw (max, min, average, etc., …). However I know that my USB port can barely handle Arduino with some sensor and a servo moving around so I guess it could easily be 100 mA. This figure is nothing I know, but it's a start at least. Furthermore the servo does not do any "heavy lifting" it just rotates a small aluminium bar which is super light. There should not be any "stuck" positions.

Since my main PS is a 12 V battery I thought I could step down the voltage using some resistors and then use an op amp (LM741) and a NPN transistor (2N3904) to set voltage and current, respectively. See the schematics below.

By using this circuit I should be able to output 100 mA while keeping the heat dissipation of the 2N3904 NPN within the admissible range of max 0.5 W. I guess I could even go up to 200 mA if I work around the circuit a bit more, however, before going on I ask myself and you, is this circuit able to handle such high current loads such a servo motor (i.e. do you see any flaw in this)?

Schematic

Best Answer

Although I haven't used the SG90 servo, most RC servos want to see about 6 Vdc with significant current capability.

Even though the servo might be lightly loaded, you still have to get the motor spinning everytime the servo begins to move. The motor stall current can be significant - anywhere from several hundred mA all the way to to several Amps.

Because the servo is lightly loaded, you can probably get away with a really simple linear regulator. The simplest such regulator is a simple Zener diode followed by a series-pass current-boost transistor.

Something that I have used in the past is as follows:

schematic

simulate this circuit – Schematic created using CircuitLab

This is good for up to 1 Amp or more for brief surges and is perfectly adequate for powering a RC servo. Note that the regulation is fairly lousy but the servo won't mind.

[Edit]

Someone commented that this servo doesn't want to see more than 5V. This is an easy fix: simply change the Zener diode to a 6.2V part instead of 7.5V. That would be 1N4735 or 1N5234. This will provide a nominal 5V output.