NASA Ames 
Research Park 
Carnegie Mellon West
Robotic Autonomy Course
Graduation Day Contest & Exhibition

by SFRSA Mediameister 
Cliff Thompson




August 16, 2002
Carnegie Mellon West
Bldg. 17
NASA Research Park
NASA Ames Research Center
Moffett Field, CA
   

A NASA Ames News Release from Aug. 13, 2002 reported  the following impressive student robotic Exhibition:

"...STUDENTS TO DEMONSTRATE SOPHISTICATED ROBOTS AT NASA...Thirty Bay Area high school students will demonstrate the amazing capabilities of their newly constructed robots on Friday, Aug. 16, capping a seven-week summer robotics camp held at NASA...The demonstration will begin at 11:00 a.m. PDT and continue until 4:00 p.m. PDT in the lobby and in front of Carnegie Mellon West, located in Bldg. 17 at NASA Research Park. The robots were constructed during this summer's July 1 to Aug. 16 robotics camp offered by Carnegie Mellon University at its west coast campus. The camp was held in collaboration with NASA Ames Research Center, located in California's Silicon Valley ... Students in the Robotic Autonomy program built, programmed and operated their personal vision-based, mobile robots as they learned about the electronics, mechanics and computer science of robotic systems. The Robotic Autonomy course was taught by Illah Nourbakhsh, assistant professor of robotics at Carnegie Mellon's Robotics Institute in Pittsburgh. Nourbakhsh is co-founder of the institute's Toy Robots Initiative and conducts research in electric wheelchair sensing devices, robot learning, theoretical robot architecture, believable robot personality, visual navigation and robot locomotion...The Robotic Autonomy course represents Carnegie Mellon's first outreach program on its west coast campus at the NASA Research Park. Courses leading to master's degrees in software engineering and e-business will begin in the fall. The west coast campus is a branch of Carnegie Mellon University, which is located in Pittsburgh, and known as one of the world s premier institutions for information technology research and education..."

The Robotic Autonomy course is one of several robotics offerings at Carnegie Mellon's Robotics Institute from The Office of Robotics Education

Driving down to the event, as I passed the NASA Ames entrance gate, headed down the main thoroughfare through NASA Research Park, there appeared before the backdrop of mighty Hanger 1, Carnegie Mellon West, located in Bldg. 17. At the entrance to the event, staffers were busily registering visitors and distributing
handouts  describing the Robotic Autonomy Course, Robots and Exhibition Challenges and Contests - as these provide an excellent backgrounder for the proceedings, I'll discuss them first below, in the section "Event Handouts", followed by my report on the Graduation Day robot exhibitions in the subsequent section "Event Activities".


EVENT HANDOUTS

A course description, along with a breakdown of the course topics and schedule, was listed in the CMU West, School of Computer Science, Robotics Institute, ROBOTIC AUTONOMY Course #162U Syllabus, Summer 2002:

"In this course, students, or “robonauts,” will work in teams to assemble and operate an advanced autonomous robot, which is capable of both visual processing and high-speed wireless communication. This activity represents a leap in the educational experience offered in advanced robotics to students and is achieved by accessing some of the leading minds in the field and incorporating recent developments in low-cost components. Participants in the class from CMU Robotics Institute (RI) and NASA/Ames Information Sciences and Technology Directorate bring their knowledge and experience gained from conducting the latest in robotics research. Thus the student-assembled robots, or “Trikebots,” have the capability for both indoor and high-speed outdoor locomotion...The Trikebot design came from Tom Hsiu, in collaboration with the course instructor, llIah Nourbakhsh. Hsiu has participated in creating other robots that can be seen on the silver screen: the snake in Anaconda and the killer whale in Free Willy. The trikebot’s striking features are the three large wheels and large base, designed for outdoor maneuvering, just like a tricycle. A long neck projects from the large front driving and steering wheel. The neck supports the trikebot’s camera, called CMUcam, which can swivel around two axes. Like a child’s trike, the robot is designed to be a fun sidekick the student can rely on as they gain more experience in the world of robotics...The robonauts will communicate with the trikebot’s onboard computer, a Compaq iPAQ [Pocket PC], using the high-speed wireless communication system and a notebook PC they bring to each class. The notebook PC allows them to write the software in Java at gives the trikebot its functionality. It also provides them a window to see what the trikebot “sees” with real-time sensor and video updates appearing on their LCD from the CMUcam. The Java programming is made up of simple code statements related to the trikebot’s movement. Teams of robonauts will work together to program their newly assembled trikebots according to the course’s problem-focused curriculum. Each week brings the teams a new functional challenge for them to accomplish with their trikebot. All teams will receive a reference solution with which to compare their method and programming. Presentations throughout the week will expose the robonauts to experts in the field. The week culminates in an exhibition and contest relying on the robot’s enhanced capability".

