Lab 4 report

advertisement
Team 8
1
Bryam Noguera
Joseph Neville
Lab 4: Harvesting contest
Team: 8
Team 8
2
• Your hardware and software design
Our robot, FrankenBot, was destroyed from the previous assignment and rebuilt to create the
new FrankenBot 3.0! During the building process of FrankenBot, we couldn’t seem to place
both sensors on the bottom because the weight of the sensors would bring the Legos down and
FrankenBot’s sensors would be touching the ground. We re-designed the robot many different
times so that the weight wasn’t an issue. Finally, we couldn’t figure out a way to have the
sensors not touching the ground and we ended up adding support to the top of the robot to
hold FrankenBot’s sensors up. This however put us in a situation that we didn’t notice before
starting the building process; the sensors were aimed up! Part of FrankenBot was destroyed
and we added a straight piece instead of a tilted upwards part that was messing everything up.
We also added a rotating part so that we could angle the Ultra sound sensors at any angle since
this was also causing us and issue while testing our robot. We finally had the sensors not
touching the ground and not aiming upwards and everything was well until we noticed we had
not yet put the color sensor and RFID sensors on. We definitely couldn’t put those in the front
because of the weight issue we had previously. The only option we found was to have them in
the back although we knew this wasn’t the best option for us in order to win the contest
because it would require extra thinking to code because now we not only had to consider the
front for detecting the walls but also the back for picking up food and detecting RFIDs. At first
we placed both of these sensors to high off the ground that they weren’t reading anything. We
lowered both of them down and finally we were getting closer to the finalizing FrankenBots
design. We tested the robot a couple of times and for some reason it wasn’t detecting the
colors correctly and the numbers to check for colors were off. We then when back to the robot
and kept the RFID low to the ground but we moved the color sensor up higher to see if this
would fix things. Turns out that moving the color sensor higher gave us the right results. Last
thing to make our robot look good was to add a man driving it; he would keep falling off so we
decided to take him out at the end anyways.
For our software design and before implementing our robot, we thought about how we wanted
to do this, and we thought the best thing to do was for the robot to move like a snake. It zigzags
all the way to the other side of the table. To do this we had the robot start at any position and
find the left wall before anything else. Once the robot had found the left wall, the next step was
for both sensors to be triggered and so the robot would turn 90 degrees move forward a little
bit to cover space and turn 90 degrees again. We also had a Boolean so that when both Ultra
sensors were triggered the second time, the robot would turn left instead of right once it would
hit the other wall. The software was design for the robot to keep doing this and eat food and
detect RFIDS on it was the other side of the table until it hit 60 seconds. It would them make a
noise that signified time was up for searching. It would then try to find black as its goal and the
algorithm back was the same as trying to search for stuff to pick up.
• The problems that you encountered during the implementation
1. The inability for FrankenBot v2.0 to be able to turn an exact 90 degrees.
2. We found that the sensors were picking up things that they shouldn’t be, causing the
robot to make turns at random times or even constantly making turns.
3. The arms we originally used could no longer support all 4 sensors at once.
Team 8
3
4. The change in weight after reconfiguring the robot caused the turn problem again.
5. The change in weight caused the motors to move at different speeds, making the robot
no longer drive straight.
6. The lower Ultrasonic sensors picked up the surface of the table, causing the same turn
issue as in #2.
7. The color sensor picked up the table and black square as the same color.
8. The changed location on the color sensor made it so that the robot would never be able
to detect home.
• Your solution to the above problems
1. We tuned the turn wait time to make it so that the robot turned as close to 90 degrees
as possible.
2. We suspected that the sensors were picking up things far away and was turning because
of that (its turns seemed to correspond to where we were located around the side of
the table). We solved this by reconfiguring FrankenBot to version 3.0, moving the
ultrasonic sensors to a lower point on the robot.
3. We moved the RFID and color sensors to the back of the robot, allowing most of the
structure supporting the brick to support the sensors as well. This allowed us to use the
arms only for the Ultrasonic sensors.
4. We adjusted power levels and turn times again to make it so it turned as close to 90
degrees again.
5. Adjusting the power levels on the motors allowed the robot to drive straight.
6. We added a minimum sensor distance so that they would ignore the surface of the
table.
7. We raised the color sensor, causing most of the surface of the table to read as 17
instead of 14(the value of the black paper). Unfortunately, there were still certain spots
on the table that still read as 14, causing the robot to find home there if it happened to
travel over that spot.
8. The location on the back of the robot allowed it to read the smaller squares on the
table, but due to the fact that the black square was in the corner, the obstacle
avoidance algorithm caused it to never allow the sensor to hover over the square.
• Any unsolved problems and reasons for why you were not able to solve them.
The unsolved problems our robot had were mostly with the Ultra sound sensors. Although we
were able to place the sensors low enough to the ground and got them to be straight not tilted
aiming up or aiming down, they would still pick up things that weren’t the wall. We think that
part of this problem was that the sensors were upside down and they wouldn’t detect as
expected anymore, and so our robot would turn right or left for no reason because the sensors
had detected something. We could have put them upwards but coming up with the design was
really difficult for the way we did in the first place. Another issue we had was that while the
robot tried to find the left wall, it would either go really far from the wall or too close to the
wall; we believe the issue was also due to the ultra sound sensors. Another problem that we
saw at the very end while running our robot in the contest was that it would never find home
Team 8
because home was located in a corner. Our robot wasn’t designed to go through corners and
so it would have never reached home. Another problem was our algorithm to find was very
wrong. We should have gone to every corner because having the same algorithm to search for
food and RFIDS to go home wasn’t the smartest thing to do because it takes too much time to
do it that way.
4
Download