Designing Weakly Terminating ROS Systems
The Robot Operating System (ROS) is a popular software framework to develop and execute software for robot systems. ROS supports component-based development and provides a communication layer for easy integration. It supports three interaction patterns that are essential for control systems: the publish-subscribe pattern, the remote procedure call pattern and the goal-feedback-result pattern. In this paper we apply Petri nets to develop a structured design method for ROS systems, such that the weak termination property is guaranteed. The method is based on stepwise refinement using three interaction patterns and components modeled as state machines. The method is illustrated with a case study of robot ROSE.
KeywordsPetri nets Correctness by Construction Components Patterns Weak Termination Robot Operating System Architectural Framework
Unable to display preview. Download preview PDF.
- 3.Bruyninckx, H.: Open Robot Control Software: the OROCOS project. In: IEEE Int. Conf. Robotics and Automation, pp. 2523–2528 (2001)Google Scholar
- 5.Gerkey, B.P., Vaughan, R.T., Howard, A.: The Player/Stage Project: Tools for Multi-Robot and Distributed Sensor Systems. In: Proceedings of the 11th International Conference on Advanced Robotics, pp. 317–323 (2003)Google Scholar
- 6.Object Management Group. OMG Unified Modeling Language (OMG UML), Superstructure V2.3. Object Management Group (2010)Google Scholar
- 12.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: Open-Source Software Workshop of the International Conference on Robotics and Automation, ICRA (2009)Google Scholar
- 13.Robot ROSE website, http://www.robot-rose.nl/
- 14.ROS website, http://www.ros.org/