2
\$\begingroup\$

I have just become aware that people are using 4017 decade counters and an Arduino to drive relatively large numbers of servos from relatively small numbers of pins. Not being an Arduino connoisseur myself, however, I have not been successful in my attempts to decode the software that makes the magic happen.

My question is, in non-code, what exactly is going on here that makes this possible?

\$\endgroup\$
5
\$\begingroup\$

All servos require a repeating pulse to work

depending on the servo, they require a 1 to 2ms pulse repeat about 50 times a second.

What is done is this...

a reset pulse sets the counter IC back to 0 Output 0 on the counter goes high,

A timing loop is run for the first servo (on output 0), e.g. 1 ms,

then a pulse is applied to the clock input, this sets the counter IC to 1 Output 0 goes low, and output 1 goes high

A timing loop is run for the second servo (on output 1) e.g. 1.5ms

then a pulse is applied to the clock input, this sets the counter IC to 2 ....

I first came across the method of using a counter IC in "Theory and practice of model radio control" - second edition... (c) around 1975

A reset pulse, then variable length sequential pulses applied to the clock pin to both control the servo and select the next servo.

\$\endgroup\$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.