AWS Robotics Blog

Building Robot Operating System (ROS) 2.0 powered robots with the ROSBot 2.0 tutorial and Amazon Web Services (AWS)

Introduction

The AWS robotics team works with different robotics hardware and software providers to make it easy for developers to build using the Robot Operating System (ROS). This blog discusses robotics reference hardware platforms and a tutorial from Husarion that developers can use to build robotics applications built on the ROS 2 Dashing Diademata distribution.

AWS RoboMaker's cloud simulation environment

A Turtlebot3 robot in AWS RoboMaker’s cloud simulation environment

For startups building new products, or students learning a technology area, it can be advantageous to begin with open source industry frameworks and tooling that provide building blocks and strong community support. The benefits of building with open source apply in the field of robotics. ROS, an open source set of software libraries and tools offered by Open Robotics, has made it easy for commercial developers, educators, students, and researchers to quickly develop robotics applications. ROS powers all types of robotics hardware, with more than 3 million downloads of common ROS packages such as rviz and rospy over ten years (source: metrics.ros.org). In December 2017, Open Robotics released ROS 2 to adapt to the many changes in robotics since ROS started in 2007, including use of newer technologies, and a distributed architecture. Then a year ago (May 31, 2019), Open Robotics released the ROS 2 Dashing Diademata distribution. As ROS became increasingly popular as a software building block, robotics developers increasingly needed standard hardware platforms to use with ROS.

A picture of Husarion’s ROSBot autonomous robot platform

A picture of Husarion’s ROSBot autonomous robot platform

For example, TurtleBot3 provides a small, affordable, and programmable ROS-based mobile robot for use in education, research, hobby, and product prototyping. Startups and educational organizations can find utility in standard hardware platforms that work with ROS and come packaged with ruggedized hardware, and capabilities such as a reference sensor suite. The utility of packaged reference hardware is especially true as new versions of ROS 2.0 comes out, and developers must test the latest version and incorporate it with hardware for industrial applications.

The AWS robotics team works with Open Robotics, and other companies to make it easy for developers to get started with ROS and ROS 2.0 and to deploy ROS-based applications to hardware. One of those companies is Husarion, who provides hardware, software, and connectivity solutions for research and education. Their autonomous robots, such as ROSbot 2.0, are great platforms for ROS and ROS 2.0 development. Husarion created a tutorial to help robotics developers use ROS 2.0, the ROSbot 2.0 robot, and AWS RoboMaker, which supports ROS 2 Dashing Diademata in beta. ROSbot 2.0 is an autonomous open-source robot platform, which can be used for learning and for getting robotics applications off the ground. The ROSbot 2.0 specifications and its optional sensor package make it easy for developers to get rolling, in part by removing the need to solder or assemble components together.

Solution Overview

Using Husarion’s tutorial, developers can begin ROS 2.0 development from anywhere with the AWS Cloud9 integrated development environment (IDE) and AWS RoboMaker. In Husarion’s tutorial, you use AWS RoboMaker to create and manage multiple ROS or ROS 2.0 development environments.

AWS RoboMaker’s sample applications available with one-click in AWS Cloud9

AWS RoboMaker’s sample applications available with one-click in AWS Cloud9

To simplify setting up ROSbot 2.0 in AWS RoboMaker, the Husarion tutorial provides an AWS CloudFormation template to define the configuration of the environment. You use AWS CloudFormation to create a bucket in Amazon Simple Storage Service (Amazon S3), as well as to create the necessary permissions in AWS Identity and Access Manager (IAM) that AWS RoboMaker requires to simulate and deploy your robot applications. Additionally, you can use the AWS RoboMaker sample applications, such as Hello World, with ROSBot 2.0. If you don’t have access to the ROSBot 2.0 hardware, you can still use a simulated model from Husarion and test your application in simulation with AWS RoboMaker.

Summary

In this post, I discussed how you can use hardware reference platforms and the ROS open source software libraries to speed up development, as well as how you can use AWS RoboMaker and the Husarion ROSbot to rapidly build and deploy ROS and ROS 2.0 based applications to the ROSbot reference platform. Check out Husarion’s step-by-step tutorial to get started with your ROS 2.0 development in the cloud. We hope you enjoy your ROS development. Let us know what exciting applications you’re building.

If you are interested in learning more about this technology, please Contact Us!

Pulkit Kapur

Pulkit Kapur

Pulkit Kapur is a Business Development Manager for Robotics and Autonomous Systems at Amazon Web Services (AWS). Prior to AWS, Pulkit worked at MathWorks as Industry Lead for Robotics, responsible for global business development and product roadmap. Prior to that Pulkit was at iRobot as a product manager, launching consumer robots globally. Pulkit has a Master’s in Mechanical Engineering with a specialization in Robotics from the GRASP Lab at University of Pennsylvania in Philadelphia. Pulkit has over 10 years of industry experience in the field of robotics and autonomous systems.