A novel model-driven approach to support development cycle of robotic systems

  • Elisabet Estévez
  • Alejandro Sánchez-García
  • Javier Gámez-García
  • Juan Gómez-Ortega
  • Silvia Satorres-Martínez
ORIGINAL ARTICLE

Abstract

Currently, industrial robots are decisive in modern production facilities, and in a near future, robots will also become essential in daily life. In fact, the main aim of robotic manipulator relies on the integration of robots into people’s daily. To this purpose, there are a great number of physical devices, such as sensors, actuators, auxiliary elements, tools etc. which can be incorporated into a robot. Although integration, reuse, flexibility and adaptability are crucial characteristics demanded by current robotic applications, there is a lack of standardization in terms of hardware and software platforms, providing incompatible task-specific and non-reusable solutions. Consequently, there is a need for a new engineering methodology to design, implement and execute software systems. This work explores the advantages that model-driven engineering provides for the development of applications for robotic manipulators’ platforms. Specifically, a modelling approach is developed to generate the target code automatically. To validate the proposal, a tool that allows the final code to be generated for most spread communication middlewares in the robotics field is also presented.

Keywords

Robotic arm manipulators Model-driven engineering ROS—robotic operating system OROCOS—open robot control software 

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Gil P, Pomares J, Puente ST, Candelas FA, Garcia GJ, Corrales JA, Torres F (2009) A cooperative robotic system based on multiple sensors to construct metallic structures. Int J Adv Manuf Technol 45(5):616–630CrossRefGoogle Scholar
  2. 2.
    Edsinger A (2007) Robot manipulation in human environments. Ph.D. Dissertation, Massachusetts Institute of Technology, Department of Electrical Engineering and Computer ScienceGoogle Scholar
  3. 3.
    Marcos F, António Paulo M, Pedro N (2012) A low-cost laser scanning solution for flexible robotic cells: spray coating. Int J Adv Manuf Technol 58:103–1041Google Scholar
  4. 4.
    Mendes N, Neto P, Simão MA, Loureiro A, Pires JN (2014) A novel friction stir welding robotic platform: welding polymeric materials. Int J Adv Manuf Technol. DOI: 0.1007/s00170-014-6024-z. [Online published]Google Scholar
  5. 5.
    Dragan M, Milos G, Nikola S, Zoran D, Sasa Z, Branko K, Ljubodrag T (2011) Reconfigurable robotic machining system controlled and programmed in a machine tool manner. Int J Adv Manuf Technol 53l:1217–1229Google Scholar
  6. 6.
    Chella A, Cossentino M, Gaglio S, Sabatucci L, Seidita V (2010) Agent oriented software patterns for rapid and affordable robot programming. J Syst Softw 83(4):557–573CrossRefGoogle Scholar
  7. 7.
    Iborra A, Caceres DA, Ortiz FJ, Franco JP, Palma PS, Alvarez B (2009) Design of service robots, experiences using software engineering. IEEE Robot Autom Mag 16(1):24–33CrossRefGoogle Scholar
  8. 8.
    Wahl FM, Kroger T (2009) Advances in robotics research: theory, implementation, application. Springer-Verlag Berlin and Heidelberg GmbH & Co. KGoogle Scholar
  9. 9.
    Lihui W, Bernard S, Mohammad G, Göran A (2014) Robotic assembly planning and control with enhanced adaptability through function blocks. Int J Adv Manuf Technol. doi:10.1007/s00170-014-6468-1 [Online published] Google Scholar
  10. 10.
    Heineman GT, Councill WT (2001) Component-based software engineering: putting the pieces together. Addison-WesleyGoogle Scholar
  11. 11.
    Sommerville I (2007) Software engineering, eight edition, Pearson EducationGoogle Scholar
  12. 12.
    Brooks A, Kaupp T, Makarenko A, Williams S, Oreback A (2005) Towards component-based robotics. Proc IEEE Int Conf Intell Robot Syst (IROS) pp: 163-168Google Scholar
  13. 13.
    Brugali D, Scandurra P (2009) Component-based robotic engineering (part I) reusable building blocks. IEEE Robot Autom Mag 16(4):84–96CrossRefGoogle Scholar
  14. 14.
    Brugali D, Shakhimardanov A (2010) Component-based robotic engineering (part II) systems and models. IEEE Robot Autom Mag 17(1):100–112CrossRefGoogle Scholar
  15. 15.
    Gamez J, Robertsson A, Gomez Ortega J, Johansson R (2008) Sensor fusion for compliant robot motion control. IEEE Trans Robot 24(2):430–441CrossRefGoogle Scholar
  16. 16.
    Selic B (2003) The pragmatics of model-driven development. Softw IEEE 20(5):19–25CrossRefGoogle Scholar
  17. 17.
    Streitferdt D, Wendt G, Nenninger P, Nyßen A, Lichter H ( 2008) Model driven development challenges in the automation domain. Annual IEEE International Computer Software and Applications Conference. Turku, FinlandGoogle Scholar
  18. 18.
    Balasubramanian K, Gokhale A, Karsai G, Sztipanovits J, Neema S (2006) Developing applications using model-driven design environments. Computer 39(2):33–40CrossRefGoogle Scholar
  19. 19.
    Schmidt D (2006) Guest editor’s introduction: model-driven engineering. Computer 39(2):25–31CrossRefGoogle Scholar
  20. 20.
    Sharygina N, Browne JC, Kurshan RP (2001) A formal object-oriented analysis for software reliability: design for verification. Lect Notes Comp Sci Fundam Approaches Softw Eng 2029:318–332MATHGoogle Scholar
  21. 21.
    Arun Kumar R, Bruno M, Adriana T (2014) Solution space modeling for robotic systems. J Softw Eng Robot (JOSER) 5(1):89–96Google Scholar
  22. 22.
    Geisinger M, Barner S, Wojtczyk M, Knoll A (2009) A software architecture for model-based programming of robot systems. Lect Notes Comput Sci Adv Robot Res pp. 135–146Google Scholar
  23. 23.
    Alonso D, Vicente-Chicote C, Ortiz F, Pastor J, Álvarez B (2010) V3CMM: a 3-view component meta-model for model-driven robotic software development. J Softw Eng Robot 1(1):3–17Google Scholar
  24. 24.
    SmartSoft MDSD Toolchain (2013) SmartSoft model driven development software design toolchain, [Online] Available at: http://smart-robotics.sourceforge.net/index.php
  25. 25.
    Christian S, Alex L, Matthias L, Dennis S, Inglés-Romero JF, Cristina V-C (2013) Model-driven software systems engineering in robotics: covering the complete life-cycle of a robot. Workshop Roboter-Kontrollarchitekturen, Informatik 2013. Springer LNI der GI, Koblenz, pp 2780–2794Google Scholar
  26. 26.
    Schlegel C, Steck A, Lotz A (2012) Robotic software systems: from code-driven to model-driven software development. Robot Autom Robot Syst Appl Control Program Intechopen pp:473-502Google Scholar
  27. 27.
    Schlegel C, Steck A, Lotz A (2012) Model-driven software development in robotics: communication patterns as key for a robotics component model. In: Introduction to modern robotics. iConcept PressGoogle Scholar
  28. 28.
    Zahavi R (2000) Enterprise application integration with CORBA. Wiley, New YorkGoogle Scholar
  29. 29.
    Brugali D, Gherardi L, Luzzana A, Zakharov A ( 2012) A reuse-oriented development process for component-based robotic system. In: Proc. of the 3rd International Conference on Simulation, Modeling and Programming for Autonomous Robots (SIMPAR)Google Scholar
  30. 30.
    BRICS-Best Practice in Robotics Project, [Online] Available at: http://www.best-of-robotics.org
  31. 31.
    Bruyninckx H (2001) Open robot control software: the OROCOS project. In: Proc IEEE Int Conf Robot Autom (ICRA), pages 2523–2528. Seoul, KoreaGoogle Scholar
  32. 32.
    Russell J, Cohn R (2012) ROS (robotic operating system), VSDGoogle Scholar
  33. 33.
    Miller J, Mukerji J (2001). Model driven architecture (MDA). OMG, ormsc/2001-07-01, Architecture Board ORMSC1, July 2001Google Scholar
  34. 34.
    Booch G, Rumbaugh J, Jacobson I (2005) The unified modeling language user guide, 2nd Edition, Addison-Wesley ProfessionalGoogle Scholar
  35. 35.
    Jones L, Fowler J, James S, Fu Y (2012) UML based design of LEGO Robots. Proc Int Conf Softw Eng Res Pract pp:10-16Google Scholar
  36. 36.
    Layne A, Mason A, Fu Y, Wagaw M (2012) UML model based design of the claw car robot. Proc Int Conf Softw Eng Res Pract pp:3-9Google Scholar
  37. 37.
    Kim M, Kim S, Park S, Choi M-T, Kim M, Gomaa H (2008) UML-based service robot software development: a case study, Advances in service robotics, Ahn HS (ed.), ISBN: 978-953-7619-02-2, InTech, DOI: 10.5772/5947
  38. 38.
    OMG. Meta Object Facility (MOF) 2.x XMI mapping specification. [Online] Available: http://www.omg.org/spec/XMI/ , Last access in March 2014
  39. 39.
    Sanchez Garcia A, Estevez E, Gomez Ortega J, Gamez Garcia J ( 2013) Component-based modelling for generating robotic arm applications running under OROCOS middleware. Proc IEEE Int Conf Syst Man Cybern pp: 3633-3638Google Scholar
  40. 40.
    Salmini A, Tomba F (2011) Communicating with XML. Springer, New YorkCrossRefGoogle Scholar
  41. 41.
    Deliverable D-2.1 Best practice assessment of software technologies for robotics, [Online] Available: http://www.best-of-robotics.org/pages/publications/BRICS_Deliverable_D2.1.pdf . Last Access in May 2015
  42. 42.
    OPENRTM [Online] Website: http://www.openrtm.org/openrtm/en/node/780 . Last Access in May 2015
  43. 43.
    Gerkey B, Vaughan R, Howard A (2003) The player/stage project: tools for multi-robot and distributed sensor systems. In Proc. of the International Conference on Advanced RoboticsGoogle Scholar
  44. 44.
    ROS-INDUSTRIAL, [Online] Website: http://rosindustrial.org/. Last Access in May 2015
  45. 45.
    OROCOS—the deployment component (2012). [Online]. http://www.orocos.org/stable/documentation/ocl/v2.x/docxml/orocos-deployment.html . Last Access in May 2015
  46. 46.
    Tidwell D (2001) XSLT, Ed. O’REILLYGoogle Scholar
  47. 47.
    Estévez E, Marcos M, Orive D (2007) Automatic generation of PLC automation projects from component-based models. Int J Adv Manuf Technol 35(5–6):527–5440CrossRefGoogle Scholar
  48. 48.
    Satorres Martínez S, Gómez Ortega J, Gámez García J, Sánchez García A, Estévez Estévez E (2013) An industrial vision system for surface quality inspection of transparent parts. Int J Adv Manuf Technol 68(5-8):1123–1136CrossRefGoogle Scholar
  49. 49.
    Gomez Ortega J, Gamez Garcia J, Satorres-Martínez S, Sanchez Garcia A (2011) Industrial assembly of parts with dimensional variations. Case study: assembling vehicle headlamps. Robot Comput Integr Manuf 27(6):1001–1010CrossRefGoogle Scholar

Copyright information

© Springer-Verlag London 2015

Authors and Affiliations

  • Elisabet Estévez
    • 1
  • Alejandro Sánchez-García
    • 1
  • Javier Gámez-García
    • 1
  • Juan Gómez-Ortega
    • 1
  • Silvia Satorres-Martínez
    • 1
  1. 1.Departamento de Ingeniería de Electrónica AutomáticaUniversidad de JaénJaénSpain

Personalised recommendations