Octo-Bouncer Can Keep a Ping-Pong Ball Going for Hours
A Teensy-powered project with 120 FPS OpenCV image processing and smooth stepper motor moves.
If you’ve ever played ping-pong — or more properly, table tennis — you know that while bouncing the ball on your racquet is trivial for skilled players, it’s actually a pretty challenging feat for those just starting out. If you’ve ever wondered whether a robot could be programmed to do the same action, the answer — as shown in the video below — is a resounding ‘yes.’ Doing so, however, requires a huge amount of skill and dedication.
Electron Dust's Octo-Bouncer uses four servo motors to bounce a ball up and down, employing a linkage system to translate circular motor into linear pushes. A Teensy 4.0 board is implemented for control, chosen for its powerful 600 MHz processor. This enables quick reaction, and steppers set at 25,600 steps per revolution — or a staggering 128,000 steps per revolution if you count the 5:1 gearboxes used.
Along with the Teensy board, the Octo-Bouncer uses a Unity application to track the ball position at 120 FPS via computer vision, with a camera setup underneath the clear bouncing surface. The application also executes inverse kinematic code for calculate motor rotations. If the device’s programming wasn’t impressive enough, the 150+ aluminum parts used were milled on a small CNC machine, with bearings applied to each joint.
It’s a project that has been in the works since 2015 over at least two other iterations, and the results speak for themselves. While the sub-5:00 video below is pretty incredible, you should note that it can actually “keep the ball bouncing for hours.”