The Project
The 2018 ME218B competition involved building autonomous robots. Each Autonomously Traversing High/Low Ejection Targeting Entity (ATHLETE) was equipped with a Radio Equipped Facilitator (REF) to communicate with the field. The goal of this project was to design robots to navigate a field to pick up foam balls from dispenser stations and then either shoot or roll them into goals defended by an opposing robot. The winner of a round was whoever scored the most goals; the tiebreaker was whoever could reload from a dispenser first.
Robots could navigate the field in a variety of ways including IR beacons placed above the field, tape leading across the field and around the goals, an inductive wire underneath the tape, and a color gradient that was present under the entire field. Robots were also equipped with IR reflective tape, enabling them to 'see' the other robot on the field. Using the REF, robots could query for information about possession, shot clock time, and current score. This project involved applying our knowledge of hierarchical state machines, signal conditioning, noise reduction, motors/motor drivers, and mechanical design.
Project Requirements
- Use provided motors to drive wheels
- Use no more than two 7.2 NiCd batteries
- Designate the robot as RED or BLUE and indicate when the game is in waiting vs when the game is being played
- Communicate with the field through the Radio Equipped Facilitator (REF)
- Navigate to dispenser stations
- Correctly sense period of IR pulses at dispenser stations and pulse back a signal with a frequency 2x greater (within a 1% error tolerance) to receive a ball
- Shoot a ball into the correct goal
- Perform a defensive maneuver
Strategy
Our strategy was to produce a robot which could reliably shoot a ball into the attack goals. As a result, we decided on a stationary launcher mechanism which was pre-aimed towards the attack goal. This allowed us to tune our launcher for only one position, resulting in a much higher accuracy compared to robots which needed to reorient themselves after loading a ball. This also allowed us to greatly simplify our launcher mechanism. To precisely line up with the dispenser stations as well as to ensure precise placement for our defensive maneuver, we used the IR beacons on the field to initially orient our robot in the desired direction, then drove forward until we detected the central tape line and followed it until we reached hit the wall i.e. reached the reload station. For defensive action, we oriented our robot with our goal beacon, then drove forward until we reached the crease tape. We drove forward along the tape until our robot was positioned at an optimal angle to the opposing team's reload station. We parked in this position to block shots along the ground.
Subsystems Overview
Our robot's main subsystems were the drive train, the IR emitters and detectors for navigation and dispensing balls, the tape following array, a ramp, and a launcher. IR photodiodes were used for navigation due to their fast response time. The signal was passed through a low pass filter and then through a Schmitt trigger. This produced a square wave whose period could be determined through software, allowing us to drive towards the appropriate beacon depending on what color our robot was. This same base circuit design was also used to detect the IR dispenser frequency. After aligning with an IR beacon, the robot would drive forward until it detected the tape. At that point, an array of 6 IR LED/phototransistor pairs were used to apply PD control to allow the robot to line follow. After reaching the station and reloading, the ball would roll down our ramp and onto the launcher. The robot was designed to carry one ball at a time and could track whether it had a ball on board by means of a beam break circuit mounted near the top of the ramp. After receiving a ball, a servo was used to pull back the ruler to the correct position in order to launch the ball into the attack goal. Further details on these subsystems are provided in the Mechanical, Electrical, and Software sections of this website.
Our Robot
Our Robot in Action
Our Team
From left to right: Brian Do, Gabrielle Sebaldt, Derek Chiu, and Saifan Rafiq