Let's Make Robots!

12 servos controller low cost

12 servos controller with Arduino

Building a robot with wheels or with legs needs a design completly different. One of the biggest difference is the type and number of motors. While for a robot with wheels usually 2 or 4 servos or gear motors are enough, when we speak about a robot with legs, the number of motors increases dramatically. It is not uncommon to see a hexapod robot with 18 servos. A quadrapod robot has usually 8 or 12 servos, depending on the number of joints. Luckily, compared to robot with wheels, usually are not required servomotors with continuous rotation or gearmotors. Standard servos (0-180 degrees) are enough. Servomotors are driven with PWM and Arduino 2009 or Arduino Uno have 6 PWM pin. And this is a problem. And if you want to use also other sensors using digital pins, the situation is not good, because the Arduino’s digital pins are only 14, and 2 of wich are used for the serial port communication (pin 0 and 1). It is possible to use the Arduino Mega, with 14 PWM pin, but it is very expensive (50 euros and more). Searching in internet, I found a low cost chip, using I2C protocol that can drive 12 servos. First good news, the I2C protocol uses only the analog pins 4 and 5. Second good news is that you can use up to 8 chip, so it is possible to drive up to 8x12=96 servos with only 2 analog pins, the 4 and 5. Third good news is that the chip costs about 4 euros and half. A price that can be accepted by every robot builder.

More information, pics, code example here: http://robottini.altervista.org/12-servos-controller-low-cost

Disclaimer: I'm not payed by www.hoobytronics.co.uk, I'm not an official tester, I'm not linked to www.hobbytronics.co.uk, I'm only a robot builder that shares his experience.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Nice, but an arduino 2009 can control up to 12 servos, and a MEGA up to 48.


You don't need to use a PWM pin to control a servo, it's different.

true, using the PPM modulation, the servo library can control up to 12 servos. But the benefits that brings a solution of this type are still valid