This
is the journal I took as secretary of the group.
Click on a day to see the entry for that day.
--Roxanne
sunday
|
monday
|
tuesday
|
wednesday
|
thursday
|
friday
|
saturday
|
2
|
3
|
4
|
|
|
|
8
|
|
10
|
|
|
|
14
|
|
|
|
|
19
|
|
21
|
|
|
|
|
|
|
28
|
30
|
|
|
wednesday,
january 5, 2000
|
|
|
Monday
was parts sorting. Justin hadn't flown in yet so
Neil and I had to do an half an hour each.
Yesterday was the first day of lecture. The staff
introduced themselves and talked about the class in
general. They presented the competition theme, and
at the end, we got our kit of legos and stuff.
Again, Justin still was not here and so missed the
first lecture.
Before
lecture today, I met with them both (Justin had
come back) in their dorm. Neil and I opened up all
the little packages we recieved in lecture
yesterday. We looked at all the pieces, wondered
what they did, and then sorted them all into
tupperware and boxes. Meanwhile Justin read over
the notes, contest rules, and whatnot that he
missed because he was on a plane. We discussed a
little bit of strategy, but nothing substantial or
within reason (i.e. no teleportation was not an
option).
In
lecture, we learned some basics about sensors and
actuators.
After
lecture, we went back to the dorm and discussed
more strategy. Should we try to put all the blocks
in jail? Should we go for the professors? It seems
we should definitely go for the two hackers on the
side.
|
|
thursday,
january 6, 2000
|
|
|
Today
was the first day of recitation. We have Andy as
our instructor, and Bernard (who was a no-show) for
our T.A. In class, we discussed some potential
strategies. This is when our team realized we read
the table setup wrong, and that putting all the
blocks on our side was a net gain of zero. Silly
us. The last thing we did in lecture was to build a
gear box. But our team didn't realize that we
needed the kit for recitation so we just looked at
the cool example robots that Andy brought to
recitaiton.
After
recitation we went and looked at the contest table.
It was much bigger than I expected. With a better
idea of that task at hand, we went back to the dorm
to scheme and strategize and play with Legos. We
decided it would be useful to attempt to built a
gear box. And our attempt proved successful. We
also discussed a couple of new strategies since the
old one didn't make any sense.
|
friday,
january 7, 2000
|
|
|
Today
in the Java lecture, Neil handed me a paper listing
two possible strategies. It was pretty detailed
with a pros and cons list. Of course, Justin didn't
make it to the Java lecture until it was pretty
much over. I don't think he's a morning
person.
Justin and
Neil walked into the third lecture with a new
strategy. We would go for the blocks that we were
certain of, i.e. the two hackers beside the jail
and the four professors. Today's lecture was about
the controller boards. All three of us must have
been pretty tired since we each fell asleep for
about five minutes at one time or another.
|
sunday,
january 9, 2000
|
|
|
We
made a LOT of progress today. We began to piece
together a semi-functioning structure based on our
strategy. There isn't a lot, but it's a start. So
far we have a four wheels with a motor box and gear
train attached to each of the back wheels. For
convinience, we didn't line up the front wheels
with the back, a minor thing. If it's a problem, we
can fix it later. Between the right wheels and the
left wheels will be a channel so we can run over
the blocks, going backwards and
forwards.
My fingers
are numb from pushing pieces together and pulling
them apart. Why are Legos so sharp if they're made
for kids?
|
tuesday,
january 11, 2000
|
|
|
After
recitation, we did some minor stuff in the lab. We
wired together a couple of motors and
conceptualize the door and channel.
|
wednesday,
january 12, 2000
|
|
|
We
realized that our gear ratio was really high
because we used gears to connect the gear box to
the motors. So we started over and redesigned the
entire thing. We also attemped to make doors to
keep the blocks in our channell. Neil and I
accidently fell asleep while Justin continued to
redesign. It was not the most productive
day.
|
thursday,
january 13, 2000
|
|
|
After
recitation, we went to lab. There wasn't much
to do without a controller board so we did some
easy stuff. More wiring together sensors and motors
that we had, bracing, and redesigning the shape.
We're working on how to attach the wheel to the
door on a servo.
|
saturday,
january 15, 2000
|
|
|
Justin has gone to NYC, so Neil and I went to lab
to feel productive. We figured out what
sensors we would need to implement our
strategy/design. About four of our points
were used up buying extra sensors, and ten dollars
was used to buy another servo. We stayed for
about four hours wiring up our sensors, the new
servo and the second battery pack. We also
used some cardboard to make a preliminary cardboard
channel. We will try testing this channel out
before making the real one out of the base plate.
|
sunday,
january 16, 2000
|
|
|
Now
both Neil and Justin are gone. Justin is
still in NY, and Neil went skiing. I stayed
behind and worked a bit on the code, but its hard
without the controller boards..
|
monday,
january 17, 2000
|
|
|
Hmm...
still, no controller boards.... strange. Today, we
worked on coding so that by the time we got the
boards, we would be ready to test.
|
tuesday,
january 18, 2000
|
|
|
Today
right before recitation we got our controller
boards. In recitation, the organizers showed us how
to upload the kernals and our code.
After
recitation officially ended they ripped the boards
away from us. Reason: the boards had a tendency to
blow up. Fun fun fun!
The team
headed home to work on the bot and the code. We
were able to get the front door with the servo
working well. It should hold because it was braced
better. Most of the code is relatively unchanged.
We have about 3 or 4 days until the mock
competition. I think the team is less than eager
for Judgement Day. The robot should at least move
forward. Hopefully.
|
friday,
january 20, 2000
|
|
|
I
think I caught a cold or the flu. Going
snowboarding last night didn't help. I stayed
at home and tried to code, though I wasn't very
efficient in my flu state.
Meanwhile
Justin and Neil went to lab for most of the
day. They stayed from 11 A.M. to 8 P.M.
They tell me it moved for the very first
time. I'm sad that I missed our baby's first
steps... er... well, technically it rolled. They
worked on the code mostly (Neil's laptop proved to
be very useful). They calibrated turns in
code by random testing. The
"DifferentialDrive" code provided for us was
removed, because our robot was not driving
straight. Instead, it would zig-zag in a
diagonal across the board. So Neil wrote a
new differential drive routine. This new
routine did not use shaft encoding to drive
straight, instead the stronger motor is driven at a
harded-coded percentage of the other. They
also built a place for the skiffboard and battery
pack.
|
saturday,
january 22, 2000
|
|
|
Today
we met at 11:30 in the lab. Before we went to
lunch, everything was working swell. Justin
and I planned out the form and shape of our
channel, while Neil wired more sensors. Since
Justin drove to lab (because of the large amount of
stuff to haul), we decide to treat ourselves to a
nice lunch at CPK.
After we
got back to lab, we managed to successfully destroy
*THREE* skiff boards. The first mysteriously
stopped sourcing power to the motherboard.
The second as well the third started smoking after
the code was loaded.
We decided
to hold off on trying anything with the new
board. Justin and I made the channel from the
base plate and Neil looked at Interactive C.
While Justin was having fun bracing our new channel
(as bracing is his favorite hobby), Neil bitched at
the computer, very annoyed at having to switch to
the far inferior language of Interactive C.
Neil
became sadistic. "I want to burn a
board. I want to burn a board." I think
the task of porting our code from Java to C,
squished all the hope out of his poor little
soul. He turned into a bitter, pesimistic
man. Poor Neil. Justin and I agreed
that Neil had completely lost it. He was
talking and cursing to himself.
Our fourth
skiffboard seemed to be working fine. Our bot
consistently grabbed to two hackers and deposited
them into our jail. GO ROBOT! GO!!! It
seems to move up the ramp, but turns more than 90
degrees. Going for the hackers on the the
pyramid is not reliable yet.
|
sunday,
january 23, 2000
|
|
|
I
have brought my laptop to lab so that I can type
the journal as the days go by. My memory at the end
of a long day is crappy . Plus, I forgot to enter
in a couple of days worth of entries for the middle
of this week.
Tomorrow
is the mock competition. We hope to have a
completely functional robot by the end of today.
Unfortunately, one of the gears on our motors came
off last night. As a result, we began the day by
repairing this motor, as well as finishing
placement of our last few sensors. Fixing the motor
somewhat upset our previous calibrations. After we
fixed the motor, we tested out our beacon and our
orientaiton routine. Since it always thought
it was facing right we debugged the routine.
It took a while to fix it completely debug the
code.
At the
same time, we modified the channel to make it
extend further outward. This made room for
the front two push button sensors.
We're
going to code line following or line
detection. "ahhh
fawck!"
7:10 :
We're going to go to eat now.
We ate at
MacDonalds.
I don't
like lego. I don't like sensors or
actuators.
Neil has A
LOT of errors in his code. So we must wait. I
have no fucking clue how this robot is going to win
anything. Neil is talking to himself
again. Tension is rising.
EVIL MEAN
people keep taking our tools without
asking!!!! I have taken measures to ensure
that they will pay a very painful price. Most
of the tools are sharp enough. How ironic
that the tools they steal to help them can also
hurt. I await for blood. Vengence shall
be mine!!! MUHAAAAAAAA!!!
roxanne
is now off her rocker -Neil
Technically
it's monday now...12:30 A.M. The
robot drives pretty straight! Woohoo! Justin wrote
some code to make the robot figure out when it's on
the yellow line using our new LED/transistor pair,
but as of yet, the robot remains confused.
Apparently, the processor can't handle reading the
sensor and running the robot at the same time, so
it tends to overshoot the lines =( how sad. Stupid
board.
This is
my one entry in the journal.
-justin.
4:25: We
give up for today/tonight. We're all
tired. Neil says he's not being productive.
So we're going to stop for tonight. I offered
to stay on working if Justin wanted to but he
decided that we should go home. I don't
mind. Someone is playing mediocre music and
then singing way off key to it. They both
think I need to sleep some because I'm still a
little sick. Maybe they're right.
So far the
new differential drive works somewhat well. In
addition, the light sensor that we placed on the
left side of the robot allows us to get onto the
ramp accurately on the longer axis of the board.
Unfortunately, our turns aren't quite as accurate..
perhaps because of voltage problems or just plain
inaccuracy. We need to work on that if we want to
continue with our current strategy. In any case,
we'll try to do this so that we can grab one of the
profs, hopefully, and then continue with the rest
of our strategy, since orientation isn't too hard
with the walls around us and the light
sensor.
Tomorrow(today),
we'll need to practice calibration, make sure the
go sensor works and turns off after 60 seconds, and
then we should be ready for the mock contest. After
seeing how much work went into getting the first
part of our routine down pretty well, I would hope
that since the other teams, for the most part, are
behind us, that we will kick their skinny little
asses all over the freaking board tomorrow if they
dare go up against us. we're the only team that's
been here pretty much continuously since 11 am
yesterday morning. Justin says the robot is falling
apart. i don't care. let it die. die die
die.
That last
message was brought to you by Neil. I think he
wants to go to sleep.
Unfortunately
for Neil, Justin keeps saying "Just one more
run". So
Neil chokes himself to death with his scarf.
Finally after 30 minutes of "one more run"s, we're
going home.
|
monday,
january 24, 2000
|
|
|
We
woke up early today. Because of techinical
difficulties the full team wasn't together until
11:15 (i.e. I was late). We played with the
90 degree turning and saw that the bot would turn
different angles at different points on the
table. Next we worked on the calibration and
orient routine. Today's the mock contest. I
think we'll enter.
WE TOOK
THIRD PLACE!!! YAY!!! Well, so it was only
out of 7 teams but we did well all things
considered . At least we had the confidence
and the robot to enter. That's more than a
lot of teams can say.
Arg!!! I
want to give up. It doesn't seem worth the
time.
Now we're
trying line following.
This is
my second entry into the journal.
-justin.
Okay, they
went to eat. I'm sitting here feeling sorry
for our robot. And how pitiful it is.
It started out as a really cool robot.
Everyone was impressed by its speed and turning
ability. But now... well, it doesn't seem so
impressive.
Our
biggest problems are going straight.
Our
turning ability was improved by magnitudes after we
started using the sum of the right and left
encoders, which appears to compensate for the
different turning ratios that are required by the
slope of the table. To do this, Roxanne coded
something that would allow us to hold a button down
until the turns were calibrated.
woohoo.
Now,
we're go mostly straight, so the robot is now good
to go.
ow my
head hurts;
void
killRobot() {
useHacksaw();
useHeatGun();
useBigHammer();
if
(!RobotDeadYet){
ScreamInAnnoyance();
throwRobotAtAnnoyingRobotWithArms();
}
}
-Neil
I am a
stupid moron. I need to pee. I going insane.
blaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaah!!!
I want to
sleep.
Justin
staying
Neil and I home going
we come back
8 morning.
|
tuesday,
january 25, 2000
|
|
|
Oops.
I just erase the journal entry so far for today.
I'll try to recreate the jist of it....
Today is
Round 1. We're trying desperately to get our
act together. I think we have a good shot
given that many other teams are only trying to
qualify.
We don't
have everything perfect, but hopefully it will do
something right.
We're
practicing the robot with all the code even the
calibration routine.
This is
my third entry into the journal.
-justin.
YAYAYYAYAYA!
we won our first match. I think we got very
lucky.
|
wednesday,
january 26, 2000
|
|
|
Today
is much more relaxed atmosphere than the past
couple of days. We've won the first round
which is much more than we had expected.It seems we
were VERY lucky too, because the direction we
faced happened to be the best one for our
robot. It's a good little robot. We
love our robot.
We're
trying to make our robot a little more dependable
in all situations. After
it gets the first two hackers, it isn't
reliable.
Neil has
found a LED panel. It looks like the one for
the start light. He taped it to our bot.
I think he's trying to disorient the other bot. In
the end, it will be removed because it's blinding
me.
We added a
lot of anti-stall and anti-getting-cornered-in code
so that our robot will (hopefully) be able to
maneuver itself if it gets caught somewher eon the
board, either through its own inaccuracy or through
the actions/position of the other robot. We're also
doing some testing on how to run over
arms.
Our turns
are really good, but only if the voltage is above
6.1 V. We borrowed a multimeter from Mr. Yip so
that we can check our batteries during competition
and make sure that this conidition is
satisfied.
It's
pretty crazy in lab now. Only three hours to
impoundment, but there seem to be quite a few teams
that haven't qualified yet. How scary.
OOOOOH a
PERFECT RUN!
Hopefully we
go against a placebo.
This is
my fourth entry into this journal.
-justin
ARGH! our
orienting method stopped working! Apparently, our
sensor is too close to the edge of the light box,
so that it ends up not detecting the light.
However, with three hours until the new extended
impounding time, we were able to write a more
robust orientation code than the 'find brightest
light' code we had been using. Just glad we caught
it before impounding.
After we
did orientation, we tested a couple more
times. Lab is packed. And we keep
wasting our table time because it rarely works all
the way through. The pressure is
on. Hopefully competition will be
better. Like its designers, our bot works
under pressure.
|
thursday,
january 27, 2000
|
|
|
The
competition was exciting. Our bot placed
somewhere between 6th and 9th. More than we
could have hoped for when started this journey in
the beginning of January. It was
upsetting that the "Quik Chow" decided to stop
functioning after facing "King Louie" in the third
round. We think their was some mechanical
error that we couldn't see. It was performing
well on the table in lab. Something happened
between impounding and competition, which made it
hop over the blocks and get caught in our
channel. It was a little disappointing that
our robot failed to do what it was designed to do
in those last few rounds and that it made it that
far only on luck.
It seemed
that a lot of the top teams only had luck on their
side and it was not because of unique design or
robust coding. We were very impressed with
the teams that actually sorted, such as Team 54
("Handy Job") and Team 32. Even though they
didn't work perfectly they had great potential
given more time.
Seeing it
perform out there along with the others, there were
one possible design changes that came to
mind. The channel could have been made a
little wider and lower to the ground. This
would have prevented hopping over the blocks. We
were limited by the lab space and the amount of
time. If there had been more tables to practive on
maybe we would have a better robot. But we gave it
our best shot and that's what counts. It was fun
and exciting and learned a lot because of the cool
staff.
|
|