30 servos on a Mega

I am a complete novice in electronics with enough knowledge to be dangerous. Already blew 2 Mega boards trying to drive this with a 12V supply, I suspect the servos drew more power than the voltage regulator could take.

Is the solution I drew viable? Do I need to put resistors for each servo?

Thank you in advance!

Disclaimers:

The project is based on an Instructables project. I know there is little love for Instructables here but the physical design aspect is sound, the hardware solution seems questionable, therefore my question.

I am attaching a diagram to describe my idea that was done in Fritzing but its a simple design that should leave little room for confusion.

An Arduino cannot power one servo safely.

Instructables are detested here for a good reason, and the project you linked is a perfect example of the problem: the author failed to describe the servo power supply and to post a wiring diagram. For technical reasons, that is a ridiculous example to follow.

For that project, you will need a 4.8 to 6 V power supply capable of providing many Amperes (I would start with 10 Amperes and hope it works, 20 or 30 to be reasonably safe), even if micro servos are used. You will also need a servo power distribution PCB.

I would use two of the Adafruit 16 channel, 12 bit servo shields. Each one will drive up to 16 servos, and you can stack up to 62 of them, so expansion isn't a problem. The Arduino communicates with the shields via i2c and the shields do the actual driving.

Adafruit 16-Channel 12-bit PWM/Servo Shield - I2C interface

Thanks.

Could you point me to a good example of a servo power distribution PCB? Would it be possible to assemble one using prototype boards?

Oh, sweet. How do I power say 2 of the Ada 16 channel shields and the Mega itself? Do I use something like this?

https://diyodemag.com/projects/servo_power

@Benjamin269's suggestion is better, but it is not safe to daisy chain the power leads for the Adafruit servo boards. There is discussion to that effect on the Adafruit forum. The boards should be wired in parallel for power.

Oh, also, since it uses i2c I don't really need a mega, any Arduino would do, no?

Could I use something like this to power the Arduino and two shields?

Seems to have 3 outputs so I could use one for each.

5V at 10A might work. Most people plan on 1 Ampere per small servo to be safe, if it doesn't you end up with a twitching mess of spastic servos. Which can be pretty funny to watch.

The servo power board looks perfect! How much can it scale? Can it handle 30 servos?

That the board should not exceed 5A, so I could build 2 boards and power them separately from a power supply like I mentioned?

Certainly not if many of them are moving at once, in which case you need a 30 A power supply to be safe.

I have 61 servos on my reed organ. The power source for the servos is a 12 V lead battery (meant for mopeds). I have four PCA9685 cards, each can drive 16 servos. I haven't tested more than some 8 servos at a time (you don't want more tones sounding).
The servos don't run on 12 V, so I have a buck converter which takes the power down to 6 V. The lead battery could give all the amps, but I guess the buck converter couldn't.

Thanks for all the replies.

@jremington is this closer to a viable solution:

I think that's the point. Where moving not only means from one position to the other but also holding a position actively agains some torque. If you don't need some holding torque greater then the gear resistance, you can swithc the servo off ( creating no pulses ). Then it needs nearly no power.
In my former modelrailway there have been about 50 servos, and the powersource was 5V 2A. Pulses were created for a servo only if the tournout need to switch from one position to the other. The gear resistance was far enough to hold the turnout in positon.

On the power supply, the lead with the ground symbol is most likely the case ground.

You probably want to use the V- terminal as GND.

Excellent. Thanks.

I am sure I can turn off power to each servo after one of the positions is reached (fully extended, fully retracted) so I can definitively free up power, there will be no force acting on each passive servo.

Good point, but most beginners don't realize that, or know how to do it.

Since the power supply provides 3 -V terminals, should I use corresponding -V for each shield and Arduino? Would they loose common ground?

Not easily, if you use a power distribution PCB. Easier to turn off the pulses (use the detach() function).