The DLR Robotic Ballcatcher was developed to demonstrate the dynamical capabilities of the DLR light-weight arm and hand. The robot can catch a ball, that is thrown onto the robot by a benevolent thrower. The ball is observed by a large baseline stereo camera, comparing each image to a slowly adapting reference mage. We track and predict the target position using an Extended Kalman Filter (EKF), also taking into account the air drag. The calibration is achieved by simply performing a few throws and observing their trajectories, as well as moving the robot to some predefined positions.
One objective of this system was to show that 3D visual tracking of a flying object is possible without making strong assumptions on the environment and using only off-the-shelf components like a PC (Pentium II/300MHz) and standard video cameras and framegrabbers with a frame rate of 50Hz.
In our general setting, the ball is in the air for about 0.8s to 1s, covering a distance of about 5m.This is just long enough for the robot to reach a typical catch point. Therefore it is essential to provide an early prediction of the trajectory to quickly command the catch position to the robot. As the ball is tracked for a longer time, the prediction becomes increasingly precise and the robots destination is modified. Therefore we put a stereo camera system with a quite large baseline of ca. 1m near the thrower and get this way a good prediction of the position and velocity of the ball after the first two frames from the cameras.