Archive for the ‘Uncategorized’ Category

rosbridge: Beyond a Single Robot Cloud Engine

Monday, June 24th, 2013

A remix of Rapyuta: The RoboEarth Cloud Engine

In recent years cloud computing has made an entrance into our lives. Naturally, this begs the question how cloud computing can be used in robotics applications. With Rapyuta, the RoboEarth Cloud Engine, an open source software package is released that tries to answer this question. Rapyuta provides an easy solution specifically tailored to robotics applications. With rosbridge, the aim is to provide a general network protocol to allow for many different robot systems and software to seamlessly work together. It is often tempting to evangelize one particular software package or cloud service as a cure-all, similar to proprietary networks of decades past (Novell NetWare anyone?). The critical component is a defined protocol that is not tied to any specific implementation such that any two systems can interoperate simply by sending the proper network messages. This is the goal: a TCP/IP for robotics.

What about Cloud Robotics?

The following preliminary illustration video briefly explains the general motivation:

On the robot side rosbridge Rapyuta uses common web protocols that allow access via a web browser. Like Rapyuta rosbridge and ros.js, rosbridge Rapyuta uses WebSockets for persistent connections and JavaScript Object Notation (JSON) compatible strings for messages. However, because Rapyuta rosbridge provides only an implementation without a protocol specification a subset of the functionality of Rapyuta the two protocols are not compatible. The main reason for this is that rosbridge is an lightweight and general applications-layer protocol to support a wide variety of robot and computing platforms while avoiding code bloat, excessive complexity, and the burden of constant software and build maintenance Rapyuta allows the client to interact with more than one ROS environment, i.e. computing environments, over the same connection, which leads to a more complex protocol for Rapyuta. Defined protocols are the reason a web page written in 1993 (and last modified in 1997) can still be readily viewed in 2013.

This advice from Vint Cerf applies to robotics in addition to modern cloud computing:

Vint Cerf, celebrated “father of the Internet” now working at Google as vice president and chief Internet evangelist, sees parallels between pre-Internet networking and the state of cloud computing today.

In a lively keynote speech January 16 to more than 600 researchers from government, academia and industry at the National Institute of Standards and Technology’s Cloud Computing and Big Data Workshop here, Cerf said that today users interact with cloud computing in a client-server model – information flows between individual users (clients) and the data center (server). The next step in cloud evolution may be clouds interacting directly with each other. He believes that distinct types of specialized clouds (such as for data analysis or large-scale computing) are developing, and there will be a need for a way to transfer data among them without having to download it from one cloud and upload it onto another.

It’s similar to the proprietary networks of 30 years ago, which allowed communications among only computers of the same brand. Then Cerf and Robert Kahn designed TCP/IP, a non-proprietary protocol that tied them together and led to the Internet.

“I have the sense that inter-cloud communication is in the same state of infancy that Internet was in the ‘70s,” Cerf said. “We need something like [TCP/IP] in the cloud environment.”

It is clear that rosbridge nor any other existing software or protocol is the complete answer. As a community, we have taken some good steps in the right direction. However, the history and emergence of TCP/IP for the Internet and HTTP/HTML for the World Wide Web suggest that openness, interoperability, reproducibility, and broader use are critical properties for cloud robotics to be useful and ubiquitous. As in the examples below, these properties have been at the heart of rosbridge since its beginnings and evolution over the past few years. Through good faith discussions and collaborations, development of robotics network protocols that will stand the test of time are within reach for the next generation of robotics research and development.

RosCon2013 Track1 Day2 02 Brandon Alexander – Creating web-enabled robots with Robot Web Tools from OSRF on Vimeo.

Logan Wan dreams of sushi

Monday, June 3rd, 2013

Time passes fast. My year-long sabbatical at Willow Garage is coming to an end shortly, as well as the internships of many great interns. One of these interns, Logan Wan, made an awesome sushi spread for his last Friday. He showed some serious skills in carving a cucumber wrap for me. If you look closely, you can see a special surprise visitor.

National Geographic Emerging Explorers

Thursday, May 16th, 2013

I am thrilled to join the 2013 class of National Geographic Emerging Explorers. The NG Explorers Symposium in June should be an excellent event. Anastasia Cronin took the picture of me for my Explorer profile when she visited Willow Garage, and drove a PR2 around to retrieve various objects (from an RMS web interface).

Demonstration video of using RMS for mobile manipulation with KUKA YouBot and (0:21) Willow Garage PR2:

As a side note, this was my favorite congratulatory message:

On Thu, May 16, 2013 at 5:59 PM, Littman, Michael wrote:
In my field, I think it’s always better to be an explorer than an exploiter. :-)


Thursday, May 16th, 2013

It is great to hear that the NSF has awarded a $5M grant to form the nationwide iAAMCS Institute for African-American Mentoring in Computing Sciences.

