MIT 6.270 Competition - Team 10

"Hideous Monstrosity"




Overview

6.270 is an autonomous robot competition.  Each team has 3 weeks to design, build, and program a machine that will compete head to head with another machine in a simple contest.  The machines were built using Legos, and were programmed in C.  This year's contest was called "Chicken."  The contest table was a flat, rectangular table with a trough along one of the longer sides.  A square blocker could be placed in one of four locations in front of the machine on either side.  Balls were placed in specific locations around the table; points were scored by knocking balls into the trough and having them fall into chutes at either end of the trough.  The higher up the ball was in the chute, the more points it was worth.  At the end of 60 seconds, the team with the most total points would receive the win.


Our Team

Our team was composed of two members, Farid Jahanmir and Anthony Reinen.  We are both Juniors at MIT, and are both majoring in Computer Science.  Farid did all of the programming and some of the construction, specifically the trough car and the Handyboard compartment.  Anthony handled most of the construction (pretty much everything else), and came up with the main strategy.  We named our machine "Hideous Monstrosity" because, well, it was just plain ugly.


The Strategy

We decided to make the contest as simple as possible; a simple idea was more likely to succeed than a complicated one.  So, we resolved to score one point immediately, then find a way to block both chutes quickly.  The result would be a tie at best for the other team, or possibly a win for us if the other team could not score a point fast enough.


The Design

Our basic design was a rectangular chassis with two drive motors and a tethered trough car, which was held by two outward-swinging arms.  The machine was to rotate and drive towards the trough, knocking one ball in immediately and positioning the car over the edge of the main table.  The car would then be dropped into the trough and would drive over to the other end, blocking the chute on the opponent's side of the table.

Construction

  • The main chassis was a very sturdy rectangular structure, measuring 10" by 8".  There were four photosensors attached to the main chassis, along with 4 infrared LEDs.  These were used for orientation of the robot at the start of the contest.
  • Also attached to the main chassis were the two main drive gearboxes.  Each gearbox had a 45:1 gear ratio and was powered by two motors.  The gearboxes were attached directly to the main drive wheels, each of which were roughly 3.25" in diameter and extended about 1/2" from one of the short sides of the chassis.  The front of the machine was supported by a simple fixed wheel, which slid sideways during turning.  The rear of the machine was similarly supported with a fixed stabilizing point.
  • The Handyboard battery compartments were placed on top of the chassis.  The battery compartment was mainly composed of axle rods and angle connectors; since it was the last thing to be built we were running short of pieces.  The Handyboard compartment was built from Lego bricks and beams, and also served as part of the support for the servos.  The overall height of the machine with the Handyboard in place was roughly 6.5".
  • The two servos were placed on either end of the rear of the machine (the reason they were placed at the rear of the machine is that the "front" of the machine was determined before we had decided to use the trough car idea, and we were too lazy to change the front/rear orientation so that it made more sense).  The servos served as the rotating mechanisms for the robot's "arms," which were used to drop the trough car into the trough.  With the arms in starting position, the overall dimensions of the robot were 12" by 12" by 6.5".
  • The trough car was powered by two motors, one on each drive wheel, with a 17:1 gear ratio.  The dimensions of the trough car were roughly 5" by 3" by 4".  The car was tethered to the main robot with flexible axles and hollow tubing which, when fully extended, measured 7.5' in length.

Earlier Ideas

Our original plan was to use a scissor arm to extend along the trough and block the chute at the other end.  The main problems with this idea were that the scissor arm itself required far too many Lego bricks for its construction, and that opening it and controlling its direction would have been far too difficult for our motors and servos to control.  After abandoning that idea, we considered having a tilting arm in the center of the machine, which would drop to the left or right side depending on what side of the table the trough was on.  The arm would have a rectangular cage at one end, into which we would place the trough car.  Once the arm was dropped to the side, the car would drive out of the cage into the trough.  This idea had several issues; the dimensions needed for the length of the arm and size of the cage would have made the machine too high, positioning the servos in a stable position at the base of the tilting arm would have been extremely difficult, and there was no good place to store the tether without having it get caught on something.  Finally, we decided the easiest thing would be to just drop the car into the trough and have it be able to drive in both directions, which is the strategy we eventually went with.


Problems we had

The biggest problem we had was communication within the group, especially towards the end when we were spending lots of time in lab.  We weren't able to work as efficiently as we thought we would, which ended up affecting the progress we were making with the robot.  The first major machine problem we had was during the qualifying round, when we discovered that not shielding the sensors resulted in inaccurate readings under the lights in 26-100.  After adding shielding, the machine would orient itself properly each time, but we still had plenty of other issues.  Our tether had to be redesigned to be more compact, but even after redesigning it had a tendency to get caught on part of the machine during deployment of the trough car.  The trough car itself would often not fall straight down; it would either tip over immediately or would get stuck between the wall and the tether.  Although the machine did work during a few test trials, the deployment mechanism was far too unreliable and prone to failure.  Also, we were unable to come up with a good way to block our chute, which would have been a major problem had we gone up against a machine that was capable of dropping balls on our side of the trough.  We were eliminated during the first contest round because we were only able to score one point and failed to block the opponent's chute.


Moral of the Story

  • If you are going to have a good idea, have it earlier rather than later.  Even good ideas need lots of testing time.
  • If you can't see any good reason why the T.A.s are suggesting you build something a certain way, listen to them anyway.  You don't want to figure out why they were right during a contest round.
  • When you're frustrated because you've been spending too much time working on the robot and not enough time eating, sleeping, etc., try not to take it out on your partner(s).  Chances are they're just as frustrated, and if you can't find a way to work together, all you'll end up with is a really ugly machine that works 10% of the time (and yes, that 10% will ALWAYS be during practice rounds and NEVER during a contest round).