ISSE

Search

Graphical formalization and automated computing of safety constraints in robotics


Graphical formalization and automated computing of safety constraints in robotics

Robotic software applications control robot actions in real, human environments, including movement, manipulation, interactions with humans, and messages to other robots and devices which may also execute such actions. Safety is an important consideration so that robots do not cause harm to humans, equipment, and themselves, either by direct physical actions and omissions, or by triggering dangerous actions involving other actors, for example by giving incorrect healthcare instructions to a human patient. However, safety critical robot applications require extensive testing or formal verification in order to achieve adequate safe and predictable behavior. In this paper we present a visual language for defining safety constraints for state machine definitions of robot behaviour. This modeling paradigm is used in many healthcare robots that employ dialogue systems for communicating with users [1]. Our approach addresses mainly non safety experts and our abstraction from a mathematical temporal logic expression to a more intuitive visual representation is intended to enable a wider range of software developers to create safety constraints and to use model checking to verify the constraints. We also propose a new concept for semi–automatic support of robotic software development by automatically generating constraints for the human developer to choose from. It aims to help developers in defining reasonable constraints and in finding bugs. In addition we mention the architectural implications of the need to specify safety constraints over the robotic application behaviour. This work is driven by lessons learned in the real world deployment of embodied agents that help people in healthcare scenarios, mainly where a robot is giving cognitive support to humans who need some help, for example for reminding people to take their medication or recording their blood pressure [2], [3], [4]. Our work includes several trials of up to 25 robots in a retirement village, over weeks and months, for each of which a number of robotic applications were developed in a multidisciplinary team of robotics and healthcare researchers across two countries. The applications are intended to be developed using Robostudio [5], a visual programming environment for rapid authoring and customization of complex robot services. In this scenario we expect the software to be composed of components that allow safety constraints to be specified over each component, and that allow visual tools to be specified over the components. So the implication for the architecture is that there should be a separate interactive robotic behaviour component that is specific to an application, so that the behaviour can be verified separately from the underlying robotic functions. A tool should assist the robotic application developer to specify safety constraints about the application, and since we expect such users to struggle to define all the necessary constraints, the tool should automatically generate suggestions for constraints which are likely candidates for application safety. Once constraints are created and checked for sanity, they can be validated after every program change and thus ensure integrity during the development process. Safety constraints in such a healthcare scenario may express functional requirements of behaviour as well as metrics for non-functional properties, such as the availabilty of the robotic system, for example for reminding medication.
published 06.05.2013 Eighth full-day Workshop on Software Development and Integration in Robotics (SDIR VIII)