{"status":"ok","message-type":"work","message-version":"1.0.0","message":{"indexed":{"date-parts":[[2024,8,5]],"date-time":"2024-08-05T18:39:06Z","timestamp":1722883146125},"reference-count":46,"publisher":"Frontiers Media SA","content-domain":{"domain":["frontiersin.org"],"crossmark-restriction":true},"short-container-title":["Front. Robot. AI"],"DOI":"10.3389\/frobt.2016.00024","type":"journal-article","created":{"date-parts":[[2016,4,26]],"date-time":"2016-04-26T08:36:21Z","timestamp":1461659781000},"update-policy":"http:\/\/dx.doi.org\/10.3389\/crossmark-policy","source":"Crossref","is-referenced-by-count":23,"title":["The iCub Software Architecture: Evolution and Lessons Learned"],"prefix":"10.3389","volume":"3","author":[{"given":"Lorenzo","family":"Natale","sequence":"first","affiliation":[]},{"given":"Ali","family":"Paikan","sequence":"additional","affiliation":[]},{"given":"Marco","family":"Randazzo","sequence":"additional","affiliation":[]},{"given":"Daniele E.","family":"Domenichelli","sequence":"additional","affiliation":[]}],"member":"1965","published-online":{"date-parts":[[2016,4,26]]},"reference":[{"key":"B1","first-page":"831","article-title":"\u201cDifferentiated services on linux,\u201d","author":"Almesberger","year":"1999"},{"key":"B2","volume-title":"Principles of Model Checking","author":"Baier","year":"2008"},{"key":"B3","volume-title":"Test-Driven Development: By Example","author":"Beck","year":"2003"},{"key":"B4","first-page":"163","article-title":"\u201cTowards component-based robotics,\u201d","author":"Brooks","year":"2005"},{"key":"B5","doi-asserted-by":"publisher","first-page":"84","DOI":"10.1109\/MRA.2009.934837","article-title":"Component-based robotic engineering. Part I: reusable building blocks","volume":"16","author":"Brugali","year":"2009","journal-title":"IEEE Robot. Autom. Mag."},{"key":"B6","first-page":"2523","article-title":"\u201cOpen robot control software: the orocos project,\u201d","author":"Bruyninckx","year":"2001"},{"key":"B7","first-page":"1758","article-title":"\u201cThe BRICS Component Model: A Model-Based Development Paradigm for Complex Robotics Software Systems,\u201d","author":"Bruyninckx","year":"2013"},{"key":"B8","first-page":"13","article-title":"Design choices for modular and flexible robotic sofware development: the openrdk viewpoint","volume":"3","author":"Calisi","year":"2012","journal-title":"J. Softw. Eng. Robot."},{"key":"B9","article-title":"\u201cPlayer 2.0: toward a practical robot programming framework,\u201d","author":"Collett","year":"2005"},{"key":"B10","doi-asserted-by":"publisher","first-page":"76","DOI":"10.1109\/MRA.2014.2356937","article-title":"The ach library: a new framework for real-time communication","volume":"22","author":"Dantam","year":"2015","journal-title":"IEEE Robot. Autom. Mag."},{"key":"B11","first-page":"2591","article-title":"\u201cMIRA \u2013 Middleware for Robotic Applications,\u201d","author":"Einhorn","year":"2012"},{"key":"B12","doi-asserted-by":"publisher","first-page":"114","DOI":"10.1145\/857076.857078","article-title":"The many faces of publish\/subscribe","volume":"35","author":"Eugster","year":"2003","journal-title":"ACM Comput. Surv."},{"key":"B13","first-page":"42","article-title":"A middle way for robotics middleware","volume":"5","author":"Fitzpatrick","year":"2014","journal-title":"J. Softw. Eng. Robot."},{"key":"B14","doi-asserted-by":"publisher","first-page":"29","DOI":"10.1016\/j.robot.2007.09.014","article-title":"Towards long-lived robot genes","volume":"56","author":"Fitzpatrick","year":"2008","journal-title":"Rob. Auton. Syst."},{"key":"B15","volume-title":"Design Patterns: Elements of Reusable Object-oriented Software","author":"Gamma","year":"1995"},{"key":"B16","article-title":"\u201cRobotran-YARP interface: a framework for real-time controller development based on multibody dynamics simulation,\u201d","author":"Habra","year":"2015"},{"key":"B17","doi-asserted-by":"publisher","first-page":"171","DOI":"10.1007\/s10846-014-0095-9","article-title":"The communication layer of the ardx software framework: highly performant and realtime deterministic","volume":"77","author":"Hammer","year":"2014","journal-title":"J. Intell. Robot. Syst."},{"key":"B18","doi-asserted-by":"crossref","first-page":"333","DOI":"10.1007\/978-3-319-13823-7_29","article-title":"\u201cYARP based plugins for gazebo simulator,\u201d","volume-title":"Modelling and Simulation for Autonomous Systems Workshop (MESAS)","author":"Hoffman","year":"2014"},{"key":"B19","first-page":"4057","article-title":"\u201cLCM: Lightweight Communications and Marshalling,\u201d","author":"Huang","year":"2010"},{"key":"B20","doi-asserted-by":"crossref","first-page":"635","DOI":"10.1002\/(SICI)1097-024X(199606)26:6<635::AID-SPE26>3.0.CO;2-P","article-title":"Lua an extensible extension language","volume":"26","author":"Ierusalimschy","year":"1996","journal-title":"Softw. Pract. Exp."},{"key":"B21","doi-asserted-by":"crossref","DOI":"10.1007\/978-1-4615-4449-4","volume-title":"Computer-Aided Reasoning: An Approach","author":"Kaufmann","year":"2000"},{"key":"B22","first-page":"315","volume-title":"Reverse Engineering of Middleware for Verification of Robot Control Architectures, Volume 8810 of Lecture Notes in Computer Science, Book Section 27","author":"Khalili","year":"2014"},{"key":"B23","first-page":"28","article-title":"Coordinating robotic tasks and systems with rFSM statecharts","volume":"1","author":"Klotzb\u00fccher","year":"2012","journal-title":"Int. J. Softw. Eng."},{"key":"B24","first-page":"20","article-title":"Generic middleware support for coordinating robot software components: the task-state-pattern","volume":"2","author":"L\u00fctkebohle","year":"2011","journal-title":"J. Softw. Eng. Robot."},{"key":"B25","doi-asserted-by":"publisher","first-page":"3910","DOI":"10.1109\/JSEN.2013.2258149","article-title":"A flexible and robust large scale capacitive tactile system for robots","volume":"13","author":"Maiolino","year":"2013","journal-title":"IEEE Sens. J."},{"key":"B26","doi-asserted-by":"publisher","first-page":"118","DOI":"10.1109\/TRO.2012.2222273","article-title":"Semantic-aware real-time scheduling in robotics","volume":"29","author":"Mastrogiovanni","year":"2013","journal-title":"IEEE Trans. Robot."},{"key":"B27","volume-title":"xUnit Test Patterns: Refactoring Test Code","author":"Meszaros","year":"2007"},{"key":"B28","doi-asserted-by":"publisher","first-page":"1125","DOI":"10.1016\/j.neunet.2010.08.010","article-title":"The iCub humanoid robot: an open-systems platform for research in cognitive development","volume":"23","author":"Metta","year":"2010","journal-title":"Neural Netw."},{"key":"B29","doi-asserted-by":"publisher","first-page":"6","DOI":"10.3389\/frobt.2015.00006","article-title":"iCub whole-body control through force regulation on rigid noncoplanar contacts","volume":"2","author":"Nori","year":"2015","journal-title":"Front. Robot. AI"},{"key":"B30","doi-asserted-by":"crossref","DOI":"10.1109\/SEARIS.2015.7854100","article-title":"\u201cCommunication channel prioritization in a publish-subscribe architecture,\u201d","volume-title":"Software Engineering and Architectures for Realtime Interactive Systems","author":"Paikan","year":"2015a"},{"key":"B31","first-page":"1799","article-title":"\u201cA best-effort approach for run-time channel prioritization in real-time robotic application,\u201d","author":"Paikan","year":"2015b"},{"key":"B32","first-page":"498","article-title":"\u201cTransferring object grasping knowledge and skill across different robotic platforms,\u201d","author":"Paikan","year":"2015c"},{"key":"B33","first-page":"216","article-title":"\u201cA generic testing framework for test driven development of robotic systems,\u201d","author":"Paikan","year":"2015d"},{"key":"B34","first-page":"80","article-title":"Data flow port\u2019s monitoring and arbitration","volume-title":"J. Softw. Eng. Robot","author":"Paikan","year":"2014a"},{"key":"B35","first-page":"1555","article-title":"\u201cEnhancing software module reusability using port plug-ins: an experiment with the iCub robot,\u201d","author":"Paikan","year":"2014b"},{"key":"B36","first-page":"1","article-title":"\u201cA port-arbitrated mechanism for behavior selection in humanoid robotics,\u201d","author":"Paikan","year":"2013"},{"key":"B37","doi-asserted-by":"publisher","first-page":"1250027","DOI":"10.1142\/S0219843612500272","article-title":"The design of the iCub humanoid robot","volume":"9","author":"Parmiggiani","year":"2012","journal-title":"Int. J. HR"},{"key":"B38","first-page":"1668","article-title":"\u201cAn experimental evaluation of a novel minimum-jerk cartesian controller for humanoid robots,\u201d","author":"Pattacini","year":"2010"},{"key":"B39","volume-title":"ROS: An Open-Source Robot Operating System","author":"Quigley","year":"2009"},{"key":"B40","volume-title":"iCub Control Modes Specifications","author":"Randazzo","year":"2004"},{"key":"B41","doi-asserted-by":"crossref","DOI":"10.1007\/978-3-662-03345-6","volume-title":"Software Engineering with Reusable Components","author":"Sametinger","year":"1997"},{"key":"B42","first-page":"1610","article-title":"\u201cThe software framework smartsoft for implementing sensorimotor systems,\u201d","author":"Schlegel","year":"1999"},{"key":"B43","doi-asserted-by":"publisher","first-page":"759","DOI":"10.1109\/32.637390","article-title":"Design of dynamically reconfigurable real-time software using port-based objects","volume":"23","author":"Stewart","year":"1997","journal-title":"IEEE Trans. Softw. Eng."},{"key":"B44","first-page":"57","article-title":"\u201cAn open-source simulator for cognitive robotics research: the prototype of the iCub humanoid robot simulator,\u201d","author":"Tikhanoff","year":"2008"},{"key":"B45","first-page":"673","article-title":"\u201cCompliant humanoid coman: optimal joint stiffness tuning for modal frequency control,\u201d","author":"Tsagarakis","year":"2013"},{"key":"B46","first-page":"15","article-title":"An architecture-oriented approach to system integration in collaborative robotics research projects - an experience report","volume":"6","author":"Vernon","year":"2015","journal-title":"J. Softw. Eng. Robot."}],"container-title":["Frontiers in Robotics and AI"],"original-title":[],"deposited":{"date-parts":[[2017,6,24]],"date-time":"2017-06-24T11:47:09Z","timestamp":1498304829000},"score":1,"resource":{"primary":{"URL":"http:\/\/journal.frontiersin.org\/Article\/10.3389\/frobt.2016.00024\/abstract"}},"subtitle":[],"short-title":[],"issued":{"date-parts":[[2016,4,26]]},"references-count":46,"URL":"https:\/\/doi.org\/10.3389\/frobt.2016.00024","relation":{},"ISSN":["2296-9144"],"issn-type":[{"value":"2296-9144","type":"electronic"}],"subject":[],"published":{"date-parts":[[2016,4,26]]}}}