Strategy
Initial Strategy:
Originally,
we intended for the ‘bot to receive the flash and begin
spinning in place until the front beacon sensor acquired the dispenser
beacon. The ‘bot would then straight
towards the dispenser until we hit the black tape with the two front tape sensors. The ‘bot would determine the field side based
on which tape sensor was triggered first.
It would continue driving
until the center tape sensor, mounted on the
drive axis, detected the tape. After the
‘bot was centered on the tape, it would complete a blind timed rotate to point towards
the shorter arm of the L leading to the dispenser. The ‘bot would drive forward until the center
sensor hit, then rotate until the tape was between the two front sensors. At this point, the ‘bot would drive forward,
actively staying on the tape using the front sensors, until both triggered at
the same time, signifying that the T at the dispenser end of the tape had been
reached.
Once at the dispenser, the pusher, a scotch yolk mechanism,
would request the balls according to the timing laid out in the project
specs. As the balls were received, they
would drop into a sorting mechanism (driven by a servo) which would sort all
black balls and six of the yellow ones into a double
barreled dumping tube. The remaining
balls would be sorted into a tube leading to a flywheel-style shooter. The shooter would launch the balls into goal
2. Once all the balls had been
taken from the dispenser, the robot would drive backwards and orient itself
towards goal 3. Next, the ‘bot would
drive towards goal 3 using closed-loop control with the triple-IR sensor. Upon reaching goal 3, the robot would load
the contents of the dumper tube into the goal.
The black balls were sorted and stored into the dumping chute because
they were worth the most points when scored into goal 3.
We chose this strategy initially because it provided the
greatest flexibility as far as choosing when and whether to shoot or dump
balls. Once we had all of this hardware,
it would have been a simple matter to program changes in the strategy to
accommodate what was easier or harder to accomplish.
Actual Strategy:
Once it became clear that we would not
have time to implement solid state machine code and complete all of the
mechanical functionality that we originally intended, we decided to scale back.
Ramming
mechanism
For the final
strategy, the ‘bot would receive the flash and begin spinning in place until the
front beacon sensor acquires the dispenser beacon. It would then drive straight towards the
dispenser until it hit the black tape with the two front tape sensors. The ‘bot would determine the field side based
on which tape sensor was triggered first.
It would continue driving
until the center tape sensor, mounted on the drive axis, detected the
tape. After the ‘bot was centered on the
tape, it would complete a blind timed rotate to point towards the shorter arm
of the L leading to the dispenser. The
‘bot would drive forward until the center sensor hit, then rotate until the
tape was between the two front sensors.
At this point, the ‘bot would drive forward, actively staying on the
tape using the front sensors, until both triggered at the same time, signifying
that the T at the dispenser end of the tape had been reached.
Once at the
dispenser, the ‘bot moves forward and back on a timer, using a ram mounted on the front to depress
the button to request 10 balls. As the
balls fall out of the dispenser, they fall onto the top deck of the bot, which
has ramps that funnel the balls into a double barreled dumping tube. As soon as 10 of the balls have been taken
from the dispenser, the ‘bot pulls back and orients towards goal number one
using a rear beacon sensor mounted above the dumping tubes. Once oriented, the ‘bot drives straight
forward towards the goal. After a 3
second timer expires, while still moving, the gate on the front of the dumper
opens, spilling all of the balls out to roll towards the goal.
We chose this
strategy because it seemed the best fit for the mechanical and software
functionality that we had already developed, and required the fewest new states
for our software.