ROS Support for Snapdragon® - Bringing ARM into Robotics

Thursday 6/25/15 02:29pm
Posted By Mike Roberts
  • Up0
  • Down0

Snapdragon and Qualcomm branded products are products of
Qualcomm Technologies, Inc. and/or its subsidiaries.

A few months ago, my colleague Suraj Swami posted about the Open Source Robotics Foundation (OSRF) and our agreement with them to port Robotic Operating System (ROS) libraries to Snapdragon processors. ROS is a collection of tools and libraries designed to simplify the task of creating and programming robotic platforms and applications. The libraries are out of the oven now and ready for you to start building robots around single-board computers powered by Snapdragon processors.

Robotics Operating System – Why Is It Important?
Developers, like you, came up with ROS as a set of libraries that make it easier to write software for robots. Via Qualcomm Technologies recent involvement, OSRF made ROS available to a wider developer community by porting ROS libraries to the ARM instruction set architecture. As developers have turned their attention to mobile robotics applications, Snapdragon and other ARM-based chipsets have become a lot more interesting.

By extending support for ROS to Snapdragon, OSRF has made it easier for developers to build ARM-based robots that include functionality such as:

  • Perception
  • Object identification
  • Segmentation and recognition
  • Facial recognition
  • Gesture recognition
  • Motion tracking
  • Egomotion
  • Motion understanding
  • Structure from motion (SFM)
  • Stereo vision: Depth perception through two cameras
  • Mobile robotics
  • Control
  • Planning
  • Grasping

Moreover, OSRF has been ported to both Android and Ubuntu Linux. These libraries are designed to greatly reduce timelines in developing a robot around a single-board computer (SBC) like the Inforce Computing 6410™ Single Board Computer and Inforce Computing 6410 Plus™ Single Board Computer with a Snapdragon® 600 processor.

A Big Shot In The Robotic ARM

Qualcomm Technologies involvement with ROS started in 2013 as part of Suraj Swami’s idea submission to Qualcomm ImpaQt, our internal incubation and intrapreneurship program that encourages employees to innovate outside their day-to-day job. His success in demonstrating the feasibility and promise of Snapdragon processors for robotics applications through the ImpaQt process led to agreements to scale, support, and broaden the availability of ROS for Snapdragon.

Out of more than 2,000 libraries, we worked with OSRF to port the 450-plus libraries that we thought would have the greatest impact on robotics development. It’s the start of the cross-platform journey whereby developers working on ROS for x86 can pick up their code and drop it onto ROS running on Snapdragon. We are currently extending our relationship with OSRF to bring even more ROS functionality to Snapdragon processors.

Making ROS available through the largest open source robotics organization is one of the ways we’re seeding robotics development on Snapdragon to help create an onramp to robotics education and innovation. In turn, we hope to raise the profile of Snapdragon and Qualcomm Technologies in the robotics community.

We think this is an important step in getting Snapdragon and its ARM-based architecture into robotics. ROS also paves the way to use a Snapdragon-based smartphone as the main computing device in a robot, as shown in the video below.

Next Steps

If you’ve built a robot around ROS on the Intel x86 Instruction Set Architecture, you can explore the possibility of running it with ROS on Snapdragon, without all the heavy lifting of porting ROS libraries yourself.

Your robotic world just got a lot bigger. And because robotics are an integral piece of Qualcomm Technologies Internet of Things (IoT) ecosystem, we see multiple opportunities for developers to create exciting new projects. Qualcomm Technologies believes it is critical to help transform not only how people connect things, but also adding computing intelligence and interoperability across all kinds of objects and devices. Snapdragon processors and robotics can help play a key role in expanding the reach of IoE solutions, and we want to see what you can create with our tools and resources.