Build Period:
Week 1
-
Week 2
-
Week 3
-
Week 4
-
Week 5
-
Week 6
PNW Regional:
Wednesday
-
Thursday
-
Friday
-
Saturday
As told by Tom Saxton
Updated March 12, 2005
At the practice tournament in Bellevue, we weighed in at 134 pounds, 14 pounds overweight. It's hard to lose 14 pounds from a robot, especially when we can't accurately weigh the darn thing. We worked like mad for two days after the tournament and took off as much as we could. We drilled holes in everything, the beams obviously, but even down to drilling holes in sprockets and cutting bolts that were longer than absolutely necessary.
After those two long days, our best guess was that we were maybe within a pound of the weight limit. We ordered aluminum sprockets to replace the two large steel sprockets on the arm, which would save us nearly a pound.
So, best case as we started the day Thursday was that we would in fact be very close to the weight limit, and that we could quickly swap the sprockets, maybe drill a few holes and get enough weight off that we could add the required team number signs and lights. A more likely scenario was that the sprockets would not be enough, so we'd have to remove the compressor and just run with one or two charged tanks for each match. From there, things get really grim with having to do the sprockets and remove the compressor, or even totally remove the pneumatics and just run the arm in one position. All of these scenarios mean we have to spend a bunch of time working on the robot mechanics and have very little time to work on the software, which was in a pretty sorry state since we had had basically no time with the fully assembled robot.
Sounds like fun, huh?
Cathy, Kris and Erik headed over at 8:30 to remove the robot from the crate. (Only three team members are allowed into the arena for the robot unpacking process.) By the time the rest of us had arrived at 9:00, they had already weighed the robot and found we were 3.7 pounds under the limit! I was shocked. This gave us enough room to put on the remaining required parts, and also throw on some glowing purple cables we bought mostly for showing off the robot after the tournament!
Things came together pretty well and we were able to complete the pneumatics, attach the signs and lights, and install another spike relay and the glowing cables. The robot was weighed and sized before the practice matches started. (Oh, yeah, we didn't really know what the size was, that could have been as difficult to solve as a weight problem).
In this photo, we're installing the final bits on the robot before inspection
photo by Barbara Joyce
Even with the bare minimum of mechanical work, we scrambled to get the potentiometers which measure the arm joint positions installed. We got them calibrated, but didn't have time to get the PID code tuned, so we'd have to drive the arm joints manually. The drive encoders were not working at all, but we can drive reasonably well without them. So, basically, the robot is in the same shape it was in for the practice competition, except that we'd solved the weight problem and were closer to having the software driving aids working.
As we queued up for the first practice match, Kris asked me what the robot was going to do in autonomous mode. That's the first fifteen seconds of the match where the robot executes some pre-arranged sequence of commands without human intervention. Kris and I had started working on autonomous the day after we shipped the robot, so we had code written, but it was totally untested, including a conversion factor between encoder ticks and feet that we had just made up. So, my first thought was it would be interesting to see how well our untested code would work. Then my second thought was the encoders don't work and aren't even wired up. So, imagine driving a car down the freeway, with the windows covered and you're trying to drive 1 mile using only the odometer to know how far you've gone, except that the speedometer cable isn't connected. Now imagine being as dumb as a computer, pushing the gas, see that nothing's happening (apparently). What do you do? Give it more gas and hope that helps! Except really, you're barreling down the road at top speed and have no way of knowing that.
That's our autonomous mode without encoders.
Since we had never run the code, we hadn't bothered to put in a way to disable it. So, when the match started, our robot was going to go into berserker mode and slam into something, the only real question was what. We didn't have time to download a software update, so we tried to get the event officials to disable us during autonomous.
I'm sure there's a way they can disable us during autonomous, but the people I spoke to didn't know how. So, sure enough, we took off and a pretty good speed, curving to the left, plowed through a vision tetra and then slammed into the side wall of the field, smashing the tetra. Even more fun, Kris found that it was impossible to drive backwards. So we spent the whole match slammed against the side wall and the only thing we could do was keeping driving into it! This year, each practice match has two rounds, so we got to do that twice! Our alliance partners must have loved us. Miraculously, we had didn't break anything but the tetra.
We quickly hooked up code to make it possible to disable autonomous and fixed the problem with driving. Cathy came up with an idea for knocking the dangling tetra into scoring position using only the arm without doing any driving. We had made a bunch of changes to the arm-driving code after we shipped the robot, so it took a while to get what used to work working again, and made slow progress getting stuff working for the first time.
With autonomous disabled, we were able to use the rest of the practice matches for drive and arm practice. After the practice rounds were finished, we had about three hours of work time left, so most of the team took off for dinner while Kris and I worked on software. By the time Caitlin and Kyle came back after dinner in hopes of getting some arm practice, we had Cathy's autonomous mode running and had the arm potentiometers calibrated and the PID tuned. Soon after, we had the auto wrist leveling working. So, we tuned the operator interface and got things working to the drivers' satisfaction and even got in some stacking practice.
It was an amazingly grueling day considering that the weight issue turned out to be far better than I had dared hope. The robot is working pretty well, the drivers are getting comfortable with the controls, and we might have a functional autonomous mode for tomorrow.
Meanwhile, Carol had gone out on a shopping expedition to get more supplies for making trinkets. By bedtime, the parents had produced another 150 with help from the students between the matches and the team meeting.
Build Period:
Week 1
-
Week 2
-
Week 3
-
Week 4
-
Week 5
-
Week 6
PNW Regional:
Wednesday
-
Thursday
-
Friday
-
Saturday