Event-Oriented Incremental Component Construction
Understanding the prerequisites of an effective and intuitive human-robot teaching situation requires an experimental approach to human-robot interaction that includes cross-platform variation as well as fast inter- and intra-component change. Although re-use has been significantly increased over the last years, the complexity faced in robotic systems is still leading to frequent lock-in rather than change. Today, most approaches address the complexity in a robot’s software system by decomposition into components, coupled through middleware. However, the integration of core algorithms, utility libraries and middleware into a component is itself becoming more complex and, due to the embedded external references, can create lock-in.
To reduce both lock-in and complexity, we have developed a component construction framework based on modelling the various building blocks as directed, typed graphs. These graphs may be (re-)assembled efficiently into components. The approach has been tested on diverse applications, from device drivers to robot behavior generation and we report the experience gained. Furthermore, we propose a decomposition strategy for converting legacy components into such graphs on a coarse level. The strategy is based on principles from event-based systems to optimize the re-usability of the resulting sub-graphs.
Unable to display preview. Download preview PDF.
- 4.Hackel, M., Schwope, S., Fritsch, J., Wrede, B., Sagerer, G.: A humanoid robot platform suitable for studying embodied interaction. In: Proc. IEEE/RSJ Int. Conf. on Intelligent Robots and Systems, pp. 56–61. IEEE (2005)Google Scholar
- 6.Kahn, G., MacQueen, D.: Coroutines and networks of parallel processes. In: Gilchrist, B. (ed.) Information Processing 1977: Proceedings of IFIP Congress, pp. 993–998. North-Holland Publishing Co., Amsterdam (1977)Google Scholar
- 7.Lee, E.A., Messerschmitt, D.G.: Synchronous data flow. Proceedings of the IEEE 75(9) (1987)Google Scholar
- 8.Lütkebohle, I.: Coordination and composition patterns in the “curious robot” scenario. PhD thesis, Bielefeld University (2010)Google Scholar
- 9.Lütkebohle, I., Peltason, J., Schillingmann, L., Elbrechter, C., Wrede, B., Wachsmuth, S., Haschke, R.: The Curious Robot - Structuring Interactive Robot Learning. In: International Conference on Robotics and Automation, Robotics and Automation Society, IEEE (2009)Google Scholar
- 10.Lütkebohle, I., Schäfer, J., Wrede, S.: Facilitating re-use by design: A filtering, transformation, and selection architecture for robotic software systems. In: Software Development and Integration in Robotics (2009)Google Scholar
- 11.Lütkebohle, I., Hegel, F., Schulz, S., Hackel, M., Wrede, B., Wachsmuth, S., Sagerer, G.: The Bielefeld Anthropomorphic Robot Head “Flobi”. In: 2010 IEEE International Conference on Robotics and Automation, IEEE (2010)Google Scholar
- 13.Shaw, M., Garlan, D.: Software Architecture: Perspectives on an Emerging Discipline. Prentice-Hall (1996)Google Scholar
- 14.UML2.0, Unified Modeling Language: Superstructure version 2.0. Object Management Group (OMG), Inc. (2005)Google Scholar
- 15.VISCA, Command list – Intelligent Communication Color Video Camera EVI-D30/D31. Sony Corporation, v1.21, english edn. (1999)Google Scholar