the newly combined Institute for African-American Mentoring in Computing Sciences (iAAMCS, pronounced “i am cs”) will serve as a national resource and emphasize mentoring as the primary strategy for increasing the participation of African-Americans in computing, specifically at the Ph.D. level and beyond. The overarching goal of the iAAMCS is to increase the number of African-Americans obtaining computing sciences doctoral degrees leading to an increase in the number of African-American researchers in the academy, government, and industry. Toward this goal, the iAAMCS Alliance will (1) increase the number of African-American Ph.D. graduates who enter the workforce with a research focus; (2) retain and advance African-American Ph.D. students, faculty and researchers in computing; and (3) develop future African-American leaders with computing expertise in the academy, government, and industry.

As a contributor to the ARTSI Alliance, this evolution of broadening participation in computing (and robotics) is a strong step forward. Looking forward to seeing more Gheric Speiginers because computing’s current numbers could be a lot more representative of society.

HRI@Brown Symposium

Wednesday, May 15th, 2013

With my awesome collaborators (Michael Littman and Bertram Malle), we had the Second Human-Robot Interaction Symposium at Brown last week. It was amazing to see the excellence and breadth of research among the faculty at Brown and collaborators from other local institutions. Through its strength of interdisciplinary collaboration, Brown and the Providence area is in a great position to address the technological challenges and societal needs for realizing robots that benefit humanity, improving both productivity and quality of life across society. Robotics is at the beginnings of revolutionizing society in the next 40 years similar to how computing revolutionized the past 40 years.

That said, one of my favorite parts of the symposium was using my Suitable Beam remote presence device to wrangle people into the meeting room (along with a gratuitous pic of Providence from the Beam). Thanks to the ICERM staff for being wonderful hosts and Tom Sgouros for getting the Beam working during the symposium.

Robot Web Tools Launched

Wednesday, May 15th, 2013

Robot Web Tools has officially launched! This is the next stage of our continued efforts to bring robots to the people and democratize access to state-of-the-art robots. Robot Web Tools is “bringing robots to your favorite browser.” Robot Web Tools allows web applications to interface with a variety of robots running middleware like the popular Robot Operating System (ROS) using the latest in HTML5 and JavaScript. Many thanks to Russell Toris, Jihoon Lee, Brandon Alexander, Sarah Osentoski, Kaijen Hsiao, Sonia Chernova, and many other contributors for making this happen.

Quad Rotors for Humanity

Wednesday, May 15th, 2013

Had fun last week flying Parrot AR.Drone quad rotor helicopters with Henry Evans of Robots for Humanity. Through a web interface created by Brown Robotics with rosbridge and ROS, Henry uses the drones to explore and monitor his home. Not only is Henry fun to hang around, he is a better pilot that I am (for now). More about Henry’s work with personal robotics can be found on the Robots for Humanity page, excerpted below:

“Henry Evans is a mute quadriplegic, having suffered a stroke when he was just 40 years old. Following extensive therapy, Henry regained the ability to move his head and use a finger, which allows him to operate computers… [This] demonstrates how people with severe physical disabilities could use personal robots to gain independence… Currently, Henry uses a head tracker to operate a variety of experimental user interfaces. These interfaces allow him to directly move the robot’s body, including its arms and head… Robots that complement human abilities are extremely valuable, especially when they help us do things that we can’t do by ourselves.”

It is worth noting that the same web interface for driving the AR.Drone can be readily used to drive a PR2 robot. This interoperability is due to the use of rosbridge as a network messaging protocol, allowing robot web apps to speak to a variety of different robots.

Code for this project is available at this repository, and uses rosbridge, mjpeg_server, and ardrone_autonomy ROS packages.

Donut’s Last Day

Saturday, May 4th, 2013

While on sabbatical, I had the incredible pleasure of working with and mentoring Russell Toris, an intern from the WPI Robot Autonomy and Interactive Learning Lab working with Bosch LLC and Willow Garage, on projects related to cloud robotics. During his internship, Russell made monumental strides in continuing the development of rosbridge, furthering the Robot Web Tools effort, and creating a number of great JavaScript libraries for robotics (such as roslibjs)… and these are only a few of his recent accomplishments. His in-browser NASA Robonaut 2 demo is my personal favorite if his recent work, but this demo of in-browser navigation is a very close second:

Friday was my last day working with Russell. I am really looking forward to working with Russell and his advisor, Sonia Chernova, on cloud robotics projects upon returning to Brown this Summer.

Glittering Machines

Saturday, May 4th, 2013

Paul Myoda, a kinetic sculptor at Brown, sent me a copy of his new book Glittering Machines. There are some amazing images in this book. As a roboticist, I was geeking out that he included VGo telepresence robot (p. 52), which might be from my lab (maybe?).

Inflight In-browser PR2

Monday, April 8th, 2013


I love the ability to run robot demos through my browser while flying commercially. Thanks to Russell Toris, Robot Web Tools, and Gogo inflight wifi.