
Fig 1: Long exposure shot of first prototype juggling a table tennis ball.
How do you build a robot that can juggle a ball without sensing? In a perfect world, it would not be hard to build: the robot would strike the ball with perfect motion and timing, the ball would be perfectly round, and it would bounce along an ideal path to exactly the same height each time.
The world is not perfect, however. Balls that appear round to the eye are actually covered with tiny manufacturing defects, and even the most accurate mechanisms cannot repeat the same motion twice. The result of this imperfect world is that balls do not bounce along a perfect path – they spin, they bounce too high, too low or sideways. In other words, they deviate.
Dealing with Deviations
Because the Blind Juggler has no cameras, no microphones or any other sensor to measure the deviations, it cannot actively correct the trajectory of the ball. We must therefor design the robot such that it automatically compensates for the deviations. For example, if the ball bounces up too high, the design has to force the ball to bounce lower again. The goal of the mathematical analysis is to find such a design.
Designing a Stable System
In technical terms, a system that automatically compensates for deviations is called a stable system. We have two parameters at our disposal to stabilize the juggling system: 1) the motion and 2) the shape of the paddle. The goal of the mathematical analysis is to find a stabilizing pair of parameters.
The principle of the analysis is simple: After calculating the ideal trajectory of the ball, we add small deviations to the ideal trajectory. For example, we assume the ball starts off a bit too high, and with some small horizontal velocity. We then use the physical laws of free fall and impact to model how these deviations develop over a series of bounces. If the deviations become smaller with each successive bounce, the system is stable. We therefor search a range of motions and shapes that result in deviations that become smaller over time.
The Key Parameters
The Motion: The analysis shows that the paddle must decelerate as it strikes the ball. We can intuitively understand why this makes sense: If the ball bounces too high, it takes longer to return to the paddle; since the paddle is slowing down, the paddle has a lower speed at impact and consequently, the ball bounces less high. The opposite is also true: when the ball is too low, it hits the paddle earlier the next time, so the ball is struck harder and the ball reaches a higher apex again. Therefore, the motion of the paddle forces the ball to maintain a consistent height (Click on the illustration to the right to see a sketch of all those cases). On the hardware page, you will find experimental results showing that the ball’s apex height is indeed very consistent.

Illustration of horizontal stability through paddle shape
The Shape: We find that the ball’s trajectory is stabilized in the horizontal directions by a slightly concave paddle shape. The slight curvature of the paddle keeps the ball in the paddle’s center and prevents the ball from falling off. This is shown in the illustration to the right: The further the ball hits the paddle away from the center, the stronger the ball is pushed inwards again. We find in our analysis that the flatter the plate, the higher we should be able to juggle. We manufactured two paddles: one is a bit flatter than the other one. The prediction our mathematical model makes is indeed true: with first paddle, we can juggle up to about 1.4 meters before the ball falls off; with the second flatter paddle we can go up to 2.0 meters (see video page for a video demonstrating this).
Mathematical Background
More specifically, we analyze the dynamics of the deviations. The basic idea of the analysis is quite intuitive when we analyze the following dynamics:
Let be the impact location deviation of the ball on the paddle, or, how far the impact occurs from the paddle center. In the ideal case, this deviation is zero. The parameter is some number and the index denotes the number of the impact. The above equation therefore reads: The impact location at impact is times the impact location at impact . Basically, describes how the impact location changes between two impacts.
Now we can think about what this number has to be such that the ball does not fall off the paddle. Let’s assume that is 2, and that we start with a first impact location of . The sequence of impact locations is then
The impact location doubles at every impact, and will get larger and larger. The system is unstable, and the ball will fall off. On the other hand, if we get
The impact locations get smaller and smaller – the system is stable. The same applies to negative values of : as long as is not smaller than , the system is stable. We can therefor conclude that must be in the range (< reads left side smaller than right side) for the system to be stable. We find that for the impact locations, the number depends on the shape of the paddle, or more specifically, its curvature. We therefor need only find a value for the paddle curvature for which is in the stable range.
You may find the above analysis in full detail in a paper we published about the Blind Juggler.