ROBOTIC AUTONOMY

Course Topics Course Schedule

 

 


1 Robot Construction and Locomotion
  1.1 Chassis and Wheel choices
  1.2 Wheel configurations: basic maneuverability
  1.3 Servoes and Motors

2 Electronics
  2.1 Basics of Electronics
  2.2 Soldering and Circuit Testing
  2.3 Basics of Motor Power Electronics


3 Robot Software Architecture
  3.1 Software architecture introduction
  3.2 JAVA Trikebot programming environment


4 Robot Kinematics
  4.1 Sources of robot motion error
  4.2 Measuring and calibration
  4.3 Programmed dead-reckoning


5 Sensors
  5.1 Range-finding devices
  5.2 Back-EMF sensing
  5.3 Sensing-actuation control loops and Reactive programming

6 Functional And Reactive Systems
  6.1 Diagnostic transparency
  6.2 Behavior-based reactive architectures

7 Robot Vision
  7.1 CMOS camera technology
  7.2 The CMUcam sensor
  7.3 Object training and tracking

8 Visual Navigation and Advanced Autonomy
  8.1 Visual servoing
  8.2 Shape extraction and visual line following 
  8.3 Visual motion detection

Week 1: Trikebot assembly and initial use
Wed: JAVA Programming challenge; Dress Rehearsal
Fri: Capture the Flag; Fashion Exhibition


Week 2: Trikebot calibration and local teleoperation
Wed: Dead-reckoning accuracy challenge
Fri: Human-Robot Soccer: 2 on 2; Robot Theater Exhibition


Week 3: Trikebot sensing and autonomy
Wed: Smart Wander and Hand Signals challenges
Fri: Escape contest; Forever-Wander exhibition


Week 4: CMUcam and Robot Vision
Wed: Remote Teleoperation challenge
Fri: Bomb Squad Teleoperation contest; Trikebot-Human Interaction Exhibition


Week 5: Autonomous Vision-based Navigation
Wed: Visual Alignment challenge
Fri: Marathon



Week 6: Advanced Autonomy and Vision
Wed: Exhibition proposal due; Vision skills challenge
Fri: Scavenger Hunt

Week 7: Final Contest
Mon: Announcement of rules.
Fri: Contest and Trikebot Exhibition


The roster of Challenges and Contests was listed on a Graduation Day Contest & Exhibition Schedule:

Graduation Day Contest & Exhibition Schedule
Robotic Autonomy
August 16, 2002

Following the Graduation Ceremonies, at 11:00 AM the Robotic Autonomy course graduates will begin exhibiting their favorite group contests as well as individual, team-designed demonstrations. Specific performances are shown below. We encourage you to visit our website:
http://robotauto.west.cmu.edu

Time Challenge/Contest, Team Location

11.00

Musical Chairs Group Contest

Atrium

11.30   

Waiter, JTP

South parking lot

11.45

Picture Taker, Dragons

Atrium

12.00   

Catered Lunch for all, snacks after

Room 116

1.00

Bomb Squad Contests

Piranha v. Captain Morgan Dragons v. Spongebots

Atrium

1.30

Pac-Man, Duckt Tape

Front entrance

1.45     

Halloween Bldg 17, Spongebots

Front entrance

2.00

Musical Chairs, final group game

Atrium

2.30     

Unattended Package Detector Dynamic Response Unit, Piranha

Atrium

2.45     

Search and Rescue, Cpt. Morgan

Atrium

3.00     

