control around 30 servos with arduino ??

is it possible to control around 30 servo motor using arduino and shift registers or any other mechanism ?

Not using shift registers but you can do this with a PWM generating chip. There are a few about. This is one https://www.adafruit.com/product/815

You will need two boards but they can sit on the same bus.

what does same bus mean ? n does the above mean that to use two boards ill need two arduinos n hence two pcs ? how is sync ensured then ?

No the same bus means connect them to the same pins. The device uses the I2C bus, look it up. There are links on the board that give it a unique address so those links have to be different on the two boards.

Correct me if I am wrong, but could you not use a shift register and some clever programming to create pwm output on the shift register? Or would that not be possible to move fast enough to control servos?

With 30 servos it would be really hard to get the timing right.

lg, couka

tyler_newcomb: Correct me if I am wrong, but could you not use a shift register and some clever programming to create pwm output on the shift register? Or would that not be possible to move fast enough to control servos?

You can use PWM on a shift register with the ShiftPWM library http://www.elcojacobs.com/shiftpwm/ But it is not PWM exactly that you want so it will have to be different.

and some clever programming

That will suck most of the programming power from the Arduino and there will be twitches when other interrupt events happen like receiving or sending serial data.

The beauty of an external chip is that it is just set and forget.

Grumpy_Mike: You can use PWM on a shift register with the ShiftPWM library http://www.elcojacobs.com/shiftpwm/ But it is not PWM exactly that you want so it will have to be different. That will suck most of the programming power from the Arduino and there will be twitches when other interrupt events happen like receiving or sending serial data.

The beauty of an external chip is that it is just set and forget.

That I didn't think of. Good point.

You need to understand how servos and traditional Radio Control works.

Forget about shift registers. The decoder used to drive eight servos at a time is a (74HC)4017 decimal counter. You clock it with a sequence of nine pulses, the timing between successive pulses corresponding to successive servo data pulses between 1 and 2 ms. You then reset it; the whole pattern repeating each 20 ms.

So for 30 servos you require four (74HC)4017 decimal counters controlled by five Arduino pins - one to clock each counter and one common reset.

You certainly will need some fancy timing of course.

Or just use a 2560 based board, for up to 48 servos: https://www.arduino.cc/en/Reference/Servo My mini-2560 has all pins broken out, much smaller than a full up Mega. Attach headers as needed, bring in 5V power, and away you go ... http://www.crossroadsfencing.com/BobuinoRev17/ |500x316 |500x455