Emerald Valley Engineering and Robotics
Robomagellan


SRS Robo-Magellan Rules:

Robot

The robot must not be constructed in such a way as to damage the environment or other robots. See "Safety" for other restrictions. No robot may weigh more than 50 pounds nor may it use an internal or external combustion engine. The robot must fit inside a 4' x 4' x 4' cube for the entire duration of its run.

Robots must be autonomous. Remote control is not allowed, with the exception of the remote control safety switch.

Course

The course will be outdoors with both natural and manmade terrain and obstacles. The terrain may include pavement, dirt, small rocks, grass, hills, gullies, trees, curbs and weeds. This list is not exhaustive. The robot will not need to traverse a water obstacle to complete the course although weather conditions may make some surfaces wet and/or soggy. The contest will not necessarily be postponed in the event of inclement weather.

Robots will be placed at a designated starting point prior to each run. The destination and bonus waypoints will be designated with latitude/longitude coordinates and marked by 18", orange, plastic traffic cones. Waypoints will be specified as degrees and minutes with minutes carried out to four positions right of the decimal point (N 47 22.1245 W 122 32.0493). The datum is WGS84.

The total straight-line distance between the start and destination will be less than 1,000 feet however the shortest route may be longer due to obstacles. The route taken from start to destination, including bonus waypoints, may be significantly longer than 1,000 feet.

Play

The latitude and longitude of the start, destination and bonus waypoints will be announced at the start of the contest along with other considerations such as safety matters and course boundaries. Mandatory bonus waypoints and order, if any, will also be announced. The number of mandatory waypoints, whether or not there will be a specific order, etc. will not normally be announced in advance of the actual contest. Contestants will then have 30 minutes to make software and hardware modifications to their robots. At the end of 30 minutes, a judge will signal the start of the race. Each robot will be given three chances to complete the course and 30 minutes will be provided between attempts for software and hardware modifications.

During the initial 30 minutes between the announcement of the course and the start of the contest, contestants will be able to walk the course to take measurements. Acceptable measuring instruments include a hand-held GPS, tape measure, wheeled measuring device, etc. However, the actual robot will not be allowed on the course. Please see Intended Rule Evolution in the appendix for more information.

Judges will determine the maximum number of robots that can run at once. If more than one robot will be run simultaneously, judges will stagger the start times to minimize the chances of robots interfering with each other. Judges will also designate the order in which robots will start. Consideration will be given to robot speed, intended route, safety features and other factors when determining the starting lineup.

Each robot will work their way toward the destination waypoint following the course its operator deems appropriate. Boundaries will be set and, if a robot crosses a boundary, it will be immediately stopped and no score will be awarded for that attempt.

Robots must touch bonus waypoint cones (but not move them or knock them over) to score bonus points. Robots must touch the destination waypoint and stop in order to complete the course. Robots that do not complete the course will receive no score for that round (see exception under Scoring). Other than GPS, robots cannot use external beacons or markers as navigation aids, nor can robots employ devices like differential GPS to boost the accuracy or reception of GPS signals.

Each robot is given 15 minutes to complete the course on each of its three attempts. Each attempt is scored individually. After three attempts, the best (lowest) score for each robot will be recorded as that robot's final score. Thirty minutes will be given between attempts to allow for software and hardware modifications.

Robots do not need to travel the same route for each attempt. Contestants may try alternate routes in an effort to improve their score or chances of finishing.

Scoring

Basically, robots will receive a score corresponding to the number of seconds needed to travel to the destination and any bonus waypoints. The robot with the lowest score on any individual run will win.

Bonus waypoints are assigned multipliers (between 0.1 and 0.9) prior to the start of the competition and will reflect the difficulty of the terrain, distance from the start/destination and any other factors the judges consider relevant. The judge may specify one or more bonus waypoints as mandatory waypoints. Robots must navigate to and touch all mandatory bonus waypoints prior to navigating to the final destination. The judge may optionally specify a particular order for bonus waypoints. If an order is specified, robots must travel to bonus waypoints in the correct order prior to navigating to the final destination.