TeddyBears, FemmeBots

Room 102

3.15     

FutureCar, PowerPuffs

Atrium

3.30     

The Wizard of Az, Snagglepuss

Rear Entrance


Handouts described a number of the Challenges, Contest and Exhibits, including the following:

Contest Three: Robot Musical Chairs
ROBOTIC AUTONOMY
Summer 2002

With so many robots awake, it is time to have them all moving at the same time and interacting. Robot musical chairs gives us this opportunity.

Robot Musical Chairs
In robot musical chairs, robots autonomously wander in the midst of a field with obstacles and safe zones. While the music plays, robots must autonomously wander and dance. Robots may not purposefully stay within a single safety zone. Any robot that remains within a safety zone for more than 10 seconds is removed. If a robot remains motionless for more than four seconds during play, it is also removed. Head motion alone is insufficient; the trikebot’s body must move.

Each episode is signaled by the announcer when he stops the music. At that point, team members will tell their robots via their interface to reach a safety zone as quickly as possible. You can use textfields and buttons, but not the joystick for this portion. The last robot reaching a safety zone (or not at all) is removed from play. After each elimination, the responsibility of TrikeBot driver switches to another team member for the remaining groups, until only one team is left in a zone.


Initial Game State


Contest Four: Bomb Squad
ROBOTIC AUTONOMY
Summer 2002

You now have given your trikebot sight with CMUcam and are learning how to “see” from a remote location. This week’s contest will require you to demonstrate well-rehearsed teleoperation.

Bomb Squad
Your whole team (including the robotic members) will work together to defuse a scary compound bomb. For this dangerous assignment you may deploy two of your trikebots. You’ll also use two humans as trikebot drivers and the lucky third will serve as the spotter who defies death.

Two styrofoam cups have been found in the central hall. Each contains a different colored substance. If the chemical vapors from each substance mix, all will be lost. Your bomb squad’s job is to separate these substances by 3 meters so that you’ll neutralize the possibility of explosive chemical reaction. You may make reasonable modifications to your robots so that they can handle the cups. You must act fast, but safely. The winning team will safely clear the bomb in the shortest time.

You have two robot drivers who are shielded from possible danger by a barrier. They can drive the robots but cannot see them. One highly paid human spotter is also on your team, and he can see the area well. He is so highly paid and well armored that he is allowed beyond the safety wall and can give directions. Your job is to get your trikebots to the containers and move them to separated defusing areas without upsetting the cups.

Remember, if you spill either of the cups the vapors will mix and GAME OVER!


I
nitial Game State

                  Defusing Areas

 

PAC-MAN
THE GAME:

The purpose of the game is to go around to the far side of the mazes and prevent the Pacman family from winning. In the original game, Pacman, the purpose was to collect all the coins in the Coin Maze, and avoid the ghosts. The version you are playing is different; you are playing the role of a ghost called “Pinky.” Your goal is to go around the far side of the course. There are 2 Pacman in the Coin Maze, Mr. and Ms. Pacman, and their goals are to travel their course once in either direction. You have to prevent them from completing it; Ms. Pacman is traveling in the white Coin Maze; Mr. Pacman is traveling in the green Coin Maze. (The white Coin Maze is longer than the green Coin Maze because if you decide to only focus on a single Pacman and you successfully stop it, the other Pacman can complete the course for him/her). After the green Coin Maze has been traveled once, the second lap counts for 1 lap of the white Coin Maze, ending the game. After the white Coin Maze has been traveled once, half of the lap counts as 1 lap of the green Coin Maze, ending the game. In other words, the game ends when 2 green laps or 1.5 white laps are done.

