Our goal was to create a reliable, clean, and efficient robot. We designed the robot carefully with much emphasis placed on maximizing the usable space of the robot for game object manipulation. We thought carefully about component placement with the goal of minimizing wire lengths to ensure clean harnessing and easy debugging.
The first and most important subsystem is the drive train. It consists of two motors with encoders, two castor wheels, and four line tracking sensors. We chose to put the wheels as close to the edge of the robot as possible for maximum usable space beneath the base plate.
Below is the first iteration of the robot moving towards a beacon.
Next are two videos showing the main functionalities driving using a combination of line following (top video), and timers, encoder and line sensing.
Our intake mechanism was designed to efficiently and reliably intake a large quantity of coal. After aligning with the dispenser, our intake wheels accelerate a tube up a tube and into a reservoir.
We chose two spinning, flexible wheels cannibalized from a toy car due to their good grip and ability to conform to coal pieces of differing diameters.
The intake system went through several iterations to conform to the coal dispenser's strict requirements. On the final (yellow) iteration several future proofing features were added such as holes for wire harnessing and mounting holes for future add-ons.
The motors would stall if coal got stuck in the chute, so we added the ability reverse the motor directions thereby shooting the coal back out. This behavior was informed by a proximity sensor embedded in the intake housing.
Notable improvements throughout the intake iterations included: using larger motors, using rubber wheels instead of foam, optimizing the shape of the chute.
Our strategy was to minimize time spend driving and thus we wanted to store as much coal as possible within the robot to minimize how often we had to visit the dispenser.
To do this, we decided to design the robot around filling as much of the chassis as possible with coal. We designed curved surface to act as a passive system to funnel the coal towards an output feeder system. The surface conforms around the intake housing and chute (not shown) and is made of two parts. The separation between the pieces acts as a ramp which leads to the feeder system.
The mechanism below is situated underneath the curved surface and pushes two agitator pieces designed to dislodge any stuck coal. The agitator lets only one piece sit in the groove which leads to the feeder.
The video above shows the agitator and reservoir system in practice.
The feeder is designed to release coal quickly, reliably, and on-demand. We chose the Archimedes screw mechanism due to its efficient use of vertical space. Its primary function is to drop coal stored within the reservoir and into the bucket.
There is a proximity sensor at the top providing information on coal that has left the system.
A major challenge with this subsystem was reducing the coal friction sufficiently to enable smooth and reliable operation of the feeder. The metal tube situated within the feeder enclosure was the solution to eliminating coal jamming.
2 Joint 35kg-cm Servo Arm to lower the bucket
9g Micro Servo to indicate side blue or green
As seen
By placing the majority of the electronics beneath the base plate of the robot, we created a mostly 2D wiring configuration, which proved important for easy access and debugging.
We would also like to add a special thanks to the Lab64 community for tolerating us living in there for 3 more weeks :)