A robot must physically touch the orange traffic cone marking a bonus waypoint to receive a scoring multiplier. If a bonus cone is moved or knocked over, no bonus will be awarded for that cone. The robot may "tip" a cone and still receive a bonus as long as the cone doesn't move from its previous position or fall over. If a robot successfully navigates to more than one bonus waypoint, all applicable bonus multipliers will be applied. For example, if a robot requires 500 seconds to complete the course and visits two bonus waypoints with multipliers of 0.5 and 0.1, the final score for that attempt will be 500 x 0.5 x 0.1 = 25.

If a robot does not finish, it will receive a score indicating the distance remaining to the target cone, along the shortest practical path to the destination (not necessarily a straight line between the robot and the destination cone), taking into consideration mandatory waypoints as applicable. Robots that complete the course at least once will always place higher than robots that do not complete the course. If no robots complete the course, the robot that came closest to the destination cone (while considering any mandatory bonus waypoints) will be declared the winner.

If the course has mandatory bonus waypoints that must be touched in a particular order, the distance to the final cone will be measured from the robot's final position to the next untouched bonus waypoint, any subsequent bonus waypoints (in order), then the final destination. If waypoints are reached in some order other than that specified, any cone that was touched out of order will not be counted for a bonus or as a place along the course to the final destination. In other words, if a course consists of bonus waypoints A, B and C (which must be touched in that order) with a final destination X and the robot touches B but not A, the distance to the final destination will be the robot's position to A plus A to B plus B to C plus C to X and no bonus will be awarded for touching B. If the robot touches A only then the distance to the final cone is calculated by the distance from the robot to B plus the distance from B to C plus C to X and a bonus will be awarded for touching A. If the robot knocks over A then touches B, the distance to the final destination is the robot's position to C plus C to X and a bonus will be awarded for B but not for A.

When mandatory bonus waypoints are specified but no particular order is given, the robot's distance to the final destination will be calculated along the shortest route (once again, not necessarily a straight line) between the robot, any untouched mandatory bonus waypoints, then the final destination. So, if a robot has traveled to B only, the distances for robot to A to C to X and robot to C to A to X will be calculated and the shortest distance used for scoring.

Scoring will be at the sole discretion of the judges.

Judging

One or more judges will officiate the contest. They will ensure the spirit of these rules are followed and impose scoring penalties or remove a robot from competition if the robot is operating in an unsafe manner or not complying with the spirit of these rules. The decisions of the judges are final.

Safety

Each robot must demonstrate a suitable fail-safe stop mechanism before it will be allowed to compete.

Suitable safety stop mechanism:

The robot builder is responsible for devising the safety stop mechanism. Some possibilities include:

    * Wired tether operated by the handler walking alongside the robot
    * Some wireless contrivance operated by the handler
    * Some other mechanism, with prior permission from the SRS.

In any case the safety stop switch must be fail-safe: The robot handler must demonstrate that by dropping, or letting go of the stop mechanism the robot comes to an immediate stop and makes no further movement. The stop mechanism does not need to cut primary power as long as it can be demonstrated that the robot reliably comes to a complete halt.

The safety stop mechanism may be built to allow the robot to continue its run after it is reengaged. The intent of this feature is to stop the robot and allow it to continue if, for example, a small child runs in front of the robot op the robot completely to prevent damage to itself or the environment. The safety switch will not be used to stop the robot in order to reposition the robot or remove an obstacle like a garbage can from the robot's path. If the robot is stopped temporarily, it may continue and the time during which the robot was paused will be subtracted from the final score. In other words, there is no time penalty for stopping the robot due to safety concerns.

No other "remote" control beyond the safety stop is allowed.

Liability

Each contestant is fully responsible for any damage to person or property caused directly or indirectly by his or her robot. The Seattle Robotics Association, including the Seattle Robotics Society, is not responsible for any damages caused by any competing robots.

