A modular CPS architecture design based on ROS and Docker

  • Pablo González-Nalda
  • Ismael Etxeberria-Agiriano
  • Isidro Calvo
  • Mari Carmen Otero
Technical Paper


In this paper a modular generic architecture for cyber-physical systems based on free open software components is presented. The architecture is implemented over inexpensive components frequently found in information and communication technology contexts. More specifically, the robot operating system middleware abstracts communication among multiple networked modules, whereas the Docker lightweight virtualization container is proposed to wrap up software modules. Focus is on mobile robotics in production systems and industrial automation environments. Actually, an automated guided vehicle problem is demonstrated by means of a proof of concept aimed at industrial automation applications illustrating the potential of the proposed architecture and its implementation, built with low cost hardware modules.


Cyber-physical systems (CPS) Smart factory Robot operating system (ROS) Lightweight virtualization (Docker) 



This work was supported in part by the University of the Basque Country (UPV/EHU) and the Basque Government (GV/EJ) by Projects EHU13/42 and CPS4PSS Etortek14/10, respectively.


  1. 1.
    Park, Sunyoung, Tek-Jin, Nam: Product-personification method for generating interaction ideas. Int. J. Interact. Design Manuf. 2015(9), 97–105 (2015). doi: 10.1007/s12008-013-0196-x CrossRefGoogle Scholar
  2. 2.
    The President’s Council of Advisors on Science and Technology, Report to the President and Congress Designing a Digital Future: Federally Funded Research and Development in Networking and Information Technology. Accessed Dec 2010
  3. 3.
    National Science Foundation Program Solicitation. Solicitation 16–549, February 2009
  4. 4.
    Wolf, W.: Cyber-physical Systems. Computer 42(3), 88–89 (2009). doi: 10.1109/MC.2009.81 CrossRefGoogle Scholar
  5. 5.
    Khaitan, S.K., McCalley, J.D.: Design techniques and applications of cyber physical systems: a survey. IEEE Syst. J. 9(2), 350–365 (2014). doi: 10.1109/JSYST.2014.2322503 CrossRefGoogle Scholar
  6. 6.
    Etxeberria-Agiriano, I., Calvo, I., Noguero, A., Zulueta, E.: Towards middleware-based cooperation topologies for the next generation of CPS. Int. J. Online Eng. 8(Special Issue 2), 20–27 (2012)Google Scholar
  7. 7.
    Rajkumar, R., Lee, I., Sha, L., Stankovic J.: Cyber-physical systems: the next computing revolution. 2010 47th ACM/IEEE Design Automation Conference (DAC), pp. 731–736 (2010)Google Scholar
  8. 8.
    Sauter, T., Soucek, S., Kastner, W., Dietrich, D.: The evolution of factory and building automation. IEEE Ind. Electron. Mag. (2011)Google Scholar
  9. 9.
    Gay, J (ed.) Free Software, Free Society. Selected Essays of Richard M. Stallman, GNU Press, Free Software Foundation, Boston, MA, USA (ISBN 978-0-9831592-0-9) (2002)Google Scholar
  10. 10.
    Bruyninckx, H.: Robotics software: the future should be open [position]. IEEE Robot. Autom. Mag. 15(1), 9–11 (2008)CrossRefGoogle Scholar
  11. 11.
    Quigley, M., Conley, K., Gerkey, B., Faust, J., Foote, T., Leibs, J., Wheeler, R., Ng, A.Y.: ROS: an open-source robot operating system. ICRA Workshop Open Source Softw 3(3.2), 5 (2009)Google Scholar
  12. 12.
    Staranowicz, A., Mariottini, G.L.: A survey and comparison of commercial and open-source robotic simulator software. ACM Int. Conf. Proc. Ser. art. no. 56 (2011)Google Scholar
  13. 13.
    Silva, M., Garrote, L., Moita, F., Martins, M., Nunes, U.: Autonomous electric vehicle: steering and path-following control systems. 16th IEEE Mediterranean Electrotechnical Conference (MELECON), pp. 442–445 (2012)Google Scholar
  14. 14.
    Pérez, J., Sales, J., Peñalver, A., Fernández, J.J., Sanz, P.J., García, J.C., Martí, J.V., Marín, R., Fornas, D.: Robotic manipulation within the underwater mission planning con-text. In: Carbone, G., Gomez-Bravo, F. (eds.) Motion and Operation Planning of Robotic Systems, vol. 29, pp. 495–522. Springer, Cham (2015)Google Scholar
  15. 15.
    Jason, M., O’Kane, A.: Gentle Introduction to ROS, p. 162. CreateSpace Independent Publishing Platform (2013)Google Scholar
  16. 16.
    Joseph, L.: Mastering ROS for robotics programming. Design, build and simulate complex robots using robot operating system and master its out-of-the-box functionalities. Chapter 11: ROS for Industrial Robots. Packt Publishing (2015)Google Scholar
  17. 17.
    Matthias, K., Kane, S.P.: Docker: Up & Running. O’Reilly Media, Sebastopol (2015)Google Scholar
  18. 18.
    Turnbull, J.: The Docker Book: Containerization is the New Virtualization, p. 258. (2016)
  19. 19.
    Scott, G.: Securing Docker. Packt Publishing, Birmingham (2016)Google Scholar
  20. 20.
    Shake, C.M., Saulnier, K., Bevilacqua, R.: Spacecraft attitude determination system using nano-optical devices and Linux software libraries. J. Aerosp. Inf. Syst. 10(8), 369–384 (2013). doi: 10.2514/1.I010049 Google Scholar
  21. 21.
    McManus, S., Cook, M.: Raspberry Pi for Dummies. Wiley, Hoboken (2013)Google Scholar
  22. 22.
    Richardson, M., Wallace, S.: Getting Started with Raspberry Pi. O’Reilly Media, Sebastopol (2012)Google Scholar
  23. 23.
    Upton, Eben, Halfacree, Gareth: Raspberry Pi User Guide. Wiley, New York (2014)Google Scholar
  24. 24.
    Margolis, Michael: Arduino Cookbook. O’Reilly Media, Sebastopol (2011)Google Scholar
  25. 25.
    Harrington, W.: Learning Raspbian. Packt Publishing, Birmingham (2015)Google Scholar
  26. 26.
    Kuang, Y.: Communication between PLC and Arduino based on Modbus protocol. In: Fourth IEEE International Conference on Instrumentation and Measurement, Computer, Communication and Control (2014)Google Scholar
  27. 27.
    González-Nalda, P., Etxeberria-Agiriano, I., Calvo, I.: Towards a generic architecture for building modular CPS as applied to mobile robotics. Int. J. Online Eng. (iJOE) 12(1), 4–8 (2016)CrossRefGoogle Scholar
  28. 28.
    Bruzzone, G., Caccia, M., Ravera, G., Bertone, A.: Standard Linux for embedded real-time robotics and manufacturing control systems. Robot. Comput. Integr. Manufact. 25, 178–190 (2009)CrossRefGoogle Scholar

Copyright information

© Springer-Verlag France 2016

Authors and Affiliations

  1. 1.Computer Languages and Systems DepartmentUniversity College of Engineering of Vitoria-Gasteiz, U. of the Basque Country (UPV/EHU)Vitoria-GasteizSpain
  2. 2.Systems Engineering and Automatic Control DepartmentUniversity College of Engineering of Vitoria-Gasteiz, U. of the Basque Country (UPV/EHU)Vitoria-GasteizSpain

Personalised recommendations