  In this paper, we enable automated property verification of deliberative
components in robot control architectures. We focus on formalizing the
execution context of Behavior Trees (BTs) to provide a scalable, yet formally
grounded, methodology to enable runtime verification and prevent unexpected
robot behaviors. To this end, we consider a message-passing model that
accommodates both synchronous and asynchronous composition of parallel
components, in which BTs and other components execute and interact according to
the communication patterns commonly adopted in robotic software architectures.
We introduce a formal property specification language to encode requirements
and build runtime monitors. We performed a set of experiments, both on
simulations and on the real robot, demonstrating the feasibility of our
approach in a realistic application and its integration in a typical robot
software architecture. We also provide an OS-level virtualization environment
to reproduce the experiments in the simulated scenario.
