Willow Garage Blog

September 7, 2010

After years of design, prototyping, and testing, and with 11 PR2 robots already in the field, Willow Garage is proud to announce that PR2 is officially for sale. As of today, you can take home your very own personal robot.

PR2 is priced at $400,000. For individuals with a proven track record in contributions to the open source community, we are also introducing an award which amounts to a $120,000 discount on PR2 purchases. Details on the open source discount are here.

Obviously, this is an exciting milestone for Willow Garage as making PR2 broadly available has been a major goal of ours. We are in regular contact with our beta sites and continue to hear about exciting software they are developing and research they are doing using PR2 and ROS. With PR2 now commercially available, we can’t want to see what our new users will develop on our platform.

For more information or to purchase the PR2, please click here.

August 30, 2010

Want to know one of the great things about building robots? If you are given an unenviable assignment, in this case testing new power cords for PR2, the first question you can ask is whether a robot can do it instead.

So that's what we did. In order to validate the insertion life with the receptacle on the back of PR2 we needed to conduct an insertion test thousands of times with different cords from different manufacturers. And we needed to do it right away.

PR2 was up to the task. Instead of having a person manually plugging and unplugging ad infinitum, we spent twenty minutes writing code. The result was a PR2 app that our technicians can now use to run plug insertions as many times as needed.

August 25, 2010

AwardWillow Garage is happy to announce three recipients of the Willow Garage Open Source Achievement Award. This award recognizes individuals in the robotics community who have been leaders in promoting and developing open-source software. Awardees are selected by the Willow Garage research and development team and will receive $2000 as additional thanks for their efforts.

Peter Soetens: Peter Soetens is the lead developer of the Orocos RTT framework for real-time robotics control. He is also the founder of The SourceWorks, which promotes, teaches, and supports the adoption of open source software in machine control applications.

Geoffrey Biggs: Geoffrey Biggs has contributed to numerous open-source robotics frameworks. In addition to being a founder of the Gearbox Project, which promotes framework-independent robotics code, he has been a contributor to Player, OpenRTM, and ROS.

Giorgio Grisetti: Giorgio Grisetti is a main developer of the GMapping and TORO libraries, which are part of the OpenSLAM project. GMapping and TORO have improved scientific research in SLAM and provided important components for real-world robotic systems. Work on these projects was done in conjunction with Cyrill Stachniss, Slawomir Grzonka and Wolfram Burgard.

August 23, 2010

Ze'ev Klapow, our summer intern from Petaluma High School, tackled several challenges to help improve the PR2, Texai, and ROS.

As Texai move into environments outside the Willow Garage offices, it is reasonable to expect that they'll encounter stairs and other potentially hazardous drop-offs. Ze'ev set out to design a low-cost and effective solution to help Texai avoid these hazards. He was able to use multiple, cheap IR sensors -- less than $10 each -- to create an infrared sensor array for the Texai. The prototype uses a ATmega168 microcontroller and three GP2D12/GP2D120 IR rangefinders in a short, medium, and long-range configuration, in order to slow the robot before approaching a drop-off and stop it if gets too close.

Ze'ev also worked on automating more of the PR2 calibration process. PR2 already automates some of its own calibration, including waving a small checkerboard in front of its sensors. However, there are steps that required the help of a person, such as waving a larger checkerboard around for the wide stereo cameras and moving a small checkerboard from the left gripper to the right. With the new "auto calibration" code, the process is now just setup and go. PR2 drives around the large checkerboard on its own and is able to move the small checkerboard from one gripper to the other.

Another project that Ze'ev worked on was making it easier to setup ROS packages with XCode and Cocoa on OS X. You can find more information here.

August 21, 2010

Our founder Scott Hassan challenged the PR2 Beta Site participants to get the PR2 to "do something cool, funny, or useful." To be fair to advisors and bosses, entrants were also told that the "competition should not interfere with your work or research duties."

What could these sites do in a short period of time? Checkout the results below.

First Place ($5000): Sockification, Berkeley: Ping Chuan Wang, Stephen Miller, Mario Fritz, Trevor Darrell, Pieter Abbeel

Second Place ($3000): Mailman, Bosch: Ben Pitzer

Third Place ($2000): PR2 Band, University of Pennsylvania: Ben Cohen, Daniel Benamy and Mike Phillips

Other entries

August 19, 2010

With the PR2 Beta Program up and running and in the field, it's time for the next step – PR2s for sale.

It was important for us to wait until we had positive feedback on PR2s from our beta sites before making them commercially available, but that time is near. Next month we will be formally announcing that you can purchase your very own PR2. Stay tuned for more details.

If you would like a quote or more information in the meantime, please email us at PR2info@willowgarage.com.

We are extremely proud of PR2, and have been overwhelmed by the response of the robotics community. Thank you to everyone in the world of open source robotics who has helped to make PR2 and ROS what they are today: an integrated hardware and software platform that provides researchers with immediate productivity.

August 17, 2010

One of the new features in ROS C Turtle was a critical component of our recent "hackathons."  When fetching a drink out of a refrigerator, for example, a robot has to perform numerous tasks such as grasping a handle, opening a door, and scanning for drinks.  These tasks have to be carefully orchestrated to deal with unexpected conditions and errors. We've previously used complex task-planning systems to orchestrate these actions, but our developers and researchers needed something more rapid for prototyping robot behaviors.

One of our interns came up with an answer.  SMACH ("State MACHine", pronounced "smash") is a task-specification and coordination architecture that was developed by Jonathan Bohren as part of his second internship here at Willow Garage. Jonathan came to us from the GRASP Lab at University of Pennsylvania and is now headed off to the Laboratory for Computational Sensing and Robotics (LCSR) at Johns Hopkins.  During his extended stay here, SMACH was used in a variety of PR2 projects.

