Skip to main content
Log in

SOM4R: a Middleware for Robotic Applications Based on the Resource-Oriented Architecture

  • Published:
Journal of Intelligent & Robotic Systems Aims and scope Submit manuscript

Abstract

This paper relies on the resource-oriented architecture (ROA) to propose a middleware that shares resources (sensors, actuators and services) of one or more robots through the TCP/IP network, providing greater efficiency in the development of software applications for robotics. The proposed middleware consists of a set of web services that provides access to representational state of resources through simple and high-level interfaces to implement a software architecture for autonomous robots. The benefits of the proposed approach are manifold: i) full abstraction of complexity and heterogeneity of robotic devices through web services and uniform interfaces, ii) scalability and independence of the operating system and programming language, iii) secure control of resources for local or remote applications through the TCP/IP network, iv) the adoption of the Resource Description Framework (RDF), XML language and HTTP protocol, and v) dynamic configuration of the connections between services at runtime. The middleware was developed using the Linux operating system (Ubuntu), with some applications built as proofs of concept for the Android operating system. The architecture specification and the open source implementation of the proposed middleware are detailed in this article, as well as applications for robot remote control via wireless networks, voice command functionality, and obstacle detection and avoidance.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. Business process model and notation (BPMN). http://www.omg.org/spec/BPMN/index.htm, a. Accessed: 02-03-2012

  2. CMUSPhinx wiki. http://cmusphinx.sourceforge.net/wiki/, b. Accessed: 02-03-2012

  3. eSpeak Text to speech. http://espeak.sourceforge.net, c. Accessed: 02-03-2012

  4. The OAuth 2.0 authorization protocol v2-23. http://tools.ietf.org/html/draft-ietf-oauth-v2, d. Accessed: 03-02-2012

  5. OpenKinect Project. http://openkinect.org/wiki/main_page, e. Accessed: 02-03-2012

  6. Pyfaces: Face recognition system. https://code.google.com/p/pyfaces/, f. Accessed: 08-27-2011

  7. Fielding, R.T.: Ph.D. thesis. http://www.ics.uci.edu/fielding/pubs/dissertation/top.htm, g. Accessed: 11-10-2011

  8. Belhumeur, P.N., Hespanha, J.P., Kriegman, D.: Eigenfaces vs. Fisherfaces: recognition using class specific linear projection. IEEE Trans. Pattern Anal. Mach. Intell. 19(7), 711–720 (1997)

    Article  Google Scholar 

  9. Billinghurst, M., Cheok, A., Prince, S., Kato, H.: Real world teleconferencing. IEEE Comput. Graph. Appl. 22(6), 11–13 (2002)

    Article  Google Scholar 

  10. Billinghurst, M., Kato, H.: Collaborative augmented reality. Commun. ACM 45(7), 64–70 (2002)

    Article  Google Scholar 

  11. Bradski, G., Kaehler, A.: Learning OpenCV. O’Reilly Media, Inc (2008)

  12. Brooks, R.A.: A robust layered control system for a mobile robot. IEEE J. Robot. Autom. 2(1), 14–23 (1986)

    Article  Google Scholar 

  13. Brooks, R.A.: A robot that walks - emergent behaviors from a carefully evolved network. Neural Comput. 2, 692–696 (1989)

    Google Scholar 

  14. Bruyninckx, H.: Open robot control software: the OROCOS project. In: Proceedings of the International Conference on Robotics and Automation (ICRA’2001), vol. 3, pp. 2523–2528 (2001)

  15. Crick, C., Jay, G., Osentosiki, S., Pitzer, B., Jenkins, O.C.: Rosbridge: ROS for non-ROS users. In: Proceedings of the 15Th International Symposium on Robotics Research (ISRR’2011). www.isrr-2011.org/ISRR-2011//Program_files/Papers/Jenkins-ISRR-2011.pdf, pp. 1–12 (2011)

  16. Crick, C., Jay, G., Osentoski, S., Jenkins, O.: Ros and rosbridge: roboticists out of the loop. In: ACM/IEEE International Conference on Human-Robot Interaction (HRI), pp. 493–494 (2012)

  17. Decker, S., Melnik, S., van Harmelen, F., Fensel, D., Klein, M., Broekstra, J., Erdmann, M., Horrocks, I.: The semantic web: the roles of XML and RDF. IEEE Internet Comput. 4(5), 63–74 (2000)

  18. Elkady, A., Joy, J., Sobh, T., Valavanis, K.: A structured approach for modular design in robotics and automation environments. J. Intell. Robot. Syst. 72(1), 5–19 (2013)

    Article  Google Scholar 

  19. Elkady, A., Sobh, T.: Robotics middleware: a comprehensive literature survey and attribute-based bibliography. Journal of Robotics 2012(ID-959013), 1–15 (2012)

    Article  Google Scholar 

  20. Fielding, R.T., Taylor, R.N.: Principled design of the modern web architecture. In: Proceedings of the International Conference on Software Engineering (ICSE’2000), pp. 407–416 (2000)

  21. Franks, J., Hallam-Baker, P., Hostetler, J., Lawrence, S., Leach, P., Luotonen, A., Stewart, L.: RFC 2617 - HTTP Authentication: Basic and Digest Access Authentication. Technical Report, The Internet Engineering Task Force (1999). www.faqs.org/rfcs/rfc2617.html

  22. Garber, L.: Wi- races into a faster future. Computer 45(3), 13–16 (2012)

    Article  Google Scholar 

  23. Gerkey, B.P., Vaughan, R.T., Stoy, K., Howard, A., Sukhatme, G.S., Mataric, M.J.: Most valuable player: a robot device server for distributed control. In: Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS’2001), vol. 3, pp. 1226–1231 (2001)

  24. Hu, G., Tay, W. P., Wen, Y.: Cloud robotics: architecture, challenges and applications. IEEE Netw. 26(3), 21–28 (2012)

    Article  Google Scholar 

  25. Hunziker, D., Gajamohan, M., Waibel, M., D’Andrea, R.: Rapyuta: the RoboEarth cloud engine. In: Proceedings of the International Conference on Robotics and Automation (ICRA’2013), pp. 438–444 (2013)

  26. Jackson, J.: Microsoft robotics studio: a technical introduction. IEEE Robot. Autom. Mag. 14(4), 82–87 (2007)

    Article  Google Scholar 

  27. Kramer, J., Scheutz, M.: Development environments for autonomous mobile robots: a survey. Auton. Robot. 22(2), 101–132 (2007)

    Article  Google Scholar 

  28. Lienhart, R., Kuranov, A., Pisarevsky, V.: Empirical analysis of detection cascades of boosted classifiers for rapid object detection. In: Michaelis, B., Krell, G. (eds.) Pattern Recognition - Proceedings of the 25th DAGM Symposium. Springer (2003)

  29. Meng, J., Mei, S., Yan, Z.: RESTful web services: a solution for distributed data integration. In: Proceedings of the IEEE International Conference on Computational Intelligence and Software Engineering (CiSE’2009), vol. 3, pp. 1–4 (2009)

  30. Metta, G., Fitzpatrick, P., Natale, L.: YARP: yet another robot platform. Int. J. Adv. Robot. Syst. 3(1), 43–48 (2006)

    Article  Google Scholar 

  31. Mohamed, N., Al-Jaroodi, J., Jawhar, I.: A review of middleware for networked robots. International Journal of Computer Science & Network Security 9(5), 139–148 (2009)

    Google Scholar 

  32. Montemerlo, M., Roy, N., Thrun, S.: Perspectives on standardization in mobile robot programming: the carnegie mellon navigation (CARMEN) toolkit. In: Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS’2003), vol. 3, pp 2436–2441 (2003). doi:10.1109/IROS.2003.1249235

  33. Nesnas, I., Simmons, R., Gaines, D., Kunz, C., Diaz-Calderon, A., Estlin, T., Madison, R., Guineau, J., McHenry, M., Shu, I.-H., Apfelbaum, D.: CLARAty: challenges and steps toward reusable robotic software. Int. J. Adv. Robot. Syst. 3(1), 23–30 (2006)

    Article  Google Scholar 

  34. Nesnas, I., Wright, A., Bajracharya, M., Simmons, R., Estlin, T.: CLARAty and challenges of developing interoperable robotic software. In: Proceedings of the IEEE/RSJ International Conference on Intelligent Robots and Systems (IROS’2003), vol. 3, pp. 2428–2435 (2003)

  35. Overdick, H.: The resource-oriented architecture. In: Proceedings of the 2007 IEEE Congress on Services, pp. 340–347 (2009)

  36. Peng, D., Li, C., Huo, H.: An extended username: token-based approach for REST-style web service security authentication. In: Proceedings of the 2nd IEEE International Conference on Computer Science and Information Technology (ICCSIT’2009), pp. 582–586 (2009)

  37. Quigley, M., Gerkey, B., Conley, K., Faust, J., Foote, T., Leibs, J., Berger, E., Wheeler, R., Ng, A.Y.: ROS: an open-source robot operating system. In: Proceedings of the Open-Source Software Workshop of the International Conference on Robotics and Automation (ICRA’2009) (2009)

  38. Volpe, R., Nesnas, I.A.D., Estlin, T., Mutz, D., Petras, R., Das, H.: The CLARAty architecture for robotic autonomy. In: Proceedings of the IEEE Aerospace Conference, vol. 1, pp. 1121–1132 (2001)

Download references

Author information

Authors and Affiliations

Authors

Corresponding author

Correspondence to Guilherme A. Barreto.

Rights and permissions

Reprints and permissions

About this article

Check for updates. Verify currency and authenticity via CrossMark

Cite this article

Veloso, M.V.D., Filho, J.T.C. & Barreto, G.A. SOM4R: a Middleware for Robotic Applications Based on the Resource-Oriented Architecture. J Intell Robot Syst 87, 487–506 (2017). https://doi.org/10.1007/s10846-017-0504-y

Download citation

  • Received:

  • Accepted:

  • Published:

  • Issue Date:

  • DOI: https://doi.org/10.1007/s10846-017-0504-y

Keywords

Navigation