When developing robot functionalities, finite state machines are commonly used due to their straightforward semantics and simple implementation. State machines are also a natural implementation choice when designing robot experiments, as they generally lead to reproducible program execution. In practice, the implementation of state machines can lead to significant code repetition and may necessitate unnecessary code interaction when reparameterisation is required. In this paper, we present a small Python library that allows state machines to be specified, configured, and dynamically created using a minimal domain-specific language. We illustrate the use of the library in three different use cases - scenario definition in the context of the RoboCup@Home competition, experiment design in the context of the ROPOD project (ROPOD is an Innovation Action funded by the European Commission under grant no. 731848 within the Horizon 2020 framework program), as well as specification transfer between robots.
CITATION STYLE
Mitrevski, A., & Plöger, P. G. (2019). Reusable Specification of State Machines for Rapid Robot Functionality Prototyping. In Lecture Notes in Computer Science (including subseries Lecture Notes in Artificial Intelligence and Lecture Notes in Bioinformatics) (Vol. 11531 LNAI, pp. 408–417). Springer. https://doi.org/10.1007/978-3-030-35699-6_32
Mendeley helps you to discover research relevant for your work.