SMACH was first used in the rewrite of our plugging and doors code, then further refined during our billiards, cart-pushing, and drink-fetching hackathons. In all of these projects, the ability to code these behaviors quickly was critical, as was the ability to create more robust behaviors for dealing with failure.

SMACH is a ROS-independent Python library, so it can be used with and without ROS infrastructure. It comes with important developer tools like a visualizer for the current SMACH plan and introspection tools to
monitor the internal state and data flow. There are already many SMACH tutorials that can be found on the ROS wiki, and we hope to see SMACH used to produce many more cool robotics apps!

August 3, 2010


ROS C Turtle has been released!

ROS C Turtle is the second ROS distribution release. ROS Box Turtle was released March 2, 2010 and included stable releases of ROS and core libraries and tools like navigation, rviz, hardware drivers, and an image-processing pipeline.

ROS C Turtle builds on Box Turtle with across-the-board improvements to these core libraries and numerous bug fixes. These improvements include a new "nodelet" architecture that provides low-latency, zero-copy message passing within C++ nodes, official support for a Lisp client library, and an official firewire camera driver (thanks to Jack O'Quin). Numerous third-party libraries have been upgraded in this release, including Stage 3.2.2, Bullet 2.76, and Eigen 2.0.15, as well as newer versions of KDL and Gazebo. There are many, many other improvements listed in the change list.

This release includes new experimental libraries for 3D perception, manipulation, grasping, and visual odometry. We encourage early adopters to test out these libraries and provide feedback so that they can be stabilized for future ROS releases.

Since the release of Box Turtle, the ROS community has grown immensely. There are over a dozen new public, open-source repositories of ROS code, and ROS has been ported to a variety of different robot platforms, from mobile manipulators to autonomous boats. Commercial robotics software libraries like Urbi and Karto now have open-source offerings that are compatible with ROS, and the list of robot platforms that can be used with ROS continues to grow. We're excited at these new opportunities to collaborate within the community and hope that you all enjoy this C Turtle release.

ROS distribution releases occur on a six-month cycle. The successor to C Turtle, Diamondback, is expected in February of 2011.

July 27, 2010

Robots Using ROS

This fourth installment features both aerial and indoor robots, as well research and commercial:

  • Penn Quadrotors: ROS is now being used in robots that fly. ROS communication and modular infrastructure is being used by researchers at Penn to help their aerial robots perform "aggressive" manuevers.
  • Robotino: the Robotino platform, which is distributed Festo Didactic and developed by REC, now has a complete set of ROS drivers, including support for the ROS navigation stack.
  • Shadow Dextrous Hand: Shadow Robot's dextrous hand now comes with ROS software for both real and simulated hardware.
  • Wash U's B21r and ERRATICs: The Media and Machines Lab at Washington University uses ROS to power their iRobot B21r and have shared their drivers with the rest of the iRobot/RWI community. Wash U also uses ROS to power their fleet of Videre ERRATICs and iRobot Creates.

Previously Part I, Part II, Part III:

  • TUM-Rosie: TU München built a Kuka-based mobile manipulation platform to research robots with a high-degree of cognition.
  • CKbots: the Modlab's small, modular robots are too small to run ROS themselves, but they can connect to a ROS system to test algorithms that need a bit more horsepower.
  • Marvin: the autonomous car from Austin Robot Technology and UT Austin competed in the DARPA Urban Challenge and has now been ported to ROS.
  • HERB: the mobile manipulator, based on a Segway RMP200 and Barrett arm, was built to be a "robotic butler" and is used as a collaboration between Intel Pittsburgh and Carnegie Mellon University.
  • Care-O-bot 3: Fraunhofer IPA's mobile manipulation platform has broad support for ROS. The accompanying open-source repository includes everything from device drivers to simulation in Gazebo.
  • Bosch RTC's robot: Bosch RTC's Segway RMP-based robot has been used to develop new ROS libraries, including an exploration stack.
  • EL-E and Cody: Georgia Tech's Healthcare Robotics Lab has released drivers and has also released code to accompany research papers.
  • Kawada HPR2-V: the JSK Lab at Tokyo University has integrated this omni-directional variant of the HRP-2 with the ROS navigation stack.
  • Prairie Dog: the Correll Lab at Colorado University uses this iRobot Create-based platform for teaching and research.
  • STAIR 1: the Stanford University mobile manipulation research platform that provided the predecessor of the ROS framework.
  • Aldebaran Nao: a small, commercially available humanoid robot that demonstrated the ability of the ROS community (Brown University and University of Freiburg) to come together and develop open source drivers.
  • i-Sobot: an even smaller humanoid robot controlled by the ROS PS3 joystick driver. The developer has been publishing a Japanese-language blog on ROS, helping ROS reach new audiences.
  • Junior: Stanford Racing's autonomous car that finished a close second in the DARPA Urban Challenge. Junior's main software framework is IPC, but ROS's modular libraries have made it easy to integrate ROS-based perception libraries into their obstacle classification system.
July 22, 2010


Thanks to the efforts of Gostai, Urbi and ROS are now compatible! Urbi 2.1 has just been released, and this new release includes integration with ROS and Urbiscript.

For ROS users, Urbiscript provides users a powerful scripting environment that provides features like parallelism and event-triggers for creating behavior scripts for your robots. ROS users can also use the Gostai Studio Suite, which provides a graphical IDE. Gostai has released the Urbi kernel as open source (AGPL), which contributes the growing community of open-source platform technologies for robotics.

For Urbi users, ROS provides a quickly growing library of reusable and open-source software components with a wide range of capabilities, including navigation, perception, and manipulation.

To find out more about Urbi open source, check out Urbi Forge. To get started with Urbi + ROS, you can read the Urbi manual or try their Urbi + ROS tutorial.