PROJECT DESCRIPTION
Our robot, the Trusty Krab, is designed to move in straight lines along an X/Y grid without turning. This allows us to make several important simplifications to the bot's competition strategy. First, we don't need to follow the tape or wire along its curved path. Travelling straight to coordinates of interest is much faster. Second, we don't need to rotate our robot at all (and in fact, it cannot rotate -- see below). This lets us keep a predictable orientation to the walls for distance sensing and allows us to shoot accurately without having to rotate or sense the goal beacons. Third, moving independently of the tape/wire allows the robot to position itself the same distance from every goal it shoots, so we can finely tune a repeatable catapult-style launcher for consistent shooting.
Mechanical Design Overview:
We knew from the start that omnidirectional wheels were the only way to achieve our rotation-free strategy. The competition rules mandated a maximum of two drive motors, however, so the only way to power four omni wheels was to have two axles -- one for each opposing pair of wheels, crossing in the middle. Each shaft carries a timing belt pulley, and is driven by one of the two motors via a timing belt. Crossing the shafts meant they had to bend past each other while rotating. To accomplish this, we picked a thin (1/8") stainless steel shaft for its flexibility, connected it at either end with a pliable spider coupling, and added lubricated bushing supports at the appropriate heights for each shaft to hold them apart near the center.
Unfortunately, our crossing axles created a small amount of warp in the entire frame of the robot -- the upper shaft pulled its wheels away from the ground just enough to cause them to slip unpredictably while driving. We corrected this with a taut steel cable underneath the robot, which, like the truss rod in a guitar neck, pulled the frame back into alignment and allowed all four wheels to contact the ground with equal pressure.
Our catapult-style launcher was heavily optimized for reliable shooting. The system uses three servos: One to release a single COW (ball) from the storage chute onto a lightweight, rigid catapult arm, a second to pull a spring tight to "charge" the launcher, and a third to unlatch the catapult arm and launch the COW. The whole system then quickly resets and reloads for the next shot.
Finally, the LED status indicators (white for construction, red/green for the two sides of the board) are housed in a centralized tower with two frosted acrylic enclosures. Each enclosure lights up with the color of the LEDs inside, making the indicators large, unidirectional, and easily visible.
Electrical Design Overview:
Our electronics can be divided into six independent circuits: (1) H-bridge circuit for the drive motors, (2) Hall effect sensor signal conditioning circuit for measuring coil frequency at the staging areas, (3) Ultrasonic sensors switching/signal conditioning circuit for measuring distances to the walls, (4) LED drive circuit for status indicators and IR LED to interact with the supply depot, (5) Servo drive circuit for the launcher servos, and (6) Voltage regulating circuit. All of these are powered with two 7.2V NiCd batteries in series. Because all of the TIVA pins we're using are 5V tolerant, our working voltages were chosen to be 5V, 7V (for TIVA), and 12V (for motors).
Software Design Overview:
Our software employs two master state machines: MasterVehicle and LOCMaster. MasterVehicle shifts the robot between Idle, Staging, Shooting, and Supplying, while the LOCMaster focuses on updating the game status and finishing handshakes at the staging areas. In a complete construction cycle:
Mechanical Design Overview:
We knew from the start that omnidirectional wheels were the only way to achieve our rotation-free strategy. The competition rules mandated a maximum of two drive motors, however, so the only way to power four omni wheels was to have two axles -- one for each opposing pair of wheels, crossing in the middle. Each shaft carries a timing belt pulley, and is driven by one of the two motors via a timing belt. Crossing the shafts meant they had to bend past each other while rotating. To accomplish this, we picked a thin (1/8") stainless steel shaft for its flexibility, connected it at either end with a pliable spider coupling, and added lubricated bushing supports at the appropriate heights for each shaft to hold them apart near the center.
Unfortunately, our crossing axles created a small amount of warp in the entire frame of the robot -- the upper shaft pulled its wheels away from the ground just enough to cause them to slip unpredictably while driving. We corrected this with a taut steel cable underneath the robot, which, like the truss rod in a guitar neck, pulled the frame back into alignment and allowed all four wheels to contact the ground with equal pressure.
Our catapult-style launcher was heavily optimized for reliable shooting. The system uses three servos: One to release a single COW (ball) from the storage chute onto a lightweight, rigid catapult arm, a second to pull a spring tight to "charge" the launcher, and a third to unlatch the catapult arm and launch the COW. The whole system then quickly resets and reloads for the next shot.
Finally, the LED status indicators (white for construction, red/green for the two sides of the board) are housed in a centralized tower with two frosted acrylic enclosures. Each enclosure lights up with the color of the LEDs inside, making the indicators large, unidirectional, and easily visible.
Electrical Design Overview:
Our electronics can be divided into six independent circuits: (1) H-bridge circuit for the drive motors, (2) Hall effect sensor signal conditioning circuit for measuring coil frequency at the staging areas, (3) Ultrasonic sensors switching/signal conditioning circuit for measuring distances to the walls, (4) LED drive circuit for status indicators and IR LED to interact with the supply depot, (5) Servo drive circuit for the launcher servos, and (6) Voltage regulating circuit. All of these are powered with two 7.2V NiCd batteries in series. Because all of the TIVA pins we're using are 5V tolerant, our working voltages were chosen to be 5V, 7V (for TIVA), and 12V (for motors).
Software Design Overview:
Our software employs two master state machines: MasterVehicle and LOCMaster. MasterVehicle shifts the robot between Idle, Staging, Shooting, and Supplying, while the LOCMaster focuses on updating the game status and finishing handshakes at the staging areas. In a complete construction cycle:
- The robot exits the Idle state when construction begins, and moves to the Staging state.
- Upon reaching the staging areas, MasterVehicle asks LOCMaster to complete the handshake and optain the shooting location.
- The robot moves to the predefined shooting location and shoots a COW at the bucket.
- Once the score changes, the robot either goes to the next staging area and repeats this process, or (if it is out of COWS) it moves to the supply station and pulses its IR transmitter to refill its COWs before moving to the shooting location.
- In the last 18 seconds, the robot goes to the shooting location closest to the supply station and keeps shooting until construction ends.
DEMO VIDEOS
You can see our robot performing in the last round (at 2 hours 32 minutes) of the final presentation below.