Team Echoes

Zippy 2 (RoboMagellan)

 -Mission

 -The Build

 -Robot   Anatomy

 -Challenges

 -Competition

 -Intrepid

 -Other Robots

Hexapod

FIRST Team 1047

Summer Robotics Camp

Ben's Portfolio

Sergiy's Portfolio

 

Competition

The Day Before
We got to Fort Mason to sign in for our event, receive our competition badges, and most importantly test Zippy on the field where the competition would take place. We calibrated the compass and set up a few of our own cones on the field to make sure Zippy still worked.



We found out that the cones we were using were slightly larger than the 18" cones used for competition. We were kindly allowed to borrow a few 18" cones for practice and we made sure that the camera could still track those cones. To our relief, the camera worked perfectly with the new cones.

Since the cones were a bit smaller, our touch sensor would run them over because it was not sensitive enough to detect their presence. This problem was quickly fixed by limiting how far the touch sensor could go out away from the robot, so that a very small motion of the mechanism would trigger a response. This also worked like a charm and no further alterations were necessary.

While we were out testing our own robot we met a few of our competitors who were also out there testing.


This is a video of our practice run at Forst Mason on the day before the competition.

The Day Of
The competitors were assembled by the head judge and everyone was given a course map. The course was laid out, and everyone had 30 minutes to get their robot ready for the first run. Since we felt confident, we asked the judge to let us go first. We had settings ready for a cloudy day and for a sunny day, but not for a day when the sun would come out and then go back to hide behind the clouds.

Just a few minutes before our run we had to choose which settings to load in. Of course, Murphy's Law took another strike and the conditions were those for which we were not prepared. We could not make a decision on whether to load in the sunny settings or the cloudy settings. Finally, we decided to make a hybrid setting which would use the brightest exposure of the cloudy setting, the darkest exposure of the sunny setting, and one in between. We set Zippy down for the first run with the program ready, and noticed that very many eyes were on us since we were first to go. However, it was no longer up to us what happened, it was all up to Zippy.

Zippy - First Run


The starting location was inside of a pit surrounded with some decently steep hills. The first task was getting out of the pit. We assigned Zippy to go out between the statue and the right hill, but due to GPS inaccuracy Zippy ended up facing the statue. Since we did not epxect Zippy to end up there, we did not tell him that he would be on concrete. Since he was using settings that we made for grass, Zippy could not turn very effectively and thus took quite a bit of time to go around the statue. Zippy made it to the first bonus cone (which multiplied the time by .1) and spotted it immediately. After touching the first cone, Zippy paused to get a stable compass reading and then started to move toward the second bonus cone (which multiplied the time by .25). Due to GPS inaccuracy, Zippy ended up about 10 ft away from the cone and next to a tree instead. For a moment, we thought that Zippy had started his search algorithm, which would have caused him to look for the cone only by turning in place. This would have ended our run since a tree was blocking the cone from view (due to the limitations of our microcontroller, we never made him go to another spot and keep looking if the cone was not found). However, Zippy only stopped because he had spun out and had to get a compass reading. Within a few seconds (which were the longest seconds of my entire life) Zippy moved on to find the second bonus cone utilizing our shadow settings. He touched it easily. The last cone was a breeze since no obstcles were in the way. Zippy touched it, making our final time 5 minutes and 59 seconds.
After counting in the multipliers (359 seconds x .1 x .25) the official time recorded was 8.975 seconds, which was astonishing. The judge had to re-calculate the time several times simply because the result was unbelievable.



This run was exactly what we had worked for. All we wanted Zippy to do was touch the final cone, which meant that all our work had not gone to waste. On the first run he touched all three! Now our job was done. We expected the rest of the day to be relaxing since our task was complete. We were very, very wrong.

