Linear vs Rotary Servos in Button Pusher

I finally found the time to do a comparison of setting up and using linear vs rotary servos for a button pusher. There’s no one right answer since sometimes unique space or other constraints will come into play. Regardless, I think it’s interesting to see how these two different mechanisms perform at the same task. For this test I decided using a computer keyboard as a target since it has a large array of buttons to press. Of course this is just a test of the mechanical mechanisms, not a good keyboard access method. For automating keypresses, interfacing though USB or Bluetooth is better in almost every way except entertainment value.

In this setup I found the full rotary solution to be simpler to build, cheaper, much faster in action, but slower to tune. In concept I thought I would like the linear solution better since it seemed more direct: you point the rotary “angle” servo at the target button, extend the linear “reach” servo the exact distance to that target, then extend the linear “press” servo the exact depth of that target. But in practice, the linear “reach” servo needs to have its load, the “press” servo, on a slide rail so that the press servo doesn’t rotate around at all during either servo’s actuation. If that servo doesn’t stay vertical it will miss the target button. Though there is something satisfying and cool about the slide rail setup, it’s more parts which means more cost and more complexity. Also, critically, the linear servos I tested were much slower at moving through their range of motion than the rotary servos. That’s why in that video you see quick motions when the next button requires the same amount of reach as the current one, but a relatively slow motion when the reach required is much longer or shorter.

The full rotary setup is much faster even though I’m not running it at full speed. Running at full speed be a jerkier motion, louder, and shorten the servo gear train life. Positioning the full rotary setup is slightly less intuitive since both the reach and the angle are both a function of two servos (not just one) and they’re the same two servos. Said another way, actuating either servo changes both the reach and the angle at the same time. Also since in this simple setup the rotary “press” servo doesn’t press straight down but rotates down, the button contact moves sideways slightly during the downward motion which affects aiming. In this setup the payoff in speed and cost justifies the slightly more involved position tuning.

Here’s some pictures of the mixed linear/rotary servo setup:

IMG_20160311_155233  IMG_20160311_155109IMG_20160311_154913  IMG_20160311_154837

Here’s some pictures of the full rotary servo setup:

IMG_20160313_100517  IMG_20160313_100531IMG_20160313_100611  IMG_20160313_101042IMG_20160313_101209

2 thoughts on “Linear vs Rotary Servos in Button Pusher

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s