Willow Garage Blog

December 20, 2008

We cleanly passed our first major milestone this morning, with one of the Alpha PR2 robots (Gandalf) autonomously traversing π kilometers two days in a row. Gandalf had been doing a π-kilometer run each day for the past two weeks, but we wouldn't declare the milestone complete until we had two consecutive clean runs. In the process, we improved the navigation software to better avoid low obstacles (scooters are popular here, and weren't seen by the first version of the software), to more safely move into uncharted territory when stuck, and of course by fixing a few bugs.

This milestone is very important: It demonstrates the hardware of the PR2 (except arms), from casters to head, from power system to sensors. It demonstrates the software on the robot from the device drivers to the executive, from the controllers to the planners. It leverages the software infrastructure of ROS, the Open Source software development and testing infrastructure, and a very nice suite of tools that enable the work. Last but not least, it leverages the work of the Open Source robotics community.

We will continue testing the hardware and software, and extending its range of navigation and of things it can do. Our next milesone will require the robot to use its arms, and when we achieve it we will be confident that we have a robust platform to share with the Open Source robotics community - we stand on the shoulders of giants.

We wish you a Wonderful Holiday Season and a Happy and Productive New Year.

December 8, 2008

We've defined a set of milestones to guide us to our goal of making ten PR2 robots, complete with ROS (a suite of open-source software for mobile manipulation), available to universities. The milestones test the basic capabilities of the platform. To reach Milestone 1, the robot must navigate autonomously for π kilometers, for two days in a row. The milestone tests a range of capabilities, including basic mechanical robustness, electrical system and software from controllers up through the 2D navigation stack. Milestone 2 adds arms to the mix, and requires the robot to find power outlets, plug itself in when needed, and open doors along the way. For the second milestone, the robot will increase its time and distance to two full days and at least a marathon (42.195 km). Milestone 3 will have users from outside Willow Garage program the robots. This will test our documentation, and will ensure that when we do ship 10 that other users will be able to make progress with them.

Today we hit an important pre-milestone: one of our three alpha PR2's went 4.5 km with only slight intervention. The previous record had been 1.5 km continuous autonomous operation. Tomorrow the official test will begin. Passing the milestone will require 2 days, because our goal is to show a high level of robustness.

December 8, 2008

I asked Vijay and Wim Thursday night if they could put together a quick demo to shoot for the Web site. By Friday morning they had thrown together an arm controller, a head controller, and data from the Phasespace motion capture system to come up with a new teleoperation system for the robot. We normally use a spaceball to control the arm's movements, but the Phasespace system has more possibilities for fine-grained control of the arm's many degrees of freedom. As you'll see in the video, Wim is able to wave around an object with optical markers to control the position of the arm and grab objects. Using our transform library tf, the head is able to track the position of the gripper as it moves around.

This video is a farewell for the arm -- in the hopes of getting good data for future versions, we've scheduled it for 'destructive' testing this week. We have several arms coming online this week to replace it, so the destruction will be productive and fun.

December 7, 2008

Matt Reynolds of Duke was at Willow Garage last week to speak about RFID for Mobile Manipulation. Matt has been collaborating with Charlie Kemp's Healthcare Robotics Lab (HRL) at Georgia Tech. They have been researching various uses of UHF RFID tags to provide inexpensive solutions to hard robotics problems. With a cost as low as $0.20 a piece, UHF RFID tags can provide a high degree of certainty in an uncertain environment. Several research groups have already investigated their use in SLAM -- HRL's innovation is combining the use of the same RFID tags to do both far-field (6m+) localization of objects and near-field (0.5-10cm) grasping. They've also been able to use multipath calculations based on the manufacturer's antenna model to provide localization without cumbersome training.

You can find out more about their work at HRL's RFID project page.

December 4, 2008

A lot of you have been interested in seeing video of the arm in action. We dug this one out of the vault -- it was shot in early November when we were first bringing it up. As you can see, it's still mounted to the test rack and we're using a spaceball to put it through its range of motions. We've had the arm mounted to one of our PR2 alphas for several weeks now and we've been putting it through its paces -- picking up objects, dragging people around in office chairs, and turning over tables. Inspite of all the abuse, it's doing well. We'll have some more videos of it in action soon.

November 17, 2008

Willow Garage CEO Steve Cousins will be speaking at Robo Development on Tuesday about developing open source software for robotics. Steve will be talking about the current state of the PR2 and ROS programs as well as our collaborations with academic institutions. Be sure to stop by at 2pm on Tuesday to hear the talk and watch some demos.

Update: Slides from the talk

November 14, 2008

PR2 Alpha with Gripper

We are currently building up three full PR2 Alpha Units. We currently have three base/spine/heads assembled and running around Willow Garage. The first Alpha arm, the production of which is staggered about 6 weeks behind the rest of the robot, just came together. In this picture you can see the sensor head in the background, with the stereo camera and tilting laser scanner. In the foreground you can see the gripper on the wrist with the fingertips (grey rubber section), which is covered on all sides with a pressure sensor array.

November 11, 2008

TF Visualizer

One of the problems we've tried to simplify in ROS is keeping track of coordinate frames for robot data. The ROS platform is a distributed system and our PR2 robot has many sensors and manipulators in different spatial positions and orientations. We don't want sources of data to have to publish their data under different permutations of transforms, nor do we want subscribers to manually keep track of transforms. Instead we want to publish the data once and have the rest of the system automatically know how to interpret it.

The tf ('transform') package enables ROS nodes to keep track of coordinate frames and transform data between coordinate frames. Like ROS, it works in a distributed manner: a node that knows a transform between frames publishes it to a ROS topic; nodes that are interested use tf to subscribe to the transforms. tf can then efficiently compose the net transform between requested frames. Using linear algebra classes and methods from the open source Bullet Physics library, the tf package works a variety of data types: points, vectors, point clouds, orientations, and poses. ROS makes sure that the transforms are easily associated with this data by including a special "frame identifier" header field that stays with messages as they are passed around.

We're committed to providing you debugging tools to help you understand what's going on with the transform system. One of these tools is our rviz, which is our 3D viewer that we are actively developing. The ogre_visualizer helps you understand the structure of the transforms by displaying the transforms in space with names and values. It also helps you understand a series of transforms by including arrows that point to the parent coordinate frame.

We've also designed the tf package to be used with or without ROS, so you're free to try it out on its own or as part of our ROS ecosystem. You'll find the code over at our Personal Robots Sourceforge project and you can find out more technical details about the tf package, including code APIs, at our tf wiki page.

Here's a video of the tf package in action. We used optical markers to control the position of the arm. The position of the arm is fed to our robot head controller, which is able to transform it to its local coordinate frame and follow the motion.

October 20, 2008
Willow Garage Supports Continuing Evolution of OpenCV to Address Core Problem in Robotics
MENLO PARK, CA - Oct 20,2008 - Continuing its investment in Open Source robotics and robotics research, Willow Garage Inc. today announced the release of Learning OpenCV: Computer Vision with the OpenCV Library, co-authored by Senior Scientists Dr. Gary Bradski of Willow Garage and Adrian Kaehler of Applied Minds Corporation.

October 18, 2008

armless pr2Three sets of bases, spines and heads have been assembled and are under intensive testing at Willow Garage.  These robots are complete except for the modular arms, which will be finished next month.  The navigation stack from ROS has been implemented and is currently being refined.  The robots are already able to navigate the hallways in the building autonomously.  Meanwhile the prototype "breadboard" arm is attached to the old breadboard body, so that the arm control software can be developed and tested in advance.