The Little Red Elephant

Dennis Van der Staay, Ben Wang, Dan Kim

6.270 main web page

Strategy

Our strategy was for the protruding beams on each side of our robot (the tusks) and a lowering gate (the trunk) to collect the balls and deposit them into the nearest container. Due to robot's versatility, we could choose to either plow the balls, or trap the balls in the gate.

The final strategy was to collect the first two balls nearest to our back wall with the gate (3 pts), plow the center of the field to net an addition three balls (12 pts), and then disrupt the organization of the opponents balls.

Design and Implementation

Basic Design

Our robot went through three designs, beginning with a 12" by 12" square robot that had a 25:1 gear ratio and differential drive. However, the robot moved too fast, and often got stuck between the obstacle and the side walls of playing field. The second design was a tiny 8" by 7" robot with a 45:1 gear ratio, differential drive and a coasting third wheel. While the robot still moved a bit too fast, the biggest difficult was making accurate turns -- the uncontrolled third wheel would often cause the drive wheels to slip during turns if the third wheel was was not in proper alignment.

Taking into consideration the results from our first two preliminary robots, our final robot was 10" wide, 10" deep and 7" tall with a 75:1 gear ratio, differential drive and a third trailing wheel controlled by a servo. Each drive wheel was powered by three motors, and an additional servo was used to operate the gate.

Sensors

Our robot had a total of nine sensors, including five photo resistors, two touch sensors and two distance sensors. Four of the photo resistors were dedicated to detecting the initial starting orientation, while the fifth detected the match "start" signal. The two touch sensors were mounted on the back of the robot to detect rear impact and check to see if the robot was "squared up" with the wall. The distance sensors, mounted on the front of the robot, allowed us to deduce the position of the obstacle and therefore execute the appropriate case in our c code.

Software

link to c code

Our code organizational structure mirrored that of 2001 robot, "Don't Worry, Be Happy." The most difficult aspects of coding were creating cases for each of the four obstacle configurations, and utilizing shaft encoding to create a successful straight drive. In order to maximize the ability of the robot to move in a straight line, we found a combination of adjusting motor strengths and trailing wheel angle worked the best.

Competition Performance

Round One (Qualifying) -- 0 - 0; loss - our robot failed to start because we forgot to remove a "start_press();" from our code, we later qualified

Round Two -- 0 - 3; loss - our robot overshot a turn and got caught on a wall

Overall Record: 0 wins, 2 losses

Future Recommendations