Your starting position is marked in the map; you will also be wearing a special “Pinky suit” around both of your legs, which has 2 colors: red and blue. You will start wearing red. Try going around the far side of the mazes, or try to get in front of Mr. or Ms. Pacman to prevent them from completing their laps (remember they can help each other complete laps). Whenever Pacman runs through one point someone will call loudly “switch” and you immediately have to switch from red to blue in front of you. Whenever you are wearing blue you have to move backwards and try to go back in the safe zone. If you successfully make it into the safe zone you get to switch colors back to red and continue from where you stopped.

  •  You always have to be in front of Pacman when approaching it.

  •  You can travel on any color Coin Maze.

  •  Whenever Pacman runs through a point you have to switch from red to blue and move backwards on any Coin Maze back into the safe zone.

  •  You have 3 lives as well as Pacman, when you use all three the game is over.

  •  Whenever you lose one life you have to start over from the starting position.

  •  If any Pacman touches you while wearing blue, you lose one life.

  •  If you ever get lose of the Pinky suit you lose one life. If Mr. and Ms. Pacman bump into each other they lose one life.

  • If you break a Pac you lose one life and money (you have to pay) just kidding!


Search and Rescue
by Captain Morgan 

Earthquakes are a terrible tragedy. What’s more tragic is how many people die as a result of people being unable to search a disaster site. We couldn’t sit by and watch this tragedy continue, so we are proud to introduce a search and rescue robot that can be used to search an area that is so devastated that a human cannot enter it. This innovate robot can be led inside of a wreck site through small openings. It has a visual tracking system that quickly feedbacks a picture to the controller, as well as a motion detector. The controller operates the robot from outside the building. The robot wanders around the building going to human bodies and reports back whether the person is moving or not, alerting a human rescuer of this person’s status so that they can make a rescue from above and save their lives.





Unattended Package Detector 
Dynamic Response Unit
(a.k.a. bomb detector)

This program detects objects which have remained in one place by splitting the screen into sections and checking the RGB values against a previously stored set of RGB values. When an unattended package is detected, an alarm sounds, the sector in which the package is in flashes on the screen, and the robot drives toward the object and retrieves it.

 

The Wizard of Az...


A story about a young girl who was caught in an electrical storm and was transported to a magical land called Az. There she encounters a couple of friends who have technological problems and need to seek the mysterious wizard of Az for help.

“riveting”
-Tom

“It makes me want to build a robot”
-John

“I cried when I saw it”
-Illah




Halloween
Exhibition
Our exhibition is a play about our trikebot first Halloween at building 17, the trikebot will go trick or treating around the building, and make sure you give him candy because he gets upset when some one does not give him candy.

Teddy Bears

What is it? A fun two-player game for all ages
How do you play? Grab as many “teddy bears” (the orange cones and red cups are the teddy bears) as you can before your opponent beats you to It!!! Simply press Go To Red to grab one teddy bear at a time. 
How does it work? It scans for red objects (i.e. the cones and cups) and turns if none are found within its view. Then it goes toward the red objects and grabs them with its "wings” one at a time.

FutureCar

Tired of hearing about car accidents that result in needless deaths? Well, these cars can play an important role in your future.  They are able to react autonomously to traffic by following the orange car in front of them.  The lead car responds appropriately to traffic signals while the rest just worry about avoiding a frontal crash.  So sit back, relax, and enjoy a wonderful ride.

Picture Taker

Objective: The robot will drive over to the selected target and take close up pictures of it at different angles.
Directions: All you have to do is click on the target three times and the robot does the rest.


Waiter

Welcome to the JTP Picnic restaurant.  Our unique restaurant is operated by one chef, a manager and a world class waiter.  Our waiter is a trikebot.  The trikebot will take you a menu.  After you complete your menu sheet please velcro it to the trikebot.  After this the trikebot will take you your food.  Please keep in mind that the robot only waits a few seconds for the customer to grab his food.  Finally please be nice to the trokebot and remember he appreciates tips.

How Our Trikebot Functions
Our Trikebot can serve up to two tables at this moment.  It know what table to seve by tracking colored tape that is located on the floor. Different colored tape means different table to the trikebot


EVENT ACTIVITIES

After arriving at Carnegie Mellon West and reviewing the handouts, I entered the Atrium to find the Bomb Squad Contestants receiving their final instruction from Illah. The robot operator control crew then started the competition as robot after robot started rolling out onto the floor.  The robot's CMUcam vision system was busily looking around, while the onboard Compac iPAQ Pocket PC handled 802.11b Wireless LAN operations As the competition reached full swing, robot operators wearing specially equipped helmet-mounted headsets  issued voice commands to help control the robots.

