Running 6 servo motors on arduino uno

I am currently running 6 servo motors using the arduino uno and the output is very inconsistent. The code accepts a text input using the IDE and based on the text, outputs certain positions on the motors. Basically, sometimes it works, sometimes it doesn't, even when giving it the same input twice in a row. When I run it with 3 motors, it works perfectly every time and there is no issue.

The servos i am using are the sg90 micro servo. I have them all powered using the 5V ports on the board. So, I'm not sure if there is maybe an issue with using all the 5V ports on the board at once? Perhaps I should be powering the board in a different way?

The motors are connected to a gear train, and so have a small load on each motor.

Servos should always have a separate power supply. The 5V pins on the Arduino cannot reliably provide nearly enough current even for a single servo. You run a real risk of damaging the board.

4 x AA rechargeable batteries (Eneloop or similar) would be good.

Steve

For 6 servos you should be budgeting upto 6A, beyond even AA's. If only one moves at a time the max
current draw will be less, but if you want to move all at once 6A is about the minimum you'll get away with.

SG90 stall current is only 650mA so that's <4A for 6. NiMH rechargeable AAs can handle that easily though cheap spring-loaded battery holders still might have problems.

Steve

But reversing current is twice stall current, so when it changes direction rapidly that's 1.3A...

I have taken measurements on cheap SG90 clones and I have never seen a current as high as 650mA. I'm not sure that they every went above 150mA and unless they are all being required to move a heavy load at the same time I reckon AA alkaline cells will be fine, although NiMh cells have a much greater current capability.

...R

Cheap clones aren't a definitive guide.

MarkT:
Cheap clones aren't a definitive guide.

I agree 100% - though I would expect them to err on the side of lower efficiency and thus higher current.

But if a pack of AA alkaline cells is available it is worthwhile trying it before spending money and time on a "better" solution.

...R

If there is a current question, then use a multimeter to measure the current draw of the servo under various conditions.