ROSLink: Bridging ROS with the Internet-of-Things for Cloud Robotics
The integration of robots with the Internet is nowadays an emerging trend, as new form of the Internet-of-Things (IoT). This integration is crucially important to promote new types of cloud robotics applications where robots are virtualized, controlled and monitored through the Internet. This paper proposes ROSLink, a new protocol to integrate Robot Operating System (ROS) enabled-robots with the IoT. The motivation behind ROSLink is the lack of ROS functionality in monitoring and controlling robots through the Internet. Although, ROS allows control of a robot from a workstation using the same ROS master, however this solution is not scalable and rather limited to a local area network. Solutions proposed in recent works rely on centralized ROS Master or robot-side Web servers sharing similar limitations. Inspired from the MAVLink protocol, the proposed ROSLink protocol defines a lightweight asynchronous communication protocol between the robots and the end-users through the cloud. ROSLink leverages the use of a proxy cloud server that links ROS-enabled robots with users and allows the interconnection between them. ROSLink performance was tested on the cloud and was shown to be efficient and reliable.
KeywordsRobot Operating System (ROS) Cloud robotics Internet-of-Things ROSLink Mobile robots Protocol Design
This work is supported by the Dronemap project entitled “DroneMap: A Cloud Robotics System for Unmanned Aerial Vehicles in Surveillance Applications” under the grant number 35-157 from King Abdul Aziz City for Science and Technology (KACST), and supported by Prince Sultan University. In addition, the authors would like to thank the Robotics and Internet of Things (RIoT) Unit at Prince Sultan University’s Innovation Center for their support to this work. The authors would like also to thank Gaitech Robotics in China for their support to this work.
- 1.Kuffner, J. 2010. Cloud-enabled robots. In IEEE-RAS International Conference on Humanoid Robots. IEEE.Google Scholar
- 2.Chaari, R., F. Ellouze, A. Koubaa, B. Qureshi, N. Pereira, H. Youssef, and E. Tovar. 2016. Cyber-physical systems clouds: A survey. Computer Networks 108: 260–278. http://www.sciencedirect.com/science/article/pii/S1389128616302699.
- 3.Qureshi, B., and A. Koubaa. 2014. Five traits of performance enhancement using cloud robotics: A survey. Procedia Computer Science 37: 220–227. http://www.sciencedirect.com/science/article/pii/S1877050914009983.
- 4.Quigley, M., K. Conley, B.P. Gerkey, J. Faust, T. Foote, J. Leibs, R. Wheeler, and A.Y. Ng. 2009. Ros: an open-source robot operating system. In ICRA Workshop on Open Source Software.Google Scholar
- 5.Casini, M., A. Garulli, A. Giannitrapani, and A. Vicino. 2014. A remote lab for experiments with a team of mobile robots. Sensors 14: 16486–16507.Google Scholar
- 6.Pitzer, B., S. Osentoski, G. Jay, C. Crick, and O.C. Jenkins. 2012. Pr2 remote lab: An environment for remote development and experimentation. In IEEE International Conference on Robotics and Automation (ICRA).Google Scholar
- 7.Casañ, G.A., E. Cervera, A.A. Moughlbay, J. Alemany, and P. Martinet. 2015. Ros-based online robot programming for remote education and training. In 2015 IEEE International Conference on Robotics and Automation (ICRA), 6101–6106.Google Scholar
- 8.Esteller-Curto, R., E. Cervera, A.P. del Pobil, and R. Marin. 2012. Proposal of a rest-based architecture server to control a robot. In 2012 Sixth International Conference on Innovative Mobile and Internet Services in Ubiquitous Computing, 708–710.Google Scholar
- 9.Arumugam, R., V.R. Enti, L. Bingbing, W. Xiaojun, K. Baskaran, F.F. Kong, A.S. Kumar, K.D. Meng, and G.W. Kit. Davinci: A cloud computing framework for service robots. In 2010 IEEE International Conference on Robotics and Automation, 3084–3089.Google Scholar
- 10.Narita, M., S. Okabe, Y. Kato, Y. Murakwa, K. Okabayashi, and S. Kanda. 2013. Reliable cloud-based robot services. In 39th Annual Conference of the IEEE Industrial Electronics Society.Google Scholar
- 11.Crick, C., G.T. Jay, S. Osentoski, B. Pitzer, and O.C. Jenkins. 2011. rosbridge: ROS for Non-ROS Users. In International Symposium on Robotics Research (ISRR 2011). AZ, USA: Flagstaff.Google Scholar
- 12.Koubâa, A. 2015. ROS As a Service: Web Services for Robot Operating System. Journal of Software Engineering for Robotics 6 (1).Google Scholar
- 13.MAVLink Micro Air Vehicle Communication Protocol. 2016. http://qgroundcontrol.org/mavlink/start. Accessed 7 Jun 2016.
- 14.Osentoski, S., G. Jay, C. Crick, B. Pitzer, C. DuHadway, and O.C. Jenkins. 2011. Robots as web services: Reproducible experimentation and application development using rosjs. In 2011 IEEE International Conference on Robotics and Automation (ICRA), 6078–6083.Google Scholar
- 15.The JSON Data Interchange Format, First edition ed. ECMA International. 2013. http://www.ecma-international.org/publications/files/ECMA-ST/ECMA-404.pdf
- 16.ROSLink Message Specification Set. 2016. http://wiki.coins-lab.org/roslink/ROSLINKCommonMessageSet.pdf. Accessed 22 Oct 2016.
- 17.Koubaa, A., B. Qureshi, M.-F. Sriti, Y. Javed, and E. Tovar. 2016. Dronemap planner: A service-oriented cloud-based management system for the internet-of-drones. In The 32nd ACM Symposium on Applied Computing.Google Scholar
- 18.Dronemap Planner Demos. 2016. http://wiki.coins-lab.org/index.php?title=Dronemap. Accessed 6 Nov 2016.
- 19.Telerobot. 2016. http://telerobot.mech.uwa.edu.au/Telerobot/index.html Accessed 10 May 2016.
- 20.Marín, R., P. Sanz, and A. del Pobil. 2003. The uji online robot: An education and training experience. Autonomous Robots 15 (3): 283–297. http://dx.doi.org/10.1023/A:1026220621431.