|Robo Goal Keeper
This small robot has one big task. Defend the gate at all cost.
We use two Mindstorms Robotics Invention System and a java virtual machin on top of each. One for tracking the ball and one for moving the robot. This made it easy to split the work and validate the functionality of the individual parts.
The ball tracking was the hard part about this project. While it might have been easy with a camera, we didn’t have the fortune to use one. Instead we had to rely on 3 ultrasonic distance measurement sensors. These allow us to get the position and heading of the ball, at least in theory….
The sensors were giving us positions with tons of noise and some wrong values too. That’s why we had to create filter to remove unrealistic positions and average the remaining. This gave a good enough result that’s‘ correctness we could improve by having three measurements to work on.
The two controllers talk to each other over a Bluetooth connection. Our communication protocol is short and simple. We can tell the robot to move to a position from (0 to 100) and a stance (left, top, right).
The robot calibrates it self when it gets started. The calibration is performed by a touch sensor that tells the robot when he reaches the lowest end of his field of action. After he is calibrated he moves to the middle and waits for commands. When a command arrives he moves as fast as possible to the given position and turns his keeper in the given stance.