Connecting ROS and FIWARE: Concepts and Tutorial

Nowadays, the Cloud technology permeates our daily life, spread in various services and applications used by modern instruments, such as smartphones, computer, and IoT devices. Besides, the robotic field represents one of the future emerging markets. Nevertheless, these two distinct worlds seem to be very far from each other, due to the lack of common strategies and standards. The aim of this tutorial chapter is to provide a walkthrough to build a basic Cloud Robotics application using ROS and the FIWARE Cloud framework. At the beginning, the chapter offers step-by-step instructions to create and manage an Orion Context Broker running on a virtual machine. Then, the firos package is used to integrate the ROS topic communication using publishers and subscribers, providing a clear example. Finally, a more concrete use case is detailed, developing a Cloud Robotics application to control a ROS-based robot through the FIWARE framework. The code of the present tutorial is available at https://github.com/Raffa87/ROS_FIWARE_Tutorial, tested using ROS Indigo.

[1]  Theodore B. Zahariadis,et al.  FIWARE Lab: Managing Resources and Services in a Cloud Federation Supporting Future Internet Applications , 2014, 2014 IEEE/ACM 7th International Conference on Utility and Cloud Computing.

[2]  Morgan Quigley,et al.  ROS: an open-source Robot Operating System , 2009, ICRA 2009.

[3]  Xiaojun Wu,et al.  DAvinCi: A cloud computing framework for service robots , 2010, 2010 IEEE International Conference on Robotics and Automation.

[4]  Raffaello D'Andrea,et al.  Rapyuta: The RoboEarth Cloud Engine , 2013, 2013 IEEE International Conference on Robotics and Automation.

[5]  J. Jaime,et al.  Cloud Robotics in FIWARE: A Proof of Concept , 2015, HAIS.

[6]  Pieter Abbeel,et al.  Image Object Label 3 D CAD Model Candidate Grasps Google Object Recognition Engine Google Cloud Storage Select Feasible Grasp with Highest Success Probability Pose EstimationCamera Robots Cloud 3 D Sensor , 2014 .

[7]  Paolo Dario,et al.  Use Case Evaluation of a Cloud Robotics Teleoperation System (Short Paper) , 2016, 2016 5th IEEE International Conference on Cloud Networking (Cloudnet).

[8]  Guoqiang Hu,et al.  Cloud robotics: architecture, challenges and applications , 2012, IEEE Network.

[9]  Shuichi Nishio,et al.  Cloud networked robotics , 2012, IEEE Network.

[10]  Francesco Furfari,et al.  universAAL – An Open and Consolidated AAL Platform , 2011 .

[11]  Raffaello D'Andrea,et al.  Rapyuta: A Cloud Robotics Platform , 2015, IEEE Transactions on Automation Science and Engineering.

[12]  Sonia Chernova,et al.  Robot Web Tools: Efficient messaging for cloud robotics , 2015, 2015 IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS).