August 16, 2002
Carnegie Mellon West
NASA Research Park
NASA Ames Research Center
Moffett Field, CA
A NASA Ames News
Release from Aug. 13, 2002 reported the following impressive student
"...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
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".
1 Robot Construction and Locomotion
1.1 Chassis and Wheel choices
1.2 Wheel configurations: basic maneuverability
1.3 Servoes and Motors
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.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
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
Graduation Day Contest & Exhibition Schedule
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:
South parking lot
for all, snacks after
Piranha v. Captain
Morgan Dragons v. Spongebots
Bldg 17, Spongebots
final group game
Package Detector Dynamic Response Unit, Piranha
Rescue, Cpt. Morgan
The Wizard of
Handouts described a number of the Challenges, Contest and Exhibits,
including the following:
Contest Three: Robot Musical Chairs
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.
Contest Four: Bomb Squad
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
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!
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
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.
(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.
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.
“It makes me want to build a robot”
“I cried when I saw it”
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.
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.
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.
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.
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
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
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
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 software,
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
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
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
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
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
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
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):
Trikebot Java API Reference