Up to 16 servo outputs expansion board.

Arduino projects on the go
Post Reply
Martin
Posts: 745
Joined: 16 Feb 2018, 14:11
Location: Warwickshire

Up to 16 servo outputs expansion board.

Post by Martin »

PCA9685.jpg
These 16-channel PWM driver boards are available for a few pounds each at the usual sites: search for PCA9685. They're okay with 5V servos, and drive them without any jitter and without having to do tricky timer-based or interrupt driven code. It's just a simple I2C connection to your Arduino, so only uses 2 Arduino pins to control all 16 servos. And if you need more than 16 :shock: you can daisy chain up to 62 boards, allowing you to control amost a thousand servos! :lol:

The resolution isn't fantastic - athough the 12-bit spec sounds good (4096 steps) you have to remember that if you stick to the standard servo update rate of 50Hz, and the standard 1ms to 2ms pulse width range, you only get about 205 discreet steps over the servo's travel range. You can do a bit better than that by using a faster refresh rate, which most servos are fine with - in any case 200-odd steps over a servo's travel is plenty good enough for most applications, and cheaper servos won't benefit from higher resolution signals anyway.

You can also use them for dimming LEDs, so even though 16 servos seems a ridiculous amount, 6 servos and 10 LEDs seems quite reasonable. Ideally you'd use a higher PWM frequency to dim LEDs, but you have to use the same frequency for all 16 channels, and for ordinary servos you want to stick to around 60Hz - and 60Hz works okay for LEDs too.
User avatar
Wayne_H
Posts: 811
Joined: 17 Feb 2018, 05:26
Location: Temora, NSW. Australia
Contact:

Re: Up to 16 servo outputs expansion board.

Post by Wayne_H »

Do you have any projects or applications in mind Martin?
Cheers,

Wayne
Once a Retrobate, always a Retrobate............ ;)
Post Reply