Each contestant must sign a waiver of liability prior to the competition. If the waiver is not signed, the robot will not be allowed to compete.

Appendix 1- Course Layout Guidelines

When designing an SRS Robo-Magellan course, either for practice or competition, the following guidelines should be considered:

The course boundaries should be a rectangle or at least a polygon. The course should not have out of bounds sections located within the perimeter of the main course boundaries.

The actual distance from the start point to the destination cone, along the most reasonable path of navigation, should not be more than 1,000'.

Three bonus cones are suggested. One should be placed close to the most reasonable path between the starting point and the destination cone and have a multiplier of 0.8 or 0.9. A second cone should be placed in an area that is reachable (doesn't have any terrain or obstacles more difficult than the rest of the course) but is around 100 feet off the most reasonable navigation path. That cone should have a multiplier of 0.5 to 0.7. Finally, one cone should be placed such that, without unusual or exceptionally well-designed navigational capability, robots will not be able to reach it. That cone should have a bonus multiplier of 0.1 or 0.2. Mandatory bonus waypoints will normally have a multiplier of 0.9.

Mandatory bonus waypoints should only be used if the judge is relatively certain most robots in the competition can navigate successfully to intermediate waypoints. Bonus waypoints may allow longer distances in a more confined space or provide for a more challenging route. A bonus waypoint may also be used to locate a start and final destination relatively close to each other (or the use of the same point for the start and destination) to provide a more satisfactory spectator experience. Judges should keep in mind, if more than one mandatory waypoint is designated, a specific order should not be designated unless absolutely necessary because contestants choosing multiple strategies to travel to mandatory waypoints will make a more interesting contest.

The robot should have to travel over a variety of diverse terrain such as grass, sand and concrete. There should be some spots where GPS coverage is poor or doesn't exist. Obstacles such as trees, garbage cans and park benches should be included. Running along a hill or bank is challenging for some navigation hardware and should be incorporated into the course if possible.

The robots should not be able to see the destination cone until it has traveled at least half way to the cone. A wall, hill or other obstacle may hide the cone. There should be no straight-line path between the start and destination points without some significant obstacle such as a curb, building, tree, stream, shrubbery or other similar barrier.

The course must not be impossible. A more satisfying contest for both builders and spectators will be had if robots are scored by time rather than distance to the destination cone.

Google Earth (earth.google.com) is an excellent resource for highly accurate position readings on start/destination points and intermediate bonus waypoints. When choosing points, consider features like sidewalk corners, buildings and playground equipment to make cone placement more accurate. Recording latitudes and longitudes that are accurate with respect to each other is more important than recording latitudes and longitudes that are accurate with respect to surveyed points. In other words, it's more important a builder knows the distance and bearing between points than it is for them to accurately navigate to a surveyed location.

Appendix 2 - Intended Rule Evolution

As Magellan robots become more capable, it is the intention of the SRS to evolve these rules to present a greater challenge. The following proposals are not currently part of the Robo-Magellan rules but are provided to give builders a better idea of how the contest may be run in the future so they can design their robots more appropriately.

The maximum distance between the starting point and the destination cone will be increased. The difficulty of the terrain will become more complex by adding steeper hills, more varied surfaces, etc. Other changes may be made to increase the difficulty of the contest.

The SRS intends to drop the rule stating contestants can walk the course for the purpose of taking measurements. The reason for dropping the rule is to offload more of the obstacle avoidance and path planning intelligence from the contestant to the robot. Because of this intended direction, we will continue supplying coordinates in written form at the beginning of each contest. Some sort of electronic distribution of the coordinates is being considered but the delivery mechanism has not been finalized.

The SRS does not intend to increase the maximum weight and size of a robot unless it becomes obvious that robots can no longer be built to run SRS Robo-Magellan courses without being physically larger or heavier. This is unlikely.


Physical Platform:
The EVErobotics Robo-Magellan entrant is built on a Traaxxas Stampede 1/10th scale electric truck frame. We were able to reuse the stock speed controller and steering servo by substituting the radio receiver module's control signals with pulse-out signals output by a micro-controller. The control signals consist of 50 Hertz positive TTL pulses of between 1mS and 2mS with 1.5mS as null for both steering and throttle.
Stampede truck frame
Traxxas, Stampede Frame
Transmission
Stampede Transmission
encoder assembled
Encoder Assembly
We replaced the stock electric motor with a gear motor, P/N: MP-28005-385 sold by BaneBots to achieve a gear reduction of 5:1 for constant torque and low speed at optimum motor rpm. The stock drive train configuration gives the truck a 30 mph top speed! We want less than 10 mph. The pinion gear had to be bored out from 3mm to 6mm to accommodate the larger diameter gear motor shaft.
 
encoder with cover removed
Encoder With Cover Removed
encoder components
Encoder Components
planetary gear motor
Bane Bots MP-28005-385, 5:1 Planetary Gear-Motor
The stock springs on the truck frame were replaced with heavier springs to enable the frame to support the added weight of batteries, embedded computer, sensors, and micro-controllers. Also, we will eventually have to retrofit  the drive-train with metal parts when it fails from moving 3-5 times more mass than it was designed for.

Controllers:
The micro-controllers used in the robot are two Coridium ARMmite Pro single board programmable controllers. The ARMmite is programmable in C or BASIC. One controller (the platform controller) is used to manage the sonar sensors, IR rangefinders, bumber switches, and control throttle, brake, and steering.  We use the other one (the navigation controller)  to process data from the electronic compass, optical encoder, GPS module, and accelerometer. Lastly, we have integrated an Acrosser AR-B5230 embedded computer into the design. The computer is directly connected to the web camera and also processes data from all of the sensors to form a map of the robot's environment. The computer also serves as an embedded development platform for its own software as well as the attached peripheral controllers, and as a means for remote control and/or remote monitoring of the robot via bluetooth.
Javelin Stamp
Coridium ARMmite Pro, Single Board Programmable Controller
interconnect board

Interconnect Board
AR-B5230

Acrosser, AR-B5230

Sensors:

The sensors that are currently being used are a Robot Electronics CMPS03 electronic compass, US Digital E4P quadrature optical encoder, a Holux M-1200 bluetooth GPS module, Dimesnsion Engineering DE-ACCM3D three axis accelerometer, three Parallax PING sonar range finders, two Sharp GP2Y0A02YK0F IR rangefinders, two Suresold Electronics M4-A10-03-20H micro-switches, and a Logitech QuickCam S5500 web camera.

The compass and encoder are used together to generate vectors, and the robot's position is estimated by combining vector addition, accelerometer data, and GPS data. The sonar and infrared rangefinders and bumper switches are used for near field navigation and object avoidance. Lastly, the web camera is used to visually identify the traffic cone and guide the robot in to touch it.

GPS Module
Holux M-1200, GPS Module
Ultrasonic Sensor
Parallax, Sonar Range Finder
Compass Module
Robot Electronics, CMPS03
 Electronic Compass Module
Encoder Sensor
US Digital E4P, Optical Encoder
USB2.0 Color CMOS Camera
Logitech QuickCam S5500, Web Camera
Accelerometer
Dimension Engineering, DE-ACCM3D, 3 Axis Accelerometer
Sharp GP2Y0A02YK0F_GP2Y0D02YK0F IR Rangefinder
Sharp GP2Y0A02YK, Long Distance Infrared Rangefinder
Unit Circle The Unit Circle
Source Code
Specifications
Data Sheets:

Pictures of Sputnik: Click on image for high resolution version.
Right Side Inside Front and Rear Compartments System Con troller Main Form
System Con troller All Windows Pre-Race Setup, Robothon 2010 Start of Race, Robothon 2010
Spotted First Cone Touching First Cone Mid Race, Robothon 2010
Spotted Second Cone Finished Race, Robothon 2010 Spotted Final Cone

Watch Movies of Sputnik in Action:




Links: