SERVOS: Dynamic current draw, power supply solutions?

Hi Everyone,

I will have several hundred students running servos on our RoboRED which is an UNO derivative (Info HERE:)

There are problems that are inconsistent when running even one typical SG-90 (small blue) servo like THESE.

SOME of the time, a single servo will run OK, when the board is powered by USB. What are the factors??

  • Host computer USB current available? We know some laptops and many tablets are weak.
  • Sketch properties: How fast a move? Acceleration control? Multiple servos simultaneous move?
  • Variations in the "SG-90 from different Chinese suppliers".
  • Hmmmmm??

I am working on testing this situation. Suggestions are welcome! Have you seen any published work on servos and dynamic current draw?

The RoboRED has an onboard switch-mode power supply when running from external power. 9V usually works well for 2 or more SG90's . Another solution may be a breakout board with connectors for several servos and external separate power supply.

Teachers in the classroom need this to be known and consistent. I need to figure out how to accomplish that.

Here's what I have published (may be dated): http://arduino-info.wikispaces.com/Servos

I will be doing some electrical testing very soon; any suggestions and pointers appreciated!

Have you the option of using cheap digital servos - they seem to be better behaved.

...R

The power supply must be able to supply the stall current of the servos, typically 1 Ampere or more. Servos draw that every time they start up, so budget 1 Ampere per moving servo to be safe.

USB generally can't do that, for even one servo.

terryking228:
Another solution may be a breakout board with connectors for several servos and external separate power supply.

If you need consistency, this is the answer. Your bulleted factors, plus whatever load is on each servo mean that you'll never be able to get good results in all scenarios without it.

Hi,
Thanks.. I will be doing some testing and will post back...

Hi,
You might glean some info by putting an oscilloscope across a current shunt resistor in the servo power supply lead, to see what peak and instantaneous currents you get.

It will be interesting because those cheap servos are not exactly consistent in performance.
I have quite a few here and even checking the spindle backlash can be noticeably different from one unit to the next.

I just bought a pack of 10 of the sg90 on abay for a ridiculous low price to use and abuse for some projects for my brother's N Scale layout.

Tom.... :slight_smile:

Fluctuations on the power line may influence every single servo controller circuit. Perhaps a bigger cap on the servo controller boards will stabilize the whole thing. This may mean to use a somewhat more expensive but more reliable servo motor.

terryking228:
Hi Everyone,

I will have several hundred students running servos on our RoboRED which is an UNO derivative (Info HERE:)

Congrats Terry, well done.

Getting more Arduino into the education system with some great support.
Tom.... :slight_smile: :slight_smile: :slight_smile:

The listed ~560mA stall current of that servo plus the ~50mA of an Uno-type Arduino is a bit much for the 500mA max rating of most USB-2 ports and the 500mA polyfuse.
The resistance of the USB lead, servo power lead, the 500mA polyfuse, and the backflow protection mosfet might soften peak current draw a bit. But that creates a dip in the 5volt supply that e.g. an analogue input or even the whole MCU might not be happy with.
A beefy cap across the servo supply pins (several thousands uF) to help the 5volt supply overcome those servo startup peaks might fix your problem.
Time to get the scope out, and monitor the 5volt supply when the servo is jittering.
Then add caps to see at what value the dips (almost) disappear.
Leo..

Hi Everyone,

Thanks for ideas... I need to know the variations on this so I can help teachers be ready for servo problems...

Time to get the scope out, and monitor the 5volt supply when the servo is jittering.

I have ordered a complete servo testing device than can capture maximum currents. I will also do some bench testing tomorrow with metered power supply etc...

@Wawa good points about all the detractors in the chain... I DID have a situation with a poor USB cable once, and I will test for that..

Right now different schools and administrators are giving me lots of information that is often conflicting, like "Last years kits had servo problems, but we were OK the year before".. I'm trying to sort out the many variants in this. And NOW some schools are going to Chromebooks which is another variant.

Jeezum Crow (Vermontism) , LEDs and LCDs and Bluetooth modules and even stepper motors are not problems. Those simple little servos are the hassle.

OK, back to work...

Hi, Terry.
Yes those little servos.

It would be nice if you had quantity guarantee, to approach distributors to see if they could sell you the next best/better servo at the SG-90 price. :o :o

approach distributors to see if they could sell you the next best/better servo at the SG-90 price.

That has crossed my little mind :slight_smile: I need to find out if there IS a better but still low-cost servo..

There are some plotted here: http://homepages.paradise.net.nz/bhabbott/Servo.html

I buy about 1200 to 1500 servos per school year. I think we paid a little less than $2 last year. I need to keep the overall cost of a kit like THIS down.. there's a lot of stuff in there.. Hmmm...

I already know that to run the DC motor in the kit with PWM on the power FET that the user HAS to use an external supply. It's just that the servos plug right into the 3-pin connectors on the RoboRED and it LOOKS so easy... 9V 1A wall warts are cheap. One big school system has gone to "MakerSpace" kits where we put 8 kits worth of parts in larger Akro-mils drawers, and some 9V 1A supplies go in that packaging.

Main thing is it needs to work for the teachers and students without mysterious failures...

Well. We'll see how THIS works out...

Thanks!

In your Original Post you said "several hundred students running servos" which is a little vague.

How many servos will be operating on a single Arduino?

Is it an option to power the servos with batteries - say a pack of 3 x AA alkaline cells - as batteries are good at dealing with short peaks in demand.

...R