Shaun Martin & Brian Pritchett
Team Introduction Problem Definition The Challenge Contest Rules Demonstration Current Design Who are the Users? Software Requirements System Functionality
Clients Dr. Jerry Weinberg, Computer Science Dr. Ryan Krauss, Mechanical Engineering Dr. George Engel, Electrical Engineering
Shaun Martin Planning Manager Customer Interface Manager Process Manager Quality Manager Documentation Lead Brian Pritchett Design Manager Implementation Manager Testing Manager Support Manager Lead Web Design
Mechanical Engineering Team Lukas Pirok Kevin Doss Kaci Backs Lance Labonte Electrical Engineering Team Greg Eddings Jason Tennyson
Develop an autonomous golf cart to compete in the DARPA Mini Grand Challenge. Navigate pathway on college campus Small and inexpensive short-range vehicles Maximum speed: 5 mph Develop an autonomous vehicle to be used for Human Robot Interaction (HRI) research. Possible User Interface
Robot will travel a 7 to 8 foot path with 6 checkpoints. The robot must stop within 2 feet on an obstacle. The final checkpoint is on an unpaved path that the robot must navigate. The total distance of travel will be no longer than 0.5 miles. There will be no markers, lines, or beacons to indicate the path.
A robot that stops for more than 60 seconds when not waiting for an obstacle to be removed will be considered “brain dead.” No human contact with the robot is allowed. Robots will also be judged on how it interacts with the crowd.
1.) Must be powered by batteries (no combustibles). 2.) May be constructed from anything that does not interfere with rule 1. 3.) Must stay between 1 and 5 mph. 4.) Must be able to transport 1 gallon of water. 5.) Must have a clearly labeled stop button or switch. 6.) Should be in the lb range.
7.) Max size is 216 feet cubed (6 x 6 x 6). 8.) No communication between the robot and an outside device is allowed, except for GPS. 9.) Communication between devices that are part of the robot is allowed. 10.) The robot must be a single entity. 11.) Robots are ground robots. No aerial robots are allowed.
Road Runner in Action
GPS (2) -waypoint navigation -intelligent redundancy Camera(s) -path finding -trajectory planning -obstacle avoidance Sonars (4) -obstacle avoidance -trajectory planning -I 2 C bus DC Motor -steering position control -gear reduction for torque -I 2 C bus Linear Actuator -braking position control -I 2 C bus Quadrature Encoders (2) -velocity control -steering position control -I 2 C bus
World State Brake Position Velocity Steering Angle Sonar (Left-Front) Sonar (Front-Left) Sonar (Front-Right) Sonar (Right-Front) Relationship to Path Relationship to Cones Relationship to Waypoint
World StateDescription Brake PositionSend I 2 C query to PSoC for brake position. * VelocitySend I 2 C query to PSoC for velocity via I2C. * Steering AngleSend I 2 C query to PSoC for steering angle via I2C. * Sonar (Left-Front)Send I 2 C query to PSoC for left-front sonar reading. * Sonar (Front-Left)Send I 2 C query to PSoC for front-left sonar reading. * Sonar (Front-Right)Send I 2 C query to PSoC for front-right sonar reading. * Sonar (Right-Front)Send I 2 C query to PSoC for right-front sonar reading. * Relationship to PathHorizontal offset from center of path based on processed video frames. Relationship to ConesDistance and bearing to orange cones (if any) based on processed video frames. Relationship to WaypointGeodesic distance and bearing from current GPS location to next GPS waypoint.
Emergency StopObstacle AvoidanceOrange Cone AvoidanceFollow PathFollow WaypointDo Something Behavior-Based Control -motor output based on World State stimuli World State stimuli -independent behaviors -emulates concurrency Subsumption Architecture -highest priority behavior “subsumes” those below it “subsumes” those below it -minimizes calculations -emulates concurrency Primary Behavior
Color webcam used for path-finding Utilizes OpenCV Open source software for image processing Points immediately in front of camera sampled to determine path Allows cart to adapt to different paths Series of filters applied to image to determine path
Flood-Fill color nearby pixels that are of a similar color
Mask binary representation of the flood-fill image
Erode eliminate noise
Open eliminate lone pixels; erode followed by dilate
Dilate expand pixel clusters
Close clean up image; dilate followed by erode
Dilate and Smooth expand pixel clusters; smooth for contours
Erode and Smooth eliminate noise; smooth for contours
Open and Smooth eliminate lone pixels; smooth for contours
Contours extract outline of path
Team ACME Professors & students pursuing research in HRI Bystanders during demonstrations
Must be able to run on Windows machine Desired programming language is C++ OpenCV for Image Processing Use APIs developed by ECE team
Interface with GPS units for navigation Sonar and/or Laser for obstacle avoidance Multi-threaded application Image Processing User Interface for HRI research