When the robot moves, the ball will roll along with the robot. In order to minimize friction as the balls roll under the robot, the walls and gates of the compartments have freely rotating wheels. We implemented a differential drive system in this version using a very unique adder-subtractor transmission system. The diagram at left illustrates how the adder-subtractor transmission works. There are two differentials located in the center of the gear box.
Differentials work by averaging the angular velocities of the rotations on both sides.
The differentials then average those speeds together. This is useful if we decide to drive one motor at a time. The differentials are then connected to the main drive wheels, which cause them both to move in the same direction with the same speed, so the robot can move forward and backward in a straight line by itself, using no shaft encoding. If we only drive motor A, the differentials both spin at speed A, causing the wheels to move in opposite directions with the same speed, so the robot can execute left or right spins perfectly in place, again without the help of shaft encoding. In addition, if the robot gets stuck against something while turning, the differentials transfers torque from one wheel to another, allowing the other wheel to continue turning.