Intrepid - First Run
Mark Curry's "Intrepid" was the first robot that appeared to be competition for Zippy. Most other robots sadly did not get to the last cone due to unexpected bugs and breakdowns.
Intrepid started out very stable and, after making it out of the pit, headed straight for the first bonus cone. Intrepid did appear slower than Zippy, but it was also that much more stable and did not waste any time. Although Intrepid got to the first bonus cone, it never locked onto it, and therefore never moved to touch it. While Intrepid was turning around, however, its wheel hit the cone, so the first bonus was counted in. Although Intrepid did not know that it touched the first cone, it made the very smart decision to abandon looking for the first cone and move on. Intrepid got to the second and third cone very steadily. It identified the cones quickly and carefully touched them. I believe that the final time for Intrepid's run was something around 7 minutes, which was then multiplied by the bonuses for a time of about 11 seconds. Although this was not as fast as Zippy, we immediately figured out that if there was any robot able to beat Zippy, it would be Intrepid.



Zippy - Second Run
This was our winning run. Knowing that Intrepid could cut off a lot of time on his run by speeding up the robot and focusing less on avoidance, we had to reduce our time as well. We decreased the distance at which the sonars would tell the robot that there was something in front of it from 12 to 8 feet. We also played around with our GPS locations so Zippy could get out of the pit more easily.
Although Zippy no longer spent time in front of the statue, he spun out on the hill, causing him to waste time getting a compass reading. However, Zippy reached the second bonus cone much more quickly without spending time next to the tree. All of these modifications brought our time down to 5 minutes and 28 seconds (official time of 8.2 seconds).

Intrepid - Second Run
Intrepid went out for a much smoother second run. The robot actually spotted the first cone upon approach instead of searching for it. It also moved faster this time. All in all, his time went down by over a minute! This brought him to within 20 seconds of our new time. Intrepid's best time was now about 5 minutes and 48 seconds (official time of 8.7 seconds).

Zippy - Final Run
We realized that the reason Zippy's paths were so crooked was because of gyro error. Since our gyro was not very precise, it would tell Zippy to go for a heading that was a few degrees off of the desired heading. As the robot went on, it stayed on a straight line in that heading. The GPS would recalculate the correct heading about every second. Once the destination got closer, the angle that Zippy was off by became more and more radical. At a certain point Zippy would correct to the new angle. This caused a huge loss of time. We set multiple waypoints over large distances instead of only one at the end to avoid this problem. Additionally, we devised a strategy for getting out of the pit more efficiently. We also further decreased the distance at which the sonars would recognize an object from 8 to 6 feet so that Zippy would see the grass as an obstacle less frequently.
At the beginning, it looked like a miracle run. Zippy got out of the pit much more quickly without stalling to wait for compass readings or getting onto the concrete. He headed for the first bonus cone much more precisely as well. Unfortunately, since we had taken a gamble by lowering the distance on our avoidance, Zippy failed to see a park bench in time to stop, and he hit it. This knocked out the CMU cam. Without the camera Zippy would never find any of the cones, so we stopped the run. Our best time remained 5 minutes and 28 seconds.

Intrepid - Final Run

It was the end of the day, and Zippy and Intrepid were the only robots that had touched all three cones. This run would decide the winner.
Intrepid's last run was faster than both its previous runs. It was just as sucessful at getting to the cones and at touching them. Intrepid spotted the last cone from a large distance at about 5 minutes and 18 seconds and moved in on it. Intrepid slowly made its way toward the last cone and all eyes were on the clock. The judge, David Camp, counted down the seconds: "20, 21, 22, 23, 24, 25, 26, 27, 28." Intrepid finally touched the cone at 5 minutes and 28 seconds, causing a tie! The judge had tenths of a second on his stop watch, but never recorded them. In a competition like this, no one would have ever thought times would come down to the second!



A3 - Final Run
We spent a little while chatting with Mark Curry, the creator of Intrepid, about the amazing coincidence that two robots with such different styles would end up doing such a complicated task over such a large course in exactly the same time.
During our conversation we noticed that A3, a robot that was not able to finish the course due to bugs in its previous two runs, was steaming towards the second bonus cone with only 3 minutes on the clock. After A3 touched the second bonus cone he had two minutes to get to the last cone. The robot overshot the location of the cone and spent quite a lot of time searching for it. A3 came in roughly 15 seconds behind the times of Intrepid and Zippy. This robot will definitely be one to look out for next year. It has proven that it has the speed and intelligence to do very well in this competition. If it works more consistently next year, it will be a formidable opponent.