To the side of the Atrium was a room housing the pit crew, the collection of  young robot engineers being quite extensive. Team members were variously engaged in modifications to softwarehardware and repairs. One team I talked to very helpfully explained the Trikebot's overall operation, sensor range-finding technology, and software for GUI interface and Wireless LAN operation from laptop to iPAQ Pocket PC and it's display.

As I looked around the building I spotted several technophile friends including NASA Ames Mars Exploration Rover (MER) Rover prototype "K9" programmer roboticist  Maria Bualat and gifted young roboticist Kyle Rader with Illah.  Also in attendance and talking with Illah was Bruce Damer,  Founder of DigitalSpace Corporation, Curator of the  DigiBarn Computer Museum and an Adobe Atmosphere Partner Virtual Reality Worlds Developer.

The crowd next moved outside the building to the front entrance to witness a rousing game of Pac-Man, featuring humans vs. robots in wild line-following pursuits, trying to complete or interfere with each other in getting through the various mazes. Back inside followed a Musical Chairs competition - when the music stopped, some Trikebots darted in a remarkably high speed, mad dash scramble to a safety zone. Later, color object recognition was utilized in both the Teddy Bears competition, which pits players against each other to gather the most bears, and the FutureCars exhibition, where a colored "guide car" is spotted and leads trailing  cars to safety. 

Safety in these Terrorist times continued as a theme in a particularly compelling pair of demonstrations, both of which utilized projection of the control software graphical user interface onto a large home-theater screen.  Unattended Package Detector Dynamic Response Unit, as the description notes, "
detects objects which have remained in one place by splitting the screen into sections (1, 2, 3, 4, 5, 6) and checking the RGB values against a previously stored set of RGB values. When an unattended package is detected, an alarm sounds, the sector in which the package is in flashes on the screen, and the robot drives toward the object and retrieves it". In another demonstration,  Search and Rescue, the explanation reads "This innovate robot can be led inside of a wreck site through small openings. It has a visual tracking system that quickly feedbacks a picture (1, 2, 3, 4) to the controller, as well as a motion detector. The controller operates the robot from outside the building. The robot wanders around the building going to human bodies and reports back whether the person is moving or not, alerting a human rescuer of this person’s status so that they can make a rescue from above and save their lives". Ending on a lighter note and wrapping up the event, outside in the rear entrance of the building the final show of the day is The Wizard of Az, whose liner notes describe the "story about a young girl who was caught in an electrical storm and was transported to a magical land called Az. There she encounters a couple of friends who have technological problems and need to seek the mysterious wizard of Az for help"; the play ended in a standing ovation.

As the event was winding down, I asked Robotic Autonomy course instructor Illah if there might be any further technical files, software documentation and the like, available for the course, at which point he reached in his bag and handed me a CD labeled "Robotic Autonomy".  Just before writing this report, I perused the CD and discovered a directory named "ClassResources", whose contents include two subdirectories, one named "RobotAssembly", which contains a Powerpoint presentation ppt file named "Assembly Slides", depicting the Trikebot assembly,  and another subdirectory named "SoftwareDocumentation", which contains a set of Acrobat documentation pdf files named as follows: "Architecture Diagram", "CMUcamManual", "GUI Manual", "iPaq Protocol", "Trikebot Java API Reference", "Tutorial" and "Wiring". I emailed Illah to ask permission if it might be possible to post these files to our San Francisco Robotics Society of America Yahoo eGroups Discussion Group Files area for the benefit of our members perusal, to which Illah replied, "Absolutely no problem! We are open-sourcing everything!". Consequently I have uploaded the set of files to a folder there named "NASAAmesCMURoboticAutonomy", which you can also navigate to from the Home Page (http://www.robots.org/ > click "Discuss" button > click left frame "Files" link > click folder "NASAAmesCMURoboticAutonomy"), or via the following direct links to the folder and its files (in either case Yahoo may require you to secure (re-)join/login):

NASAAmesCMURoboticAutonomy

Assembly Slides

Architecture Diagram
CMUcamManual
GUI Manual
iPaq Protocol
Trikebot Java API Reference
Tutorial
Wiring