Skip to content
sdevin edited this page Oct 14, 2017 · 5 revisions

SUPERVISOR WIKI

If you can't find an answer in this wiki, you can open a new issue here
For developers, a documentation of the code is available using doxygen

Overview

This supervisor has been conceived in the context of a global architecture for Human-Robot Interaction. Its aim is to enable the robot to execute Joint Task with human(s). It is, amoung other, the one in charge of deciding when and how to act or which information to give to the human partner. To do so, it communicates with the other modules of the architecture.

The supervisor is composed of several ROS modules which interact as described in the following figure through topics (data in the figure) and services.

Here are the composing modules of the supervisor:

  • action_executor: this module is an action server allowing the robot to execute high level actions (e.g. pick or place).
  • dialogue_node: this module is a basic module meant to deal with the lack of a more serious one to manage dialogue.
  • goal_manager: this module allows the robot to manage the possible goals it has to perform.
  • human_monitor: this module allows to recognize basic high level actions of the humans (e.g. pick or place).
  • mental_states: this module allows to estimate the mental states of the human partners of the robot.
  • plan_elaboration: this module allows to go through the process of getting a plan for a given goal
  • plan_maintainer: this module allows to maitain the currant plan of the robot.
  • robot_decision: this module allows the robot to decide which action to execute and which information to give.
  • simple_head_manager: this module is a first simple version of the non-verbal behavior module. It concerns for now only the head of the robot.

There are also few other modules which are not represented in the figure:

  • supervisor_msgs: this module contains the definition of all messages, services and actions used by the supervisor
  • data_manager: this module allows to concatenate data from different modules into single topics
  • graphical_interface: this module brings a graphical interface to the supervisor
  • launchs: this modules contains all launch files and scripts useful to use the supervisor as well as some generic parameter files.

How to install the supervisor?

To do so, go to your catkin workspace. You may need first to get catkin cmake_module. Then use the following commands:

> cd ${CATKIN_PATH}/src
> git clone https://github.com/laas/supervisor.git
> cd ..
> catkin_make

Dependencies

Clone this wiki locally